Add a menu to select video conference laout in waiting room.

This commit is contained in:
Julien Wadel 2022-07-12 13:54:06 +02:00
parent 4182542d97
commit 7aeab85c2b
2 changed files with 50 additions and 10 deletions

View file

@ -314,11 +314,50 @@ Rectangle {
anchors.centerIn: parent
anchors.horizontalCenterOffset: contentsStack.cameraWidth/2 - modeChoice.width/2
visible: !mainItem.callModel
toggled: layoutMenu.visible
isCustom: true
backgroundRadius: width/2
colorSet: selectedMode == LinphoneEnums.ConferenceLayoutGrid ? WaitingRoomStyle.buttons.gridLayout :
selectedMode == LinphoneEnums.ConferenceLayoutActiveSpeaker ? WaitingRoomStyle.buttons.activeSpeakerLayout : WaitingRoomStyle.buttons.audioOnly
onClicked: selectedMode = (selectedMode + 1) % 3
onClicked: layoutMenu.visible = true
Rectangle{
id: layoutMenu
anchors.bottom: parent.top
anchors.horizontalCenter: parent.horizontalCenter
anchors.bottomMargin: 10
height: menuLayout.implicitHeight + 10
width: parent.width + 10
visible: false
color: WaitingRoomStyle.menuColor
radius: 5
ColumnLayout{
id: menuLayout
anchors.centerIn: parent
ActionButton{
isCustom: true
backgroundRadius: width/2
toggled: modeChoice.selectedMode == LinphoneEnums.ConferenceLayoutGrid
colorSet: WaitingRoomStyle.buttons.gridLayout
onClicked: {modeChoice.selectedMode = LinphoneEnums.ConferenceLayoutGrid ; layoutMenu.visible = false}
}
ActionButton{
isCustom: true
backgroundRadius: width/2
toggled: modeChoice.selectedMode == LinphoneEnums.ConferenceLayoutActiveSpeaker
colorSet: WaitingRoomStyle.buttons.activeSpeakerLayout
onClicked: {modeChoice.selectedMode = LinphoneEnums.ConferenceLayoutActiveSpeaker ; layoutMenu.visible = false}
}
ActionButton{
isCustom: true
backgroundRadius: width/2
toggled: modeChoice.selectedMode == 2
colorSet: WaitingRoomStyle.buttons.audioOnly
onClicked: {modeChoice.selectedMode = 2 ; layoutMenu.visible = false}
}
}
}
}
}
}

View file

@ -9,6 +9,7 @@ import ColorsList 1.0
QtObject {
property string sectionName: 'WaitingRoom'
property color backgroundColor: ColorsList.add(sectionName+'_description', '', '', '#798791').color
property color menuColor: ColorsList.add(sectionName+'_menu', 'r').color
property QtObject title: QtObject {
property color color: ColorsList.add(sectionName+'_title', 'q').color
@ -222,11 +223,11 @@ QtObject {
property int iconSize: 40
property string icon : 'conference_layout_grid_custom'
property string name : 'gridLayout'
property color backgroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_n', icon, 's_n_b_bg').color
property color backgroundHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_h', icon, 's_h_b_bg').color
property color backgroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_n', icon, 's_h_b_bg').color
property color backgroundHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_h', icon, 's_n_b_bg').color
property color backgroundPressedColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_p', icon, 's_p_b_bg').color
property color backgroundUpdatingColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_u', icon, 's_p_b_bg').color
property color foregroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_n', icon, 's_n_b_fg').color
property color foregroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_n', icon, 's_h_b_fg').color
property color foregroundHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_h', icon, 's_n_b_fg').color
property color foregroundPressedColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_p', icon, 's_p_b_fg').color
property color foregroundUpdatingColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_u', icon, 's_p_b_fg').color
@ -235,11 +236,11 @@ QtObject {
property int iconSize: 40
property string icon : 'conference_layout_active_speaker_custom'
property string name : 'activeSpeakerLayout'
property color backgroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_n', icon, 's_n_b_bg').color
property color backgroundHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_h', icon, 's_h_b_bg').color
property color backgroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_n', icon, 's_h_b_bg').color
property color backgroundHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_h', icon, 's_n_b_bg').color
property color backgroundPressedColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_p', icon, 's_p_b_bg').color
property color backgroundUpdatingColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_u', icon, 's_p_b_bg').color
property color foregroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_n', icon, 's_n_b_fg').color
property color foregroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_n', icon, 's_h_b_fg').color
property color foregroundHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_h', icon, 's_n_b_fg').color
property color foregroundPressedColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_p', icon, 's_p_b_fg').color
property color foregroundUpdatingColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_u', icon, 's_p_b_fg').color
@ -248,11 +249,11 @@ QtObject {
property int iconSize: 40
property string icon : 'conference_audio_only_custom'
property string name : 'audioOnly'
property color backgroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_n', icon, 's_n_b_bg').color
property color backgroundHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_h', icon, 's_h_b_bg').color
property color backgroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_n', icon, 's_h_b_bg').color
property color backgroundHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_h', icon, 's_n_b_bg').color
property color backgroundPressedColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_p', icon, 's_p_b_bg').color
property color backgroundUpdatingColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_u', icon, 's_p_b_bg').color
property color foregroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_n', icon, 's_n_b_fg').color
property color foregroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_n', icon, 's_h_b_fg').color
property color foregroundHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_h', icon, 's_n_b_fg').color
property color foregroundPressedColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_p', icon, 's_p_b_fg').color
property color foregroundUpdatingColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_u', icon, 's_p_b_fg').color