1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78
|
#ifndef %{APPNAMEUC}_IMPL_H
#define %{APPNAMEUC}_IMPL_H
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
#include <noatun/plugin.h>
#include <noatun/app.h>
// Pref dialog pointer global now for position saving
#include <noatun/pref.h>
class Player;
class QSlider;
class QPushButton;
class KStatusBar;
/**
* @short Main window class
* @author %{AUTHOR} <%{EMAIL}>
* @version 0.1
* Note: You can user _every_ widget for implementing your userinterface.
*/
class %{APPNAME}UI : public QWidget, public UserInterface
{
Q_OBJECT
public:
%{APPNAME}UI();
virtual ~%{APPNAME}UI();
void load(const QString& url);
protected:
virtual void dragEnterEvent(QDragEnterEvent *event);
virtual void dropEvent(QDropEvent *event);
virtual void closeEvent(QCloseEvent*);
virtual void showEvent(QShowEvent*e);
/** RMB -> context menu */
virtual void mouseReleaseEvent(QMouseEvent *);
virtual bool eventFilter(QObject*, QEvent*);
/** volume control */
virtual void wheelEvent(QWheelEvent *e);
protected:
QSlider *seeker() const { return mSeeker; }
KStatusBar *statusBar() const { return mStatusBar; }
public slots:
void slotPlaying();
void slotStopped();
void slotPaused();
/** "show/hide playlist" button */
void playlistShown();
void playlistHidden();
void slotTimeout();
void sliderMoved(int seconds);
void changeLoopType(int t);
void skipToWrapper(int second);
signals:
void skipTo( int ); // emitted by skipToWrapper()
private slots:
void changeStatusbar(const QString& text, const QString &text2=0);
void changeCaption(const QString& text);
void popup();
private:
QPushButton *mBack, *mStop, *mPlay, *mForward, *mPlaylist, *mPopup, *mLoop;
QSlider *mSeeker, *mVolume;
KStatusBar *mStatusBar;
};
#endif // %{APPNAMEUC}_IMPL_H
|