[vlc-commits] commit: Qt: v4l2 control: drop v4l2.ui. auto-detect instance. ( Francois Cartegnie )
git at videolan.org
git at videolan.org
Sat Sep 25 22:29:49 CEST 2010
vlc | branch: master | Francois Cartegnie <fcvlcdev at free.fr> | Fri Sep 24 23:01:23 2010 +0200| [d43b6be00d16cc30b3f33e5657d8860f4e59ec89] | committer: Francois Cartegnie
Qt: v4l2 control: drop v4l2.ui. auto-detect instance.
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=d43b6be00d16cc30b3f33e5657d8860f4e59ec89
---
modules/gui/qt4/Modules.am | 2 -
modules/gui/qt4/components/extended_panels.cpp | 28 ++++++++++++-------
modules/gui/qt4/components/extended_panels.hpp | 3 +-
modules/gui/qt4/ui/v4l2.ui | 34 ------------------------
4 files changed, 18 insertions(+), 49 deletions(-)
diff --git a/modules/gui/qt4/Modules.am b/modules/gui/qt4/Modules.am
index 0222e59..6035581 100644
--- a/modules/gui/qt4/Modules.am
+++ b/modules/gui/qt4/Modules.am
@@ -69,7 +69,6 @@ nodist_SOURCES_qt4 = \
util/qvlcapp.moc.cpp \
resources.cpp \
ui/equalizer.h \
- ui/v4l2.h \
ui/video_effects.h \
ui/open_file.h \
ui/open_disk.h \
@@ -344,7 +343,6 @@ noinst_HEADERS = \
EXTRA_DIST += \
vlc.qrc \
ui/equalizer.ui \
- ui/v4l2.ui \
ui/video_effects.ui \
ui/open_file.ui \
ui/open_disk.ui \
diff --git a/modules/gui/qt4/components/extended_panels.cpp b/modules/gui/qt4/components/extended_panels.cpp
index 3d363a1..18a10dd 100644
--- a/modules/gui/qt4/components/extended_panels.cpp
+++ b/modules/gui/qt4/components/extended_panels.cpp
@@ -35,6 +35,7 @@
#include <QGridLayout>
#include <QSignalMapper>
#include <QComboBox>
+#include <QTimer>
#include "components/extended_panels.hpp"
#include "dialogs/preferences.hpp"
@@ -633,13 +634,16 @@ void ExtVideo::gotoConf( QObject* src )
**********************************************************************/
ExtV4l2::ExtV4l2( intf_thread_t *_p_intf, QWidget *_parent )
- : QWidget( _parent ), p_intf( _p_intf )
+ : QWidget( _parent ), p_intf( _p_intf ), box( NULL )
{
- ui.setupUi( this );
-
- BUTTONACT( ui.refresh, Refresh() );
-
- box = NULL;
+ QVBoxLayout *layout = new QVBoxLayout( this );
+ help = new QLabel( qtr("No v4l2 instance found.\n"
+ "Please check that the device has been opened with VLC and is playing.\n\n"
+ "Controls will automatically appear here.")
+ , this );
+ help->setAlignment( Qt::AlignHCenter | Qt::AlignVCenter );
+ layout->addWidget( help );
+ setLayout( layout );
}
void ExtV4l2::showEvent( QShowEvent *event )
@@ -651,10 +655,10 @@ void ExtV4l2::showEvent( QShowEvent *event )
void ExtV4l2::Refresh( void )
{
vlc_object_t *p_obj = (vlc_object_t*)vlc_object_find_name( p_intf, "v4l2", FIND_ANYWHERE );
- ui.help->hide();
+ help->hide();
if( box )
{
- ui.vboxLayout->removeWidget( box );
+ layout()->removeWidget( box );
delete box;
box = NULL;
}
@@ -666,13 +670,13 @@ void ExtV4l2::Refresh( void )
if( i_ret < 0 )
{
msg_Err( p_intf, "Oops, v4l2 object doesn't have a 'controls' variable." );
- ui.help->show();
+ help->show();
vlc_object_release( p_obj );
return;
}
box = new QGroupBox( this );
- ui.vboxLayout->addWidget( box );
+ layout()->addWidget( box );
QVBoxLayout *layout = new QVBoxLayout( box );
box->setLayout( layout );
@@ -780,7 +784,9 @@ void ExtV4l2::Refresh( void )
else
{
msg_Dbg( p_intf, "Couldn't find v4l2 instance" );
- ui.help->show();
+ help->show();
+ if ( isVisible() )
+ QTimer::singleShot( 2000, this, SLOT(Refresh()) );
}
}
diff --git a/modules/gui/qt4/components/extended_panels.hpp b/modules/gui/qt4/components/extended_panels.hpp
index 89721a4..d38d138 100644
--- a/modules/gui/qt4/components/extended_panels.hpp
+++ b/modules/gui/qt4/components/extended_panels.hpp
@@ -33,7 +33,6 @@
#include "ui/equalizer.h"
#include "ui/video_effects.h"
-#include "ui/v4l2.h"
#include <QTabWidget>
@@ -75,8 +74,8 @@ public:
private:
intf_thread_t *p_intf;
- Ui::ExtV4l2Widget ui;
QGroupBox *box;
+ QLabel *help;
private slots:
void Refresh( void );
diff --git a/modules/gui/qt4/ui/v4l2.ui b/modules/gui/qt4/ui/v4l2.ui
deleted file mode 100644
index ec18b20..0000000
--- a/modules/gui/qt4/ui/v4l2.ui
+++ /dev/null
@@ -1,34 +0,0 @@
-<ui version="4.0" >
- <class>ExtV4l2Widget</class>
- <widget class="QWidget" name="ExtV4l2Widget" >
- <property name="geometry" >
- <rect>
- <x>0</x>
- <y>0</y>
- <width>405</width>
- <height>300</height>
- </rect>
- </property>
- <property name="windowTitle" >
- <string>Form</string>
- </property>
- <layout class="QVBoxLayout" >
- <item>
- <widget class="QPushButton" name="refresh" >
- <property name="text" >
- <string>Refresh</string>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QLabel" name="help" >
- <property name="text" >
- <string>No v4l2 instance found. Press the refresh button to try again.</string>
- </property>
- </widget>
- </item>
- </layout>
- </widget>
- <resources/>
- <connections/>
-</ui>
More information about the vlc-commits
mailing list