9 import QtQuick.Layouts 1.2
10 import QtQuick.Controls 2.4 as QQC2
11 import org.kde.kirigami 2.14 as Kirigami
42 property alias actions: layout.actions
53 property list<QtObject> hiddenActions
54 onHiddenActionsChanged: print(
"ActionToolBar::hiddenActions is deprecated, use the AlwaysHide hint on your actions instead")
61 property
bool flat: true
77 property
int display: QQC2.
Button.TextBesideIcon
93 property alias alignment: layout.alignment
106 property
int position: parent && parent.hasOwnProperty("position")
120 readonly property alias maximumContentWidth: layout.implicitWidth
130 property
string overflowIconName: "overflow-menu"
136 property alias visibleWidth: layout.visibleWidth
155 property alias heightMode: layout.heightMode
158 implicitHeight: layout.implicitHeight
159 implicitWidth: layout.implicitWidth
161 Layout.minimumWidth: layout.minimumWidth
162 Layout.preferredWidth: 0
163 Layout.fillWidth: true
172 spacing: Kirigami.Units.smallSpacing
173 layoutDirection: root.LayoutMirroring.
enabled ?
Qt.RightToLeft :
Qt.LeftToRight
175 fullDelegate: P.PrivateActionToolButton {
177 display: root.display
178 action: Kirigami.ToolBarLayout.action
181 iconDelegate: P.PrivateActionToolButton {
183 display: QQC2.Button.IconOnly
184 action: Kirigami.ToolBarLayout.action
189 if (action.displayComponent) {
193 if (action.hasOwnProperty(
"children") && action.children.length > 0) {
194 return Array.prototype.map.call(action.children, i => i)
201 moreButton: P.PrivateActionToolButton {
204 action: Kirigami.Action {
205 tooltip: qsTr(
"More Actions")
206 icon.name: root.overflowIconName
207 displayHint: Kirigami.DisplayHint.IconOnly | Kirigami.DisplayHint.HideChildIndicator
211 if (root.hiddenActions.length === 0) {
215 result.concat(Array.prototype.map.call(root.actions, i => i))
216 result.concat(Array.prototype.map.call(hiddenActions, i => i))
221 menuComponent: P.ActionsMenu {
222 submenuComponent: P.ActionsMenu {
226 value: layout.hiddenActions.includes(parentAction)
227 && (parentAction.visible === undefined || parentAction.visible)
228 restoreMode: Binding.RestoreBinding
232 itemDelegate: P.ActionMenuItem {
233 visible: layout.hiddenActions.includes(action)
234 && (action.visible === undefined || action.visible)
237 loaderDelegate: Loader {
239 height: visible ? implicitHeight : 0
240 visible: layout.hiddenActions.includes(action)
241 && (action.visible === undefined || action.visible)
244 separatorDelegate: QQC2.MenuSeparator {
246 visible: layout.hiddenActions.includes(action)
247 && (action.visible === undefined || action.visible)