vlc | branch: master | Francois Cartegnie <fcvlc...@free.fr> | Fri Jan 25 14:19:55 2013 +0100| [8972d2f2083810e33951c0b0c7995e77b3c2c951] | committer: Francois Cartegnie
Qt: capture panel: Disable advanced options instead of being silent on late failure > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=8972d2f2083810e33951c0b0c7995e77b3c2c951 --- modules/gui/qt4/components/open_panels.cpp | 9 +++++++++ modules/gui/qt4/components/open_panels.hpp | 1 + 2 files changed, 10 insertions(+) diff --git a/modules/gui/qt4/components/open_panels.cpp b/modules/gui/qt4/components/open_panels.cpp index 423deef..9248085 100644 --- a/modules/gui/qt4/components/open_panels.cpp +++ b/modules/gui/qt4/components/open_panels.cpp @@ -746,6 +746,7 @@ void CaptureOpenPanel::initialize() ui.setupUi( this ); BUTTONACT( ui.advancedButton, advancedDialog() ); + CONNECT( ui.deviceCombo, currentIndexChanged(int), this, enableAdvancedDialog(int) ); /* Create two stacked layouts in the main comboBoxes */ QStackedLayout *stackedDevLayout = new QStackedLayout; @@ -1292,6 +1293,14 @@ void CaptureOpenPanel::updateButtons() advMRL.clear(); } +void CaptureOpenPanel::enableAdvancedDialog( int i_index ) +{ + int i_devicetype = ui.deviceCombo->itemData( i_index ).toInt(); + module_t *p_module = + module_find( psz_devModule[i_devicetype] ); + ui.advancedButton->setEnabled( NULL != p_module ); +} + void CaptureOpenPanel::advancedDialog() { /* Get selected device type */ diff --git a/modules/gui/qt4/components/open_panels.hpp b/modules/gui/qt4/components/open_panels.hpp index 5a8a46a..218c875 100644 --- a/modules/gui/qt4/components/open_panels.hpp +++ b/modules/gui/qt4/components/open_panels.hpp @@ -227,6 +227,7 @@ public slots: void initialize(); private slots: void updateButtons(); + void enableAdvancedDialog( int ); void advancedDialog(); }; _______________________________________________ vlc-commits mailing list vlc-commits@videolan.org http://mailman.videolan.org/listinfo/vlc-commits