mirror of
https://gitlab.linphone.org/BC/public/linphone-desktop.git
synced 2026-01-23 06:38:07 +00:00
fix(ExclusiveButtons): supports unlimited buttons
This commit is contained in:
parent
23aa037670
commit
b286809ea5
2 changed files with 23 additions and 35 deletions
|
|
@ -3,45 +3,31 @@ import QtQuick 2.7
|
|||
// ===================================================================
|
||||
|
||||
Row {
|
||||
property alias text1: button1.text
|
||||
property alias text2: button2.text
|
||||
|
||||
property bool button1IsSelected: true
|
||||
property int selectedButton: 0
|
||||
property variant texts
|
||||
|
||||
signal buttonChanged (int button)
|
||||
|
||||
spacing: 8
|
||||
|
||||
SmallButton {
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
backgroundColor: button1IsSelected
|
||||
? '#8E8E8E'
|
||||
: (button1.down
|
||||
? '#FE5E00'
|
||||
: '#D1D1D1'
|
||||
)
|
||||
id: button1
|
||||
onClicked: {
|
||||
if (!button1IsSelected) {
|
||||
button1IsSelected = true
|
||||
buttonChanged(1)
|
||||
}
|
||||
}
|
||||
}
|
||||
Repeater {
|
||||
model: texts
|
||||
SmallButton {
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
backgroundColor: selectedButton === index
|
||||
? '#8E8E8E'
|
||||
: (button.down
|
||||
? '#FE5E00'
|
||||
: '#D1D1D1'
|
||||
)
|
||||
id: button
|
||||
text: modelData
|
||||
|
||||
SmallButton {
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
backgroundColor: !button1IsSelected
|
||||
? '#8E8E8E'
|
||||
: (button2.down
|
||||
? '#FE5E00'
|
||||
: '#D1D1D1'
|
||||
)
|
||||
id: button2
|
||||
onClicked: {
|
||||
if (button1IsSelected) {
|
||||
button1IsSelected = false
|
||||
buttonChanged(2)
|
||||
onClicked: {
|
||||
if (selectedButton !== index) {
|
||||
selectedButton = index
|
||||
buttonChanged(index)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -35,8 +35,10 @@ ColumnLayout {
|
|||
|
||||
ExclusiveButtons {
|
||||
Layout.preferredHeight: parent.height
|
||||
text1: qsTr('selectAllContacts')
|
||||
text2: qsTr('selectConnectedContacts')
|
||||
texts: [
|
||||
qsTr('selectAllContacts'),
|
||||
qsTr('selectConnectedContacts')
|
||||
]
|
||||
}
|
||||
|
||||
LightButton {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue