vlc | branch: master | Rohan Rajpal <[email protected]> | Fri Jun 28 17:01:47 2019 +0530| [59fc3c79b3a1d6a714118bfd814eb57bb007ed68] | committer: Jean-Baptiste Kempf
qml: Add aspect ratio widget Add the aspect ratio combobox for the player controller Signed-off-by: Jean-Baptiste Kempf <[email protected]> > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=59fc3c79b3a1d6a714118bfd814eb57bb007ed68 --- modules/gui/qt/adapters/var_choice_model.cpp | 5 +++++ modules/gui/qt/adapters/var_choice_model.hpp | 3 +++ modules/gui/qt/qml/player/ControlBar.qml | 1 - modules/gui/qt/qml/player/ControlButtons.qml | 15 +++++++++++++++ 4 files changed, 23 insertions(+), 1 deletion(-) diff --git a/modules/gui/qt/adapters/var_choice_model.cpp b/modules/gui/qt/adapters/var_choice_model.cpp index e283424b68..d5da2f0b58 100644 --- a/modules/gui/qt/adapters/var_choice_model.cpp +++ b/modules/gui/qt/adapters/var_choice_model.cpp @@ -228,3 +228,8 @@ bool VLCVarChoiceModel::hasCurrent() const { return m_current != -1; } + +void VLCVarChoiceModel::toggleIndex(int index) +{ + setData(QAbstractItemModel::createIndex(index,0),true,Qt::CheckStateRole); +} diff --git a/modules/gui/qt/adapters/var_choice_model.hpp b/modules/gui/qt/adapters/var_choice_model.hpp index 837a8f06b8..3eb2b91e5b 100644 --- a/modules/gui/qt/adapters/var_choice_model.hpp +++ b/modules/gui/qt/adapters/var_choice_model.hpp @@ -71,6 +71,9 @@ public: static int on_variable_callback( vlc_object_t * object, char const * , vlc_value_t oldvalue, vlc_value_t newvalue, void * data); static int on_variable_list_callback( vlc_object_t * object, char const * , int action, vlc_value_t* value, void * data); +public slots: + Q_INVOKABLE void toggleIndex(int index); + private slots: void onDataUpdated(const vlc_object_t* object, QVariant oldvalue, QVariant newvalue); void onListUpdated(const vlc_object_t* object, int action, QVariant newvalue); diff --git a/modules/gui/qt/qml/player/ControlBar.qml b/modules/gui/qt/qml/player/ControlBar.qml index 7889717410..cfa5d79c9a 100644 --- a/modules/gui/qt/qml/player/ControlBar.qml +++ b/modules/gui/qt/qml/player/ControlBar.qml @@ -90,7 +90,6 @@ Utils.NavigableFocusScope { property bool _focusGiven: false focus: true anchors.fill: parent - spacing: 0 Repeater{ model: PlayerControlBarModel{ diff --git a/modules/gui/qt/qml/player/ControlButtons.qml b/modules/gui/qt/qml/player/ControlButtons.qml index d746dd6da4..5b7ce4b628 100644 --- a/modules/gui/qt/qml/player/ControlButtons.qml +++ b/modules/gui/qt/qml/player/ControlButtons.qml @@ -56,6 +56,7 @@ Item{ case PlayerControlBarModel.SKIP_BACK_BUTTON: return stepBackBtnDelegate case PlayerControlBarModel.QUIT_BUTTON: return quitBtnDelegate case PlayerControlBarModel.VOLUME: return volumeBtnDelegate + case PlayerControlBarModel.ASPECT_RATIO_COMBOBOX: return aspectRatioDelegate } console.log("button delegate id " + inpID + " doesn't exists") return spacerDelegate @@ -390,6 +391,20 @@ Item{ } Component{ + id: aspectRatioDelegate + Utils.ComboBoxExt { + id: combo + Layout.alignment: Qt.AlignVCenter + height: 28 * scale + width: 100 * scale + textRole: "display" + model: player.aspectRatio + onCurrentIndexChanged: model.toggleIndex(currentIndex) + property bool acceptFocus: true + } + } + + Component{ id: volumeBtnDelegate VolumeWidget{} } _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
