change layout panel + fix button ui
This commit is contained in:
parent
19840b30f3
commit
37b5ac5292
32 changed files with 364 additions and 182 deletions
3
Linphone/data/image/Display mode.svg
Normal file
3
Linphone/data/image/Display mode.svg
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M27.2819 5.73328H4.71779C4.17375 5.73328 3.652 5.94939 3.26731 6.33408C2.88262 6.71877 2.6665 7.24052 2.6665 7.78456V24.1948C2.6665 24.7388 2.88262 25.2606 3.26731 25.6453C3.652 26.03 4.17375 26.2461 4.71779 26.2461H27.2819C27.8259 26.2461 28.3477 26.03 28.7324 25.6453C29.1171 25.2606 29.3332 24.7388 29.3332 24.1948V7.78456C29.3332 7.24052 29.1171 6.71877 28.7324 6.33408C28.3477 5.94939 27.8259 5.73328 27.2819 5.73328ZM4.71779 7.78456H27.2819V14.964H18.0511C17.5071 14.964 16.9853 15.1802 16.6006 15.5649C16.216 15.9495 15.9998 16.4713 15.9998 17.0153V24.1948H4.71779V7.78456ZM27.2819 24.1948H18.0511V17.0153H27.2819V24.1948Z" fill="#6C7A87"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 760 B |
3
Linphone/data/image/pip.svg
Normal file
3
Linphone/data/image/pip.svg
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M27 6H5C4.46957 6 3.96086 6.21071 3.58579 6.58579C3.21071 6.96086 3 7.46957 3 8V24C3 24.5304 3.21071 25.0391 3.58579 25.4142C3.96086 25.7893 4.46957 26 5 26H27C27.5304 26 28.0391 25.7893 28.4142 25.4142C28.7893 25.0391 29 24.5304 29 24V8C29 7.46957 28.7893 6.96086 28.4142 6.58579C28.0391 6.21071 27.5304 6 27 6ZM5 8H27V15H18C17.4696 15 16.9609 15.2107 16.5858 15.5858C16.2107 15.9609 16 16.4696 16 17V24H5V8ZM27 24H18V17H27V24Z" fill="#343330"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 559 B |
3
Linphone/data/image/squares-four.svg
Normal file
3
Linphone/data/image/squares-four.svg
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M13 5H7C6.46957 5 5.96086 5.21071 5.58579 5.58579C5.21071 5.96086 5 6.46957 5 7V13C5 13.5304 5.21071 14.0391 5.58579 14.4142C5.96086 14.7893 6.46957 15 7 15H13C13.5304 15 14.0391 14.7893 14.4142 14.4142C14.7893 14.0391 15 13.5304 15 13V7C15 6.46957 14.7893 5.96086 14.4142 5.58579C14.0391 5.21071 13.5304 5 13 5ZM13 13H7V7H13V13ZM25 5H19C18.4696 5 17.9609 5.21071 17.5858 5.58579C17.2107 5.96086 17 6.46957 17 7V13C17 13.5304 17.2107 14.0391 17.5858 14.4142C17.9609 14.7893 18.4696 15 19 15H25C25.5304 15 26.0391 14.7893 26.4142 14.4142C26.7893 14.0391 27 13.5304 27 13V7C27 6.46957 26.7893 5.96086 26.4142 5.58579C26.0391 5.21071 25.5304 5 25 5ZM25 13H19V7H25V13ZM13 17H7C6.46957 17 5.96086 17.2107 5.58579 17.5858C5.21071 17.9609 5 18.4696 5 19V25C5 25.5304 5.21071 26.0391 5.58579 26.4142C5.96086 26.7893 6.46957 27 7 27H13C13.5304 27 14.0391 26.7893 14.4142 26.4142C14.7893 26.0391 15 25.5304 15 25V19C15 18.4696 14.7893 17.9609 14.4142 17.5858C14.0391 17.2107 13.5304 17 13 17ZM13 25H7V19H13V25ZM25 17H19C18.4696 17 17.9609 17.2107 17.5858 17.5858C17.2107 17.9609 17 18.4696 17 19V25C17 25.5304 17.2107 26.0391 17.5858 26.4142C17.9609 26.7893 18.4696 27 19 27H25C25.5304 27 26.0391 26.7893 26.4142 26.4142C26.7893 26.0391 27 25.5304 27 25V19C27 18.4696 26.7893 17.9609 26.4142 17.5858C26.0391 17.2107 25.5304 17 25 17ZM25 25H19V19H25V25Z" fill="#343330"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 1.4 KiB |
3
Linphone/data/image/waveform.svg
Normal file
3
Linphone/data/image/waveform.svg
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M7 12V20C7 20.2652 6.89464 20.5196 6.70711 20.7071C6.51957 20.8946 6.26522 21 6 21C5.73478 21 5.48043 20.8946 5.29289 20.7071C5.10536 20.5196 5 20.2652 5 20V12C5 11.7348 5.10536 11.4804 5.29289 11.2929C5.48043 11.1054 5.73478 11 6 11C6.26522 11 6.51957 11.1054 6.70711 11.2929C6.89464 11.4804 7 11.7348 7 12ZM11 3C10.7348 3 10.4804 3.10536 10.2929 3.29289C10.1054 3.48043 10 3.73478 10 4V28C10 28.2652 10.1054 28.5196 10.2929 28.7071C10.4804 28.8946 10.7348 29 11 29C11.2652 29 11.5196 28.8946 11.7071 28.7071C11.8946 28.5196 12 28.2652 12 28V4C12 3.73478 11.8946 3.48043 11.7071 3.29289C11.5196 3.10536 11.2652 3 11 3ZM16 7C15.7348 7 15.4804 7.10536 15.2929 7.29289C15.1054 7.48043 15 7.73478 15 8V24C15 24.2652 15.1054 24.5196 15.2929 24.7071C15.4804 24.8946 15.7348 25 16 25C16.2652 25 16.5196 24.8946 16.7071 24.7071C16.8946 24.5196 17 24.2652 17 24V8C17 7.73478 16.8946 7.48043 16.7071 7.29289C16.5196 7.10536 16.2652 7 16 7ZM21 11C20.7348 11 20.4804 11.1054 20.2929 11.2929C20.1054 11.4804 20 11.7348 20 12V20C20 20.2652 20.1054 20.5196 20.2929 20.7071C20.4804 20.8946 20.7348 21 21 21C21.2652 21 21.5196 20.8946 21.7071 20.7071C21.8946 20.5196 22 20.2652 22 20V12C22 11.7348 21.8946 11.4804 21.7071 11.2929C21.5196 11.1054 21.2652 11 21 11ZM26 9C25.7348 9 25.4804 9.10536 25.2929 9.29289C25.1054 9.48043 25 9.73478 25 10V22C25 22.2652 25.1054 22.5196 25.2929 22.7071C25.4804 22.8946 25.7348 23 26 23C26.2652 23 26.5196 22.8946 26.7071 22.7071C26.8946 22.5196 27 22.2652 27 22V10C27 9.73478 26.8946 9.48043 26.7071 9.29289C26.5196 9.10536 26.2652 9 26 9Z" fill="#343330"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 1.7 KiB |
|
|
@ -44,6 +44,17 @@ Window {
|
||||||
infoPopup.open()
|
infoPopup.open()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function changeLayout(layoutIndex) {
|
||||||
|
if (layoutIndex == 0) {
|
||||||
|
console.log("TODO : set mosaic layout")
|
||||||
|
} else if (layoutIndex == 1) {
|
||||||
|
console.log("TODO : set pip layout")
|
||||||
|
} else {
|
||||||
|
console.log("TODO : set audio layout")
|
||||||
|
}
|
||||||
|
console.log("+ change settings default layout")
|
||||||
|
}
|
||||||
|
|
||||||
Connections {
|
Connections {
|
||||||
enabled: call != undefined && call != null
|
enabled: call != undefined && call != null
|
||||||
target: call && call.core
|
target: call && call.core
|
||||||
|
|
@ -435,19 +446,68 @@ Window {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Component {
|
||||||
|
id: changeLayoutPanel
|
||||||
|
ColumnLayout {
|
||||||
|
Control.StackView.onActivated: rightPanel.headerTitleText = qsTr("Modifier la disposition")
|
||||||
|
spacing: 12 * DefaultStyle.dp
|
||||||
|
Text {
|
||||||
|
Layout.fillWidth: true
|
||||||
|
text: qsTr("La disposition choisie sera enregistrée pour vos prochaines réunions")
|
||||||
|
font.pixelSize: 14 * DefaultStyle.dp
|
||||||
|
}
|
||||||
|
RoundedBackgroundControl {
|
||||||
|
Layout.fillWidth: true
|
||||||
|
contentItem: ColumnLayout {
|
||||||
|
Repeater {
|
||||||
|
model: [
|
||||||
|
{text: qsTr("Mosaïque"), imgUrl: AppIcons.squaresFour},
|
||||||
|
{text: qsTr("Intervenant actif"), imgUrl: AppIcons.pip},
|
||||||
|
{text: qsTr("Audio seulement"), imgUrl: AppIcons.waveform}
|
||||||
|
]
|
||||||
|
RadioButton {
|
||||||
|
id: radiobutton
|
||||||
|
color: DefaultStyle.main1_500_main
|
||||||
|
indicatorSize: 20 * DefaultStyle.dp
|
||||||
|
leftPadding: indicator.width + spacing
|
||||||
|
spacing: 8 * DefaultStyle.dp
|
||||||
|
Component.onCompleted: {
|
||||||
|
console.log("TODO : set checked true if is current layout")
|
||||||
|
if (index == 0) checked = true
|
||||||
|
}
|
||||||
|
contentItem: RowLayout {
|
||||||
|
spacing: 5 * DefaultStyle.dp
|
||||||
|
EffectImage {
|
||||||
|
id: radioButtonImg
|
||||||
|
Layout.preferredWidth: 32 * DefaultStyle.dp
|
||||||
|
Layout.preferredHeight: 32 * DefaultStyle.dp
|
||||||
|
imageSource: modelData.imgUrl
|
||||||
|
colorizationColor: DefaultStyle.main2_500main
|
||||||
|
}
|
||||||
|
Text {
|
||||||
|
text: modelData.text
|
||||||
|
color: DefaultStyle.main2_500main
|
||||||
|
verticalAlignment: Text.AlignVCenter
|
||||||
|
font.pixelSize: 14 * DefaultStyle.dp
|
||||||
|
Layout.fillWidth: true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
onCheckedChanged: if (checked) mainWindow.changeLayout(index)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Item {Layout.fillHeight: true}
|
||||||
|
}
|
||||||
|
}
|
||||||
Component {
|
Component {
|
||||||
id: callsListPanel
|
id: callsListPanel
|
||||||
ColumnLayout {
|
ColumnLayout {
|
||||||
Control.StackView.onActivated: rightPanel.headerTitleText = qsTr("Liste d'appel")
|
Control.StackView.onActivated: rightPanel.headerTitleText = qsTr("Liste d'appel")
|
||||||
RoundedBackgroundControl {
|
RoundedBackgroundControl {
|
||||||
Layout.fillWidth: true
|
Layout.fillWidth: true
|
||||||
Layout.preferredHeight: Math.min(callList.implicitHeight + topPadding + bottomPadding, rightPanel.height)
|
Layout.maximumHeight: rightPanel.height
|
||||||
|
visible: callList.contentHeight > 0
|
||||||
topPadding: 15 * DefaultStyle.dp
|
|
||||||
bottomPadding: 15 * DefaultStyle.dp
|
|
||||||
leftPadding: 15 * DefaultStyle.dp
|
|
||||||
rightPadding: 15 * DefaultStyle.dp
|
|
||||||
backgroundColor: mainWindow.conference ? DefaultStyle.grey_0 : DefaultStyle.main2_0
|
|
||||||
|
|
||||||
contentItem: ListView {
|
contentItem: ListView {
|
||||||
id: callList
|
id: callList
|
||||||
|
|
@ -498,8 +558,8 @@ Window {
|
||||||
Layout.alignment: Qt.AlignRight
|
Layout.alignment: Qt.AlignRight
|
||||||
|
|
||||||
popup.contentItem: ColumnLayout {
|
popup.contentItem: ColumnLayout {
|
||||||
spacing: 0
|
// spacing: 0
|
||||||
Control.Button {
|
Button {
|
||||||
background: Item {}
|
background: Item {}
|
||||||
contentItem: RowLayout {
|
contentItem: RowLayout {
|
||||||
Image {
|
Image {
|
||||||
|
|
@ -529,7 +589,7 @@ Window {
|
||||||
}
|
}
|
||||||
onClicked: modelData.core.lSetPaused(!modelData.core.paused)
|
onClicked: modelData.core.lSetPaused(!modelData.core.paused)
|
||||||
}
|
}
|
||||||
Control.Button {
|
Button {
|
||||||
background: Item {}
|
background: Item {}
|
||||||
contentItem: RowLayout {
|
contentItem: RowLayout {
|
||||||
EffectImage {
|
EffectImage {
|
||||||
|
|
@ -738,6 +798,8 @@ Window {
|
||||||
icon.source: AppIcons.endCall
|
icon.source: AppIcons.endCall
|
||||||
icon.width: 32 * DefaultStyle.dp
|
icon.width: 32 * DefaultStyle.dp
|
||||||
icon.height: 32 * DefaultStyle.dp
|
icon.height: 32 * DefaultStyle.dp
|
||||||
|
Layout.preferredWidth: 75 * DefaultStyle.dp
|
||||||
|
Layout.preferredHeight: 55 * DefaultStyle.dp
|
||||||
contentImageColor: DefaultStyle.grey_0
|
contentImageColor: DefaultStyle.grey_0
|
||||||
checkable: false
|
checkable: false
|
||||||
Layout.column: mainWindow.callState == LinphoneEnums.CallState.OutgoingInit
|
Layout.column: mainWindow.callState == LinphoneEnums.CallState.OutgoingInit
|
||||||
|
|
@ -746,8 +808,6 @@ Window {
|
||||||
|| mainWindow.callState == LinphoneEnums.CallState.OutgoingEarlyMedia
|
|| mainWindow.callState == LinphoneEnums.CallState.OutgoingEarlyMedia
|
||||||
|| mainWindow.callState == LinphoneEnums.CallState.IncomingReceived
|
|| mainWindow.callState == LinphoneEnums.CallState.IncomingReceived
|
||||||
? 0 : bottomButtonsLayout.columns - 1
|
? 0 : bottomButtonsLayout.columns - 1
|
||||||
Layout.preferredWidth: 75 * DefaultStyle.dp
|
|
||||||
Layout.preferredHeight: 55 * DefaultStyle.dp
|
|
||||||
background: Rectangle {
|
background: Rectangle {
|
||||||
anchors.fill: parent
|
anchors.fill: parent
|
||||||
color: DefaultStyle.danger_500main
|
color: DefaultStyle.danger_500main
|
||||||
|
|
@ -767,6 +827,8 @@ Window {
|
||||||
id: pauseButton
|
id: pauseButton
|
||||||
Layout.preferredWidth: 55 * DefaultStyle.dp
|
Layout.preferredWidth: 55 * DefaultStyle.dp
|
||||||
Layout.preferredHeight: 55 * DefaultStyle.dp
|
Layout.preferredHeight: 55 * DefaultStyle.dp
|
||||||
|
icon.width: 32 * DefaultStyle.dp
|
||||||
|
icon.height: 32 * DefaultStyle.dp
|
||||||
background: Rectangle {
|
background: Rectangle {
|
||||||
anchors.fill: parent
|
anchors.fill: parent
|
||||||
radius: 71 * DefaultStyle.dp
|
radius: 71 * DefaultStyle.dp
|
||||||
|
|
@ -790,9 +852,9 @@ Window {
|
||||||
icon.source: AppIcons.transferCall
|
icon.source: AppIcons.transferCall
|
||||||
Layout.preferredWidth: 55 * DefaultStyle.dp
|
Layout.preferredWidth: 55 * DefaultStyle.dp
|
||||||
Layout.preferredHeight: 55 * DefaultStyle.dp
|
Layout.preferredHeight: 55 * DefaultStyle.dp
|
||||||
|
icon.width: 32 * DefaultStyle.dp
|
||||||
|
icon.height: 32 * DefaultStyle.dp
|
||||||
contentImageColor: enabled ? DefaultStyle.grey_0 : DefaultStyle.grey_500
|
contentImageColor: enabled ? DefaultStyle.grey_0 : DefaultStyle.grey_500
|
||||||
onEnabledChanged: console.log("===================enable change", enabled)
|
|
||||||
onContentImageColorChanged: console.log("===================================== content image color", contentImageColor)
|
|
||||||
onCheckedChanged: {
|
onCheckedChanged: {
|
||||||
if (checked) {
|
if (checked) {
|
||||||
rightPanel.visible = true
|
rightPanel.visible = true
|
||||||
|
|
@ -812,6 +874,8 @@ Window {
|
||||||
icon.source: AppIcons.newCall
|
icon.source: AppIcons.newCall
|
||||||
Layout.preferredWidth: 55 * DefaultStyle.dp
|
Layout.preferredWidth: 55 * DefaultStyle.dp
|
||||||
Layout.preferredHeight: 55 * DefaultStyle.dp
|
Layout.preferredHeight: 55 * DefaultStyle.dp
|
||||||
|
icon.width: 32 * DefaultStyle.dp
|
||||||
|
icon.height: 32 * DefaultStyle.dp
|
||||||
onClicked: {
|
onClicked: {
|
||||||
var mainWin = UtilsCpp.getMainWindow()
|
var mainWin = UtilsCpp.getMainWindow()
|
||||||
UtilsCpp.smartShowWindow(mainWin)
|
UtilsCpp.smartShowWindow(mainWin)
|
||||||
|
|
@ -835,6 +899,8 @@ Window {
|
||||||
checked: mainWindow.call && !mainWindow.call.core.cameraEnabled
|
checked: mainWindow.call && !mainWindow.call.core.cameraEnabled
|
||||||
Layout.preferredWidth: 55 * DefaultStyle.dp
|
Layout.preferredWidth: 55 * DefaultStyle.dp
|
||||||
Layout.preferredHeight: 55 * DefaultStyle.dp
|
Layout.preferredHeight: 55 * DefaultStyle.dp
|
||||||
|
icon.width: 32 * DefaultStyle.dp
|
||||||
|
icon.height: 32 * DefaultStyle.dp
|
||||||
onCheckedChanged: mainWindow.call.core.lSetCameraEnabled(!mainWindow.call.core.cameraEnabled)
|
onCheckedChanged: mainWindow.call.core.lSetCameraEnabled(!mainWindow.call.core.cameraEnabled)
|
||||||
}
|
}
|
||||||
CheckableButton {
|
CheckableButton {
|
||||||
|
|
@ -843,6 +909,8 @@ Window {
|
||||||
checked: mainWindow.call && mainWindow.call.core.microphoneMuted
|
checked: mainWindow.call && mainWindow.call.core.microphoneMuted
|
||||||
Layout.preferredWidth: 55 * DefaultStyle.dp
|
Layout.preferredWidth: 55 * DefaultStyle.dp
|
||||||
Layout.preferredHeight: 55 * DefaultStyle.dp
|
Layout.preferredHeight: 55 * DefaultStyle.dp
|
||||||
|
icon.width: 32 * DefaultStyle.dp
|
||||||
|
icon.height: 32 * DefaultStyle.dp
|
||||||
onCheckedChanged: mainWindow.call.core.lSetMicrophoneMuted(!mainWindow.call.core.microphoneMuted)
|
onCheckedChanged: mainWindow.call.core.lSetMicrophoneMuted(!mainWindow.call.core.microphoneMuted)
|
||||||
}
|
}
|
||||||
CheckableButton {
|
CheckableButton {
|
||||||
|
|
@ -852,6 +920,8 @@ Window {
|
||||||
checkedColor: DefaultStyle.main2_400
|
checkedColor: DefaultStyle.main2_400
|
||||||
Layout.preferredWidth: 55 * DefaultStyle.dp
|
Layout.preferredWidth: 55 * DefaultStyle.dp
|
||||||
Layout.preferredHeight: 55 * DefaultStyle.dp
|
Layout.preferredHeight: 55 * DefaultStyle.dp
|
||||||
|
icon.width: 32 * DefaultStyle.dp
|
||||||
|
icon.height: 32 * DefaultStyle.dp
|
||||||
onCheckedChanged: {
|
onCheckedChanged: {
|
||||||
if (checked) {
|
if (checked) {
|
||||||
rightPanel.visible = true
|
rightPanel.visible = true
|
||||||
|
|
@ -867,14 +937,12 @@ Window {
|
||||||
Layout.preferredHeight: 55 * DefaultStyle.dp
|
Layout.preferredHeight: 55 * DefaultStyle.dp
|
||||||
onEnabledChanged: console.log("========== enabled changed", enabled)
|
onEnabledChanged: console.log("========== enabled changed", enabled)
|
||||||
contentImageColor: enabled && !checked ? DefaultStyle.grey_0 : DefaultStyle.grey_500
|
contentImageColor: enabled && !checked ? DefaultStyle.grey_0 : DefaultStyle.grey_500
|
||||||
icon.width: 24 * DefaultStyle.dp
|
|
||||||
icon.height: 24 * DefaultStyle.dp
|
|
||||||
icon.source: AppIcons.more
|
icon.source: AppIcons.more
|
||||||
background: Rectangle {
|
background: Rectangle {
|
||||||
anchors.fill: moreOptionsButton
|
anchors.fill: moreOptionsButton
|
||||||
color: moreOptionsButton.enabled
|
color: moreOptionsButton.enabled
|
||||||
? moreOptionsButton.checked
|
? moreOptionsButton.checked
|
||||||
? DefaultStyle.grey_0
|
? DefaultStyle.main2_400
|
||||||
: DefaultStyle.grey_500
|
: DefaultStyle.grey_500
|
||||||
: DefaultStyle.grey_600
|
: DefaultStyle.grey_600
|
||||||
radius: 40 * DefaultStyle.dp
|
radius: 40 * DefaultStyle.dp
|
||||||
|
|
@ -887,90 +955,81 @@ Window {
|
||||||
moreOptionsButton.popup.y = - moreOptionsButton.popup.height + moreOptionsButton.height/4
|
moreOptionsButton.popup.y = - moreOptionsButton.popup.height + moreOptionsButton.height/4
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
component MenuButton: Button {
|
||||||
|
background: Item{}
|
||||||
|
icon.width: 32 * DefaultStyle.dp
|
||||||
|
icon.height: 32 * DefaultStyle.dp
|
||||||
|
textColor: down ? DefaultStyle.main1_500_main : DefaultStyle.main2_500main
|
||||||
|
contentImageColor: down ? DefaultStyle.main1_500_main : DefaultStyle.main2_500main
|
||||||
|
textSize: 14 * DefaultStyle.dp
|
||||||
|
textWeight: 400 * DefaultStyle.dp
|
||||||
|
spacing: 5 * DefaultStyle.dp
|
||||||
|
}
|
||||||
popup.contentItem: ColumnLayout {
|
popup.contentItem: ColumnLayout {
|
||||||
id: optionsList
|
id: optionsList
|
||||||
spacing: 10 * DefaultStyle.dp
|
spacing: 5 * DefaultStyle.dp
|
||||||
|
|
||||||
Button {
|
MenuButton {
|
||||||
id: callListButton
|
visible: mainWindow.conference
|
||||||
Layout.fillWidth: true
|
Layout.fillWidth: true
|
||||||
background: Item {}
|
icon.source: AppIcons.squaresFour
|
||||||
contentItem: RowLayout {
|
icon.width: 32 * DefaultStyle.dp
|
||||||
Image {
|
icon.height: 32 * DefaultStyle.dp
|
||||||
Layout.preferredWidth: 24 * DefaultStyle.dp
|
text: qsTr("Modifier la disposition")
|
||||||
Layout.preferredHeight: 24 * DefaultStyle.dp
|
onClicked: {
|
||||||
fillMode: Image.PreserveAspectFit
|
rightPanel.visible = true
|
||||||
source: AppIcons.callList
|
rightPanel.replace(changeLayoutPanel)
|
||||||
}
|
moreOptionsButton.close()
|
||||||
Text {
|
|
||||||
text: qsTr("Liste d'appel")
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
MenuButton {
|
||||||
|
icon.source: AppIcons.callList
|
||||||
|
Layout.fillWidth: true
|
||||||
|
text: qsTr("Liste d'appel")
|
||||||
onClicked: {
|
onClicked: {
|
||||||
rightPanel.visible = true
|
rightPanel.visible = true
|
||||||
rightPanel.replace(callsListPanel)
|
rightPanel.replace(callsListPanel)
|
||||||
moreOptionsButton.close()
|
moreOptionsButton.close()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Button {
|
MenuButton {
|
||||||
id: dialerButton
|
icon.source: AppIcons.dialer
|
||||||
|
text: qsTr("Dialer")
|
||||||
Layout.fillWidth: true
|
Layout.fillWidth: true
|
||||||
background: Item {}
|
|
||||||
contentItem: RowLayout {
|
|
||||||
Image {
|
|
||||||
Layout.preferredWidth: 24 * DefaultStyle.dp
|
|
||||||
Layout.preferredHeight: 24 * DefaultStyle.dp
|
|
||||||
fillMode: Image.PreserveAspectFit
|
|
||||||
source: AppIcons.dialer
|
|
||||||
}
|
|
||||||
Text {
|
|
||||||
text: qsTr("Dialer")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
onClicked: {
|
onClicked: {
|
||||||
rightPanel.visible = true
|
rightPanel.visible = true
|
||||||
rightPanel.replace(dialerPanel)
|
rightPanel.replace(dialerPanel)
|
||||||
moreOptionsButton.close()
|
moreOptionsButton.close()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Button {
|
MenuButton {
|
||||||
id: recordButton
|
|
||||||
Layout.fillWidth: true
|
|
||||||
enabled: mainWindow.call && mainWindow.call.core.recordable
|
|
||||||
checkable: true
|
checkable: true
|
||||||
background: Item {}
|
enabled: mainWindow.call && mainWindow.call.core.recordable
|
||||||
contentItem: RowLayout {
|
icon.source: AppIcons.recordFill
|
||||||
EffectImage {
|
icon.width: 32 * DefaultStyle.dp
|
||||||
Layout.preferredWidth: 24 * DefaultStyle.dp
|
icon.height: 32 * DefaultStyle.dp
|
||||||
Layout.preferredHeight: 24 * DefaultStyle.dp
|
contentImageColor: down
|
||||||
fillMode: Image.PreserveAspectFit
|
? DefaultStyle.main1_500_main
|
||||||
imageSource: AppIcons.recordFill
|
:mainWindow.call && mainWindow.call.core.recording
|
||||||
colorizationColor: mainWindow.call && mainWindow.call.core.recording ? DefaultStyle.danger_500main : undefined
|
? DefaultStyle.danger_500main
|
||||||
}
|
: DefaultStyle.main2_500main
|
||||||
Text {
|
text: mainWindow.call && mainWindow.call.core.recording ? qsTr("Terminer l'enregistrement") : qsTr("Enregistrer l'appel")
|
||||||
color: mainWindow.call && mainWindow.call.core.recording ? DefaultStyle.danger_500main : DefaultStyle.main2_600
|
textColor: down
|
||||||
text: mainWindow.call && mainWindow.call.core.recording ? qsTr("Terminer l'enregistrement") : qsTr("Enregistrer l'appel")
|
? DefaultStyle.main1_500_main
|
||||||
}
|
:mainWindow.call && mainWindow.call.core.recording
|
||||||
|
? DefaultStyle.danger_500main
|
||||||
}
|
: DefaultStyle.main2_500main
|
||||||
onClicked: {
|
Layout.fillWidth: true
|
||||||
mainWindow.call && mainWindow.call.core.recording ? mainWindow.call.core.lStopRecording() : mainWindow.call.core.lStartRecording()
|
onCheckedChanged: {
|
||||||
|
if (mainWindow.call)
|
||||||
|
if (mainWindow.call.core.recording) mainWindow.call.core.lStopRecording()
|
||||||
|
else mainWindow.call.core.lStartRecording()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Button {
|
MenuButton {
|
||||||
id: settingsButton
|
|
||||||
Layout.fillWidth: true
|
Layout.fillWidth: true
|
||||||
background: Item{}
|
icon.source: AppIcons.settings
|
||||||
contentItem: RowLayout {
|
text: qsTr("Paramètres")
|
||||||
Image {
|
|
||||||
Layout.preferredWidth: 24 * DefaultStyle.dp
|
|
||||||
Layout.preferredHeight: 24 * DefaultStyle.dp
|
|
||||||
source: AppIcons.settings
|
|
||||||
}
|
|
||||||
Text {
|
|
||||||
text: qsTr("Paramètres")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
onClicked: {
|
onClicked: {
|
||||||
rightPanel.visible = true
|
rightPanel.visible = true
|
||||||
rightPanel.replace(settingsPanel)
|
rightPanel.replace(settingsPanel)
|
||||||
|
|
|
||||||
|
|
@ -107,6 +107,8 @@ ApplicationWindow {
|
||||||
Button {
|
Button {
|
||||||
Layout.preferredWidth: 20 * DefaultStyle.dp
|
Layout.preferredWidth: 20 * DefaultStyle.dp
|
||||||
Layout.preferredHeight: 20 * DefaultStyle.dp
|
Layout.preferredHeight: 20 * DefaultStyle.dp
|
||||||
|
icon.width: 20 * DefaultStyle.dp
|
||||||
|
icon.height: 20 * DefaultStyle.dp
|
||||||
Layout.alignment: Qt.AlignTop | Qt.AlignRight
|
Layout.alignment: Qt.AlignTop | Qt.AlignRight
|
||||||
visible: informationPopup.hovered || hovered
|
visible: informationPopup.hovered || hovered
|
||||||
background: Item{}
|
background: Item{}
|
||||||
|
|
|
||||||
|
|
@ -62,6 +62,7 @@ list(APPEND _LINPHONEAPP_QML_FILES
|
||||||
view/Item/PhoneNumberInput.qml
|
view/Item/PhoneNumberInput.qml
|
||||||
view/Item/Popup.qml
|
view/Item/Popup.qml
|
||||||
view/Item/PopupButton.qml
|
view/Item/PopupButton.qml
|
||||||
|
view/Item/SecurityRadioButton.qml
|
||||||
view/Item/RadioButton.qml
|
view/Item/RadioButton.qml
|
||||||
view/Item/RectangleTest.qml
|
view/Item/RectangleTest.qml
|
||||||
view/Item/RoundedBackgroundControl.qml
|
view/Item/RoundedBackgroundControl.qml
|
||||||
|
|
|
||||||
|
|
@ -18,8 +18,6 @@ Control.Button {
|
||||||
property bool shadowEnabled: false
|
property bool shadowEnabled: false
|
||||||
property var contentImageColor
|
property var contentImageColor
|
||||||
hoverEnabled: true
|
hoverEnabled: true
|
||||||
icon.width: width
|
|
||||||
icon.height: height
|
|
||||||
|
|
||||||
// leftPadding: 20 * DefaultStyle.dp
|
// leftPadding: 20 * DefaultStyle.dp
|
||||||
// rightPadding: 20 * DefaultStyle.dp
|
// rightPadding: 20 * DefaultStyle.dp
|
||||||
|
|
@ -105,12 +103,18 @@ Control.Button {
|
||||||
|
|
||||||
width: mainItem.width
|
width: mainItem.width
|
||||||
RowLayout {
|
RowLayout {
|
||||||
spacing: 10 * DefaultStyle.dp
|
spacing: mainItem.spacing
|
||||||
ButtonImage{}
|
ButtonImage{
|
||||||
|
Layout.preferredWidth: mainItem.icon.width
|
||||||
|
Layout.preferredHeight: mainItem.icon.height
|
||||||
|
}
|
||||||
ButtonText{}
|
ButtonText{}
|
||||||
}
|
}
|
||||||
ButtonText {}
|
ButtonText {}
|
||||||
ButtonImage{}
|
ButtonImage{
|
||||||
|
Layout.preferredWidth: mainItem.icon.width
|
||||||
|
Layout.preferredHeight: mainItem.icon.height
|
||||||
|
}
|
||||||
Item {
|
Item {
|
||||||
Layout.fillWidth : true
|
Layout.fillWidth : true
|
||||||
Layout.fillHeight : true
|
Layout.fillHeight : true
|
||||||
|
|
|
||||||
|
|
@ -45,8 +45,10 @@ ListView {
|
||||||
Layout.fillWidth: true
|
Layout.fillWidth: true
|
||||||
}
|
}
|
||||||
Button {
|
Button {
|
||||||
Layout.preferredWidth: 10 * DefaultStyle.dp
|
Layout.preferredWidth: 20 * DefaultStyle.dp
|
||||||
Layout.preferredHeight: 20 * DefaultStyle.dp
|
Layout.preferredHeight: 20 * DefaultStyle.dp
|
||||||
|
icon.width: width
|
||||||
|
icon.height: height
|
||||||
background: Item{}
|
background: Item{}
|
||||||
icon.source: AppIcons.leftArrow
|
icon.source: AppIcons.leftArrow
|
||||||
onClicked: if (mainItem.currentIndex > 0) --mainItem.currentIndex
|
onClicked: if (mainItem.currentIndex > 0) --mainItem.currentIndex
|
||||||
|
|
@ -54,6 +56,8 @@ ListView {
|
||||||
Button {
|
Button {
|
||||||
Layout.preferredWidth: 20 * DefaultStyle.dp
|
Layout.preferredWidth: 20 * DefaultStyle.dp
|
||||||
Layout.preferredHeight: 20 * DefaultStyle.dp
|
Layout.preferredHeight: 20 * DefaultStyle.dp
|
||||||
|
icon.width: width
|
||||||
|
icon.height: height
|
||||||
background: Item{}
|
background: Item{}
|
||||||
icon.source: AppIcons.rightArrow
|
icon.source: AppIcons.rightArrow
|
||||||
onClicked: if (mainItem.currentIndex < mainItem.count) ++mainItem.currentIndex
|
onClicked: if (mainItem.currentIndex < mainItem.count) ++mainItem.currentIndex
|
||||||
|
|
|
||||||
|
|
@ -50,6 +50,8 @@ Item {
|
||||||
icon.source:AppIcons.closeX
|
icon.source:AppIcons.closeX
|
||||||
width: 24 * DefaultStyle.dp
|
width: 24 * DefaultStyle.dp
|
||||||
height: 24 * DefaultStyle.dp
|
height: 24 * DefaultStyle.dp
|
||||||
|
icon.width: 24 * DefaultStyle.dp
|
||||||
|
icon.height: 24 * DefaultStyle.dp
|
||||||
contentItem: Image {
|
contentItem: Image {
|
||||||
anchors.fill: parent
|
anchors.fill: parent
|
||||||
source: AppIcons.closeX
|
source: AppIcons.closeX
|
||||||
|
|
|
||||||
|
|
@ -21,7 +21,6 @@ ColumnLayout {
|
||||||
Control.StackView.onActivated: {
|
Control.StackView.onActivated: {
|
||||||
rightPanelTitle.text = qsTr("Paramètres")
|
rightPanelTitle.text = qsTr("Paramètres")
|
||||||
}
|
}
|
||||||
backgroundColor: DefaultStyle.main2_0
|
|
||||||
height: contentItem.implicitHeight + topPadding + bottomPadding
|
height: contentItem.implicitHeight + topPadding + bottomPadding
|
||||||
Layout.fillWidth: true
|
Layout.fillWidth: true
|
||||||
topPadding: 25 * DefaultStyle.dp
|
topPadding: 25 * DefaultStyle.dp
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,9 @@ Control.Page {
|
||||||
signal validateRequested()
|
signal validateRequested()
|
||||||
|
|
||||||
topPadding: 16 * DefaultStyle.dp
|
topPadding: 16 * DefaultStyle.dp
|
||||||
leftPadding: 16 * DefaultStyle.dp
|
bottomPadding: 16 * DefaultStyle.dp
|
||||||
|
leftPadding: 17 * DefaultStyle.dp
|
||||||
|
rightPadding: 17 * DefaultStyle.dp
|
||||||
|
|
||||||
background: Rectangle {
|
background: Rectangle {
|
||||||
width: mainItem.width
|
width: mainItem.width
|
||||||
|
|
|
||||||
|
|
@ -41,6 +41,8 @@ RowLayout {
|
||||||
contentImageColor: DefaultStyle.main2_0
|
contentImageColor: DefaultStyle.main2_0
|
||||||
Layout.preferredWidth: 55 * DefaultStyle.dp
|
Layout.preferredWidth: 55 * DefaultStyle.dp
|
||||||
Layout.preferredHeight: 55 * DefaultStyle.dp
|
Layout.preferredHeight: 55 * DefaultStyle.dp
|
||||||
|
icon.width: 32 * DefaultStyle.dp
|
||||||
|
icon.height: 32 * DefaultStyle.dp
|
||||||
onCheckedChanged: mainItem.cameraEnabled = !mainItem.cameraEnabled
|
onCheckedChanged: mainItem.cameraEnabled = !mainItem.cameraEnabled
|
||||||
}
|
}
|
||||||
CheckableButton {
|
CheckableButton {
|
||||||
|
|
@ -51,6 +53,8 @@ RowLayout {
|
||||||
contentImageColor: DefaultStyle.main2_0
|
contentImageColor: DefaultStyle.main2_0
|
||||||
Layout.preferredWidth: 55 * DefaultStyle.dp
|
Layout.preferredWidth: 55 * DefaultStyle.dp
|
||||||
Layout.preferredHeight: 55 * DefaultStyle.dp
|
Layout.preferredHeight: 55 * DefaultStyle.dp
|
||||||
|
icon.width: 32 * DefaultStyle.dp
|
||||||
|
icon.height: 32 * DefaultStyle.dp
|
||||||
onCheckedChanged: mainItem.microEnabled = !mainItem.microEnabled
|
onCheckedChanged: mainItem.microEnabled = !mainItem.microEnabled
|
||||||
}
|
}
|
||||||
CheckableButton {
|
CheckableButton {
|
||||||
|
|
@ -62,6 +66,8 @@ RowLayout {
|
||||||
contentImageColor: checked ? DefaultStyle.grey_500 : DefaultStyle.grey_0
|
contentImageColor: checked ? DefaultStyle.grey_500 : DefaultStyle.grey_0
|
||||||
Layout.preferredWidth: 55 * DefaultStyle.dp
|
Layout.preferredWidth: 55 * DefaultStyle.dp
|
||||||
Layout.preferredHeight: 55 * DefaultStyle.dp
|
Layout.preferredHeight: 55 * DefaultStyle.dp
|
||||||
|
icon.width: 24 * DefaultStyle.dp
|
||||||
|
icon.height: 24 * DefaultStyle.dp
|
||||||
}
|
}
|
||||||
CheckableButton {
|
CheckableButton {
|
||||||
id: speakerButton
|
id: speakerButton
|
||||||
|
|
@ -72,6 +78,8 @@ RowLayout {
|
||||||
contentImageColor: checked ? DefaultStyle.grey_500 : DefaultStyle.grey_0
|
contentImageColor: checked ? DefaultStyle.grey_500 : DefaultStyle.grey_0
|
||||||
Layout.preferredWidth: 55 * DefaultStyle.dp
|
Layout.preferredWidth: 55 * DefaultStyle.dp
|
||||||
Layout.preferredHeight: 55 * DefaultStyle.dp
|
Layout.preferredHeight: 55 * DefaultStyle.dp
|
||||||
|
icon.width: 32 * DefaultStyle.dp
|
||||||
|
icon.height: 32 * DefaultStyle.dp
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -36,6 +36,8 @@ ColumnLayout {
|
||||||
width: 24 * DefaultStyle.dp
|
width: 24 * DefaultStyle.dp
|
||||||
height: 24 * DefaultStyle.dp
|
height: 24 * DefaultStyle.dp
|
||||||
icon.source: AppIcons.closeX
|
icon.source: AppIcons.closeX
|
||||||
|
icon.width: 24 * DefaultStyle.dp
|
||||||
|
icon.height: 24 * DefaultStyle.dp
|
||||||
onClicked: {
|
onClicked: {
|
||||||
// contact.core.pictureUri = mainItem.oldPictureUri
|
// contact.core.pictureUri = mainItem.oldPictureUri
|
||||||
mainItem.contact.core.undo()
|
mainItem.contact.core.undo()
|
||||||
|
|
@ -166,6 +168,8 @@ ColumnLayout {
|
||||||
icon.source: AppIcons.closeX
|
icon.source: AppIcons.closeX
|
||||||
width: 24 * DefaultStyle.dp
|
width: 24 * DefaultStyle.dp
|
||||||
height: 24 * DefaultStyle.dp
|
height: 24 * DefaultStyle.dp
|
||||||
|
icon.width: 24 * DefaultStyle.dp
|
||||||
|
icon.height: 24 * DefaultStyle.dp
|
||||||
onClicked: mainItem.contact.core.removeAddress(index)
|
onClicked: mainItem.contact.core.removeAddress(index)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -209,6 +213,8 @@ ColumnLayout {
|
||||||
icon.source: AppIcons.closeX
|
icon.source: AppIcons.closeX
|
||||||
width: 24 * DefaultStyle.dp
|
width: 24 * DefaultStyle.dp
|
||||||
height: 24 * DefaultStyle.dp
|
height: 24 * DefaultStyle.dp
|
||||||
|
icon.width: 24 * DefaultStyle.dp
|
||||||
|
icon.height: 24 * DefaultStyle.dp
|
||||||
onClicked: mainItem.contact.core.removePhoneNumber(index)
|
onClicked: mainItem.contact.core.removePhoneNumber(index)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -26,6 +26,8 @@ Loader {
|
||||||
sourceSize.height: height
|
sourceSize.height: height
|
||||||
width: mainItem.imageWidth
|
width: mainItem.imageWidth
|
||||||
height: mainItem.imageHeight
|
height: mainItem.imageHeight
|
||||||
|
Layout.preferredWidth: mainItem.imageWidth
|
||||||
|
Layout.preferredHeight: mainItem.imageHeight
|
||||||
anchors.centerIn: parent
|
anchors.centerIn: parent
|
||||||
}
|
}
|
||||||
MultiEffect {
|
MultiEffect {
|
||||||
|
|
|
||||||
|
|
@ -37,6 +37,8 @@ ColumnLayout {
|
||||||
icon.source: AppIcons.leftArrow
|
icon.source: AppIcons.leftArrow
|
||||||
Layout.preferredWidth: 24 * DefaultStyle.dp
|
Layout.preferredWidth: 24 * DefaultStyle.dp
|
||||||
Layout.preferredHeight: 24 * DefaultStyle.dp
|
Layout.preferredHeight: 24 * DefaultStyle.dp
|
||||||
|
icon.width: 24 * DefaultStyle.dp
|
||||||
|
icon.height: 24 * DefaultStyle.dp
|
||||||
onClicked: mainItem.returnRequested()
|
onClicked: mainItem.returnRequested()
|
||||||
}
|
}
|
||||||
TextInput {
|
TextInput {
|
||||||
|
|
@ -118,6 +120,8 @@ ColumnLayout {
|
||||||
CheckableButton {
|
CheckableButton {
|
||||||
Layout.preferredWidth: 151 * DefaultStyle.dp
|
Layout.preferredWidth: 151 * DefaultStyle.dp
|
||||||
icon.source: AppIcons.usersThree
|
icon.source: AppIcons.usersThree
|
||||||
|
icon.width: 24 * DefaultStyle.dp
|
||||||
|
icon.height: 24 * DefaultStyle.dp
|
||||||
enabled: false
|
enabled: false
|
||||||
text: qsTr("Réunion")
|
text: qsTr("Réunion")
|
||||||
checked: true
|
checked: true
|
||||||
|
|
@ -126,6 +130,8 @@ ColumnLayout {
|
||||||
Layout.preferredWidth: 151 * DefaultStyle.dp
|
Layout.preferredWidth: 151 * DefaultStyle.dp
|
||||||
enabled: false
|
enabled: false
|
||||||
icon.source: AppIcons.slide
|
icon.source: AppIcons.slide
|
||||||
|
icon.width: 24 * DefaultStyle.dp
|
||||||
|
icon.height: 24 * DefaultStyle.dp
|
||||||
text: qsTr("Broadcast")
|
text: qsTr("Broadcast")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -477,6 +483,8 @@ ColumnLayout {
|
||||||
Button {
|
Button {
|
||||||
Layout.preferredWidth: 24 * DefaultStyle.dp
|
Layout.preferredWidth: 24 * DefaultStyle.dp
|
||||||
Layout.preferredHeight: 24 * DefaultStyle.dp
|
Layout.preferredHeight: 24 * DefaultStyle.dp
|
||||||
|
icon.width: 24 * DefaultStyle.dp
|
||||||
|
icon.height: 24 * DefaultStyle.dp
|
||||||
Layout.rightMargin: 10 * DefaultStyle.dp
|
Layout.rightMargin: 10 * DefaultStyle.dp
|
||||||
background: Item{}
|
background: Item{}
|
||||||
icon.source: AppIcons.closeX
|
icon.source: AppIcons.closeX
|
||||||
|
|
|
||||||
|
|
@ -54,6 +54,8 @@ Control.Popup {
|
||||||
icon.source: AppIcons.closeX
|
icon.source: AppIcons.closeX
|
||||||
width: 24 * DefaultStyle.dp
|
width: 24 * DefaultStyle.dp
|
||||||
height: 24 * DefaultStyle.dp
|
height: 24 * DefaultStyle.dp
|
||||||
|
icon.width: 24 * DefaultStyle.dp
|
||||||
|
icon.height: 24 * DefaultStyle.dp
|
||||||
onClicked: mainItem.close()
|
onClicked: mainItem.close()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -17,8 +17,8 @@ Button {
|
||||||
topPadding: 0
|
topPadding: 0
|
||||||
bottomPadding: 0
|
bottomPadding: 0
|
||||||
icon.source: AppIcons.more
|
icon.source: AppIcons.more
|
||||||
icon.width: width
|
icon.width: 24 * DefaultStyle.dp
|
||||||
icon.height: height
|
icon.height: 24 * DefaultStyle.dp
|
||||||
function close() {
|
function close() {
|
||||||
popup.close()
|
popup.close()
|
||||||
}
|
}
|
||||||
|
|
@ -44,6 +44,7 @@ Button {
|
||||||
x: - width
|
x: - width
|
||||||
y: mainItem.height
|
y: mainItem.height
|
||||||
closePolicy: Popup.CloseOnPressOutsideParent | Popup.CloseOnPressOutside
|
closePolicy: Popup.CloseOnPressOutsideParent | Popup.CloseOnPressOutside
|
||||||
|
padding: 10 * DefaultStyle.dp
|
||||||
parent: mainItem // Explicit define for coordinates references.
|
parent: mainItem // Explicit define for coordinates references.
|
||||||
|
|
||||||
onAboutToShow: {
|
onAboutToShow: {
|
||||||
|
|
@ -57,8 +58,6 @@ Button {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
padding: 20 * DefaultStyle.dp
|
|
||||||
|
|
||||||
background: Item {
|
background: Item {
|
||||||
anchors.fill: parent
|
anchors.fill: parent
|
||||||
Rectangle {
|
Rectangle {
|
||||||
|
|
|
||||||
|
|
@ -10,6 +10,7 @@ Control.RadioButton {
|
||||||
property string imgUrl
|
property string imgUrl
|
||||||
property color color
|
property color color
|
||||||
hoverEnabled: true
|
hoverEnabled: true
|
||||||
|
property int indicatorSize: 16 * DefaultStyle.dp
|
||||||
|
|
||||||
MouseArea {
|
MouseArea {
|
||||||
anchors.fill: parent
|
anchors.fill: parent
|
||||||
|
|
@ -18,82 +19,23 @@ Control.RadioButton {
|
||||||
onClicked: if (!mainItem.checked) mainItem.toggle()
|
onClicked: if (!mainItem.checked) mainItem.toggle()
|
||||||
}
|
}
|
||||||
|
|
||||||
background: Rectangle {
|
indicator: Rectangle {
|
||||||
color: DefaultStyle.grey_100
|
implicitWidth: mainItem.indicatorSize
|
||||||
border.color: mainItem.checked ? mainItem.color : "transparent"
|
implicitHeight: mainItem.indicatorSize
|
||||||
radius: 20 * DefaultStyle.dp
|
radius: implicitWidth/2
|
||||||
}
|
color: "transparent"
|
||||||
|
border.color: mainItem.color
|
||||||
|
border.width: 2 * DefaultStyle.dp
|
||||||
|
anchors.verticalCenter: mainItem.verticalCenter
|
||||||
|
|
||||||
indicator: RowLayout {
|
|
||||||
anchors.left: parent.left
|
|
||||||
anchors.leftMargin: 13 * DefaultStyle.dp
|
|
||||||
anchors.top: parent.top
|
|
||||||
anchors.topMargin: 8 * DefaultStyle.dp
|
|
||||||
spacing: 4 * DefaultStyle.dp
|
|
||||||
Rectangle {
|
Rectangle {
|
||||||
implicitWidth: 16 * DefaultStyle.dp
|
width: parent.width/2
|
||||||
implicitHeight: 16 * DefaultStyle.dp
|
height: parent.height/2
|
||||||
radius: implicitWidth/2
|
x: parent.width/4
|
||||||
border.color: mainItem.color
|
y: parent.width/4
|
||||||
|
radius: width/2
|
||||||
Rectangle {
|
color: mainItem.color
|
||||||
width: parent.width/2
|
visible: mainItem.checked
|
||||||
height: parent.height/2
|
|
||||||
x: parent.width/4
|
|
||||||
y: parent.width/4
|
|
||||||
radius: width/2
|
|
||||||
color: mainItem.color
|
|
||||||
visible: mainItem.checked
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Text {
|
|
||||||
text: mainItem.title
|
|
||||||
font.bold: true
|
|
||||||
color: DefaultStyle.grey_900
|
|
||||||
font.pixelSize: 16 * DefaultStyle.dp
|
|
||||||
}
|
|
||||||
Button {
|
|
||||||
padding: 0
|
|
||||||
background: Item {
|
|
||||||
visible: false
|
|
||||||
}
|
|
||||||
icon.source: AppIcons.info
|
|
||||||
Layout.preferredWidth: 2 * DefaultStyle.dp
|
|
||||||
Layout.preferredHeight: 2 * DefaultStyle.dp
|
|
||||||
width: 2 * DefaultStyle.dp
|
|
||||||
height: 2 * DefaultStyle.dp
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
contentItem: ColumnLayout {
|
|
||||||
anchors.top: indicator.bottom
|
|
||||||
anchors.bottom: parent.bottom
|
|
||||||
anchors.left: parent.left
|
|
||||||
anchors.right: parent.right
|
|
||||||
anchors.leftMargin: 13 * DefaultStyle.dp
|
|
||||||
RowLayout {
|
|
||||||
Layout.fillWidth: true
|
|
||||||
Layout.fillHeight: true
|
|
||||||
Layout.bottomMargin: 10 * DefaultStyle.dp
|
|
||||||
Layout.rightMargin: 10 * DefaultStyle.dp
|
|
||||||
Layout.alignment: Qt.AlignVCenter
|
|
||||||
Text {
|
|
||||||
id: innerText
|
|
||||||
verticalAlignment: Text.AlignVCenter
|
|
||||||
Layout.preferredWidth: 220 * DefaultStyle.dp
|
|
||||||
Layout.preferredHeight: 100 * DefaultStyle.dp
|
|
||||||
font.pixelSize: 14 * DefaultStyle.dp
|
|
||||||
text: mainItem.contentText
|
|
||||||
Layout.fillHeight: true
|
|
||||||
}
|
|
||||||
Image {
|
|
||||||
id: image
|
|
||||||
Layout.fillHeight: true
|
|
||||||
Layout.preferredWidth: 100 * DefaultStyle.dp
|
|
||||||
Layout.preferredHeight: 100 * DefaultStyle.dp
|
|
||||||
fillMode: Image.PreserveAspectFit
|
|
||||||
source: mainItem.imgUrl
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -11,9 +11,5 @@ Control.Control {
|
||||||
anchors.fill: parent
|
anchors.fill: parent
|
||||||
radius: 15 * DefaultStyle.dp
|
radius: 15 * DefaultStyle.dp
|
||||||
color: mainItem.backgroundColor
|
color: mainItem.backgroundColor
|
||||||
anchors.leftMargin: 10 * DefaultStyle.dp
|
|
||||||
anchors.rightMargin: 10 * DefaultStyle.dp
|
|
||||||
anchors.topMargin: 10 * DefaultStyle.dp
|
|
||||||
anchors.bottomMargin: 10 * DefaultStyle.dp
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -82,6 +82,8 @@ Rectangle {
|
||||||
icon.source: dialerButton.checked ? AppIcons.dialerSelected : AppIcons.dialer
|
icon.source: dialerButton.checked ? AppIcons.dialerSelected : AppIcons.dialer
|
||||||
width: 24 * DefaultStyle.dp
|
width: 24 * DefaultStyle.dp
|
||||||
height: 24 * DefaultStyle.dp
|
height: 24 * DefaultStyle.dp
|
||||||
|
icon.width: 24 * DefaultStyle.dp
|
||||||
|
icon.height: 24 * DefaultStyle.dp
|
||||||
anchors.verticalCenter: parent.verticalCenter
|
anchors.verticalCenter: parent.verticalCenter
|
||||||
anchors.right: parent.right
|
anchors.right: parent.right
|
||||||
anchors.rightMargin: 15 * DefaultStyle.dp
|
anchors.rightMargin: 15 * DefaultStyle.dp
|
||||||
|
|
@ -99,6 +101,8 @@ Rectangle {
|
||||||
width: 24 * DefaultStyle.dp
|
width: 24 * DefaultStyle.dp
|
||||||
height: 24 * DefaultStyle.dp
|
height: 24 * DefaultStyle.dp
|
||||||
icon.source: AppIcons.closeX
|
icon.source: AppIcons.closeX
|
||||||
|
icon.width: 24 * DefaultStyle.dp
|
||||||
|
icon.height: 24 * DefaultStyle.dp
|
||||||
anchors.top: parent.top
|
anchors.top: parent.top
|
||||||
anchors.bottom: parent.bottom
|
anchors.bottom: parent.bottom
|
||||||
anchors.right: parent.right
|
anchors.right: parent.right
|
||||||
|
|
|
||||||
102
Linphone/view/Item/SecurityRadioButton.qml
Normal file
102
Linphone/view/Item/SecurityRadioButton.qml
Normal file
|
|
@ -0,0 +1,102 @@
|
||||||
|
import QtQuick 2.7
|
||||||
|
import QtQuick.Controls 2.2 as Control
|
||||||
|
import QtQuick.Layouts
|
||||||
|
import Linphone
|
||||||
|
|
||||||
|
Control.RadioButton {
|
||||||
|
id: mainItem
|
||||||
|
property string title
|
||||||
|
property string contentText
|
||||||
|
property string imgUrl
|
||||||
|
property color color
|
||||||
|
hoverEnabled: true
|
||||||
|
|
||||||
|
MouseArea {
|
||||||
|
anchors.fill: parent
|
||||||
|
hoverEnabled: false
|
||||||
|
cursorShape: mainItem.hovered ? Qt.PointingHandCursor : Qt.ArrowCursor
|
||||||
|
onClicked: if (!mainItem.checked) mainItem.toggle()
|
||||||
|
}
|
||||||
|
|
||||||
|
background: Rectangle {
|
||||||
|
color: DefaultStyle.grey_100
|
||||||
|
border.color: mainItem.checked ? mainItem.color : "transparent"
|
||||||
|
radius: 20 * DefaultStyle.dp
|
||||||
|
}
|
||||||
|
|
||||||
|
indicator: RowLayout {
|
||||||
|
anchors.left: parent.left
|
||||||
|
anchors.leftMargin: 13 * DefaultStyle.dp
|
||||||
|
anchors.top: parent.top
|
||||||
|
anchors.topMargin: 8 * DefaultStyle.dp
|
||||||
|
spacing: 4 * DefaultStyle.dp
|
||||||
|
Rectangle {
|
||||||
|
implicitWidth: 16 * DefaultStyle.dp
|
||||||
|
implicitHeight: 16 * DefaultStyle.dp
|
||||||
|
radius: implicitWidth/2
|
||||||
|
border.color: mainItem.color
|
||||||
|
|
||||||
|
Rectangle {
|
||||||
|
width: parent.width/2
|
||||||
|
height: parent.height/2
|
||||||
|
x: parent.width/4
|
||||||
|
y: parent.width/4
|
||||||
|
radius: width/2
|
||||||
|
color: mainItem.color
|
||||||
|
visible: mainItem.checked
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Text {
|
||||||
|
visible: mainItem.title.length > 0
|
||||||
|
text: mainItem.title
|
||||||
|
font.bold: true
|
||||||
|
color: DefaultStyle.grey_900
|
||||||
|
font.pixelSize: 16 * DefaultStyle.dp
|
||||||
|
}
|
||||||
|
Button {
|
||||||
|
padding: 0
|
||||||
|
background: Item {
|
||||||
|
visible: false
|
||||||
|
}
|
||||||
|
icon.source: AppIcons.info
|
||||||
|
Layout.preferredWidth: 2 * DefaultStyle.dp
|
||||||
|
Layout.preferredHeight: 2 * DefaultStyle.dp
|
||||||
|
width: 2 * DefaultStyle.dp
|
||||||
|
height: 2 * DefaultStyle.dp
|
||||||
|
icon.width: 2 * DefaultStyle.dp
|
||||||
|
icon.height: 2 * DefaultStyle.dp
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
contentItem: ColumnLayout {
|
||||||
|
anchors.top: indicator.bottom
|
||||||
|
anchors.bottom: parent.bottom
|
||||||
|
anchors.left: parent.left
|
||||||
|
anchors.right: parent.right
|
||||||
|
anchors.leftMargin: 13 * DefaultStyle.dp
|
||||||
|
RowLayout {
|
||||||
|
Layout.fillWidth: true
|
||||||
|
Layout.fillHeight: true
|
||||||
|
Layout.bottomMargin: 10 * DefaultStyle.dp
|
||||||
|
Layout.rightMargin: 10 * DefaultStyle.dp
|
||||||
|
Layout.alignment: Qt.AlignVCenter
|
||||||
|
Text {
|
||||||
|
id: innerText
|
||||||
|
verticalAlignment: Text.AlignVCenter
|
||||||
|
Layout.preferredWidth: 220 * DefaultStyle.dp
|
||||||
|
Layout.preferredHeight: 100 * DefaultStyle.dp
|
||||||
|
font.pixelSize: 14 * DefaultStyle.dp
|
||||||
|
text: mainItem.contentText
|
||||||
|
Layout.fillHeight: true
|
||||||
|
}
|
||||||
|
Image {
|
||||||
|
id: image
|
||||||
|
Layout.fillHeight: true
|
||||||
|
Layout.preferredWidth: 100 * DefaultStyle.dp
|
||||||
|
Layout.preferredHeight: 100 * DefaultStyle.dp
|
||||||
|
fillMode: Image.PreserveAspectFit
|
||||||
|
source: mainItem.imgUrl
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -106,6 +106,8 @@ Control.TextField {
|
||||||
icon.source: eyeButton.checked ? AppIcons.eyeShow : AppIcons.eyeHide
|
icon.source: eyeButton.checked ? AppIcons.eyeShow : AppIcons.eyeHide
|
||||||
width: 20 * DefaultStyle.dp
|
width: 20 * DefaultStyle.dp
|
||||||
height: 20 * DefaultStyle.dp
|
height: 20 * DefaultStyle.dp
|
||||||
|
icon.width: 20 * DefaultStyle.dp
|
||||||
|
icon.height: 20 * DefaultStyle.dp
|
||||||
anchors.top: parent.top
|
anchors.top: parent.top
|
||||||
anchors.bottom: parent.bottom
|
anchors.bottom: parent.bottom
|
||||||
anchors.right: parent.right
|
anchors.right: parent.right
|
||||||
|
|
|
||||||
|
|
@ -31,6 +31,8 @@ ColumnLayout {
|
||||||
contentImageColor: DefaultStyle.main1_500_main
|
contentImageColor: DefaultStyle.main1_500_main
|
||||||
Layout.preferredWidth: 24 * DefaultStyle.dp
|
Layout.preferredWidth: 24 * DefaultStyle.dp
|
||||||
Layout.preferredHeight: 24 * DefaultStyle.dp
|
Layout.preferredHeight: 24 * DefaultStyle.dp
|
||||||
|
icon.width: 24 * DefaultStyle.dp
|
||||||
|
icon.height: 24 * DefaultStyle.dp
|
||||||
onClicked: mainItem.returnRequested()
|
onClicked: mainItem.returnRequested()
|
||||||
}
|
}
|
||||||
Text {
|
Text {
|
||||||
|
|
@ -91,6 +93,8 @@ ColumnLayout {
|
||||||
Layout.preferredHeight: 24 * DefaultStyle.dp
|
Layout.preferredHeight: 24 * DefaultStyle.dp
|
||||||
background: Item{}
|
background: Item{}
|
||||||
icon.source: AppIcons.closeX
|
icon.source: AppIcons.closeX
|
||||||
|
icon.width: 24 * DefaultStyle.dp
|
||||||
|
icon.height: 24 * DefaultStyle.dp
|
||||||
contentImageColor: DefaultStyle.main1_500_main
|
contentImageColor: DefaultStyle.main1_500_main
|
||||||
onClicked: contactList.selectedContacts.splice(index, 1)
|
onClicked: contactList.selectedContacts.splice(index, 1)
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -18,6 +18,8 @@ LoginLayout {
|
||||||
Layout.preferredHeight: 27 * DefaultStyle.dp
|
Layout.preferredHeight: 27 * DefaultStyle.dp
|
||||||
Layout.preferredWidth: 27 * DefaultStyle.dp
|
Layout.preferredWidth: 27 * DefaultStyle.dp
|
||||||
icon.source: AppIcons.leftArrow
|
icon.source: AppIcons.leftArrow
|
||||||
|
icon.width: 27 * DefaultStyle.dp
|
||||||
|
icon.height: 27 * DefaultStyle.dp
|
||||||
background: Rectangle {
|
background: Rectangle {
|
||||||
color: "transparent"
|
color: "transparent"
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,8 @@ LoginLayout {
|
||||||
Layout.preferredHeight: 24 * DefaultStyle.dp
|
Layout.preferredHeight: 24 * DefaultStyle.dp
|
||||||
Layout.preferredWidth: 24 * DefaultStyle.dp
|
Layout.preferredWidth: 24 * DefaultStyle.dp
|
||||||
icon.source: AppIcons.leftArrow
|
icon.source: AppIcons.leftArrow
|
||||||
|
icon.width: 24 * DefaultStyle.dp
|
||||||
|
icon.height: 24 * DefaultStyle.dp
|
||||||
background: Rectangle {
|
background: Rectangle {
|
||||||
color: "transparent"
|
color: "transparent"
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -15,8 +15,8 @@ LoginLayout {
|
||||||
Layout.preferredHeight: 24 * DefaultStyle.dp
|
Layout.preferredHeight: 24 * DefaultStyle.dp
|
||||||
Layout.preferredWidth: 24 * DefaultStyle.dp
|
Layout.preferredWidth: 24 * DefaultStyle.dp
|
||||||
icon.source: AppIcons.leftArrow
|
icon.source: AppIcons.leftArrow
|
||||||
width: 24 * DefaultStyle.dp
|
icon.width: 24 * DefaultStyle.dp
|
||||||
height: 24 * DefaultStyle.dp
|
icon.height: 24 * DefaultStyle.dp
|
||||||
background: Item {
|
background: Item {
|
||||||
anchors.fill: parent
|
anchors.fill: parent
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -45,7 +45,7 @@ LoginLayout {
|
||||||
{checked: true, title: qsTr("Chiffrement de bout en bout"), text: qsTr("Ce mode vous garanti la confidentialité de tous vos échanges. Notre technologie de chiffrement de bout en bout assure un niveau de sécurité maximal pour tous vos échanges."), imgUrl: AppIcons.chiffrement, color: DefaultStyle.info_500_main},
|
{checked: true, title: qsTr("Chiffrement de bout en bout"), text: qsTr("Ce mode vous garanti la confidentialité de tous vos échanges. Notre technologie de chiffrement de bout en bout assure un niveau de sécurité maximal pour tous vos échanges."), imgUrl: AppIcons.chiffrement, color: DefaultStyle.info_500_main},
|
||||||
{checked: false, title: qsTr("Interoperable"), text: qsTr("Ce mode vous permet de profiter de toute les fonctionnalités de Linphone, toute en restant interopérable avec n’importe qu’elle autre service SIP."), imgUrl: AppIcons.interoperable, color: DefaultStyle.main1_500_main}
|
{checked: false, title: qsTr("Interoperable"), text: qsTr("Ce mode vous permet de profiter de toute les fonctionnalités de Linphone, toute en restant interopérable avec n’importe qu’elle autre service SIP."), imgUrl: AppIcons.interoperable, color: DefaultStyle.main1_500_main}
|
||||||
]
|
]
|
||||||
RadioButton {
|
SecurityRadioButton {
|
||||||
title: modelData.title
|
title: modelData.title
|
||||||
contentText: modelData.text
|
contentText: modelData.text
|
||||||
imgUrl: modelData.imgUrl
|
imgUrl: modelData.imgUrl
|
||||||
|
|
|
||||||
|
|
@ -118,6 +118,8 @@ AbstractMainPage {
|
||||||
icon.source: AppIcons.newCall
|
icon.source: AppIcons.newCall
|
||||||
Layout.preferredWidth: 28 * DefaultStyle.dp
|
Layout.preferredWidth: 28 * DefaultStyle.dp
|
||||||
Layout.preferredHeight: 28 * DefaultStyle.dp
|
Layout.preferredHeight: 28 * DefaultStyle.dp
|
||||||
|
icon.width: 28 * DefaultStyle.dp
|
||||||
|
icon.height: 28 * DefaultStyle.dp
|
||||||
onClicked: {
|
onClicked: {
|
||||||
console.debug("[CallPage]User: create new call")
|
console.debug("[CallPage]User: create new call")
|
||||||
listStackView.push(newCallItem)
|
listStackView.push(newCallItem)
|
||||||
|
|
@ -265,6 +267,8 @@ AbstractMainPage {
|
||||||
icon.source: AppIcons.phone
|
icon.source: AppIcons.phone
|
||||||
Layout.preferredWidth: 24 * DefaultStyle.dp
|
Layout.preferredWidth: 24 * DefaultStyle.dp
|
||||||
Layout.preferredHeight: 24 * DefaultStyle.dp
|
Layout.preferredHeight: 24 * DefaultStyle.dp
|
||||||
|
icon.width: 24 * DefaultStyle.dp
|
||||||
|
icon.height: 24 * DefaultStyle.dp
|
||||||
onClicked: {
|
onClicked: {
|
||||||
var addr = UtilsCpp.generateLinphoneSipAddress(modelData.core.remoteAddress)
|
var addr = UtilsCpp.generateLinphoneSipAddress(modelData.core.remoteAddress)
|
||||||
callObj = UtilsCpp.createCall(addr)
|
callObj = UtilsCpp.createCall(addr)
|
||||||
|
|
@ -333,6 +337,8 @@ AbstractMainPage {
|
||||||
Layout.preferredWidth: 24 * DefaultStyle.dp
|
Layout.preferredWidth: 24 * DefaultStyle.dp
|
||||||
Layout.preferredHeight: 24 * DefaultStyle.dp
|
Layout.preferredHeight: 24 * DefaultStyle.dp
|
||||||
icon.source: AppIcons.leftArrow
|
icon.source: AppIcons.leftArrow
|
||||||
|
icon.width: 24 * DefaultStyle.dp
|
||||||
|
icon.height: 24 * DefaultStyle.dp
|
||||||
onClicked: {
|
onClicked: {
|
||||||
console.debug("[CallPage]User: return to call history")
|
console.debug("[CallPage]User: return to call history")
|
||||||
listStackView.pop()
|
listStackView.pop()
|
||||||
|
|
|
||||||
|
|
@ -84,8 +84,8 @@ AbstractMainPage {
|
||||||
icon.source: AppIcons.plusCircle
|
icon.source: AppIcons.plusCircle
|
||||||
Layout.preferredWidth: 30 * DefaultStyle.dp
|
Layout.preferredWidth: 30 * DefaultStyle.dp
|
||||||
Layout.preferredHeight: 30 * DefaultStyle.dp
|
Layout.preferredHeight: 30 * DefaultStyle.dp
|
||||||
width: 30 * DefaultStyle.dp
|
icon.width: 30 * DefaultStyle.dp
|
||||||
height: 30 * DefaultStyle.dp
|
icon.height: 30 * DefaultStyle.dp
|
||||||
onClicked: {
|
onClicked: {
|
||||||
mainItem.createContact("", "")
|
mainItem.createContact("", "")
|
||||||
}
|
}
|
||||||
|
|
@ -161,6 +161,8 @@ AbstractMainPage {
|
||||||
icon.source: favoriteList.visible ? AppIcons.upArrow : AppIcons.downArrow
|
icon.source: favoriteList.visible ? AppIcons.upArrow : AppIcons.downArrow
|
||||||
Layout.preferredWidth: 24 * DefaultStyle.dp
|
Layout.preferredWidth: 24 * DefaultStyle.dp
|
||||||
Layout.preferredHeight: 24 * DefaultStyle.dp
|
Layout.preferredHeight: 24 * DefaultStyle.dp
|
||||||
|
icon.width: 24 * DefaultStyle.dp
|
||||||
|
icon.height: 24 * DefaultStyle.dp
|
||||||
onClicked: favoriteList.visible = !favoriteList.visible
|
onClicked: favoriteList.visible = !favoriteList.visible
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -203,6 +205,8 @@ AbstractMainPage {
|
||||||
icon.source: contactList.visible ? AppIcons.upArrow : AppIcons.downArrow
|
icon.source: contactList.visible ? AppIcons.upArrow : AppIcons.downArrow
|
||||||
Layout.preferredWidth: 24 * DefaultStyle.dp
|
Layout.preferredWidth: 24 * DefaultStyle.dp
|
||||||
Layout.preferredHeight: 24 * DefaultStyle.dp
|
Layout.preferredHeight: 24 * DefaultStyle.dp
|
||||||
|
icon.width: 24 * DefaultStyle.dp
|
||||||
|
icon.height: 24 * DefaultStyle.dp
|
||||||
onClicked: contactList.visible = !contactList.visible
|
onClicked: contactList.visible = !contactList.visible
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -253,6 +257,8 @@ AbstractMainPage {
|
||||||
buttonContent: Button {
|
buttonContent: Button {
|
||||||
width: 24 * DefaultStyle.dp
|
width: 24 * DefaultStyle.dp
|
||||||
height: 24 * DefaultStyle.dp
|
height: 24 * DefaultStyle.dp
|
||||||
|
icon.width: 24 * DefaultStyle.dp
|
||||||
|
icon.height: 24 * DefaultStyle.dp
|
||||||
background: Item{}
|
background: Item{}
|
||||||
onClicked: mainItem.editContact(mainItem.selectedContact)
|
onClicked: mainItem.editContact(mainItem.selectedContact)
|
||||||
icon.source: AppIcons.pencil
|
icon.source: AppIcons.pencil
|
||||||
|
|
@ -326,6 +332,8 @@ AbstractMainPage {
|
||||||
icon.source: AppIcons.phone
|
icon.source: AppIcons.phone
|
||||||
width: 24 * DefaultStyle.dp
|
width: 24 * DefaultStyle.dp
|
||||||
height: 24 * DefaultStyle.dp
|
height: 24 * DefaultStyle.dp
|
||||||
|
icon.width: 24 * DefaultStyle.dp
|
||||||
|
icon.height: 24 * DefaultStyle.dp
|
||||||
onClicked: {
|
onClicked: {
|
||||||
callObj = UtilsCpp.createCall(modelData.address)
|
callObj = UtilsCpp.createCall(modelData.address)
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -16,15 +16,13 @@ AbstractMainPage {
|
||||||
property ConferenceInfoGui selectedConference
|
property ConferenceInfoGui selectedConference
|
||||||
property int meetingListCount
|
property int meetingListCount
|
||||||
signal newConfCreated()
|
signal newConfCreated()
|
||||||
onVisibleChanged: if (visible) rightPanelStackView.push(overridenRightPanel, Control.StackView.Immediate)
|
Component.onCompleted: rightPanelStackView.push(overridenRightPanel, Control.StackView.Immediate)
|
||||||
|
|
||||||
onSelectedConferenceChanged: {
|
onSelectedConferenceChanged: {
|
||||||
overridenRightPanelStackView.clear()
|
overridenRightPanelStackView.clear()
|
||||||
if (selectedConference) {
|
if (selectedConference) {
|
||||||
if (!overridenRightPanelStackView.currentItem || overridenRightPanelStackView.currentItem.objectName != "meetingDetail") overridenRightPanelStackView.replace(meetingDetail, Control.StackView.Immediate)
|
if (!overridenRightPanelStackView.currentItem || overridenRightPanelStackView.currentItem.objectName != "meetingDetail") overridenRightPanelStackView.replace(meetingDetail, Control.StackView.Immediate)
|
||||||
}// else {
|
}
|
||||||
/*if (overridenRightPanelStackView.currentItem && overridenRightPanelStackView.currentItem.objectName === "meetingDetail")*/
|
|
||||||
// }
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Connections {
|
Connections {
|
||||||
|
|
@ -128,8 +126,8 @@ AbstractMainPage {
|
||||||
icon.source: AppIcons.plusCircle
|
icon.source: AppIcons.plusCircle
|
||||||
Layout.preferredWidth: 30 * DefaultStyle.dp
|
Layout.preferredWidth: 30 * DefaultStyle.dp
|
||||||
Layout.preferredHeight: 30 * DefaultStyle.dp
|
Layout.preferredHeight: 30 * DefaultStyle.dp
|
||||||
width: 30 * DefaultStyle.dp
|
icon.width: 24 * DefaultStyle.dp
|
||||||
height: 30 * DefaultStyle.dp
|
icon.height: 24 * DefaultStyle.dp
|
||||||
onClicked: {
|
onClicked: {
|
||||||
mainItem.setUpConference()
|
mainItem.setUpConference()
|
||||||
}
|
}
|
||||||
|
|
@ -298,6 +296,8 @@ AbstractMainPage {
|
||||||
visible: mainItem.selectedConference && UtilsCpp.isMe(mainItem.selectedConference.core.organizerAddress)
|
visible: mainItem.selectedConference && UtilsCpp.isMe(mainItem.selectedConference.core.organizerAddress)
|
||||||
Layout.preferredWidth: 24 * DefaultStyle.dp
|
Layout.preferredWidth: 24 * DefaultStyle.dp
|
||||||
Layout.preferredHeight: 24 * DefaultStyle.dp
|
Layout.preferredHeight: 24 * DefaultStyle.dp
|
||||||
|
icon.width: 24 * DefaultStyle.dp
|
||||||
|
icon.height: 24 * DefaultStyle.dp
|
||||||
icon.source: AppIcons.pencil
|
icon.source: AppIcons.pencil
|
||||||
contentImageColor: DefaultStyle.main1_500_main
|
contentImageColor: DefaultStyle.main1_500_main
|
||||||
background: Item{}
|
background: Item{}
|
||||||
|
|
@ -379,6 +379,8 @@ AbstractMainPage {
|
||||||
Button {
|
Button {
|
||||||
Layout.preferredWidth: 24 * DefaultStyle.dp
|
Layout.preferredWidth: 24 * DefaultStyle.dp
|
||||||
Layout.preferredHeight: 24 * DefaultStyle.dp
|
Layout.preferredHeight: 24 * DefaultStyle.dp
|
||||||
|
icon.width: 24 * DefaultStyle.dp
|
||||||
|
icon.height: 24 * DefaultStyle.dp
|
||||||
background: Item{}
|
background: Item{}
|
||||||
icon.source: AppIcons.shareNetwork
|
icon.source: AppIcons.shareNetwork
|
||||||
onClicked: {
|
onClicked: {
|
||||||
|
|
|
||||||
|
|
@ -81,5 +81,7 @@ QtObject {
|
||||||
property string globe: "image://internal/globe-hemisphere-west.svg"
|
property string globe: "image://internal/globe-hemisphere-west.svg"
|
||||||
property string slide: "image://internal/slideshow.svg"
|
property string slide: "image://internal/slideshow.svg"
|
||||||
property string busyIndicator: "image://internal/busy-indicator.svg"
|
property string busyIndicator: "image://internal/busy-indicator.svg"
|
||||||
property string meeting: "image://internal/reunion.svg"
|
property string pip: "image://internal/pip.svg"
|
||||||
|
property string waveform: "image://internal/waveform.svg"
|
||||||
|
property string squaresFour: "image://internal/squares-four.svg"
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue