[vlc-devel] commit: Qt: don' t attach the core dialogs to the Main Interface but to the Dialog Provider. (Jean-Baptiste Kempf )
git version control
git at videolan.org
Sun May 24 01:32:19 CEST 2009
vlc | branch: 1.0-bugfix | Jean-Baptiste Kempf <jb at videolan.org> | Sun May 24 01:31:52 2009 +0200| [3b2f1606a0f26ab846e48252baaa57f8dd61ae42] | committer: Jean-Baptiste Kempf
Qt: don't attach the core dialogs to the Main Interface but to the Dialog Provider.
This fix all the dialogs (Fix AVI, HTTP login) that didn't show in skins interface.
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=3b2f1606a0f26ab846e48252baaa57f8dd61ae42
---
modules/gui/qt4/dialogs/external.cpp | 4 ++--
modules/gui/qt4/dialogs/external.hpp | 2 +-
modules/gui/qt4/dialogs_provider.cpp | 3 +++
modules/gui/qt4/main_interface.cpp | 4 ----
modules/gui/qt4/main_interface.hpp | 2 --
5 files changed, 6 insertions(+), 9 deletions(-)
diff --git a/modules/gui/qt4/dialogs/external.cpp b/modules/gui/qt4/dialogs/external.cpp
index 37a5037..ee090b0 100644
--- a/modules/gui/qt4/dialogs/external.cpp
+++ b/modules/gui/qt4/dialogs/external.cpp
@@ -59,8 +59,8 @@ int QVLCVariable::callback (vlc_object_t *object, const char *,
}
-DialogHandler::DialogHandler (intf_thread_t *intf)
- : intf (intf),
+DialogHandler::DialogHandler (intf_thread_t *intf, QObject *_parent)
+ : intf (intf), QObject( _parent ),
message (VLC_OBJECT(intf), "dialog-fatal", VLC_VAR_ADDRESS),
login (VLC_OBJECT(intf), "dialog-login", VLC_VAR_ADDRESS),
question (VLC_OBJECT(intf), "dialog-question", VLC_VAR_ADDRESS),
diff --git a/modules/gui/qt4/dialogs/external.hpp b/modules/gui/qt4/dialogs/external.hpp
index d2894ef..526a280 100644
--- a/modules/gui/qt4/dialogs/external.hpp
+++ b/modules/gui/qt4/dialogs/external.hpp
@@ -51,7 +51,7 @@ class DialogHandler : public QObject
friend class QVLCProgressDialog;
public:
- DialogHandler (intf_thread_t *);
+ DialogHandler (intf_thread_t *, QObject *parent);
~DialogHandler (void);
private:
diff --git a/modules/gui/qt4/dialogs_provider.cpp b/modules/gui/qt4/dialogs_provider.cpp
index bcd3bad..bda9130 100644
--- a/modules/gui/qt4/dialogs_provider.cpp
+++ b/modules/gui/qt4/dialogs_provider.cpp
@@ -52,6 +52,7 @@
#include "dialogs/podcast_configuration.hpp"
#include "dialogs/toolbar.hpp"
#include "dialogs/plugins.hpp"
+#include "dialogs/external.hpp"
#include <QEvent>
#include <QApplication>
@@ -76,6 +77,8 @@ DialogsProvider::DialogsProvider( intf_thread_t *_p_intf ) :
SDMapper = new QSignalMapper();
CONNECT( SDMapper, mapped (QString), this, SDMenuAction( QString ) );
+
+ DialogHandler *dialogHandler = new DialogHandler (p_intf, this );
}
DialogsProvider::~DialogsProvider()
diff --git a/modules/gui/qt4/main_interface.cpp b/modules/gui/qt4/main_interface.cpp
index 0bde8ff..397ed44 100644
--- a/modules/gui/qt4/main_interface.cpp
+++ b/modules/gui/qt4/main_interface.cpp
@@ -206,8 +206,6 @@ MainInterface::MainInterface( intf_thread_t *_p_intf ) : QVLCMW( _p_intf )
/* END CONNECTS ON IM */
- dialogHandler = new DialogHandler (p_intf);
-
/************
* Callbacks
************/
@@ -284,8 +282,6 @@ MainInterface::~MainInterface()
{
msg_Dbg( p_intf, "Destroying the main interface" );
- delete dialogHandler;
-
/* Unsure we hide the videoWidget before destroying it */
if( videoIsActive ) videoWidget->hide();
diff --git a/modules/gui/qt4/main_interface.hpp b/modules/gui/qt4/main_interface.hpp
index d522a8b..292a18c 100644
--- a/modules/gui/qt4/main_interface.hpp
+++ b/modules/gui/qt4/main_interface.hpp
@@ -49,7 +49,6 @@ class FullscreenControllerWidget;
class SpeedControlWidget;
class QMenu;
class QSize;
-class DialogHandler;
enum {
CONTROLS_VISIBLE = 0x1,
@@ -110,7 +109,6 @@ private:
ControlsWidget *controls;
InputControlsWidget *inputC;
FullscreenControllerWidget *fullscreenControls;
- DialogHandler *dialogHandler;
void createMainWidget( QSettings* );
void createStatusBar();
More information about the vlc-devel
mailing list