45 property alias text: _rootButton.text
55 property alias icon: _rootButton.icon
68 property alias checked: _rootButton.checked
79 property real buttonSpacing: 16
94 property real expansionAngle: 0
104 property size subButtonSize:
Qt.size(40, 40)
120 property bool stickyToolTips:
false 136 property bool invertToolTipDirection:
Qt.application.layoutDirection ==
Qt.RightToLeft
147 readonly
property alias rootButton: _rootButton
158 default property list<Action> actions
160 implicitWidth: _rootButton.implicitWidth
161 implicitHeight: _rootButton.implicitHeight
173 function toRadians(angle) {
174 return angle * (Math.PI/180);
177 readonly
property real vOffset: -1 * Math.cos(toRadians(_roundMenuButton.expansionAngle))
178 readonly
property real hOffset: Math.sin(toRadians(_roundMenuButton.expansionAngle))
188 anchors.horizontalCenter: _rootButton.horizontalCenter
189 anchors.verticalCenter: _rootButton.verticalCenter
190 implicitHeight: _roundMenuButton.subButtonSize.height + padding
191 implicitWidth: _roundMenuButton.subButtonSize.width + padding
192 state: _rootButton.checked ?
"expanded" :
"collapsed" 194 toolTip: _roundMenuButton.stickyToolTips ?
"" : _subButton.text
196 onClicked: _rootButton.checked =
false 204 readonly
property real maxVOffset: _p.vOffset * ((1 + index) * (_subButton.height + _roundMenuButton.buttonSpacing) + (_rootButton.height - _subButton.height)/2)
205 readonly
property real maxHOffset: _p.hOffset * ((1 + index) * (_subButton.width + _roundMenuButton.buttonSpacing) + (_rootButton.width - _subButton.width)/2)
211 visible: _roundMenuButton.stickyToolTips && _subButton.text !=
"" && _subButton.visible
212 text: _subButton.text
213 x: invertToolTipDirection ?
214 _subButton.width + _roundMenuButton.buttonSpacing :
215 -(_permaToolTip.width + _roundMenuButton.buttonSpacing)
216 y: (_subButton.height - height)/2
224 anchors.verticalCenterOffset: 0
225 anchors.horizontalCenterOffset: 0
233 anchors.verticalCenterOffset: maxVOffset
234 anchors.horizontalCenterOffset: maxHOffset
244 SequentialAnimation {
253 property:
"anchors.verticalCenterOffset" 255 easing.type: Easing.OutCubic
259 property:
"anchors.horizontalCenterOffset" 261 easing.type: Easing.OutCubic
269 SequentialAnimation {
273 property:
"anchors.verticalCenterOffset" 275 easing.type: Easing.InCubic
279 property:
"anchors.horizontalCenterOffset" 281 easing.type: Easing.InCubic
The QML import for the QtMvvmQuick QML module.