ELF48a4 (444@O@ORbbD t X[XkXk@@PtdIII$$QtdRtdRbb@ @ @.ipv&Kip"@y<^v2W~ A]j<i(^, [    " J }   * U u      * ; I g       $ : j     ,=N^(Hk#Q<I*;k|"<Us!>_'NmA[w.Op"Ifp)*DpChp p4p__cxa_finalize__cxa_atexit__stack_chk_fail_ZN11QQmlPrivate30qdeclarativeelement_destructorEP7QObject_ZdlPv_Znwj_ZN7QObjectD2Ev__stack_chk_guard_ZNK4QUrl10isRelativeEv_ZN4QUrlC1ERKS__ZN11QQmlPrivate11qmlregisterENS_16RegistrationTypeEPv_ZN4QUrlD1Ev_ZNK14QMessageLogger7warningEPKcz_ZN19QQmlExtensionPluginC2EP7QObject_ZNK11QMetaObject9classNameEvstrlen_ZN10QByteArrayC1EPKci_ZN9QMetaType22registerNormalizedTypeERK10QByteArrayPFvPvEPFS3_S3_PKvEi6QFlagsINS_8TypeFlagEEPK11QMetaObject_ZN10QArrayData10deallocateEPS_jjfreemalloc_ZN10QArrayData11shared_nullE_ZN9QMetaType25registerNormalizedTypedefERK10QByteArrayi_ZN10QByteArray11reallocDataEj6QFlagsIN10QArrayData16AllocationOptionEE_ZN10QByteArray6appendEPKc_ZN10QByteArray6appendEc_ZN7QString16fromAscii_helperEPKci_ZN7QString17fromLatin1_helperEPKci_ZN7QString15fromUtf8_helperEPKci_ZN7QString6appendERKS__ZN4QUrlC1ERK7QStringNS_11ParsingModeE_ZN18QPropertyAnimationD1Ev_ZN12QPainterPathD1Ev_ZN17QQuickPaintedItemD2Ev_ZTVN10__cxxabiv120__si_class_type_infoE_ZN10QQuickItem5eventEP6QEvent_ZN7QObject11eventFilterEPS_P6QEvent_ZN7QObject10timerEventEP11QTimerEvent_ZN7QObject10childEventEP11QChildEvent_ZN7QObject11customEventEP6QEvent_ZN7QObject13connectNotifyERK11QMetaMethod_ZN7QObject16disconnectNotifyERK11QMetaMethod_ZNK10QQuickItem12boundingRectEv_ZNK10QQuickItem8clipRectEv_ZNK10QQuickItem8containsERK7QPointF_ZNK10QQuickItem16inputMethodQueryEN2Qt16InputMethodQueryE_ZNK17QQuickPaintedItem17isTextureProviderEv_ZNK17QQuickPaintedItem15textureProviderEv_ZN17QQuickPaintedItem10itemChangeEN10QQuickItem10ItemChangeERKNS0_14ItemChangeDataE_ZN10QQuickItem10classBeginEv_ZN10QQuickItem17componentCompleteEv_ZN10QQuickItem13keyPressEventEP9QKeyEvent_ZN10QQuickItem15keyReleaseEventEP9QKeyEvent_ZN10QQuickItem16inputMethodEventEP17QInputMethodEvent_ZN10QQuickItem12focusInEventEP11QFocusEvent_ZN10QQuickItem13focusOutEventEP11QFocusEvent_ZN10QQuickItem15mousePressEventEP11QMouseEvent_ZN10QQuickItem14mouseMoveEventEP11QMouseEvent_ZN10QQuickItem17mouseReleaseEventEP11QMouseEvent_ZN10QQuickItem21mouseDoubleClickEventEP11QMouseEvent_ZN10QQuickItem16mouseUngrabEventEv_ZN10QQuickItem16touchUngrabEventEv_ZN10QQuickItem10wheelEventEP11QWheelEvent_ZN10QQuickItem10touchEventEP11QTouchEvent_ZN10QQuickItem15hoverEnterEventEP11QHoverEvent_ZN10QQuickItem14hoverMoveEventEP11QHoverEvent_ZN10QQuickItem15hoverLeaveEventEP11QHoverEvent_ZN10QQuickItem14dragEnterEventEP15QDragEnterEvent_ZN10QQuickItem13dragMoveEventEP14QDragMoveEvent_ZN10QQuickItem14dragLeaveEventEP15QDragLeaveEvent_ZN10QQuickItem9dropEventEP10QDropEvent_ZN10QQuickItem21childMouseEventFilterEPS_P6QEvent_ZN10QQuickItem21windowDeactivateEventEv_ZN10QQuickItem15geometryChangedERK6QRectFS2__ZN17QQuickPaintedItem15updatePaintNodeEP7QSGNodePN10QQuickItem19UpdatePaintNodeDataE_ZN17QQuickPaintedItem16releaseResourcesEv_ZN10QQuickItem12updatePolishEv_ZThn8_N10QQuickItem10classBeginEv_ZThn8_N10QQuickItem17componentCompleteEv_ZN7QObject5eventEP6QEvent_ZN17QQuickPaintedItemC2EP10QQuickItem_ZN4QUrlC1Ev_ZN6QColor10invalidateEv_ZN8QPictureC1Ei_ZN5QFontC1Ev_ZN13QFontMetricsFC1ERK5QFont_ZNK13QFontMetricsF6heightEv_ZN13QFontMetricsFD1Ev_ZN5QFontD1Ev_ZN10QQuickItem16setImplicitWidthEd_ZN10QQuickItem17setImplicitHeightEd_ZN8QPainter4saveEv_ZNK8QPicture12boundingRectEv_ZN8QPainter5scaleEdd_ZN8QPainter11drawPictureERK7QPointFRK8QPicture_ZN8QPainter7restoreEv_ZN8QPainter18setCompositionModeENS_15CompositionModeE_ZN8QPainter8fillRectERK5QRectRK6QColor_ZNK6QColorneERKS__ZN6QColoraSERKS__ZN17QQuickPaintedItem6updateERK5QRect_ZN8QPictureD1Ev_ZNK4QUrlneERKS__ZN4QUrlaSERKS__ZN8QQmlFile19urlToLocalFileOrQrcERK4QUrl_ZN8QPicture4loadERK7QStringPKc_ZNK14QMessageLogger7warningEv_ZN11QTextStreamlsERK7QString_ZN11QTextStreamlsEc_ZN6QDebug9putStringEPK5QCharj_ZN6QDebugD1Ev_ZN6QColorC1EN2Qt11GlobalColorE_ZN10QQuickItem7setFlagENS_4FlagEb_ZN4QPenC1ERK6QColor_ZN4QPen9setWidthFEd_ZNK4QPen6widthFEvceilfloor_ZN8QPainter13setRenderHintENS_10RenderHintEb_ZN15QLinearGradientC1Ev_ZN15QLinearGradient8setStartERK7QPointF_ZN15QLinearGradient12setFinalStopERK7QPointF_ZN9QGradient8setStopsERK7QVectorI5QPairId6QColorEE_ZN6QBrushC1ERK9QGradient_ZN4QPen8setBrushERK6QBrush_ZN8QPainter6setPenERK4QPen_ZN8QPainter7drawArcERK6QRectFii_ZN6QBrushD1Ev_ZN4QPenD1Ev_ZN6QBrushC1ERK6QColorN2Qt10BrushStyleE_ZN4QPenC1Ev_ZN10QArrayData8allocateEjjj6QFlagsINS_16AllocationOptionEE_ZN12QPainterPathC1Ev_ZN18QPropertyAnimationC1EP7QObject_ZN18QPropertyAnimation15setTargetObjectEP7QObject_ZN18QPropertyAnimation15setPropertyNameERK10QByteArray_ZN8QVariantC1Ei_ZN17QVariantAnimation11setEndValueERK8QVariant_ZN8QVariantD1Ev_ZN17QVariantAnimation11setDurationEi_ZN18QAbstractAnimation12setLoopCountEi_ZN7QObject7connectEPKS_PKcS1_S3_N2Qt14ConnectionTypeE_ZN11QMetaObject10ConnectionD1Ev_ZNK10QQuickItem6heightEv_ZNK10QQuickItem5widthEv_ZN8QPainter6setPenERK6QColor_ZN6QColor6setRgbEiiii_ZN8QPainter8setBrushERK6QBrush_ZN8QPainter15drawRoundedRectERK6QRectFddN2Qt8SizeModeE_ZN8QPainter11setClipPathERK12QPainterPathN2Qt13ClipOperationE_ZNK10QQuickItem9isEnabledEv_ZN8QPainter9drawRectsEPK5QRecti_ZN12QPainterPath14addRoundedRectERK6QRectFddN2Qt8SizeModeE_ZN8QPainter9translateERK7QPointF_ZN12QPainterPath6moveToERK7QPointF_ZN12QPainterPath6lineToERK7QPointF_ZN12QPainterPath12closeSubpathEv_ZN8QPainter8drawPathERK12QPainterPath_ZN18QAbstractAnimation4stopEv_ZN17QVariantAnimation13setStartValueERK8QVariant_ZN18QAbstractAnimation5startENS_14DeletionPolicyE_ZNK10QQuickItem9isVisibleEv_ZN7QObjectC2EPS__ZN15QtSharedPointer20ExternalRefCountData9getAndRefEPK7QObject_ZNK10QQuickItem6windowEv_ZN10QQuickItem9grabMouseEv_ZN7QObject18installEventFilterEPS__ZNK12QQuickWindow16mouseGrabberItemEv_ZN7QObject17removeEventFilterEPS__ZN10QQuickItem11ungrabMouseEv_ZNK10QQuickItem12mapFromSceneERK7QPointF_ZN11QTouchEvent10TouchPointD1Ev_ZN9QListData7disposeEPNS_4DataE_ZN9QListData6detachEi_ZN11QTouchEvent10TouchPointC1ERKS0__ZNK11QTouchEvent10TouchPoint3posEvsincos_Z23qUnregisterResourceDataiPKhS0_S0__Z21qRegisterResourceDataiPKhS0_S0__ZNK11QObjectData17dynamicMetaObjectEv_ZN19QQmlExtensionPluginD2Evqt_plugin_query_metadataqt_plugin_instance__cxa_guard_acquire__cxa_guard_releasestrcmp_ZN19QQmlExtensionPlugin11qt_metacastEPKc_ZN19QQmlExtensionPlugin11qt_metacallEN11QMetaObject4CallEiPPv_ZTI19QQmlExtensionPlugin_ZN19QQmlExtensionPlugin16staticMetaObjectE_ZN11QMetaObject8activateEP7QObjectPKS_iPPv_ZN17QQuickPaintedItem11qt_metacastEPKc_ZN17QQuickPaintedItem11qt_metacallEN11QMetaObject4CallEiPPv_ZTI17QQuickPaintedItem_ZN17QQuickPaintedItem16staticMetaObjectE_ZN11QMetaObject14normalizedTypeEPKc_ZN10QQuickItem16staticMetaObjectE_ZN7QObject11qt_metacastEPKc_ZN7QObject11qt_metacallEN11QMetaObject4CallEiPPv_ZTI7QObject_ZN7QObject16staticMetaObjectE_edata__bss_start_endlibQt5Quick.solibQt5Gui.solibQt5Qml.solibQt5Network.solibQt5Core.solibGLESv2.solibgnustl_shared.soliblog.solibz.solibdl.solibstdc++.solibm.solibc.so$ORIGIN/../../../lib{Or5#JmNXgK+1 'Yk!7[BH/b}ISU0)&E"%d@_yfR~nlsz4M^*o6`L  (;GAD28,3 .>?=FjW 9] w\P|q:cxQ-CZVt$<Tiuahpvebbbbbccccc c(c,cDcHcLcPcTcXcd ddd$d(d,d0d4d8d@dddddddDeLePeTeeeeeeeDfLfPfTfdffffffffffffffffffgg ggggggggggggDhHhLhPhThXhi iii$i(i,ie>f>g>h>j>c?e?f?g?h?j?c@ e@ f@g@h@ j@cAeAfAgAhAjAcBeBfBgBhBjBcCeCfCgChCjCcDeDfDgDhDjDcE eE fEgEhE jEcF$eF$fFgFhF$jFcG(eG(fGgGhG(jGcH,eH,fHgHhH,jHcI0eI0fIgIhI0jIcJ4eJ4fJgJhJ4jJcK8eK8fKgKhK8jKcLm?m@mAmBmCmDmEmFmGmHmImJnKnLnM nNnOnPnQnR nS$nT(nU,nV0nW4nX8nYt$<$ D(1󫋃|$8D$D$<D$XD$,D$DD$@D$LD$TD$lD$D$4$D$ 0m @ D$D$ $D$\D$42D$D$$t$$j$;D$(t$D$l;D$$t$D$#0$D$4ŋvED$4$D$D$ t$$D$<]D$D$$eD$ D$<$D$}<$|$4$t$D$$$D$@,D$DD$HD$LY4$a<$YD$4D$D$$l$4EvED$&Е4$D$D$ t$$D$<D$D$$\D$ D$<$D$t<$||$4$xD$$t$$D$@;D$DD$HD$LV4$^<$VD$4XD$D$$l$4EvED$"4$D$D$ t$$D$<D$D$$YD$ D$<$D$q<$yQ|$4$uD$$t$$D$@UD$DD$HD$LS4$[<$SD$4D$D$$l$4EvED$k4$D$D$ t$$D$<D$D$$VD$ D$<$D$n<$v|$4$rD$$t$$D$@D$DD$HD$LP4$X<$PD$4D$D$$l$8EvED$4$D$t$<$D$<OD$D$$WD$|$4$sD$ D$D$$D$4$D$4$D$8cD$D$$l$4EvED$4$D$D$ t$$D$<\D$D$$D$ D$<$D$<$|$4$D$$t$$D$@ƓD$DD$HD$L~4$<$~D$4D$D$$EuaD$D$,$$9$[^_]Í(D$8t&tmut&덍&'o(vbD$4A(D$(4D$<t&(D$4t&(D$$$D(1󫋃|$@D$<$$D$LD$D$D$xD$D$ <$D$$D$@D$D$$$D$<$D$>D$ D$D$D$ <$D$j$D$@ED$D$$-D$4$vD$,t$$$$DDŽ$DŽ$$$HDŽ$DŽ$$D$0DŽ$$$ƋujD$D$$r$;D$$$D(1󫋃|$@D$<$$D$LD$D$D$D$D$ <$D$$D$@D$D$$$D$<$D$.D$8 D$D$D$ <$D$Z$D$@ED$D$$D$4$vD$,t$$$$DDŽ$DŽ$$$HDŽ$DŽ$$D$0DŽ$$$ƋujD$D$$b$;D$$$|$(D(1󫍃( |$L$D$<$$D$\DŽ$4D$苼@t$PD$<$n$D$LD$D$$聻$D$4$D$D$ D$(D$D$ 4$D$B$D$P=D$D$$D$,$$$$TDŽ$DŽ$ $$XDŽ$DŽ$$D$0DŽ$$D$(D$$ƋurD$D$$Z$;D$8t$D$\;D$4t$$,9$<[^_]Í&'t*u$w'(D$Pt&6(,D$L t&DXTX$¹$D$$$|$(D(1󫍃( |$L$D$<$$D$\DŽ$D$<t$PD$<$޵$D$LD$D$$$D$4$D$膵D$8 D$hD$D$ 4$D$貵$D$P=D$D$$uD$,$$$$TDŽ$DŽ$ $$XDŽ$DŽ$$D$0DŽ$$D$(D$Q$ƋurD$D$$ʳ$;D$8t$腴D$\;D$4t$s$,9$<[^_]Í&'t*u$w'(D$Pt&6(,D$L t&DXTX$2$D$$$|$(D(1󫍃h |$L$D$<$$D$\DŽ$LD$k8t$PD$<$N$D$LD$D$$a$D$4$D$D$ D$D$D$ 4$D$"$D$P=D$D$$D$,$$$$TDŽ$DŽ$ $$XDŽ$DŽ$$D$0DŽ$$D$(D$$ƋurD$D$$:$;D$8t$D$\;D$4t$$,9$<[^_]Í&'t*u$w'(D$Pt&6(,D$L t&DXTX$袬$D$$$|$(D(1󫍃h |$L$D$<$$D$\DŽ$8D$ۨ4t$PD$<$辨$D$LD$D$$ѧ$D$4$D$fD$8D$D$D$ 4$D$蒨$D$P=D$D$$UD$,$$$$TDŽ$DŽ$ $$XDŽ$DŽ$$D$0DŽ$$D$(D$1$ƋurD$D$$誦$;D$8t$eD$\;D$4t$S$,9$<[^_]Í&'t*u$w'(D$Pt&6(,D$L t&DXTX$$D$D$D$$4$~4$6d$[^ t(uϋF(f밍&'l$fUWVS7Ï$$$l$p$ |$\D$D$,$$豝l$<$ŝFD$<$$$t$P0$$l$0]<$|$(l$茝t$\$ |$ \<$t$ jD$\$|$\lj<$D$@H<$\$<\$8T$8Yf YL$D$@fWXfW\,XXX\$ $$*$$\f.vf$\$HD$@L$8T$ 蛜T$ \$,D$D$@L$8\$H*\X\$$,fW*\f. $D$@\$8L$ L$ \$,D$\$8D$@*\X\$$,fW*\f.v-$L$ L$ \$,D$*$,fW*\f.v! $耛\$,D$*$D$D$D$$]F<\D$,$fWYD$ 踚l$V,$T$ՙT$,D$ $D$8D$`D$$D$@,$YD$0D$N ,$D$D$`D$0L$hȚD$L$(\N D$0D$,$L$hD$`諚,$F(D$謚l$l$,$謚l$<$谚D$|$$谚FD\fWYL$8\D$ YFL$L$@,L$D$ D$$r,$z$uMD$D$$<$]$9$ [^_]Ív't(u$럍D$`$T$D$$D$,$FD$,$D$,$D$肙L$l$ $肙FD\l$ ,fWYL$T$8T$$ $\ʼnT$T$@,D$ :,$RD$$6&;v'D$@Ð&WVS8Ðd$Ћt$@D$Df.FD$,z!uT$,9uZd$0[^_Í'FD$4$=+4$D$D$D$D$ D$$D$(轖膝D$@Ð&WVS舝d$Ћt$@D$Df.FD$,z!uT$,9uZd$0[^_Í'FD$4$ +4$D$D$D$D$ D$$D$( ֜D$@ Ð&WVS؜0d$Ћt$@D$Df.F D$,z!uT$,9uZd$0[^_Í'F D$4$*4$D$D$D$D$ D$$D$(]&D$@<Ð&WVS(Àd$Ћt$@D$Df.FPDt&d$,[^_]Í&~+d$, [^_] d$,[^_]Ít&D$t$ D$<$D$D$볍&'떐D$t$ l$<$D$XD$\ShBd$D$ @Pt$fd$[Ít&d$[Ít&VShd$̋D$DD$D$D$HD$$D$D$,D$D$(D$$D$ D$D$@$fT$,9ud$4[^hVS)hÁd$̋D$DD$D$D$HD$$D$D$,D$D$(D$$D$ D$D$@$MfT$,9ud$4[^gVSgd$̋D$DD$D$D$$D$,D$D$(D$$D$ D$D$@$eT$,9ud$4[^g&'UWVS'gd$D$dl$`T$h|$lL$'JE'REdt&VS)dÁd$t$$t74$D$EbT$ t$t$bd$[^Í1퍶UWVScd$ԋ|$@l$Dt$LD$H<$l$t$ D$9bxEtQ U tNtItDt>PDt&d$,[^_]Í&~+d$,[^_] d$,[^_]Ít&D$t$ D$<$D$D$볍&'떐D$t$ l$<$D$D$\VSb}d$썃t$ FF0$?WF,$DW4$LWd$[^Ðt&l$VS9bÑ}d$썃t$ FF0$VF,$V4$V4$Vd$[^Í'l$Sa"}d$D$ @Pt$_d$[Ít&d$[Ít&VSa|d$܋D$D$D$D$4D$D$8D$D$D$ D$D$0$_T$9ud$$[^`&'VS aa|d$܋D$D$D$D$4D$D$8D$D$D$ D$D$0$5_T$9ud$$[^`&'VS`{d$܋D$D$D$D$4D$D$8D$D$D$ D$D$0$^T$9ud$$[^_&'VS `a{d$܋D$D$D$D$4D$D$8D$D$D$ D$D$0$5^T$9ud$$[^_&'S_zd$荃D$D$ D$ D$$]d$[Ít&SJ_âzd$荃D$D$ D$ D$$]d$[Ít&WVS_`zd$D$$t$ T$(L$,u w5v' u+u Aid$[^_Ð& tKt&uu4$D$ʍv'9u4$r뮍&'Q19;9M9_9q9X9EB:/ 4$vAD$(At$ D$$d$[^_&'AD$(At$ D$$d$[^_^&'D$ D$4$D$['D$ D$4$D$[Y'A4$D$:v'A4$D$v'4$vAD$(At$ D$$d$[^_&'AD$(At$ D$$d$[^_N&'1Xt'D$D$$2XUt&BE:v'B%v'zv'Jv'Rv'VSY[ñvd$t$$t74$صD$uYT$ t$t$Yd$[^Í1퍶UWVSZOvd$ԋt$@l$D|$LD$H4$l$|$ D$YxEtQ U tNtItDt>1҃)Ѝt&d$,[^_]Í& ~+d$, [^_] d$,[^_]Ít&D$|$ D$4$D$D$볍&' D$|$ D$ 4$D$D${D$|$ l$4$D$D$< T$D$ttÐv'VSyYtd$썃t$ Ft(uFt$M4$Md$[^Ð&VS)YÁtd$썃t$ Ft(uFt$M4$M4$Md$[^UWVSX/td$t$8l$d4$D$1҃)Ѝt&d$,[^_]Í&~+d$,[^_] d$,[^_]Ít&D$t$ D$<$D$D$볍&'떐D$t$ l$<$D$HD$\SzSnd$荓0D$ $Hd$[ÍVSISánd$썃0t$ 4$G4$Gd$[^defaultActivationMode/CircularGauge.qmlCircularGauge/DelayButton.qmlDelayButton/Dial.qmlDial/Gauge.qmlGauge/PieMenu.qmlPieMenu/StatusIndicator.qmlStatusIndicator/ToggleButton.qmlToggleButton/Tumbler.qmlTumbler/TumblerColumn.qmlTumblerColumnTriggerModePictureMouseThiefCircularProgressBarFlatProgressBarMathUtils/Private/CircularButton.qmlQtQuick.Extras.PrivateCircularButtonCircularButtonStyleHelperCircularTickmarkLabel/Private/Handle.qmlHandle/Private/PieMenuIcon.qmlPieMenuIcon/Private/TextSingleton.qmlTextSingletonFailed to load ; does it exist?stripeOffset1repaint()2stripeOffsetChanged(qreal)2progressChanged(qreal)2enabledChanged()2indeterminateChanged(bool)1onWidthChanged()2widthChanged()1onHeightChanged()2heightChanged()1onVisibleChanged()2visibleChanged()2windowChanged(QQuickWindow*)QQuickItem *qmlRegisterType requires absolute URLs.qrc:///ExtrasImports/QtQuick/ExtrasDo not create objects of type ActivationModeDo not create objects of type TriggerModeQtQuick.Extras.Private.CppUtils/Private/CircularButtonStyleHelper.qml/Private/CircularTickmarkLabel.qmlqmlRegisterSingletonType requires absolute URLs.1itemWindowChanged(QQuickWindow*)N11QQmlPrivate11QQmlElementI13QQuickPictureEEN11QQmlPrivate11QQmlElementI16QQuickMouseThiefEEN11QQmlPrivate11QQmlElementI25QQuickCircularProgressBarEEN11QQmlPrivate11QQmlElementI21QQuickFlatProgressBarEE@?? V@0@$@,@?@-DT!@9RFߑ?cܥL@ 4 M! aFnN6 1?bU rbd.$[ xsExtrasImports;QtQuickϸExtrasCircularGauge.qml$<ToggleButton.qmlRXStatusIndicator.qml \PieMenu.qml|TumblerColumn.qml rTumbler.qmla|Dial.qml <Gauge.qmlPrivate{F\DelayButton.qml޼CircularTickmarkLabel.qml 1Handle.qml ïTextSingleton.qmlX<PieMenuIcon.qml <CircularButtonStyleHelper.qml F|CircularButton.qml/**************************************************************************** ** ** Copyright (C) 2016 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the Qt Quick Extras module of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and The Qt Company. For licensing terms ** and conditions see https://www.qt.io/terms-conditions. For further ** information use the contact form at https://www.qt.io/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 3 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL3 included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 3 requirements ** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 2.0 or (at your option) the GNU General ** Public license version 3 or any later version approved by the KDE Free ** Qt Foundation. The licenses are as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 ** included in the packaging of this file. Please review the following ** information to ensure the GNU General Public License requirements will ** be met: https://www.gnu.org/licenses/gpl-2.0.html and ** https://www.gnu.org/licenses/gpl-3.0.html. ** ** $QT_END_LICENSE$ ** ****************************************************************************/ import QtQuick 2.2 // Workaround for QTBUG-37751; we need this import for RangeModel, although we shouldn't. import QtQuick.Controls 1.4 import QtQuick.Controls.Styles 1.4 import QtQuick.Controls.Private 1.0 import QtQuick.Extras.Private 1.0 /*! \qmltype CircularGauge \inqmlmodule QtQuick.Extras \since 5.5 \ingroup extras \ingroup extras-non-interactive \brief A gauge that displays a value within a range along an arc. \image circulargauge.png CircularGauge The CircularGauge is similar to traditional mechanical gauges that use a needle to display a value from some input, such as the speed of a vehicle or air pressure, for example. The minimum and maximum values displayable by the gauge can be set with the \l minimumValue and \l maximumValue properties. The angle at which these values are displayed can be set with the \l {CircularGaugeStyle::}{minimumValueAngle} and \l {CircularGaugeStyle::}{maximumValueAngle} properties of \l {CircularGaugeStyle}. Example: \code CircularGauge { value: accelerating ? maximumValue : 0 anchors.centerIn: parent property bool accelerating: false Keys.onSpacePressed: accelerating = true Keys.onReleased: { if (event.key === Qt.Key_Space) { accelerating = false; event.accepted = true; } } Component.onCompleted: forceActiveFocus() Behavior on value { NumberAnimation { duration: 1000 } } } \endcode You can create a custom appearance for a CircularGauge by assigning a \l {CircularGaugeStyle}. */ Control { id: circularGauge style: Settings.styleComponent(Settings.style, "CircularGaugeStyle.qml", circularGauge) /*! \qmlproperty real CircularGauge::minimumValue This property holds the smallest value displayed by the gauge. */ property alias minimumValue: range.minimumValue /*! \qmlproperty real CircularGauge::maximumValue This property holds the largest value displayed by the gauge. */ property alias maximumValue: range.maximumValue /*! This property holds the current value displayed by the gauge, which will always be between \l minimumValue and \l maximumValue, inclusive. */ property alias value: range.value /*! \qmlproperty real CircularGauge::stepSize This property holds the size of the value increments that the needle displays. For example, when stepSize is \c 10 and value is \c 0, adding \c 5 to \l value will have no visible effect on the needle, although \l value will still be incremented. Adding an extra \c 5 to \l value will then cause the needle to point to \c 10. */ property alias stepSize: range.stepSize /*! This property determines whether or not the gauge displays tickmarks, minor tickmarks, and labels. For more fine-grained control over what is displayed, the following style components of \l CircularGaugeStyle can be used: \list \li \l {CircularGaugeStyle::}{tickmark} \li \l {CircularGaugeStyle::}{minorTickmark} \li \l {CircularGaugeStyle::}{tickmarkLabel} \endlist */ property bool tickmarksVisible: true RangeModel { id: range minimumValue: 0 maximumValue: 100 stepSize: 0 value: minimumValue } } y/**************************************************************************** ** ** Copyright (C) 2016 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the Qt Quick Extras module of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and The Qt Company. For licensing terms ** and conditions see https://www.qt.io/terms-conditions. For further ** information use the contact form at https://www.qt.io/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 3 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL3 included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 3 requirements ** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 2.0 or (at your option) the GNU General ** Public license version 3 or any later version approved by the KDE Free ** Qt Foundation. The licenses are as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 ** included in the packaging of this file. Please review the following ** information to ensure the GNU General Public License requirements will ** be met: https://www.gnu.org/licenses/gpl-2.0.html and ** https://www.gnu.org/licenses/gpl-3.0.html. ** ** $QT_END_LICENSE$ ** ****************************************************************************/ import QtQuick 2.2 import QtQuick.Controls 1.4 import QtQuick.Controls.Styles 1.4 import QtQuick.Controls.Private 1.0 /*! \qmltype ToggleButton \inqmlmodule QtQuick.Extras \since 5.5 \ingroup extras \ingroup extras-interactive \brief A push button that toggles between two states. \image togglebutton-unchecked.png An unchecked ToggleButton An unchecked ToggleButton. \image togglebutton-checked.png A checked ToggleButton A checked ToggleButton. The ToggleButton is a simple extension of Qt Quick Controls' Button, using the checked property to toggle between two states: \e checked and \e unchecked. It enhances the visibility of a checkable button's state by placing color-coded indicators around the button. You can create a custom appearance for a ToggleButton by assigning a \l {ToggleButtonStyle}. */ Button { id: button checkable: true style: Settings.styleComponent(Settings.style, "ToggleButtonStyle.qml", button) } ./**************************************************************************** ** ** Copyright (C) 2016 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the Qt Quick Extras module of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and The Qt Company. For licensing terms ** and conditions see https://www.qt.io/terms-conditions. For further ** information use the contact form at https://www.qt.io/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 3 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL3 included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 3 requirements ** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 2.0 or (at your option) the GNU General ** Public license version 3 or any later version approved by the KDE Free ** Qt Foundation. The licenses are as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 ** included in the packaging of this file. Please review the following ** information to ensure the GNU General Public License requirements will ** be met: https://www.gnu.org/licenses/gpl-2.0.html and ** https://www.gnu.org/licenses/gpl-3.0.html. ** ** $QT_END_LICENSE$ ** ****************************************************************************/ import QtQuick 2.2 import QtQuick.Controls 1.4 import QtQuick.Controls.Styles 1.4 import QtQuick.Controls.Private 1.0 import QtQuick.Extras 1.4 import QtQuick.Extras.Private 1.0 /*! \qmltype StatusIndicator \inqmlmodule QtQuick.Extras \since 5.5 \ingroup extras \ingroup extras-non-interactive \brief An indicator that displays active or inactive states. \image statusindicator-active.png A StatusIndicator in the active state A StatusIndicator in the active state. \image statusindicator-inactive.png A StatusIndicator in the inactive state A StatusIndicator in the inactive state. The StatusIndicator displays active or inactive states. By using different colors via the \l color property, StatusIndicator can provide extra context to these states. For example: \table \row \li QML \li Result \row \li \code import QtQuick 2.2 import QtQuick.Extras 1.4 Rectangle { width: 100 height: 100 color: "#cccccc" StatusIndicator { anchors.centerIn: parent color: "green" } } \endcode \li \image statusindicator-green.png "Green StatusIndicator" \endtable You can create a custom appearance for a StatusIndicator by assigning a \l {StatusIndicatorStyle}. */ Control { id: statusIndicator style: Settings.styleComponent(Settings.style, "StatusIndicatorStyle.qml", statusIndicator) /*! This property specifies whether the indicator is active or inactive. The default value is \c false (off). \deprecated Use active instead. */ property alias on: statusIndicator.active /*! This property specifies whether the indicator is active or inactive. The default value is \c false (inactive). */ property bool active: false /*! This property specifies the color of the indicator when it is active. The default value is \c "red". */ property color color: __style.color } ox=kHW`[qn ``; lTk%$7Q/I%iًumUeeefݯ٣?Iܔj6PYϥxSÓ27EF<2y]/z~#Ud*yفz>WL w(foV*$^e\E`{z^'UGޜ|?||Ξ_|B3֗]$>_J̋,ET$nhàE+_;s'IQqHVp@"R.d^eY\Tv8B9+:.aHY-<Յ6#X'YTP\N#֥k{+NdͦX8O[̋ij= @H͆D'._HNt @OX?_sڛqt*BkYY%{՛LnT 0=Fl~r\3"z\a{Rj~;{kO/,xKKچ7As0:` j)7ݾᰁu'SH,%ZNU ڮ Bzj " PD{zT(h ٽ< c(m=-@W !plx\4F̨.m]B.SAł-D KV%\X"+ü}")%ALD*UqYz7U⊪:I2Z_7ttu+s<@ñG\љ,%BWȡzy";dRT$Y*Qbw*B]m}(A<).HQ8D-<Αƃt*5K%yya֥F5a!a]ʲt[( h7Kܣ'CPsT2aE`W)8$":/#8Ah ~)g.\%s f^l,H?j6Ad`x7Cps"U9 N@7 lqp=LxkpǠ8f?al챍O#ap>ڝhİ OU,$k"7Z E8Mi.Am;PVc;`#1Wi*Ob/HW-\ޯ g|HDB[_M,1H?` 1gg2ɸT7!e2q(?ݘ?=Q涘?hdCk7<?\ #qՐs$oCqj,_YSԒ7='q~P&j-UO:ޜ?~_]^`us~Z3_6O¯LO.̓OPFZ%svMDĄE#nH4w9|E [;G+,v9QS IbE)zI>qw5Ihކ0m1b U5aC.$ڬ6\! emU(\\ .d57Y'j;d)Qy )OxΒ/7fW67<]UTTj ;0XN%~*E%p y/ى̊OFy}/9Tsyb(Mb7)ٓjT ˱IMH*akI\kG_I1ngnT%-8 #WTnUV5+mB Kg7C+>pkgE @$\a>1h0f3S1NO>l(_Sq)$k6,?]lBSWrk'fH`JSQZd09ힴ?ePQVTB0 BrPd#/`[YJ\Aƺ!YfGcaIvX}gy)&sn Hgk ׾./_FDnq{k[)4Q6`l#!E(q(~~x O4`3ް_zx^{,`x I,2#NjFyKhqHyXE`T"-G;V!IgKC҇d c&['σOĽ{-(',ۭEsLT=ׅɷlqö!97Z5zv}>d&Q>)?"o%aq~ts K'x!3s$|pdo)w )9 Uc < iS"8eV4"i7DP[l{Ք?~$H-h3C0K $ M{uwQH@4O1=^F>pG)xUS'0K:ڶ2GRAW.SaGk[:]FGqP+ׯN !Y~2XM{MmNFj=%(7_ghu}'dzћΔhNSRUspG=.~\RY壩"/2.8 x_ xftЗo6%7uLz zB|x;E~lEܷlIR0,dw|3vX]Hߔ *YKӒa%fHFg@~I|*]b2-iqR{ JF6D4e X~j|gnϫ/3OF3:NcwDioEvL{\ غyu]foz.Yǟŝ~֦;˼c'|OeV8.~7ubಷqV/}pDB*8bنU@? m (x&?mIx`ϵǸLb>[ rkw%V<+_=1"{bc!a{S*g x5V6j&o::-}*fZf%LV m^MAw lBH_~x9?pҢss; ʁe,}[9VJT:h,#w}I ǪiEB% OV4},JѰi`ҙP~gڸ{)%}/$R|$P71%oLqrvej]U3_Nw4X W|wv~Wwe ddͽ*<\/+[-:A)6W`͌_mYK\jEڏq;C`.<fR}=lX%ƅ hq"5Ms Tx (ݍtks0]|ZM_3Y? c)+ܽmcE(U2o_ B]dž G7ҺD k˥!Y,I;YADo!%B}T`[˭4U$'B4v6 663UP˘=|3kl[ |mpn`-rˁD V/Y{"۾g:zGndČgԹKTe%ާ¶fksKĢH}j]cxMM so`CRr|[n\*l LuC?OfRvܞo=龥6\C54EbbzaTRkUSK9KA hͅt v`-]Nh4y `_ YA>7޼"3ث.ҝarL'c- ޺2/_j: kV9W p;Z:&X|kP[0} o,Zǐ4nW2sSt*v-VSC kGK '5zۜD Ɔ~ztE7|떟aH@[Q4Mo?AR5R*|X0a>W3uuZ,35p$N] ,S׮Qa1@f{]&aGmjs|\uxdg&Y5 inUg" gr!>8J OI l!"CbBG c^0Xlub<VI5Je,Bfz. 6`皩)E)y*)aU5ZԑE'g_?yy_:X<8gD*M1vSZmXkV c'<[I='Y.Bd-su%5+.!yƵzt:E@2tʥ" (N^ Y,i(/bTμz ^B0Dj:Je۴́lI+?a5uZb,~#;E!rD}UNfO4:d#aeJּ*2Dҕ #Ĺb('kB X) f$2˥94ěmiV,yX{ثTp)WR >jeT e.[y9J)r!>H峑Q:[hi̿X[0:c`9SKԞGLC cL9àap"==#@Lx=D>`uH˂G5kFv kzVM AhPdMi+B{:B9vvb ]hP2WiFE?u*6/y+?Xs\cSh{+tAS;vAc?x}_٣!;" l"|b=FWNˌ]^'<)1J~ػ]1Byh}yاo_L^,wx.bol8y0:ju{vO=pW;Rg{hwA_?Dԛ 4Ds4L13s!V=q_X>@j?zɥU̗V j%&!{7ʷSG;MM&=-i&CBI~Q CRDVmఛsIӆ{|MK*4[ ^ȋBDdOvhzt0mB-n?V^q. 猎7Q4WX‘I{:c >PW1 0Ǔ.jjڈk|\t,BG,'ٮS*v뽊NU/@w皡-c[TQE/*m2Պ_ۄr[_`W̞$I)"HdT/V|VRgǪT6+ơA0<3!.ޜSUJO;XI+S(.D+Yt6TUUT ?@?5!۬P&=ȪTl)E^=ۈl~7*Ox7WJ!,Iҵ hlwm;{cuAFf^ {L}P 6)aM.}Vq8؂17з7&I{tk = i.i\Tdj|i" hS׻-kwAZ:_K=;Gop:v挃,O5xjv eauf8W/9*wr|T@Ʀ}}P/X53*xL* `]6:j% ݆ᗗT+׆~)k'A~ +j*j{]Gy F4$$ؼ%^6NdOuw1[ő8zȘ !)L7-G39]^d{ s|{r݁A|-ZfeZ}oZdSʢ&{n܃-^)I:/ W!e*c6 jآA_{'6 'f-ǫR mlS9f"i-=f5{b3h;"<(PSkw \TT? vaVaub|pՍ^a$e,))n*[`F8n3g Nњu7b8Kdy^3d[اT|\ET|ƮĒ+a_v=oG& !t?]{גܼ:!{ NYU}?Bo̻lCwPi'B;lg .NO_UX~EboQ``2t2]}U! x6BFG7mb1/``h#)<2ImQn,ٺnf6o.̗g*ҩY­9p}`Y_~?\X~tv^y,}gt-.e|S^hyOp$KHC./ކ7-UGUTk9|']LnƧ29V M"זVʨ3泡ڎMGBv˳E">_klcqs| jot~z|zz?N/**************************************************************************** ** ** Copyright (C) 2016 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the Qt Quick Extras module of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and The Qt Company. For licensing terms ** and conditions see https://www.qt.io/terms-conditions. For further ** information use the contact form at https://www.qt.io/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 3 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL3 included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 3 requirements ** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 2.0 or (at your option) the GNU General ** Public license version 3 or any later version approved by the KDE Free ** Qt Foundation. The licenses are as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 ** included in the packaging of this file. Please review the following ** information to ensure the GNU General Public License requirements will ** be met: https://www.gnu.org/licenses/gpl-2.0.html and ** https://www.gnu.org/licenses/gpl-3.0.html. ** ** $QT_END_LICENSE$ ** ****************************************************************************/ import QtQuick 2.2 import QtQuick.Controls 1.4 import QtQuick.Controls.Styles 1.4 import QtQuick.Controls.Private 1.0 import QtQuick.Extras 1.4 import QtQuick.Extras.Private 1.0 /*! \qmltype Dial \inqmlmodule QtQuick.Extras \since 5.5 \ingroup extras \ingroup extras-interactive \brief A circular dial that is rotated to set a value. \image dial.png A Dial The Dial is similar to a traditional dial knob that is found on devices such as stereos or industrial equipment. It allows the user to specify a value within a range. Like CircularGauge, Dial can display tickmarks to give an indication of the current value. When a suitable stepSize is combined with \l {DialStyle::}{tickmarkStepSize}, the dial "snaps" to each tickmark. You can create a custom appearance for a Dial by assigning a \l {DialStyle}. */ Control { id: dial activeFocusOnTab: true style: Settings.styleComponent(Settings.style, "DialStyle.qml", dial) /*! \qmlproperty real Dial::value The angle of the handle along the dial, in the range of \c 0.0 to \c 1.0. The default value is \c{0.0}. */ property alias value: range.value /*! \qmlproperty real Dial::minimumValue The smallest value allowed by the dial. The default value is \c{0.0}. \sa value, maximumValue */ property alias minimumValue: range.minimumValue /*! \qmlproperty real Dial::maximumValue The largest value allowed by the dial. The default value is \c{1.0}. \sa value, minimumValue */ property alias maximumValue: range.maximumValue /*! \qmlproperty real Dial::hovered This property holds whether the button is being hovered. */ readonly property alias hovered: mouseArea.containsMouse /*! \qmlproperty real Dial::stepSize The default value is \c{0.0}. */ property alias stepSize: range.stepSize /*! \internal Determines whether the dial can be freely rotated past the zero marker. The default value is \c false. */ property bool __wrap: false /*! This property specifies whether the dial should gain active focus when pressed. The default value is \c false. \sa pressed */ property bool activeFocusOnPress: false /*! \qmlproperty bool Dial::pressed Returns \c true if the dial is pressed. \sa activeFocusOnPress */ readonly property alias pressed: mouseArea.pressed /*! This property determines whether or not the dial displays tickmarks, minor tickmarks, and labels. For more fine-grained control over what is displayed, the following style components of \l {DialStyle} can be used: \list \li \l {DialStyle::}{tickmark} \li \l {DialStyle::}{minorTickmark} \li \l {DialStyle::}{tickmarkLabel} \endlist The default value is \c true. */ property bool tickmarksVisible: true Keys.onLeftPressed: value -= stepSize Keys.onDownPressed: value -= stepSize Keys.onRightPressed: value += stepSize Keys.onUpPressed: value += stepSize Keys.onPressed: { if (event.key === Qt.Key_Home) { value = minimumValue; event.accepted = true; } else if (event.key === Qt.Key_End) { value = maximumValue; event.accepted = true; } } RangeModel { id: range minimumValue: 0.0 maximumValue: 1.0 stepSize: 0 value: 0 } MouseArea { id: mouseArea hoverEnabled: true parent: __panel.background.parent anchors.fill: parent onPositionChanged: { if (pressed) { value = valueFromPoint(mouseX, mouseY); } } onPressed: { if (!__style.__dragToSet) value = valueFromPoint(mouseX, mouseY); if (activeFocusOnPress) dial.forceActiveFocus(); } function bound(val) { return Math.max(minimumValue, Math.min(maximumValue, val)); } function valueFromPoint(x, y) { var yy = height / 2.0 - y; var xx = x - width / 2.0; var angle = (xx || yy) ? Math.atan2(yy, xx) : 0; if (angle < Math.PI/ -2) angle = angle + Math.PI * 2; var range = maximumValue - minimumValue; var value; if (__wrap) value = (minimumValue + range * (Math.PI * 3 / 2 - angle) / (2 * Math.PI)); else value = (minimumValue + range * (Math.PI * 4 / 3 - angle) / (Math.PI * 10 / 6)); return bound(value) } } } D/**************************************************************************** ** ** Copyright (C) 2016 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the Qt Quick Extras module of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and The Qt Company. For licensing terms ** and conditions see https://www.qt.io/terms-conditions. For further ** information use the contact form at https://www.qt.io/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 3 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL3 included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 3 requirements ** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 2.0 or (at your option) the GNU General ** Public license version 3 or any later version approved by the KDE Free ** Qt Foundation. The licenses are as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 ** included in the packaging of this file. Please review the following ** information to ensure the GNU General Public License requirements will ** be met: https://www.gnu.org/licenses/gpl-2.0.html and ** https://www.gnu.org/licenses/gpl-3.0.html. ** ** $QT_END_LICENSE$ ** ****************************************************************************/ import QtQuick 2.2 import QtQuick.Controls 1.4 import QtQuick.Controls.Styles 1.4 import QtQuick.Controls.Private 1.0 import QtQuick.Extras 1.4 import QtQuick.Extras.Private 1.0 /*! \qmltype Gauge \inqmlmodule QtQuick.Extras \since 5.5 \ingroup extras \ingroup extras-non-interactive \brief A straight gauge that displays a value within a range. \image gauge.png Gauge The Gauge control displays a value within some range along a horizontal or vertical axis. It can be thought of as an extension of ProgressBar, providing tickmarks and labels to provide a visual measurement of the progress. The minimum and maximum values displayable by the gauge can be set with the \l minimumValue and \l maximumValue properties. Example: \code Gauge { minimumValue: 0 value: 50 maximumValue: 100 anchors.centerIn: parent } \endcode You can create a custom appearance for a Gauge by assigning a \l {GaugeStyle}. */ Control { id: gauge style: Settings.styleComponent(Settings.style, "GaugeStyle.qml", gauge) /*! This property holds the smallest value displayed by the gauge. The default value is \c 0. */ property alias minimumValue: range.minimumValue /*! This property holds the value displayed by the gauge. The default value is \c 0. */ property alias value: range.value /*! This property holds the largest value displayed by the gauge. The default value is \c 100. */ property alias maximumValue: range.maximumValue /*! This property determines the orientation of the gauge. The default value is \c Qt.Vertical. */ property int orientation: Qt.Vertical /*! This property determines the alignment of each tickmark within the gauge. When \l orientation is \c Qt.Vertical, the valid values are: \list \li Qt.AlignLeft \li Qt.AlignRight \endlist Any other value will cause \c Qt.AlignLeft to be used, which is also the default value for this orientation. When \l orientation is \c Qt.Horizontal, the valid values are: \list \li Qt.AlignTop \li Qt.AlignBottom \endlist Any other value will cause \c Qt.AlignBottom to be used, which is also the default value for this orientation. */ property int tickmarkAlignment: orientation == Qt.Vertical ? Qt.AlignLeft : Qt.AlignBottom property int __tickmarkAlignment: { if (orientation == Qt.Vertical) { return (tickmarkAlignment == Qt.AlignLeft || tickmarkAlignment == Qt.AlignRight) ? tickmarkAlignment : Qt.AlignLeft; } return (tickmarkAlignment == Qt.AlignTop || tickmarkAlignment == Qt.AlignBottom) ? tickmarkAlignment : Qt.AlignBottom; } /*! \internal TODO: finish this This property determines whether or not the tickmarks and their labels are drawn inside (over) the gauge. The value of this property affects \l tickmarkAlignment. */ property bool __tickmarksInside: false /*! This property determines the rate at which tickmarks are drawn on the gauge. The lower the value, the more often tickmarks are drawn. The default value is \c 10. */ property real tickmarkStepSize: 10 /*! This property determines the amount of minor tickmarks drawn between each regular tickmark. The default value is \c 4. */ property int minorTickmarkCount: 4 /*! \qmlproperty font Gauge::font The font to use for the tickmark text. */ property alias font: hiddenText.font /*! This property accepts a function that formats the given \a value for display in \l {GaugeStyle::}{tickmarkLabel}. For example, to provide a custom format that displays all values with 3 decimal places: \code formatValue: function(value) { return value.toFixed(3); } \endcode The default function does no formatting. */ property var formatValue: function(value) { return value; } property alias __hiddenText: hiddenText Text { id: hiddenText text: formatValue(maximumValue) visible: false } RangeModel { id: range minimumValue: 0 value: 0 maximumValue: 100 } } t/**************************************************************************** ** ** Copyright (C) 2016 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the Qt Quick Extras module of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and The Qt Company. For licensing terms ** and conditions see https://www.qt.io/terms-conditions. For further ** information use the contact form at https://www.qt.io/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 3 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL3 included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 3 requirements ** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 2.0 or (at your option) the GNU General ** Public license version 3 or any later version approved by the KDE Free ** Qt Foundation. The licenses are as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 ** included in the packaging of this file. Please review the following ** information to ensure the GNU General Public License requirements will ** be met: https://www.gnu.org/licenses/gpl-2.0.html and ** https://www.gnu.org/licenses/gpl-3.0.html. ** ** $QT_END_LICENSE$ ** ****************************************************************************/ import QtQuick 2.2 import QtQuick.Controls 1.4 import QtQuick.Controls.Styles 1.4 import QtQuick.Controls.Private 1.0 /*! \qmltype DelayButton \inherits QtQuickControls::Button \inqmlmodule QtQuick.Extras \since 5.5 \ingroup extras \ingroup extras-interactive \brief A checkable button that triggers an action when held in long enough. \image delaybutton.png A DelayButton The DelayButton is a checkable button that incorporates a delay before the button becomes checked and the \l activated signal is emitted. This delay prevents accidental presses. The current progress is expressed as a decimal value between \c 0.0 and \c 1.0. The time it takes for \l activated to be emitted is measured in milliseconds, and can be set with the \l delay property. The progress is indicated by a progress indicator around the button. When the indicator reaches completion, it flashes. \image delaybutton-progress.png A DelayButton being held down A DelayButton being held down \image delaybutton-activated.png A DelayButton after being activated A DelayButton after being activated You can create a custom appearance for a DelayButton by assigning a \l {DelayButtonStyle}. */ Button { id: root style: Settings.styleComponent(Settings.style, "DelayButtonStyle.qml", root) /*! \qmlproperty real DelayButton::progress This property holds the current progress as displayed by the progress indicator, in the range \c 0.0 - \c 1.0. */ readonly property alias progress: root.__progress /*! This property holds the time it takes (in milliseconds) for \l progress to reach \c 1.0 and emit \l activated. The default value is \c 3000 ms. */ property int delay: 3000 /*! This signal is emitted when \l progress reaches \c 1.0 and the button becomes checked. */ signal activated /*! \internal */ property real __progress: 0.0 Behavior on __progress { id: progressBehavior NumberAnimation { id: numberAnimation } } Binding { // Force checkable to false to get full control over the checked -property target: root property: "checkable" value: false } onProgressChanged: { if (__progress === 1.0) { checked = true; activated(); } } onCheckedChanged: { if (checked) { if (__progress < 1) { // Programmatically activated the button; don't animate. progressBehavior.enabled = false; __progress = 1; progressBehavior.enabled = true; } } else { // Unchecked the button after it was flashing; it should instantly stop // flashing (with no reversed progress bar). progressBehavior.enabled = false; __progress = 0; progressBehavior.enabled = true; } } onPressedChanged: { if (checked) { if (pressed) { // Pressed the button to stop the activation. checked = false; } } else { var effectiveDelay = pressed ? delay : delay * 0.3; // Not active. Either the button is being held down or let go. numberAnimation.duration = Math.max(0, (pressed ? 1 - __progress : __progress) * effectiveDelay); __progress = pressed ? 1 : 0; } } } /**************************************************************************** ** ** Copyright (C) 2016 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the Qt Quick Extras module of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and The Qt Company. For licensing terms ** and conditions see https://www.qt.io/terms-conditions. For further ** information use the contact form at https://www.qt.io/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 3 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL3 included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 3 requirements ** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 2.0 or (at your option) the GNU General ** Public license version 3 or any later version approved by the KDE Free ** Qt Foundation. The licenses are as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 ** included in the packaging of this file. Please review the following ** information to ensure the GNU General Public License requirements will ** be met: https://www.gnu.org/licenses/gpl-2.0.html and ** https://www.gnu.org/licenses/gpl-3.0.html. ** ** $QT_END_LICENSE$ ** ****************************************************************************/ import QtQuick 2.2 // Workaround for QTBUG-37751; we need this import for RangeModel, although we shouldn't. import QtQuick.Controls 1.1 import QtQuick.Controls.Private 1.0 import QtQuick.Extras 1.4 import QtQuick.Extras.Private 1.0 Control { id: label style: Settings.styleComponent(Settings.style, "CircularTickmarkLabelStyle.qml", label) property alias minimumValue: range.minimumValue property alias maximumValue: range.maximumValue property alias stepSize: range.stepSize RangeModel { id: range minimumValue: 0 maximumValue: 100 stepSize: 0 // Not used. value: minimumValue } /*! This property determines the angle at which the first tickmark is drawn. */ property real minimumValueAngle: -145 /*! This property determines the angle at which the last tickmark is drawn. */ property real maximumValueAngle: 145 /*! The range between \l minimumValueAngle and \l maximumValueAngle, in degrees. */ readonly property real angleRange: maximumValueAngle - minimumValueAngle /*! The interval at which tickmarks are displayed. */ property real tickmarkStepSize: 10 /*! The distance in pixels from the outside of the control (outerRadius) at which the outermost point of the tickmark line is drawn. */ property real tickmarkInset: 0.0 /*! The amount of tickmarks displayed. */ readonly property int tickmarkCount: __tickmarkCount /*! The amount of minor tickmarks between each tickmark. */ property int minorTickmarkCount: 4 /*! The distance in pixels from the outside of the control (outerRadius) at which the outermost point of the minor tickmark line is drawn. */ property real minorTickmarkInset: 0.0 /*! The distance in pixels from the outside of the control (outerRadius) at which the center of the value marker text is drawn. */ property real labelInset: __style.__protectedScope.toPixels(0.19) /*! The interval at which tickmark labels are displayed. */ property real labelStepSize: tickmarkStepSize /*! The amount of tickmark labels displayed. */ readonly property int labelCount: (maximumValue - minimumValue) / labelStepSize + 1 /*! \internal */ readonly property real __tickmarkCount: tickmarkStepSize > 0 ? (maximumValue - minimumValue) / tickmarkStepSize + 1 : 0 /*! This property determines whether or not the control displays tickmarks, minor tickmarks, and labels. */ property bool tickmarksVisible: true /*! Returns \a value as an angle in degrees. For example, if minimumValueAngle is set to \c 270 and maximumValueAngle is set to \c 90, this function will return \c 270 when passed minimumValue and \c 90 when passed maximumValue. */ function valueToAngle(value) { var normalised = (value - minimumValue) / (maximumValue - minimumValue); return (maximumValueAngle - minimumValueAngle) * normalised + minimumValueAngle; } } /**************************************************************************** ** ** Copyright (C) 2016 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the Qt Quick Extras module of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and The Qt Company. For licensing terms ** and conditions see https://www.qt.io/terms-conditions. For further ** information use the contact form at https://www.qt.io/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 3 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL3 included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 3 requirements ** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 2.0 or (at your option) the GNU General ** Public license version 3 or any later version approved by the KDE Free ** Qt Foundation. The licenses are as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 ** included in the packaging of this file. Please review the following ** information to ensure the GNU General Public License requirements will ** be met: https://www.gnu.org/licenses/gpl-2.0.html and ** https://www.gnu.org/licenses/gpl-3.0.html. ** ** $QT_END_LICENSE$ ** ****************************************************************************/ import QtQuick 2.0 import QtGraphicalEffects 1.0 import QtQuick.Controls.Styles 1.4 import QtQuick.Controls.Private 1.0 import QtQuick.Extras.Private 1.1 import QtQuick.Extras.Private.CppUtils 1.0 Control { id: root x: handleArea.centerOfHandle.x - width / 2 y: handleArea.centerOfHandle.y - height / 2 style: Settings.styleComponent(Settings.style, "HandleStyle.qml", root) /*! The angle of the handle along the circumference of \l rotationRadius in radians, scaled to be in the range of 0.0 to 1.0. */ property alias value: range.value RangeModel { id: range minimumValue: 0.0 maximumValue: 1.0 stepSize: 0 value: minimumValue } /*! The angle in radians where the dial starts. */ property real zeroAngle: 0 /*! The radius of the rotation of this handle. */ property real rotationRadius: 50 /*! The center of the dial. This is the origin point for the handle's rotation. */ property real dialXCenter: 0 property real dialYCenter: 0 /*! This property holds the amount of extra room added to each side of the handle to make it easier to drag on touch devices. */ property real allowance: Math.max(width, height) * 1.5 /* The function used to determine the handle's value from the position of the mouse. Can be set to provide custom value calculation. It expects these parameters: \c mouseX, \c mouseY, \c xCenter, \c yCenter, \c zeroAngle */ property var valueFromMouse: handleArea.valueFromMouse property alias handleArea: handleArea MouseArea { id: handleArea // Respond to value changes by calculating the new center of the handle. property point centerOfHandle: MathUtils.centerAlongCircle(dialXCenter, dialYCenter, 0, 0, MathUtils.valueToAngle(value, 1, zeroAngle), rotationRadius); anchors.fill: parent anchors.margins: -allowance onPositionChanged: { // Whenever the handle is moved with the mouse, update the value. value = root.valueFromMouse(mouse.x + centerOfHandle.x - allowance, mouse.y + centerOfHandle.y - allowance, dialXCenter, dialYCenter, zeroAngle); } // A helper function for onPositionChanged. function valueFromMouse(mouseX, mouseY, xCenter, yCenter, zeroAngle) { return MathUtils.angleToValue( MathUtils.halfPi - Math.atan2(mouseX - xCenter, mouseY - yCenter), 1, zeroAngle); } } } /**************************************************************************** ** ** Copyright (C) 2016 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the Qt Quick Extras module of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and The Qt Company. For licensing terms ** and conditions see https://www.qt.io/terms-conditions. For further ** information use the contact form at https://www.qt.io/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 3 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL3 included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 3 requirements ** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 2.0 or (at your option) the GNU General ** Public license version 3 or any later version approved by the KDE Free ** Qt Foundation. The licenses are as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 ** included in the packaging of this file. Please review the following ** information to ensure the GNU General Public License requirements will ** be met: https://www.gnu.org/licenses/gpl-2.0.html and ** https://www.gnu.org/licenses/gpl-3.0.html. ** ** $QT_END_LICENSE$ ** ****************************************************************************/ pragma Singleton import QtQuick 2.1 Text { } i/**************************************************************************** ** ** Copyright (C) 2016 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the Qt Quick Extras module of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and The Qt Company. For licensing terms ** and conditions see https://www.qt.io/terms-conditions. For further ** information use the contact form at https://www.qt.io/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 3 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL3 included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 3 requirements ** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 2.0 or (at your option) the GNU General ** Public license version 3 or any later version approved by the KDE Free ** Qt Foundation. The licenses are as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 ** included in the packaging of this file. Please review the following ** information to ensure the GNU General Public License requirements will ** be met: https://www.gnu.org/licenses/gpl-2.0.html and ** https://www.gnu.org/licenses/gpl-3.0.html. ** ** $QT_END_LICENSE$ ** ****************************************************************************/ import QtQuick 2.3 import QtQuick.Extras 1.4 import QtQuick.Extras.Private 1.0 import QtQuick.Extras.Private.CppUtils 1.0 Loader { id: iconLoader active: iconSource != "" property PieMenu control: null property QtObject styleData: null readonly property string iconSource: styleData && styleData.index < control.__protectedScope.visibleItems.length ? control.__protectedScope.visibleItems[styleData.index].iconSource : "" sourceComponent: Image { id: iconImage source: iconSource x: pos.x y: pos.y scale: scaleFactor readonly property point pos: MathUtils.centerAlongCircle( iconLoader.parent.width / 2, iconLoader.parent.height / 2, width, height, MathUtils.degToRadOffset(sectionCenterAngle(styleData.index)), control.__style.__iconOffset) /* The icons should scale with the menu at some point, so that they stay within the bounds of each section. We down-scale the image by whichever of the following amounts are larger: a) The amount by which the largest dimension's diagonal size exceeds the "selectable" radius. The selectable radius is the distance in pixels between lines A and B in the incredibly visually appealing image below: __________ - B - / \ / ____ \ | / A \ | --------| |-------- b) The amount by which the diagonal exceeds the circumference of one section. */ readonly property real scaleFactor: { var largestDimension = Math.max(iconImage.sourceSize.width, iconImage.sourceSize.height) * Math.sqrt(2); // TODO: add padding var radiusDifference = largestDimension - control.__style.__selectableRadius; var circumferenceDifference = largestDimension - Math.abs(control.__protectedScope.circumferenceOfSection); if (circumferenceDifference > 0 || radiusDifference > 0) { // We need to down-scale. if (radiusDifference > circumferenceDifference) { return control.__style.__selectableRadius / largestDimension; } else { return Math.abs(control.__protectedScope.circumferenceOfSection) / largestDimension; } } return 1; } } } bxXms6 _z8c'&nyӤ=Zm.R_$KeVH<v޼aBK-&S͋ÔÝ?ds0לԘ0:t8Bupy`IQ"wȴ5},_y1JJGa×/p*v09|؄^#*c0cRx:h+q|Mv@0uXr 3> R}`͹V3qo%N(jlL)u4\̈6ک52~0"@ka  G9,U ,JsҰJOk F #T&V KƱF5`h3Ov 0SJQ0Q5\k0̞/p C<)r3hHϐ)B=}PByX) C43K ַq;=Ռ"!sلԬJ'g<%'E(yϩXhK'ˍBROQz#'<;]gj|YLsXoDbihP! NNH)JW˘a,\^YV^PxyF!zVOJsdaX*3lCl"E||cV2θnW}:CڝI.+-9v8C-fH,6wo]Gx ƒܛ wY$!~7K1ܷMW+YrD ,}>~}z+|Icԧgƥ O. >=:*"<ӮJMl GOFuNP;iA X~"~kјKOICs,{CfȝG+O~jNaD>Gl!ӌ.;EL̴I8SNa Л,/R<]3oПg.(&kkFx$,Sl+Q4_{l#mL } -AJteJd]z6~b~v,dP<#f&AUvNJЁ̈́3k<ZW\Yݯ j&O0o0xmxy۵`Z^^iMT[XIVd;d0?9U](WMZch+t۷NZI fLơ7ke 'yFwk:٤'+lVp)gq"L boU"l3u.c{m3&28=րuUՔwZ Z;+H7xۮ-[uuK)V#3!>Y#__mO&J{N+i7b«ɮM4Yczs,UK!ks܆=;kO7ͳ zO.Z0kRUgHޮ_4k[i.#YYI nk9Vy{AoMfVK\dv!De*)r,|:$e{{?</**************************************************************************** ** ** Copyright (C) 2016 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the Qt Quick Extras module of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and The Qt Company. For licensing terms ** and conditions see https://www.qt.io/terms-conditions. For further ** information use the contact form at https://www.qt.io/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 3 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL3 included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 3 requirements ** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 2.0 or (at your option) the GNU General ** Public license version 3 or any later version approved by the KDE Free ** Qt Foundation. The licenses are as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 ** included in the packaging of this file. Please review the following ** information to ensure the GNU General Public License requirements will ** be met: https://www.gnu.org/licenses/gpl-2.0.html and ** https://www.gnu.org/licenses/gpl-3.0.html. ** ** $QT_END_LICENSE$ ** ****************************************************************************/ import QtQuick 2.2 import QtQuick.Controls 1.4 import QtQuick.Controls.Styles 1.4 import QtQuick.Controls.Private 1.0 /*! \internal */ Button { id: button style: Settings.styleComponent(Settings.style, "CircularButtonStyle.qml", button) } QtQuickExtrasPlugin19QtQuickExtrasPluginP RNMNQQuickTriggerModeTriggerModeTriggerOnPressTriggerOnReleaseTriggerOnClickPUTTVQQuickActivationModeActivationModeActivateOnPressActivateOnReleaseActivateOnClick++QICQI ` ^\ MJAQQuickPicturesourceChangedcolorChangedsourcecolor13QQuickPictureww8wvvXvHvv(xhyHy(yyxyxxxxhxXxx T;>AD G JMNS++++ + +C ++C+QIQIQI QI QI CQI0::+$$ $&- -( QQuickCircularProgressBarprogressChangedprogressbarWidthChangedbarWidthinsetChangedinsetminimumValueAngleChangedminimumValueAnglemaximumValueAngleChangedmaximumValueAnglebackgroundColorChangedbackgroundColorclearStopsaddStoppositioncolorredraw25QQuickCircularProgressBarH~~~~x~h~D69<? @ A B C ++++++++QIQIQI  QQuickFlatProgressBarstripeOffsetChangedstripeOffsetprogressChangedprogressindeterminateChangedindeterminaterepaintrestartAnimationonVisibleChangedonWidthChangedonHeightChanged21QQuickFlatProgressBar(Hxȇ؆ ^@EJOT U V Y\]+++++++ +++QI01)    QQuickMouseThiefpressedmouseXmouseYreleasedclickedtouchUpdatereceivedPressEventChangedhandledEventChangeditemWindowChangedQQuickWindow*windowgrabMouseQQuickItem*itemungrabMouseacceptCurrentEventreceivedPressEvent16QQuickMouseThiefh؎8H,/258E T      QQuickMathUtilsdegToRaddegreesdegToRadOffsetradToDegradiansradToDegOffsetcenterAlongCirclexCenteryCenterwidthheightangleOnCircledistanceAlongRadiusroundEvennumberpi215QQuickMathUtilsQTMETADATA qbjs IID,org.qt-project.Qt.QQmlExtensionInterface/1.0 classNameQtQuickExtrasPlugin:versiondebugMetaData uri QtQuick.Extras Hp*zR| (DN4'$AO RAT(6AO dAt(AOIA(`K\KhKdK`K lK hK4dKHpK\lKphKtKpKlKxKtKpK|KxK$tK(8KAAA O m AA(dK=AA O i AAK (KEAA O q AAK (d&8AA O b CA(K8AA O d AA(<KAAA O m AA(hK=AA O i AAK (KEAA O q AAL (LAAA O m AA4L|(L|< M|PxM|dM|xPN|(N[AA O G AA(NcAA O O AA<4OAA AAOP| AA AAM ($d$BAA O n AA@PO AA AAR_ AA AAG @T AA AAR_ AA AAG @PYAA AARW AA AAO #6AA AAOplCplCplCplCplCplCplCplCplCplCplCp AA AAM d6 @^AA AARW AA AAO @ DtK0RtXHYtYYYZ\d\$]]$^$t^P^d^^Dbb4tcdcxd$dj$jjTjhtkk$l4ll8lLmm$nnHo`$pru u,|p|}$}t}}}$T~\T$$TtDt4H|dԅT4PT,@X$pT T @TXtlDtĐ$Ԑ8T @ԑ`t4ĕ`DĖDė DPDt`444\ĥ $4`ԦTԧ(TXԨThdtĮ4 ԰T0`o  )-:GXfsbPk of8kjbbgj i`jig@hkXkDDDDDDDDEE&E6EFEVEfEvEEEEEEEEEFF&F6FFFVFfFvFFFFFFFFFGG&G6GFGVGfGvGGGGGGGGGHH&H6HFHVHfHvHHHHHHHHHII&I6IFIVIfIvIIIIIIIIIJJ&J6JFJVJfJvJJJJJJJJJKK&K6KFKVKfKvKKKKKKKKKLL&L6LFLVLfLvLLLLLLLLLMM&M6MFMVMfMvMMMMMMMMMNN&N6NFNVNfNvNNNNNNNNNOO&O6OFOVOfOvOOOOOOOOOPP&P6PFPVPpGCC: (GNU) 4.8GCC: (GNU) 4.9 20140827 (prerelease) GNUgold 1.11.shstrtab.dynsym.dynstr.hash.rel.dyn.rel.plt.text.rodata.qtmetadata.eh_frame.eh_frame_hdr.data.rel.ro.local.fini_array.data.rel.ro.init_array.dynamic.got.got.plt.data.bss.comment.note.gnu.gold-version   ))T! 00`* B|>|>.pDpD 3`P`P9(@A@'@'@MD(D( WII$ebR0xbRcSP@PkP[XkX[@l\@l\p`p`,0`5<`X`