Commit b81239ae authored by Ronan's avatar Ronan
Browse files

feat(Form/ExclusiveButtons): use style file

parent eaafc4b0
......@@ -36,6 +36,7 @@ lupdate_only{
ui/modules/Linphone/Popup/*.qml \
ui/modules/Linphone/Select/*.qml \
ui/modules/Linphone/Styles/*.qml \
ui/modules/Linphone/Styles/Form/*.qml \
ui/modules/Linphone/View/*.qml \
ui/views/*.qml \
ui/views/MainWindow/*.qml \
......
......@@ -60,6 +60,8 @@
<file>ui/modules/Linphone/Styles/CollapseStyle.qml</file>
<file>ui/modules/Linphone/Styles/DialogStyle.qml</file>
<file>ui/modules/Linphone/Styles/ForceScrollBarStyle.qml</file>
<file>ui/modules/Linphone/Styles/Form/ExclusiveButtonsStyle.qml</file>
<file>ui/modules/Linphone/Styles/Form/SmallButtonStyle.qml</file>
<file>ui/modules/Linphone/Styles/MenuStyle.qml</file>
<file>ui/modules/Linphone/Styles/PopupStyle.qml</file>
<file>ui/modules/Linphone/Styles/qmldir</file>
......
import QtQuick 2.7
import Linphone.Styles 1.0
// ===================================================================
Row {
property int selectedButton: 0
property variant texts
signal clicked (int button)
spacing: 8
Repeater {
model: texts
SmallButton {
anchors.verticalCenter: parent.verticalCenter
backgroundColor: selectedButton === index
? '#8E8E8E'
: (button.down
? '#FE5E00'
: (button.hovered
? '#C0C0C0'
: '#D1D1D1'
)
)
id: button
text: modelData
onClicked: {
if (selectedButton !== index) {
selectedButton = index
clicked(index)
}
}
property int _selectedButton: 0
property variant texts
signal clicked (int button)
spacing: ExclusiveButtonsStyle.buttonsSpacing
Repeater {
model: texts
SmallButton {
anchors.verticalCenter: parent.verticalCenter
backgroundColor: _selectedButton === index
? ExclusiveButtonsStyle.button.color.selected
: (down
? ExclusiveButtonsStyle.button.color.pressed
: (hovered
? ExclusiveButtonsStyle.button.color.hovered
: ExclusiveButtonsStyle.button.color.normal
)
)
text: modelData
onClicked: {
if (_selectedButton !== index) {
_selectedButton = index
clicked(index)
}
}
}
}
}
import QtQuick 2.7
import QtQuick.Controls 2.0
import Linphone.Styles 1.0
// ===================================================================
Button {
property alias backgroundColor: background.color
id: button
property alias backgroundColor: background.color
background: Rectangle {
id: background
background: Rectangle {
color: button.down
? '#FE5E00'
: (button.hovered
? '#C0C0C0'
: '#D1D1D1'
)
id: background
implicitHeight: 22
radius: 10
}
contentItem: Text {
color:'#FFFFFF'
font.pointSize: 8
horizontalAlignment: Text.AlignHCenter
id: text
text: button.text
verticalAlignment: Text.AlignVCenter
}
hoverEnabled: true
id: button
color: button.down
? SmallButtonStyle.background.color.pressed
: (button.hovered
? SmallButtonStyle.background.color.hovered
: SmallButtonStyle.background.color.normal
)
implicitHeight: SmallButtonStyle.background.height
radius: SmallButtonStyle.background.radius
}
contentItem: Text {
color: SmallButtonStyle.text.color
font.pointSize: SmallButtonStyle.text.fontSize
horizontalAlignment: Text.AlignHCenter
text: button.text
verticalAlignment: Text.AlignVCenter
}
hoverEnabled: true
}
pragma Singleton
import QtQuick 2.7
import Linphone 1.0
QtObject {
property int buttonsSpacing: 8
property QtObject button: QtObject {
property QtObject color: QtObject {
property string hovered: '#C0C0C0'
property string normal: '#D1D1D1'
property string pressed: '#FE5E00'
property string selected: '#8E8E8E'
}
}
}
pragma Singleton
import QtQuick 2.7
import Linphone 1.0
QtObject {
property QtObject background: QtObject {
property int height: 22
property int radius: 10
property QtObject color: QtObject {
property string hovered: '#C0C0C0'
property string normal: '#D1D1D1'
property string pressed: '#FE5E00'
}
}
property QtObject text: QtObject {
property int fontSize: 8
property string color: '#FFFFFF'
}
}
......@@ -3,10 +3,13 @@
module Linphone.Style
# Components styles.
singleton CollapseStyle 1.0 CollapseStyle.qml
singleton DialogStyle 1.0 DialogStyle.qml
singleton ForceScrollBarStyle 1.0 ForceScrollBarStyle.qml
singleton MenuStyle 1.0 MenuStyle.qml
singleton PopupStyle 1.0 PopupStyle.qml
singleton SearchBoxStyle 1.0 SearchBoxStyle.qml
singleton TimelineStyle 1.0 TimelineStyle.qml
singleton CollapseStyle 1.0 CollapseStyle.qml
singleton DialogStyle 1.0 DialogStyle.qml
singleton ForceScrollBarStyle 1.0 ForceScrollBarStyle.qml
singleton MenuStyle 1.0 MenuStyle.qml
singleton PopupStyle 1.0 PopupStyle.qml
singleton SearchBoxStyle 1.0 SearchBoxStyle.qml
singleton TimelineStyle 1.0 TimelineStyle.qml
singleton ExclusiveButtonsStyle 1.0 Form/ExclusiveButtonsStyle.qml
singleton SmallButtonStyle 1.0 Form/SmallButtonStyle.qml
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment