import QtQuick import QtQuick.Controls.impl import QtQuick.Templates as T T.BusyIndicator { id: control implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset, implicitContentWidth + leftPadding + rightPadding) implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset, implicitContentHeight + topPadding + bottomPadding) topPadding: __config.topPadding || 0 bottomPadding: __config.bottomPadding || 0 leftPadding: __config.leftPadding || 0 rightPadding: __config.rightPadding || 0 topInset: -__config.topInset || 0 bottomInset: -__config.bottomInset || 0 leftInset: -__config.leftInset || 0 rightInset: -__config.rightInset || 0 readonly property string __currentState: !control.enabled ? "disabled" : "normal" readonly property var __config: Config.controls.busyindicator[__currentState] || {} contentItem: StyleImage { imageConfig: control.__config.indicator transformOrigin: Item.Center NumberAnimation on rotation { running: control.visible && control.running from: 0; to: 360; loops: Animation.Infinite; duration: 1200 } } background: StyleImage { imageConfig: control.__config.background } }