diff options
author | toma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2009-11-25 17:56:58 +0000 |
---|---|---|
committer | toma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2009-11-25 17:56:58 +0000 |
commit | e2de64d6f1beb9e492daf5b886e19933c1fa41dd (patch) | |
tree | 9047cf9e6b5c43878d5bf82660adae77ceee097a /kaboodle/view.h | |
download | tdemultimedia-e2de64d6f1beb9e492daf5b886e19933c1fa41dd.tar.gz tdemultimedia-e2de64d6f1beb9e492daf5b886e19933c1fa41dd.zip |
Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features.
BUG:215923
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdemultimedia@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'kaboodle/view.h')
-rw-r--r-- | kaboodle/view.h | 104 |
1 files changed, 104 insertions, 0 deletions
diff --git a/kaboodle/view.h b/kaboodle/view.h new file mode 100644 index 00000000..f21de905 --- /dev/null +++ b/kaboodle/view.h @@ -0,0 +1,104 @@ +/***************************************************************** + +Copyright (c) 2000-2001 the noatun authors. See file AUTHORS. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIAB\ILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +******************************************************************/ + +#ifndef KABOODLEVIEW_H +#define KABOODLEVIEW_H + +#include <kmediaplayer/player.h> +#include <kmediaplayer/view.h> +#include <kurl.h> +#include <qevent.h> +#include <qhbox.h> +#include <qlayout.h> +#include <qlcdnumber.h> +#include <qwidget.h> + +#include "controls.h" +#include "player.h" + +class QButton; +class QLabel; +class KVideoWidget; + +namespace Kaboodle +{ +class View : public KMediaPlayer::View +{ +Q_OBJECT + +public: + View(QWidget *parent, const char *name, Player *player); + virtual ~View(void); + + /** + * automatically play a file after opening it + */ + bool isAutoPlay(void); + void setAutoPlay(bool); + + /** + * if we opened a file on the command line, quit after playing it + */ + bool isQuitAfterPlaying(void); + void setQuitAfterPlaying(bool); + + void embed(Arts::PlayObject); + KVideoWidget *videoWidget() { return video; } + +public slots: + void stateChanged(int); + void updateButtons(int); + void playerFinished(void); + void playerTimeout(void); + + void sliderMoved(int); + void skipToWrapper(int); + +signals: + void adaptSize(int width, int height); + +private slots: + void updateLabel(const QString &text); + void slotButtonPressed( int, const QPoint &, int state ); + void slotDblClick( const QPoint &, int state ); + + void calculateSize(int width, int height); + +private: + KMediaPlayer::Player::State state; + bool autoPlay, quitAfterPlaying; + Player *player; + + void updateTicks(void); + + L33tSlider *slider; + QLabel *elapsedLabel; + KVideoWidget *video; + bool firstVideo; + + int lastWidth; + + QButton *playButton, *pauseButton, *stopButton; +}; +} +#endif |