• Skip to content
  • Skip to link menu
KDE 3.5 API Reference
  • KDE API Reference
  • @topname@
  • Sitemap
  • Contact Us
 

interfaces

player.h

00001 // Copyright (C) 2002 Neil Stevens <neil@qualityassistant.com>
00002 //
00003 // Permission is hereby granted, free of charge, to any person obtaining a copy
00004 // of this software and associated documentation files (the "Software"), to deal
00005 // in the Software without restriction, including without limitation the rights
00006 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
00007 // copies of the Software, and to permit persons to whom the Software is
00008 // furnished to do so, subject to the following conditions:
00009 // 
00010 // The above copyright notice and this permission notice shall be included in
00011 // all copies or substantial portions of the Software.
00012 // 
00013 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
00014 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
00015 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
00016 // THE AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
00017 // AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
00018 // CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
00019 // 
00020 // Except as contained in this notice, the name(s) of the author(s) shall not be
00021 // used in advertising or otherwise to promote the sale, use or other dealings
00022 // in this Software without prior written authorization from the author(s).
00023 
00024 #ifndef KMEDIAPLAYERPLAYER_H
00025 #define KMEDIAPLAYERPLAYER_H
00026 
00027 #include <kparts/part.h>
00028 #include <kmediaplayer/playerdcopobject.h>
00029 #include <kmediaplayer/view.h>
00030 
00033 namespace KMediaPlayer
00034 {
00035 
00046 class KDE_EXPORT Player : public KParts::ReadOnlyPart, public PlayerDCOPObject
00047 {
00048 Q_OBJECT
00049 
00050 public:
00054     Player(QObject *parent, const char *name);
00055 
00059     Player(QWidget *parentWidget, const char *widgetName, QObject *parent, const char *name);
00060 
00061     virtual ~Player(void);
00062 
00066     virtual View *view(void) = 0;
00067 
00068 public slots:
00070     virtual void pause(void) = 0;
00071 
00073     virtual void play(void) = 0;
00074 
00076     virtual void stop(void) = 0;
00077 
00082     virtual void seek(unsigned long msec) = 0;
00083 public:
00085     virtual bool isSeekable(void) const = 0;
00086 
00088     virtual unsigned long position(void) const = 0;
00089 
00092     virtual bool hasLength(void) const = 0;
00093 
00095     virtual unsigned long length(void) const = 0;
00096 
00097 public slots:
00101     void setLooping(bool);
00102 public:
00104     bool isLooping(void) const;
00105 signals:
00107     void loopingChanged(bool);
00108 
00109 public:
00111     enum State
00112     {
00114         Empty,
00116         Stop,
00118         Pause,
00120         Play
00121     };
00123     int state(void) const;
00124 signals:
00126     void stateChanged(int);
00127 
00128 protected slots:
00131     void setState(int);
00132 
00133 private:
00134     bool currentLooping;
00135     State currentState;
00136 
00137     struct Data;
00138     Data *d;
00139 };
00140 
00141 }
00142 
00143 #endif

interfaces

Skip menu "interfaces"
  • Main Page
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members

@topname@

Skip menu "@topname@"
  •     kdnssd-avahi
  • arts
  • dcop
  • dnssd
  • interfaces
  •     interface
  •     library
  •   kspeech
  •   ktexteditor
  • kabc
  • kate
  • kcmshell
  • kdecore
  • kded
  • kdefx
  • kdeprint
  • kdesu
  • kdeui
  • kdoctools
  • khtml
  • kimgio
  • kinit
  • kio
  •   bookmarks
  •   httpfilter
  •   kfile
  •   kio
  •   kioexec
  •   kpasswdserver
  •   kssl
  • kioslave
  •   http
  • kjs
  • kmdi
  •   kmdi
  • knewstuff
  • kparts
  • kresources
  • kspell2
  • kunittest
  • kutils
  • kwallet
  • libkmid
  • libkscreensaver
Generated for @topname@ by doxygen 1.5.5
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal