#include <QFrame>
#include <QString>
+#include <QSizeGrip>
#define MAIN_TB1_DEFAULT "64;39;64;38;65"
-#define MAIN_TB2_DEFAULT "0-2;64;3;1;4;64;7;10;9;64-4;37;65;35-4"
+#define MAIN_TB2_DEFAULT "0-2;64;3;1;4;64;7;9;64;10;20;19;64-4;37;65;35-4"
#define ADV_TB_DEFAULT "12;11;13;14"
#define INPT_TB_DEFAULT "5-1;15-1;33;6-1"
#define FSC_TB_DEFAULT "0-2;64;3;1;4;64;37;64;38;64;8;65;35-4;34"
class QAbstractSlider;
class QAbstractButton;
-class InputSlider;
+class SeekSlider;
class QToolButton;
class VolumeClickHandler;
PLAY_BUTTON,
STOP_BUTTON,
OPEN_BUTTON,
- PREVIOUS_BUTTON,
- NEXT_BUTTON,
+ PREV_SLOW_BUTTON,
+ NEXT_FAST_BUTTON,
SLOWER_BUTTON,
FASTER_BUTTON,
FULLSCREEN_BUTTON,
SKIP_BACK_BUTTON,
SKIP_FW_BUTTON,
QUIT_BUTTON,
+ RANDOM_BUTTON,
+ LOOP_BUTTON,
+ INFO_BUTTON,
+ PREVIOUS_BUTTON,
+ NEXT_BUTTON,
+ OPEN_SUB_BUTTON,
BUTTON_MAX,
SPLITTER = 0x20,
MENU_BUTTONS,
TELETEXT_BUTTONS,
ADVANCED_CONTROLLER,
+ PLAYBACK_BUTTONS,
SPECIAL_MAX,
WIDGET_SPACER = 0x40,
} buttonType_e;
-static const char* nameL[BUTTON_MAX] = { N_("Play"), N_("Stop"), N_("Open"),
- N_("Previous"), N_("Next"), N_("Slower"), N_("Faster"), N_("Fullscreen"),
+static const char* const nameL[BUTTON_MAX] = { N_("Play"), N_("Stop"), N_("Open"),
+ N_("Previous/Backward"), N_("Next/Forward"), N_("Slower"), N_("Faster"), N_("Fullscreen"),
N_("De-Fullscreen"), N_("Extended panel"), N_("Playlist"), N_("Snapshot"),
N_("Record"), N_("A->B Loop"), N_("Frame By Frame"), N_("Trickplay Reverse"),
- N_("Step backward" ), N_("Step forward"), N_("Quit") };
-static const char* tooltipL[BUTTON_MAX] = { I_PLAY_TOOLTIP,
+ N_("Step backward" ), N_("Step forward"), N_("Quit"), N_("Random"),
+ N_("Loop/Repeat mode"), N_("Information"), N_("Previous"), N_("Next"),
+ N_("Open subtitles file")};
+static const char* const tooltipL[BUTTON_MAX] = { I_PLAY_TOOLTIP,
N_("Stop playback"), N_("Open a medium"),
- N_("Previous media in the playlist"),
- N_("Next media in the playlist"), N_("Slower"), N_("Faster"),
+ N_("Previous media in the playlist, skip backward when keep-pressed"),
+ N_("Next media in the playlist, skip forward when keep-pressed"), N_("Slower"), N_("Faster"),
N_("Toggle the video in fullscreen"), N_("Toggle the video out fullscreen"),
N_("Show extended settings" ), N_( "Show playlist" ),
N_( "Take a snapshot" ), N_( "Record" ),
N_( "Loop from point A to point B continuously." ), N_("Frame by frame"),
- N_("Reverse"), N_("Step backward"), N_("Step forward"), N_("Quit") };
-static const QString iconL[BUTTON_MAX] ={ ":/play_b", ":/stop_b", ":/eject",
- ":/previous_b", ":/next_b", ":/slower", ":/faster", ":/fullscreen",
- ":/defullscreen", ":/extended", ":/playlist", ":/snapshot", ":/record",
- ":/atob_nob", ":/frame", ":/reverse", ":/skip_back", ":/skip_fw",
- ":/clear" };
+ N_("Reverse"), N_("Step backward"), N_("Step forward"), N_("Quit"),
+ N_("Random"), N_("Change the loop and repeat modes"), N_("Information"),
+ N_("Previous media in the playlist"), N_("Next media in the playlist"),
+ N_("Open subtitles file")};
+static const QString iconL[BUTTON_MAX] ={ ":/toolbar/play_b", ":/toolbar/stop_b",
+ ":/toolbar/eject", ":/toolbar/previous_b", ":/toolbar/next_b",
+ ":/toolbar/slower", ":/toolbar/faster", ":/toolbar/fullscreen",
+ ":/toolbar/defullscreen", ":/toolbar/extended", ":/toolbar/playlist",
+ ":/toolbar/snapshot", ":/toolbar/record", ":/toolbar/atob_nob",
+ ":/toolbar/frame", ":/toolbar/reverse", ":/toolbar/skip_back",
+ ":/toolbar/skip_fw", ":/toolbar/clear", ":/buttons/playlist/shuffle_on",
+ ":/buttons/playlist/repeat_all", ":/menu/info",
+ ":/toolbar/previous_b", ":/toolbar/next_b", "" };
enum
{
QFrame *discFrame();
QFrame *telexFrame();
void applyAttributes( QToolButton *, bool b_flat, bool b_big );
+
+ QHBoxLayout *buttonGroupLayout;
protected slots:
virtual void setStatus( int );
signals:
- void inputExists( bool ); /// This might be usefull in the IM ?
- void inputPlaying( bool ); /// This might be usefull in the IM ?
+ void inputExists( bool ); /// This might be useful in the IM ?
+ void inputPlaying( bool ); /// This might be useful in the IM ?
void inputIsRecordable( bool ); /// same ?
void inputIsTrickPlayable( bool ); /// same ?
- void sizeChanged();
};
/* Advanced Button Bar */
/* p_intf, advanced control visible or not, blingbling or not */
ControlsWidget( intf_thread_t *_p_i, bool b_advControls,
QWidget *_parent = 0 );
- virtual ~ControlsWidget();
+
+ void setGripVisible( bool b_visible )
+ { grip->setVisible( b_visible ); }
protected:
friend class MainInterface;
- bool b_advancedVisible;
+ bool b_advancedVisible;
+
+private:
+ QSizeGrip *grip;
protected slots:
void toggleAdvanced();
void advancedControlsToggled( bool );
};
-/* on WIN32 hide() for fullscreen controller doesnt work, so it have to be
- done by trick with setting the opacity of window */
-#ifdef WIN32
- #define WIN32TRICK
-#endif
/* to trying transparency with fullscreen controller on windows enable that */
/* it can be enabled on-non windows systems,
but it will be transparent only with composite manager */
-#ifndef WIN32
- #define HAVE_TRANSPARENCY 1
-#else
- #define HAVE_TRANSPARENCY 0
-#endif
+#define HAVE_TRANSPARENCY 1
/* Default value of opacity for FS controller */
-#define DEFAULT_OPACITY 0.75
+#define DEFAULT_OPACITY 0.70
/***********************************
* Fullscreen controller
{
Q_OBJECT
public:
- FullscreenControllerWidget( intf_thread_t * );
+ FullscreenControllerWidget( intf_thread_t *, QWidget *_parent = 0 );
virtual ~FullscreenControllerWidget();
/* Vout */
void fullscreenChanged( vout_thread_t *, bool b_fs, int i_timeout );
void mouseChanged( vout_thread_t *, int i_mousex, int i_mousey );
+signals:
+ void keyPressed( QKeyEvent * );
+
public slots:
void setVoutList( vout_thread_t **, int );
virtual void mouseMoveEvent( QMouseEvent *event );
virtual void mousePressEvent( QMouseEvent *event );
+ virtual void mouseReleaseEvent( QMouseEvent *event );
virtual void enterEvent( QEvent *event );
virtual void leaveEvent( QEvent *event );
virtual void keyPressEvent( QKeyEvent *event );
private slots:
void showFSC();
void planHideFSC();
- void hideFSC();
+ void hideFSC() { hide(); }
void slowHideFSC();
void centerFSC( int );
QTimer *p_slowHideTimer;
bool b_slow_hide_begin;
int i_slow_hide_timeout;
+ float f_opacity;
#endif
int i_mouse_last_x, i_mouse_last_y;
int i_screennumber;
QRect screenRes;
-#ifdef WIN32TRICK
- bool b_fscHidden;
-#endif
-
/* List of vouts currently tracked */
QList<vout_thread_t *> vout;