vlc | branch: master | Rohan Rajpal <[email protected]> | Tue Jul 30 11:24:00 2019 +0530| [f42ae7c045fea4b7373c4d2c688ecf1dd878cb74] | committer: Jean-Baptiste Kempf
qml: Add paint-only feature to player controller buttons Add paint only feature to buttons and widgets to make them usable for the editor Signed-off-by: Jean-Baptiste Kempf <[email protected]> > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=f42ae7c045fea4b7373c4d2c688ecf1dd878cb74 --- modules/gui/qt/qml/player/ControlButtons.qml | 13 ++++++++----- modules/gui/qt/qml/player/TeletextWidget.qml | 18 +++++++++++++----- modules/gui/qt/qml/player/VolumeWidget.qml | 6 +++++- 3 files changed, 26 insertions(+), 11 deletions(-) diff --git a/modules/gui/qt/qml/player/ControlButtons.qml b/modules/gui/qt/qml/player/ControlButtons.qml index 317bd364a3..7a96647ae6 100644 --- a/modules/gui/qt/qml/player/ControlButtons.qml +++ b/modules/gui/qt/qml/player/ControlButtons.qml @@ -235,7 +235,7 @@ Item{ id: recordBtn size: VLCStyle.icon_medium text: VLCIcons.record - enabled: player.isPlaying + enabled: !paintOnly && player.isPlaying checked: player.isRecording onClicked: player.toggleRecord() property bool acceptFocus: true @@ -270,7 +270,7 @@ Item{ Utils.IconToolButton{ id: snapshotBtn size: VLCStyle.icon_medium - enabled: player.isPlaying + enabled: !paintOnly && player.isPlaying text: VLCIcons.snapshot onClicked: player.snapshot() property bool acceptFocus: true @@ -283,7 +283,7 @@ Item{ Utils.IconToolButton{ id: stopBtn size: VLCStyle.icon_medium - enabled: player.isPlaying + enabled: !paintOnly && player.isPlaying text: VLCIcons.stop onClicked: mainPlaylistController.stop() property bool acceptFocus: true @@ -295,7 +295,7 @@ Item{ Utils.IconToolButton{ id: infoBtn size: VLCStyle.icon_medium - enabled: player.isPlaying + enabled: !paintOnly && player.isPlaying text: VLCIcons.info onClicked: dialogProvider.mediaInfoDialog() property bool acceptFocus: true @@ -308,7 +308,7 @@ Item{ Utils.IconToolButton{ id: frameBtn size: VLCStyle.icon_medium - enabled: player.isPlaying + enabled: !paintOnly && player.isPlaying text: VLCIcons.frame_by_frame onClicked: player.frameNext() property bool acceptFocus: true @@ -397,6 +397,9 @@ Item{ Component{ id: aspectRatioDelegate Utils.ComboBoxExt { + property bool paintOnly: false + enabled: !paintOnly + objectName: PlayerControlBarModel.ASPECT_RATIO_COMBOBOX Layout.alignment: Qt.AlignVCenter width: VLCStyle.combobox_width_normal height: VLCStyle.combobox_height_normal diff --git a/modules/gui/qt/qml/player/TeletextWidget.qml b/modules/gui/qt/qml/player/TeletextWidget.qml index e63ec52f1b..b7e5b62d28 100644 --- a/modules/gui/qt/qml/player/TeletextWidget.qml +++ b/modules/gui/qt/qml/player/TeletextWidget.qml @@ -32,8 +32,9 @@ FocusScope{ width: teleWidget.width height: teleWidget.height - property bool autohide: !player.isTeletextAvailable + property bool autohide: !paintOnly && !player.isTeletextAvailable property bool acceptFocus: autohide + property bool paintOnly: false visible: !autohide RowLayout{ @@ -44,6 +45,7 @@ FocusScope{ Utils.IconToolButton{ id: teleActivateBtn + paintOnly: widgetfscope.paintOnly text: VLCIcons.tv size: VLCStyle.icon_normal onClicked: player.teletextEnabled = !player.teletextEnabled @@ -55,6 +57,7 @@ FocusScope{ Utils.IconToolButton{ id: teleTransparencyBtn + paintOnly: widgetfscope.paintOnly text: VLCIcons.tvtelx size: VLCStyle.icon_normal opacity: 0.5 @@ -75,6 +78,7 @@ FocusScope{ Utils.IconToolButton{ id: indexKeyBtn + paintOnly: widgetfscope.paintOnly enabled: player.teletextEnabled size: VLCStyle.icon_normal text: VLCIcons.record @@ -84,38 +88,42 @@ FocusScope{ } Utils.IconToolButton{ id: redKeyBtn + paintOnly: widgetfscope.paintOnly enabled: player.teletextEnabled size: VLCStyle.icon_normal text: VLCIcons.record onClicked: player.teletextPage = PlayerController.TELE_RED - color: enabled ? "red" : "grey" + color: enabled || paintOnly? "red" : "grey" KeyNavigation.right: greenKeyBtn } Utils.IconToolButton{ id: greenKeyBtn + paintOnly: widgetfscope.paintOnly enabled: player.teletextEnabled size: VLCStyle.icon_normal text: VLCIcons.record onClicked: player.teletextPage = PlayerController.TELE_GREEN - color: enabled ? "green" : "grey" + color: enabled || paintOnly? "green" : "grey" KeyNavigation.right: yellowKeyBtn } Utils.IconToolButton{ id: yellowKeyBtn + paintOnly: widgetfscope.paintOnly enabled: player.teletextEnabled size: VLCStyle.icon_normal text: VLCIcons.record onClicked: player.teletextPage = PlayerController.TELE_YELLOW - color: enabled ? "yellow" : "grey" + color: enabled || paintOnly ? "yellow" : "grey" KeyNavigation.right: blueKeyBtn } Utils.IconToolButton{ id: blueKeyBtn + paintOnly: widgetfscope.paintOnly enabled: player.teletextEnabled size: VLCStyle.icon_normal text: VLCIcons.record onClicked: player.teletextPage = PlayerController.TELE_BLUE - color: enabled ? "blue" : "grey" + color: enabled || paintOnly? "blue" : "grey" } } } diff --git a/modules/gui/qt/qml/player/VolumeWidget.qml b/modules/gui/qt/qml/player/VolumeWidget.qml index d823eb23d8..adbf8bfde5 100644 --- a/modules/gui/qt/qml/player/VolumeWidget.qml +++ b/modules/gui/qt/qml/player/VolumeWidget.qml @@ -29,13 +29,17 @@ FocusScope{ y: volumeWidget.y width: volumeWidget.width height: volumeWidget.height + property bool paintOnly: true + enabled: !paintOnly property bool acceptFocus: true + Component.onCompleted: paintOnly = false RowLayout{ id: volumeWidget Utils.IconToolButton{ id: volumeBtn + paintOnly: widgetfscope.paintOnly size: VLCStyle.icon_normal text: if( player.muted ) @@ -76,7 +80,7 @@ FocusScope{ property double maxvolpos: maxvol / 100 onValueChanged: { - if (player.muted) player.muted = false + if (!paintOnly && player.muted) player.muted = false player.volume = volControl.value } _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
