X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=modules%2Fgui%2Fqt4%2Fqt4.hpp;h=7670514801884e3a386ac79b931cbd30c2cc8d93;hb=64fcece014a045d285dd7bd92644b825ad8252ff;hp=af8234388a9909e3e51545452cc48b40dfe849a3;hpb=6ee0559da62b3bc120e36344a2f42b87514d0e20;p=vlc diff --git a/modules/gui/qt4/qt4.hpp b/modules/gui/qt4/qt4.hpp index af8234388a..7670514801 100644 --- a/modules/gui/qt4/qt4.hpp +++ b/modules/gui/qt4/qt4.hpp @@ -1,10 +1,11 @@ /***************************************************************************** * qt4.hpp : QT4 interface **************************************************************************** - * Copyright (C) 2006 the VideoLAN team + * Copyright (C) 2006-2007 the VideoLAN team * $Id$ * * Authors: Clément Stenac + * Jean-Baptiste Kempf * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -18,15 +19,24 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. *****************************************************************************/ + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. + *****************************************************************************/ #ifndef _QVLC_H_ #define _QVLC_H_ #include -#include +#include +#include + #include +#define HAS_QT43 ( QT_VERSION >= 0x040300 ) + +/* Add define for duration, VLC_META_ENGINE doesn't include it */ +#define VLC_META_ENGINE_DURATION 0x00000002 +#define VLC_META_DURATION N_( "Duration" ) + class QApplication; class QMenu; class MainInterface; @@ -47,15 +57,46 @@ struct intf_sys_t }; #define THEPL p_intf->p_sys->p_playlist +#define QPL_LOCK vlc_mutex_lock( &THEPL->object_lock ); +#define QPL_UNLOCK vlc_mutex_unlock( &THEPL->object_lock ); + #define THEDP DialogsProvider::getInstance() -#define THEMIM MainInputManager::getInstance( NULL ) +#define THEMIM MainInputManager::getInstance( p_intf ) #define qfu( i ) QString::fromUtf8( i ) #define qtr( i ) QString::fromUtf8( _(i) ) -#define qtu( i ) i.toUtf8().data() -#define qta( i ) i.toAscii().data() +#define qtu( i ) (i).toUtf8().data() +#define qta( i ) (i).toAscii().data() + +#define CONNECT( a, b, c, d ) connect( a, SIGNAL( b ), c, SLOT(d) ) +#define BUTTONACT( b, a ) connect( b, SIGNAL( clicked() ), this, SLOT(a) ) +#define ON_TIMEOUT( act ) CONNECT( THEDP->fixed_timer, timeout(), this, act ) + +#define BUTTON_SET( button, text, tooltip ) \ + button->setText( text ); \ + button->setToolTip( tooltip ); + +#define BUTTON_SET_ACT( button, text, tooltip, thisslot ) \ + BUTTON_SET( button, text, tooltip ); \ + BUTTONACT( button, thisslot ); + +#define BUTTON_SET_IMG( button, text, image, tooltip ) \ + BUTTON_SET( button, text, tooltip ); \ + button->setIcon( QIcon( ":/pixmaps/"#image ) ); + +#define BUTTON_SET_ACT_I( button, text, image, tooltip, thisslot ) \ + BUTTON_SET_IMG( button, text, image, tooltip ); \ + BUTTONACT( button, thisslot ); + +#define VISIBLE(i) (i && i->isVisible()) + +#define TOGGLEV( x ) { if( x->isVisible() ) x->hide(); \ + else x->show(); } static int DialogEvent_Type = QEvent::User + 1; +//static int PLUndockEvent_Type = QEvent::User + 2; +//static int PLDockEvent_Type = QEvent::User + 3; +static int SetVideoOnTopEvent_Type = QEvent::User + 4; class DialogEvent : public QEvent {