[vlc-commits] [Git][videolan/vlc][master] 3 commits: qt: add presets for selecting layout
Steve Lhomme (@robUx4)
gitlab at videolan.org
Mon Jan 8 07:02:03 UTC 2024
Steve Lhomme pushed to branch master at VideoLAN / VLC
Commits:
4a89a8bf by Mohit Marathe at 2024-01-08T06:48:00+00:00
qt: add presets for selecting layout
Signed-off-by: Mohit Marathe <mohitmarathe23 at gmail.com>
- - - - -
d86f3585 by Mohit Marathe at 2024-01-08T06:48:00+00:00
qt: add Customize Interface button
Signed-off-by: Mohit Marathe <mohitmarathe23 at gmail.com>
- - - - -
ad377d48 by Mohit Marathe at 2024-01-08T06:48:00+00:00
qt: add tooltip for layout buttons
- - - - -
4 changed files:
- modules/gui/qt/dialogs/preferences/simple_preferences.cpp
- modules/gui/qt/dialogs/preferences/simple_preferences.hpp
- modules/gui/qt/dialogs/preferences/sprefs_interface.ui
- modules/gui/qt/pixmaps/prefs/sample_skins.png
Changes:
=====================================
modules/gui/qt/dialogs/preferences/simple_preferences.cpp
=====================================
@@ -28,6 +28,7 @@
#include "simple_preferences.hpp"
#include "preferences_widgets.hpp"
+#include "dialogs/dialogs_provider.hpp"
#include "maininterface/mainctx.hpp"
#include "util/color_scheme_model.hpp"
#include "util/proxycolumnmodel.hpp"
@@ -758,8 +759,8 @@ SPrefsPanel::SPrefsPanel( qt_intf_t *_p_intf, QWidget *_parent,
if( !module_exists( "skins2" ) )
{
- ui.LooknfeelSelection->hide();
- ui.mainPreview->hide();
+ ui.skins->hide();
+ ui.skinImage->hide();
}
else
{
@@ -769,9 +770,6 @@ SPrefsPanel::SPrefsPanel( qt_intf_t *_p_intf, QWidget *_parent,
{
if( strstr( psz_intf, "skin" ) )
ui.skins->setChecked( true );
- } else {
- /* defaults to qt */
- ui.qt->setChecked( true );
}
free( psz_intf );
}
@@ -787,22 +785,35 @@ SPrefsPanel::SPrefsPanel( qt_intf_t *_p_intf, QWidget *_parent,
ui.stylesLabel->hide();
#endif
radioGroup = new QButtonGroup(this);
- radioGroup->addButton( ui.qt, 0 );
- radioGroup->addButton( ui.skins, 1 );
+ radioGroup->addButton( ui.modernButton, 0 );
+ radioGroup->addButton( ui.classicButton, 1 );
+ radioGroup->addButton( ui.skins, 2 );
+
+ configBool( "qt-minimal-view", ui.minimalviewBox );
+
+ /*Update layout radio buttons based on the checkState of the following checkboxes*/
+ connect(ui.menuBarCheck, &QCheckBox::stateChanged, this, &SPrefsPanel::updateLayoutSelection);
+ connect(ui.pinVideoControlsCheckbox, &QCheckBox::stateChanged, this, &SPrefsPanel::updateLayoutSelection);
+#if QT_CLIENT_SIDE_DECORATION_AVAILABLE
+ connect(ui.titleBarCheckBox, &QCheckBox::stateChanged, this, &SPrefsPanel::updateLayoutSelection);
+#endif
+
+ /*Clicking on image will check the corresponding layout radio button*/
+ layoutImages = new QButtonGroup( this );
+ layoutImages->addButton( ui.modernImage, 0 );
+ layoutImages->addButton( ui.classicImage, 1 );
+ layoutImages->addButton( ui.skinImage, 2 );
+
+ connect( layoutImages, qOverload<QAbstractButton*>( &QButtonGroup::buttonClicked ), this, &SPrefsPanel::imageLayoutClick );
+
+ /* Set checkboxes depending on the layout selected*/
#if QT_VERSION >= QT_VERSION_CHECK(5,15,0)
- connect( radioGroup, &QButtonGroup::idClicked,
- ui.styleStackedWidget, &QStackedWidget::setCurrentIndex );
+ connect(radioGroup, &QButtonGroup::idClicked, this, &SPrefsPanel::handleLayoutChange);
+ connect(layoutImages, &QButtonGroup::idClicked, this, &SPrefsPanel::handleLayoutChange);
#else
- connect( radioGroup, QOverload<int>::of(&QButtonGroup::buttonClicked),
- ui.styleStackedWidget, &QStackedWidget::setCurrentIndex );
+ connect(radioGroup, QOverload<int>::of(&QButtonGroup::buttonClicked), this, &SPrefsPanel::handleLayoutChange);
+ connect(layoutImages, QOverload<int>::of(&QButtonGroup::buttonClicked), this, &SPrefsPanel::handleLayoutChange);
#endif
- ui.styleStackedWidget->setCurrentIndex( radioGroup->checkedId() );
-
- connect( ui.minimalviewBox, &QCheckBox::toggled,
- ui.mainPreview, &InterfacePreviewWidget::setNormalPreview );
- configBool( "qt-minimal-view", ui.minimalviewBox );
- ui.mainPreview->setNormalPreview( ui.minimalviewBox->isChecked() );
- ui.skinsPreview->setPreview( InterfacePreviewWidget::SKINS );
configBool( "embedded-video", ui.embedVideo );
configBool( "qt-video-autoresize", ui.resizingBox );
@@ -869,6 +880,10 @@ SPrefsPanel::SPrefsPanel( qt_intf_t *_p_intf, QWidget *_parent,
QObject::connect( ui.intfScaleFactorSpinBox, QOverload<int>::of(&QSpinBox::valueChanged)
, p_intf->p_mi , updateIntfUserScaleFactorFromControls );
+ DialogsProvider *provider = DialogsProvider::getInstance();
+
+ QObject::connect( ui.toolbarEditor, &QAbstractButton::clicked, provider, &DialogsProvider::showToolbarEditorDialog);
+
#if QT_CLIENT_SIDE_DECORATION_AVAILABLE
configBool( "qt-titlebar", ui.titleBarCheckBox );
#else
@@ -1125,6 +1140,68 @@ SPrefsPanel::~SPrefsPanel()
free( lang );
}
+/* Checks the layout radio button corresponding the image clicked */
+void SPrefsPanel::imageLayoutClick( QAbstractButton* btn )
+{
+ QAbstractButton* layoutBtn = radioGroup->buttons().at( layoutImages->id( btn ) );
+ assert( layoutBtn );
+ layoutBtn->setChecked( true );
+}
+
+/* Change configurations depending on the layout selected and set check states of radioGroup */
+void SPrefsPanel::handleLayoutChange( int id )
+{
+ auto ui = m_interfaceUI;
+ if (id == 0) {
+ // Modern layout selected
+ ui.styleStackedWidget->setCurrentIndex(0);
+ ui.menuBarCheck->setChecked(false);
+#if QT_CLIENT_SIDE_DECORATION_AVAILABLE
+ ui.titleBarCheckBox->setChecked(false);
+#endif
+ ui.pinVideoControlsCheckbox->setChecked(false);
+ }
+ else if (id == 1) {
+ // Classic layout selected
+ ui.styleStackedWidget->setCurrentIndex(0);
+ ui.menuBarCheck->setChecked(true);
+#if QT_CLIENT_SIDE_DECORATION_AVAILABLE
+ ui.titleBarCheckBox->setChecked(true);
+#endif
+ ui.pinVideoControlsCheckbox->setChecked(true);
+ }
+ else if (id == 2) {
+ ui.styleStackedWidget->setCurrentIndex(1);
+ }
+}
+
+void SPrefsPanel::updateLayoutSelection()
+{
+ auto ui = m_interfaceUI;
+ bool isModern = !ui.menuBarCheck->isChecked()
+#if QT_CLIENT_SIDE_DECORATION_AVAILABLE
+ && !ui.titleBarCheckBox->isChecked()
+#endif
+ && !ui.pinVideoControlsCheckbox->isChecked();
+
+ ui.modernButton->setChecked(isModern);
+
+ bool isClassic = ui.menuBarCheck->isChecked()
+#if QT_CLIENT_SIDE_DECORATION_AVAILABLE
+ && ui.titleBarCheckBox->isChecked()
+#endif
+ && ui.pinVideoControlsCheckbox->isChecked();
+
+ ui.classicButton->setChecked(isClassic);
+
+ if (!isModern && !isClassic) {
+ radioGroup->setExclusive(false);
+ ui.modernButton->setChecked(false);
+ ui.classicButton->setChecked(false);
+ radioGroup->setExclusive(true);
+ }
+}
+
void SPrefsPanel::updateAudioVolume( int volume )
{
m_audioUI.volumeValue->setValue( volume );
=====================================
modules/gui/qt/dialogs/preferences/simple_preferences.hpp
=====================================
@@ -135,6 +135,7 @@ private:
QHash<QString, AudioControlGroup> audioControlGroups;
QStringList qs_filter;
QButtonGroup *radioGroup;
+ QButtonGroup *layoutImages;
char *lang;
MLFoldersEditor *mlFoldersEditor {};
@@ -163,6 +164,9 @@ private slots:
void updateAudioOptions( int );
void updateAudioVolume( int );
void langChanged( int );
+ void imageLayoutClick( QAbstractButton* );
+ void handleLayoutChange( int );
+ void updateLayoutSelection();
#ifdef _WIN32
void assoDialog();
void updateCheckBoxes( QTreeWidgetItem*, int );
=====================================
modules/gui/qt/dialogs/preferences/sprefs_interface.ui
=====================================
@@ -7,8 +7,8 @@
<rect>
<x>0</x>
<y>0</y>
- <width>700</width>
- <height>808</height>
+ <width>1446</width>
+ <height>1378</height>
</rect>
</property>
<property name="sizePolicy">
@@ -67,66 +67,129 @@
<property name="bottomMargin">
<number>0</number>
</property>
- <item row="0" column="4">
- <widget class="QRadioButton" name="skins">
- <property name="text">
- <string>Use custom skin</string>
- </property>
- </widget>
- </item>
- <item row="0" column="5">
- <spacer name="horizontalSpacer">
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="sizeHint" stdset="0">
- <size>
- <width>40</width>
- <height>20</height>
- </size>
- </property>
- </spacer>
+ <item row="0" column="3">
+ <layout class="QVBoxLayout" name="verticalLayout_2">
+ <item>
+ <widget class="QPushButton" name="skinImage">
+ <property name="toolTip">
+ <string>VLC will use custom skin.</string>
+ </property>
+ <property name="text">
+ <string/>
+ </property>
+ <property name="icon">
+ <iconset resource="../../vlc.qrc">
+ <normaloff>:/prefsmenu/sample_skins.png</normaloff>:/prefsmenu/sample_skins.png</iconset>
+ </property>
+ <property name="iconSize">
+ <size>
+ <width>244</width>
+ <height>145</height>
+ </size>
+ </property>
+ <property name="flat">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item alignment="Qt::AlignHCenter">
+ <widget class="QRadioButton" name="skins">
+ <property name="toolTip">
+ <string>VLC will use custom skin.</string>
+ </property>
+ <property name="text">
+ <string>Use custom skin</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
</item>
<item row="0" column="1">
- <spacer name="horizontalSpacer_4">
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="sizeHint" stdset="0">
- <size>
- <width>40</width>
- <height>20</height>
- </size>
- </property>
- </spacer>
+ <layout class="QVBoxLayout" name="verticalLayout_8">
+ <item>
+ <widget class="QPushButton" name="modernImage">
+ <property name="toolTip">
+ <string>VLC will use a modern layout with
+no menubar or pinned controls but
+with client-side decoration.</string>
+ </property>
+ <property name="text">
+ <string/>
+ </property>
+ <property name="icon">
+ <iconset resource="../../vlc.qrc">
+ <normaloff>:/prefsmenu/sample_minimal.png</normaloff>:/prefsmenu/sample_minimal.png</iconset>
+ </property>
+ <property name="iconSize">
+ <size>
+ <width>244</width>
+ <height>145</height>
+ </size>
+ </property>
+ <property name="flat">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item alignment="Qt::AlignHCenter">
+ <widget class="QRadioButton" name="modernButton">
+ <property name="toolTip">
+ <string>VLC will use a modern layout with
+no menubar or pinned controls but
+with client-side decoration.</string>
+ </property>
+ <property name="text">
+ <string>Modern</string>
+ </property>
+ <property name="checked">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ </layout>
</item>
<item row="0" column="2">
- <widget class="QRadioButton" name="qt">
- <property name="toolTip">
- <string>This is VLC's default interface, with a native look and feel.</string>
- </property>
- <property name="text">
- <string>Use native style</string>
- </property>
- <property name="checked">
- <bool>true</bool>
- </property>
- </widget>
- </item>
- <item row="0" column="3">
- <spacer name="horizontalSpacer_5">
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="sizeHint" stdset="0">
- <size>
- <width>40</width>
- <height>20</height>
- </size>
- </property>
- </spacer>
+ <layout class="QVBoxLayout" name="verticalLayout_7">
+ <item>
+ <widget class="QPushButton" name="classicImage">
+ <property name="toolTip">
+ <string>VLC will use a classic layout with
+a menubar and pinned controls but
+with no client-side decoration.</string>
+ </property>
+ <property name="text">
+ <string/>
+ </property>
+ <property name="icon">
+ <iconset resource="../../vlc.qrc">
+ <normaloff>:/prefsmenu/sample_complete.png</normaloff>:/prefsmenu/sample_complete.png</iconset>
+ </property>
+ <property name="iconSize">
+ <size>
+ <width>244</width>
+ <height>145</height>
+ </size>
+ </property>
+ <property name="flat">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item alignment="Qt::AlignHCenter">
+ <widget class="QRadioButton" name="classicButton">
+ <property name="toolTip">
+ <string>VLC will use a classic layout with
+a menubar and pinned controls but
+with no client-side decoration.</string>
+ </property>
+ <property name="text">
+ <string>Classic</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
</item>
- <item row="1" column="2" colspan="3">
+ <item row="1" column="1" colspan="2">
<widget class="Line" name="line">
<property name="orientation">
<enum>Qt::Horizontal</enum>
@@ -136,6 +199,13 @@
</layout>
</widget>
</item>
+ <item>
+ <widget class="QToolButton" name="toolbarEditor">
+ <property name="text">
+ <string>Customize Toolbar</string>
+ </property>
+ </widget>
+ </item>
<item>
<widget class="QStackedWidget" name="styleStackedWidget">
<property name="currentIndex">
@@ -149,28 +219,6 @@
<property name="rightMargin">
<number>0</number>
</property>
- <item>
- <widget class="InterfacePreviewWidget" name="mainPreview">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Maximum" vsizetype="Maximum">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="minimumSize">
- <size>
- <width>122</width>
- <height>50</height>
- </size>
- </property>
- <property name="styleSheet">
- <string notr="true">background-color: rgb(192, 192, 192);</string>
- </property>
- <property name="alignment">
- <set>Qt::AlignHCenter|Qt::AlignTop</set>
- </property>
- </widget>
- </item>
<item>
<widget class="QWidget" name="native_zone" native="true">
<property name="sizePolicy">
@@ -199,23 +247,49 @@
<item row="6" column="2" colspan="2">
<widget class="QComboBox" name="notificationCombo"/>
</item>
- <item row="10" column="2" colspan="2">
- <widget class="QComboBox" name="stylesCombo"/>
+ <item row="1" column="4">
+ <spacer name="horizontalSpacer_7">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>20</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
</item>
- <item row="0" column="0" colspan="5">
- <widget class="QCheckBox" name="fsController">
+ <item row="1" column="1">
+ <spacer name="horizontalSpacer_3">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>40</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item row="5" column="2">
+ <widget class="QCheckBox" name="titleBarCheckBox">
<property name="text">
- <string>Show controls in full screen mode</string>
+ <string>Enable window titlebar</string>
</property>
</widget>
</item>
- <item row="3" column="2" colspan="2">
- <widget class="QCheckBox" name="pauseMinimizedBox">
+ <item row="1" column="0">
+ <widget class="QCheckBox" name="embedVideo">
<property name="text">
- <string>Pause playback when minimized</string>
+ <string>Integrate video in interface</string>
</property>
</widget>
</item>
+ <item row="12" column="2" colspan="2">
+ <widget class="QComboBox" name="autoRaiseComboBox"/>
+ </item>
<item row="6" column="0">
<widget class="QLabel" name="notificationComboLabel">
<property name="text">
@@ -226,10 +300,10 @@
</property>
</widget>
</item>
- <item row="3" column="0">
- <widget class="QCheckBox" name="minimalviewBox">
+ <item row="4" column="0" colspan="2">
+ <widget class="QCheckBox" name="systrayBox">
<property name="text">
- <string>Start in minimal view mode</string>
+ <string>Show systray icon</string>
</property>
</widget>
</item>
@@ -249,43 +323,30 @@
</property>
</widget>
</item>
- <item row="1" column="0">
- <widget class="QCheckBox" name="embedVideo">
- <property name="text">
- <string>Integrate video in interface</string>
- </property>
- </widget>
- </item>
- <item row="1" column="1">
- <spacer name="horizontalSpacer_3">
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
+ <item row="14" column="3">
+ <widget class="QSpinBox" name="intfScaleFactorSpinBox">
+ <property name="suffix">
+ <string> %</string>
</property>
- <property name="sizeHint" stdset="0">
- <size>
- <width>40</width>
- <height>20</height>
- </size>
+ <property name="singleStep">
+ <number>5</number>
</property>
- </spacer>
+ </widget>
</item>
- <item row="1" column="4">
- <spacer name="horizontalSpacer_7">
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
+ <item row="13" column="0">
+ <widget class="QLabel" name="colorSchemeLabel">
+ <property name="text">
+ <string>Color scheme:</string>
</property>
- <property name="sizeHint" stdset="0">
- <size>
- <width>20</width>
- <height>20</height>
- </size>
+ <property name="buddy">
+ <cstring>colorSchemeComboBox</cstring>
</property>
- </spacer>
+ </widget>
</item>
- <item row="4" column="0" colspan="2">
- <widget class="QCheckBox" name="systrayBox">
+ <item row="3" column="0">
+ <widget class="QCheckBox" name="minimalviewBox">
<property name="text">
- <string>Show systray icon</string>
+ <string>Start in minimal view mode</string>
</property>
</widget>
</item>
@@ -299,26 +360,23 @@
</property>
</widget>
</item>
- <item row="12" column="2" colspan="2">
- <widget class="QComboBox" name="autoRaiseComboBox"/>
+ <item row="10" column="2" colspan="2">
+ <widget class="QComboBox" name="stylesCombo"/>
</item>
- <item row="13" column="0">
- <widget class="QLabel" name="colorSchemeLabel">
- <property name="text">
- <string>Color scheme:</string>
+ <item row="14" column="2">
+ <widget class="QSlider" name="intfScaleFactorSlider">
+ <property name="tracking">
+ <bool>false</bool>
</property>
- <property name="buddy">
- <cstring>colorSchemeComboBox</cstring>
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
- <item row="13" column="2" colspan="2">
- <widget class="QComboBox" name="colorSchemeComboBox"/>
- </item>
- <item row="4" column="2">
- <widget class="QCheckBox" name="menuBarCheck">
+ <item row="3" column="2" colspan="2">
+ <widget class="QCheckBox" name="pauseMinimizedBox">
<property name="text">
- <string>Show the menu bar</string>
+ <string>Pause playback when minimized</string>
</property>
</widget>
</item>
@@ -332,26 +390,23 @@
</property>
</widget>
</item>
- <item row="14" column="2">
- <widget class="QSlider" name="intfScaleFactorSlider">
- <property name="tracking">
- <bool>false</bool>
- </property>
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
+ <item row="4" column="2">
+ <widget class="QCheckBox" name="menuBarCheck">
+ <property name="text">
+ <string>Show the menu bar</string>
</property>
</widget>
</item>
- <item row="14" column="3">
- <widget class="QSpinBox" name="intfScaleFactorSpinBox">
- <property name="suffix">
- <string> %</string>
- </property>
- <property name="singleStep">
- <number>5</number>
+ <item row="0" column="0" colspan="5">
+ <widget class="QCheckBox" name="fsController">
+ <property name="text">
+ <string>Show controls in full screen mode</string>
</property>
</widget>
</item>
+ <item row="13" column="2" colspan="2">
+ <widget class="QComboBox" name="colorSchemeComboBox"/>
+ </item>
<item row="5" column="0" colspan="2">
<widget class="QCheckBox" name="pinVideoControlsCheckbox">
<property name="toolTip">
@@ -362,13 +417,6 @@
</property>
</widget>
</item>
- <item row="5" column="2">
- <widget class="QCheckBox" name="titleBarCheckBox">
- <property name="text">
- <string>Enable window titlebar</string>
- </property>
- </widget>
- </item>
</layout>
</widget>
</item>
@@ -382,28 +430,6 @@
<property name="rightMargin">
<number>0</number>
</property>
- <item>
- <widget class="InterfacePreviewWidget" name="skinsPreview">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Maximum" vsizetype="Maximum">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="minimumSize">
- <size>
- <width>122</width>
- <height>50</height>
- </size>
- </property>
- <property name="styleSheet">
- <string notr="true">background-color: rgb(192, 192, 192);</string>
- </property>
- <property name="alignment">
- <set>Qt::AlignCenter</set>
- </property>
- </widget>
- </item>
<item>
<widget class="QWidget" name="skins_zone" native="true">
<property name="enabled">
@@ -428,42 +454,6 @@
<property name="bottomMargin">
<number>0</number>
</property>
- <item row="1" column="1">
- <widget class="QLabel" name="skinFileLabel">
- <property name="text">
- <string>Skin resource file:</string>
- </property>
- <property name="alignment">
- <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
- </property>
- <property name="buddy">
- <cstring>fileSkin</cstring>
- </property>
- </widget>
- </item>
- <item row="1" column="2">
- <widget class="QLineEdit" name="fileSkin">
- <property name="sizePolicy">
- <sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- </widget>
- </item>
- <item row="1" column="3">
- <widget class="QPushButton" name="skinBrowse">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Maximum" vsizetype="Fixed">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="text">
- <string>Choose...</string>
- </property>
- </widget>
- </item>
<item row="2" column="1" colspan="3">
<widget class="QLabel" name="skinsLabel">
<property name="sizePolicy">
@@ -498,6 +488,42 @@
</property>
</widget>
</item>
+ <item row="1" column="3">
+ <widget class="QPushButton" name="skinBrowse">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Maximum" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="text">
+ <string>Choose...</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="2">
+ <widget class="QLineEdit" name="fileSkin">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="1">
+ <widget class="QLabel" name="skinFileLabel">
+ <property name="text">
+ <string>Skin resource file:</string>
+ </property>
+ <property name="alignment">
+ <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+ </property>
+ <property name="buddy">
+ <cstring>fileSkin</cstring>
+ </property>
+ </widget>
+ </item>
</layout>
</widget>
</item>
@@ -514,10 +540,10 @@
<string>Playlist and Instances</string>
</property>
<layout class="QGridLayout" name="gridLayout_2">
- <item row="1" column="0" colspan="2">
- <widget class="QCheckBox" name="oneInstanceFromFile">
- <property name="text">
- <string>Use only one instance when started from file manager</string>
+ <item row="4" column="1">
+ <widget class="QComboBox" name="continuePlaybackComboBox">
+ <property name="enabled">
+ <bool>true</bool>
</property>
</widget>
</item>
@@ -528,10 +554,17 @@
</property>
</widget>
</item>
- <item row="2" column="1">
- <widget class="QCheckBox" name="playPauseBox">
+ <item row="0" column="0">
+ <widget class="QCheckBox" name="OneInterfaceMode">
<property name="text">
- <string>Pause on the last frame of a video</string>
+ <string>Allow only one instance</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="0" colspan="2">
+ <widget class="QCheckBox" name="oneInstanceFromFile">
+ <property name="text">
+ <string>Use only one instance when started from file manager</string>
</property>
</widget>
</item>
@@ -542,10 +575,10 @@
</property>
</widget>
</item>
- <item row="4" column="1">
- <widget class="QComboBox" name="continuePlaybackComboBox">
- <property name="enabled">
- <bool>true</bool>
+ <item row="2" column="1">
+ <widget class="QCheckBox" name="playPauseBox">
+ <property name="text">
+ <string>Pause on the last frame of a video</string>
</property>
</widget>
</item>
@@ -559,13 +592,6 @@
</property>
</widget>
</item>
- <item row="0" column="0">
- <widget class="QCheckBox" name="OneInterfaceMode">
- <property name="text">
- <string>Allow only one instance</string>
- </property>
- </widget>
- </item>
</layout>
</widget>
</item>
@@ -575,27 +601,6 @@
<string>Privacy / Network Interaction</string>
</property>
<layout class="QGridLayout" name="gridLayout_3">
- <item row="2" column="0">
- <widget class="QCheckBox" name="MetadataNetworkAccessMode">
- <property name="text">
- <string>Allow metadata network access</string>
- </property>
- </widget>
- </item>
- <item row="0" column="0">
- <widget class="QCheckBox" name="updatesBox">
- <property name="text">
- <string>Activate updates notifier</string>
- </property>
- </widget>
- </item>
- <item row="1" column="0">
- <widget class="QCheckBox" name="saveRecentlyPlayed">
- <property name="text">
- <string>Save recently played items</string>
- </property>
- </widget>
- </item>
<item row="0" column="2">
<widget class="QSpinBox" name="updatesDays">
<property name="alignment">
@@ -609,6 +614,13 @@
</property>
</widget>
</item>
+ <item row="1" column="0">
+ <widget class="QCheckBox" name="saveRecentlyPlayed">
+ <property name="text">
+ <string>Save recently played items</string>
+ </property>
+ </widget>
+ </item>
<item row="1" column="2">
<widget class="QPushButton" name="clearRecent">
<property name="text">
@@ -616,6 +628,13 @@
</property>
</widget>
</item>
+ <item row="2" column="0">
+ <widget class="QCheckBox" name="MetadataNetworkAccessMode">
+ <property name="text">
+ <string>Allow metadata network access</string>
+ </property>
+ </widget>
+ </item>
<item row="1" column="1">
<spacer name="clearRecentSpacer">
<property name="orientation">
@@ -629,6 +648,13 @@
</property>
</spacer>
</item>
+ <item row="0" column="0">
+ <widget class="QCheckBox" name="updatesBox">
+ <property name="text">
+ <string>Activate updates notifier</string>
+ </property>
+ </widget>
+ </item>
</layout>
</widget>
</item>
@@ -717,17 +743,8 @@
</item>
</layout>
</widget>
- <customwidgets>
- <customwidget>
- <class>InterfacePreviewWidget</class>
- <extends>QLabel</extends>
- <header>dialogs/preferences/preferences_widgets.hpp</header>
- </customwidget>
- </customwidgets>
<tabstops>
<tabstop>langCombo</tabstop>
- <tabstop>qt</tabstop>
- <tabstop>skins</tabstop>
<tabstop>fsController</tabstop>
<tabstop>embedVideo</tabstop>
<tabstop>resizingBox</tabstop>
@@ -758,6 +775,8 @@
<tabstop>MetadataNetworkAccessMode</tabstop>
<tabstop>assoButton</tabstop>
</tabstops>
- <resources/>
+ <resources>
+ <include location="../../vlc.qrc"/>
+ </resources>
<connections/>
</ui>
=====================================
modules/gui/qt/pixmaps/prefs/sample_skins.png
=====================================
Binary files a/modules/gui/qt/pixmaps/prefs/sample_skins.png and b/modules/gui/qt/pixmaps/prefs/sample_skins.png differ
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/33330313e13cdf4e3e4acb45505c8bbeb3612c42...ad377d480f78e8637f61b226435eedf4437dee3e
--
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/33330313e13cdf4e3e4acb45505c8bbeb3612c42...ad377d480f78e8637f61b226435eedf4437dee3e
You're receiving this email because of your account on code.videolan.org.
VideoLAN code repository instance
More information about the vlc-commits
mailing list