diff --git a/share/qtcreator/qml-type-descriptions/qml-builtin-types.xml b/share/qtcreator/qml-type-descriptions/qml-builtin-types.xml new file mode 100644 index 0000000000000000000000000000000000000000..579395a188db14d305528db4c5da6d9af8c9ac70 --- /dev/null +++ b/share/qtcreator/qml-type-descriptions/qml-builtin-types.xml @@ -0,0 +1,2813 @@ +<?xml version="1.0" encoding="UTF-8"?> +<module> + <type name="Qt.Binding" version="4.6" extends="Qt.QtObject"> + <property name="target" type="Qt.QtObject"/> + <property name="property" type="string"/> + <property name="value" type="QVariant"/> + <property name="when" type="bool"/> + </type> + <type name="Qt.Loader" version="4.6" extends="Qt.Item"> + <enum name="Status"> + <enumerator name="Null" value="0"/> + <enumerator name="Ready" value="1"/> + <enumerator name="Loading" value="2"/> + <enumerator name="Error" value="3"/> + </enum> + <enum name="ResizeMode"> + <enumerator name="NoResize" value="0"/> + <enumerator name="SizeLoaderToItem" value="1"/> + <enumerator name="SizeItemToLoader" value="2"/> + </enum> + <property name="source" type="QUrl"/> + <property name="sourceComponent" type="Qt.Component"/> + <property name="resizeMode" type="ResizeMode"/> + <property name="item" type="QGraphicsObject"/> + <property name="status" type="Status"/> + <property name="progress" type="qreal"/> + <signal name="itemChanged"/> + <signal name="sourceChanged"/> + <signal name="statusChanged"/> + <signal name="progressChanged"/> + <signal name="resizeModeChanged"/> + </type> + <type name="Qt.RotationAnimation" version="4.6" extends="Qt.PropertyAnimation"> + <enum name="RotationDirection"> + <enumerator name="Numerical" value="0"/> + <enumerator name="Shortest" value="1"/> + <enumerator name="Clockwise" value="2"/> + <enumerator name="Counterclockwise" value="3"/> + </enum> + <property name="from" type="qreal"/> + <property name="to" type="qreal"/> + <property name="direction" type="RotationDirection"/> + <signal name="directionChanged"/> + </type> + <type name="QDeclarativeVisualDataModelParts" extends="QDeclarativeVisualDataModelParts"/> + <type name="Qt.PropertyAnimation" version="4.6" extends="QDeclarativeAbstractAnimation"> + <property name="duration" type="int"/> + <property name="from" type="QVariant"/> + <property name="to" type="QVariant"/> + <property name="easing" type="QEasingCurve"/> + <property name="target" type="Qt.QtObject"/> + <property name="property" type="string"/> + <property name="properties" type="string"/> + <property name="targets" type="Qt.QtObject" isList="true"/> + <property name="exclude" type="Qt.QtObject" isList="true"/> + <signal name="durationChanged"> + <param type="int"/> + </signal> + <signal name="fromChanged"> + <param type="QVariant"/> + </signal> + <signal name="toChanged"> + <param type="QVariant"/> + </signal> + <signal name="easingChanged"> + <param type="QEasingCurve"/> + </signal> + <signal name="propertiesChanged"> + <param type="string"/> + </signal> + <signal name="targetChanged"> + <param type="Qt.QtObject"/> + <param type="string"/> + </signal> + </type> + <type name="Qt.Flow" version="4.6" extends="QDeclarativeBasePositioner"> + <enum name="Flow"> + <enumerator name="LeftToRight" value="0"/> + <enumerator name="TopToBottom" value="1"/> + </enum> + <property name="flow" type="Flow"/> + <signal name="flowChanged"/> + </type> + <type name="Qt.Path" version="4.6" extends="Qt.QtObject"> + <property name="pathElements" type="QDeclarativePathElement" isList="true"/> + <property name="startX" type="qreal"/> + <property name="startY" type="qreal"/> + <property name="closed" type="bool"/> + <signal name="changed"/> + </type> + <type name="Qt.PauseAnimation" version="4.6" extends="QDeclarativeAbstractAnimation"> + <property name="duration" type="int"/> + <signal name="durationChanged"> + <param type="int"/> + </signal> + </type> + <type name="Qt.ParticleMotionLinear" version="4.6" extends="Qt.ParticleMotion"/> + <type name="QDeclarativeBasePositioner" extends="Qt.Item"> + <property name="spacing" type="int"/> + <property name="move" type="Qt.Transition"/> + <property name="add" type="Qt.Transition"/> + <signal name="spacingChanged"/> + <signal name="moveChanged"/> + <signal name="addChanged"/> + </type> + <type name="Qt.PathLine" version="4.6" extends="QDeclarativeCurve"/> + <type name="QListModelInterface" extends="Qt.QtObject"> + <signal name="itemsInserted"> + <param name="index" type="int"/> + <param name="count" type="int"/> + </signal> + <signal name="itemsRemoved"> + <param name="index" type="int"/> + <param name="count" type="int"/> + </signal> + <signal name="itemsMoved"> + <param name="from" type="int"/> + <param name="to" type="int"/> + <param name="count" type="int"/> + </signal> + <signal name="itemsChanged"> + <param name="index" type="int"/> + <param name="count" type="int"/> + <param name="roles" type="QList<int>"/> + </signal> + </type> + <type name="Qt.State" version="4.6" extends="Qt.QtObject"> + <property name="name" type="string"/> + <property name="when" type="QDeclarativeBinding"/> + <property name="extend" type="string"/> + <property name="changes" type="QDeclarativeStateOperation" isList="true"/> + <signal name="completed"/> + </type> + <type name="QDeclarativeScaleGrid" extends="Qt.QtObject"> + <property name="left" type="int"/> + <property name="top" type="int"/> + <property name="right" type="int"/> + <property name="bottom" type="int"/> + <signal name="borderChanged"/> + </type> + <type name="Qt.StateChangeScript" version="4.6" extends="QDeclarativeStateOperation"> + <property name="script" type="QDeclarativeScriptString"/> + <property name="name" type="string"/> + </type> + <type name="Qt.VisibleArea" version="4.6" extends="Qt.QtObject"> + <property name="xPosition" type="qreal"/> + <property name="yPosition" type="qreal"/> + <property name="widthRatio" type="qreal"/> + <property name="heightRatio" type="qreal"/> + <signal name="pageChanged"/> + </type> + <type name="Qt.WorkerScript" version="4.6" extends="Qt.QtObject"> + <property name="source" type="QUrl"/> + <signal name="sourceChanged"/> + <signal name="message"> + <param name="messageObject" type="QScriptValue"/> + </signal> + <method name="sendMessage"> + <param type="QScriptValue"/> + </method> + </type> + <type name="Qt.ListElement" version="4.6" extends="Qt.QtObject"/> + <type name="Qt.GradientStop" version="4.6" extends="Qt.QtObject"> + <property name="position" type="qreal"/> + <property name="color" type="QColor"/> + </type> + <type name="Qt.FontLoader" version="4.6" extends="Qt.QtObject"> + <enum name="Status"> + <enumerator name="Null" value="0"/> + <enumerator name="Ready" value="1"/> + <enumerator name="Loading" value="2"/> + <enumerator name="Error" value="3"/> + </enum> + <property name="source" type="QUrl"/> + <property name="name" type="string"/> + <property name="status" type="Status"/> + <signal name="nameChanged"/> + <signal name="statusChanged"/> + </type> + <type name="Qt.FocusScope" version="4.6" extends="Qt.Item"/> + <type name="Qt.VisualItemModel" version="4.6" extends="QDeclarativeVisualModel"> + <property name="children" type="Qt.Item" isList="true"/> + <signal name="childrenChanged"/> + </type> + <type name="Qt.KeyNavigation" version="4.6" extends="Qt.QtObject"> + <property name="left" type="Qt.Item"/> + <property name="right" type="Qt.Item"/> + <property name="up" type="Qt.Item"/> + <property name="down" type="Qt.Item"/> + <signal name="changed"/> + </type> + <type name="Qt.Repeater" version="4.6" extends="Qt.Item"> + <property name="model" type="QVariant"/> + <property name="delegate" type="Qt.Component"/> + <property name="count" type="int"/> + <signal name="modelChanged"/> + <signal name="delegateChanged"/> + <signal name="countChanged"/> + </type> + <type name="Qt.QIntValidator" version="4.6" extends="QValidator"> + <property name="bottom" type="int"/> + <property name="top" type="int"/> + </type> + <type name="QDeclarativeAnchors" extends="Qt.QtObject"> + <property name="left" type="QDeclarativeAnchorLine"/> + <property name="right" type="QDeclarativeAnchorLine"/> + <property name="horizontalCenter" type="QDeclarativeAnchorLine"/> + <property name="top" type="QDeclarativeAnchorLine"/> + <property name="bottom" type="QDeclarativeAnchorLine"/> + <property name="verticalCenter" type="QDeclarativeAnchorLine"/> + <property name="baseline" type="QDeclarativeAnchorLine"/> + <property name="margins" type="qreal"/> + <property name="leftMargin" type="qreal"/> + <property name="rightMargin" type="qreal"/> + <property name="horizontalCenterOffset" type="qreal"/> + <property name="topMargin" type="qreal"/> + <property name="bottomMargin" type="qreal"/> + <property name="verticalCenterOffset" type="qreal"/> + <property name="baselineOffset" type="qreal"/> + <property name="fill" type="Qt.Item"/> + <property name="centerIn" type="Qt.Item"/> + <signal name="leftChanged"/> + <signal name="rightChanged"/> + <signal name="topChanged"/> + <signal name="bottomChanged"/> + <signal name="verticalCenterChanged"/> + <signal name="horizontalCenterChanged"/> + <signal name="baselineChanged"/> + <signal name="fillChanged"/> + <signal name="centerInChanged"/> + <signal name="leftMarginChanged"/> + <signal name="rightMarginChanged"/> + <signal name="topMarginChanged"/> + <signal name="bottomMarginChanged"/> + <signal name="marginsChanged"/> + <signal name="verticalCenterOffsetChanged"/> + <signal name="horizontalCenterOffsetChanged"/> + <signal name="baselineOffsetChanged"/> + </type> + <type name="Qt.Blur" version="4.6" extends="QGraphicsEffect"> + <enum name="BlurHint"> + <enumerator name="PerformanceHint" value="0"/> + <enumerator name="QualityHint" value="1"/> + <enumerator name="AnimationHint" value="2"/> + </enum> + <enum name="BlurHints"> + <enumerator name="PerformanceHint" value="0"/> + <enumerator name="QualityHint" value="1"/> + <enumerator name="AnimationHint" value="2"/> + </enum> + <property name="blurRadius" type="qreal"/> + <property name="blurHints" type="BlurHints"/> + <signal name="blurRadiusChanged"> + <param name="blurRadius" type="qreal"/> + </signal> + <signal name="blurHintsChanged"> + <param name="hints" type="BlurHints"/> + </signal> + <method name="setBlurRadius"> + <param name="blurRadius" type="qreal"/> + </method> + <method name="setBlurHints"> + <param name="hints" type="BlurHints"/> + </method> + </type> + <type name="Qt.StateGroup" version="4.6" extends="Qt.QtObject"> + <property name="state" type="string"/> + <property name="states" type="Qt.State" isList="true"/> + <property name="transitions" type="Qt.Transition" isList="true"/> + <signal name="stateChanged"> + <param type="string"/> + </signal> + </type> + <type name="QDeclarativeAnimationGroup" extends="QDeclarativeAbstractAnimation"> + <property name="animations" type="QDeclarativeAbstractAnimation" isList="true"/> + </type> + <type name="Qt.ColorAnimation" version="4.6" extends="Qt.PropertyAnimation"> + <property name="from" type="QColor"/> + <property name="to" type="QColor"/> + </type> + <type name="Qt.ViewSection" version="4.6" extends="Qt.QtObject"> + <enum name="SectionCriteria"> + <enumerator name="FullString" value="0"/> + <enumerator name="FirstCharacter" value="1"/> + </enum> + <property name="property" type="string"/> + <property name="criteria" type="SectionCriteria"/> + <property name="delegate" type="Qt.Component"/> + <signal name="changed"/> + <signal name="delegateChanged"/> + </type> + <type name="Qt.FocusPanel" version="4.6" extends="Qt.Item"> + <property name="active" type="bool"/> + <signal name="activeChanged"/> + </type> + <type name="Qt.ScriptAction" version="4.6" extends="QDeclarativeAbstractAnimation"> + <property name="script" type="QDeclarativeScriptString"/> + <property name="stateChangeScriptName" type="string"/> + </type> + <type name="Qt"> + <enum name="GlobalColor"> + <enumerator name="color0" value="0"/> + <enumerator name="color1" value="1"/> + <enumerator name="black" value="2"/> + <enumerator name="white" value="3"/> + <enumerator name="darkGray" value="4"/> + <enumerator name="gray" value="5"/> + <enumerator name="lightGray" value="6"/> + <enumerator name="red" value="7"/> + <enumerator name="green" value="8"/> + <enumerator name="blue" value="9"/> + <enumerator name="cyan" value="10"/> + <enumerator name="magenta" value="11"/> + <enumerator name="yellow" value="12"/> + <enumerator name="darkRed" value="13"/> + <enumerator name="darkGreen" value="14"/> + <enumerator name="darkBlue" value="15"/> + <enumerator name="darkCyan" value="16"/> + <enumerator name="darkMagenta" value="17"/> + <enumerator name="darkYellow" value="18"/> + <enumerator name="transparent" value="19"/> + </enum> + <enum name="KeyboardModifiers"> + <enumerator name="NoModifier" value="0"/> + <enumerator name="ShiftModifier" value="33554432"/> + <enumerator name="ControlModifier" value="67108864"/> + <enumerator name="AltModifier" value="134217728"/> + <enumerator name="MetaModifier" value="268435456"/> + <enumerator name="KeypadModifier" value="536870912"/> + <enumerator name="GroupSwitchModifier" value="1073741824"/> + <enumerator name="KeyboardModifierMask" value="-33554432"/> + </enum> + <enum name="MouseButtons"> + <enumerator name="NoButton" value="0"/> + <enumerator name="LeftButton" value="1"/> + <enumerator name="RightButton" value="2"/> + <enumerator name="MidButton" value="4"/> + <enumerator name="XButton1" value="8"/> + <enumerator name="XButton2" value="16"/> + <enumerator name="MouseButtonMask" value="255"/> + </enum> + <enum name="Orientation"> + <enumerator name="Horizontal" value="1"/> + <enumerator name="Vertical" value="2"/> + </enum> + <enum name="Orientations"> + <enumerator name="Horizontal" value="1"/> + <enumerator name="Vertical" value="2"/> + </enum> + <enum name="FocusPolicy"> + <enumerator name="NoFocus" value="0"/> + <enumerator name="TabFocus" value="1"/> + <enumerator name="ClickFocus" value="2"/> + <enumerator name="StrongFocus" value="11"/> + <enumerator name="WheelFocus" value="15"/> + </enum> + <enum name="SortOrder"> + <enumerator name="AscendingOrder" value="0"/> + <enumerator name="DescendingOrder" value="1"/> + </enum> + <enum name="Alignment"> + <enumerator name="AlignLeft" value="1"/> + <enumerator name="AlignLeading" value="1"/> + <enumerator name="AlignRight" value="2"/> + <enumerator name="AlignTrailing" value="2"/> + <enumerator name="AlignHCenter" value="4"/> + <enumerator name="AlignJustify" value="8"/> + <enumerator name="AlignAbsolute" value="16"/> + <enumerator name="AlignHorizontal_Mask" value="31"/> + <enumerator name="AlignTop" value="32"/> + <enumerator name="AlignBottom" value="64"/> + <enumerator name="AlignVCenter" value="128"/> + <enumerator name="AlignVertical_Mask" value="224"/> + <enumerator name="AlignCenter" value="132"/> + </enum> + <enum name="TextElideMode"> + <enumerator name="ElideLeft" value="0"/> + <enumerator name="ElideRight" value="1"/> + <enumerator name="ElideMiddle" value="2"/> + <enumerator name="ElideNone" value="3"/> + </enum> + <enum name="WindowType"> + <enumerator name="Widget" value="0"/> + <enumerator name="Window" value="1"/> + <enumerator name="Dialog" value="3"/> + <enumerator name="Sheet" value="5"/> + <enumerator name="Drawer" value="7"/> + <enumerator name="Popup" value="9"/> + <enumerator name="Tool" value="11"/> + <enumerator name="ToolTip" value="13"/> + <enumerator name="SplashScreen" value="15"/> + <enumerator name="Desktop" value="17"/> + <enumerator name="SubWindow" value="18"/> + <enumerator name="WindowType_Mask" value="255"/> + <enumerator name="MSWindowsFixedSizeDialogHint" value="256"/> + <enumerator name="MSWindowsOwnDC" value="512"/> + <enumerator name="X11BypassWindowManagerHint" value="1024"/> + <enumerator name="FramelessWindowHint" value="2048"/> + <enumerator name="WindowTitleHint" value="4096"/> + <enumerator name="WindowSystemMenuHint" value="8192"/> + <enumerator name="WindowMinimizeButtonHint" value="16384"/> + <enumerator name="WindowMaximizeButtonHint" value="32768"/> + <enumerator name="WindowMinMaxButtonsHint" value="49152"/> + <enumerator name="WindowContextHelpButtonHint" value="65536"/> + <enumerator name="WindowShadeButtonHint" value="131072"/> + <enumerator name="WindowStaysOnTopHint" value="262144"/> + <enumerator name="CustomizeWindowHint" value="33554432"/> + <enumerator name="WindowStaysOnBottomHint" value="67108864"/> + <enumerator name="WindowCloseButtonHint" value="134217728"/> + <enumerator name="MacWindowToolBarButtonHint" value="268435456"/> + <enumerator name="BypassGraphicsProxyWidget" value="536870912"/> + <enumerator name="WindowOkButtonHint" value="524288"/> + <enumerator name="WindowCancelButtonHint" value="1048576"/> + </enum> + <enum name="WindowFlags"> + <enumerator name="Widget" value="0"/> + <enumerator name="Window" value="1"/> + <enumerator name="Dialog" value="3"/> + <enumerator name="Sheet" value="5"/> + <enumerator name="Drawer" value="7"/> + <enumerator name="Popup" value="9"/> + <enumerator name="Tool" value="11"/> + <enumerator name="ToolTip" value="13"/> + <enumerator name="SplashScreen" value="15"/> + <enumerator name="Desktop" value="17"/> + <enumerator name="SubWindow" value="18"/> + <enumerator name="WindowType_Mask" value="255"/> + <enumerator name="MSWindowsFixedSizeDialogHint" value="256"/> + <enumerator name="MSWindowsOwnDC" value="512"/> + <enumerator name="X11BypassWindowManagerHint" value="1024"/> + <enumerator name="FramelessWindowHint" value="2048"/> + <enumerator name="WindowTitleHint" value="4096"/> + <enumerator name="WindowSystemMenuHint" value="8192"/> + <enumerator name="WindowMinimizeButtonHint" value="16384"/> + <enumerator name="WindowMaximizeButtonHint" value="32768"/> + <enumerator name="WindowMinMaxButtonsHint" value="49152"/> + <enumerator name="WindowContextHelpButtonHint" value="65536"/> + <enumerator name="WindowShadeButtonHint" value="131072"/> + <enumerator name="WindowStaysOnTopHint" value="262144"/> + <enumerator name="CustomizeWindowHint" value="33554432"/> + <enumerator name="WindowStaysOnBottomHint" value="67108864"/> + <enumerator name="WindowCloseButtonHint" value="134217728"/> + <enumerator name="MacWindowToolBarButtonHint" value="268435456"/> + <enumerator name="BypassGraphicsProxyWidget" value="536870912"/> + <enumerator name="WindowOkButtonHint" value="524288"/> + <enumerator name="WindowCancelButtonHint" value="1048576"/> + </enum> + <enum name="WindowState"> + <enumerator name="WindowNoState" value="0"/> + <enumerator name="WindowMinimized" value="1"/> + <enumerator name="WindowMaximized" value="2"/> + <enumerator name="WindowFullScreen" value="4"/> + <enumerator name="WindowActive" value="8"/> + </enum> + <enum name="WindowStates"> + <enumerator name="WindowNoState" value="0"/> + <enumerator name="WindowMinimized" value="1"/> + <enumerator name="WindowMaximized" value="2"/> + <enumerator name="WindowFullScreen" value="4"/> + <enumerator name="WindowActive" value="8"/> + </enum> + <enum name="WidgetAttribute"> + <enumerator name="WA_Disabled" value="0"/> + <enumerator name="WA_UnderMouse" value="1"/> + <enumerator name="WA_MouseTracking" value="2"/> + <enumerator name="WA_ContentsPropagated" value="3"/> + <enumerator name="WA_OpaquePaintEvent" value="4"/> + <enumerator name="WA_NoBackground" value="4"/> + <enumerator name="WA_StaticContents" value="5"/> + <enumerator name="WA_LaidOut" value="7"/> + <enumerator name="WA_PaintOnScreen" value="8"/> + <enumerator name="WA_NoSystemBackground" value="9"/> + <enumerator name="WA_UpdatesDisabled" value="10"/> + <enumerator name="WA_Mapped" value="11"/> + <enumerator name="WA_MacNoClickThrough" value="12"/> + <enumerator name="WA_PaintOutsidePaintEvent" value="13"/> + <enumerator name="WA_InputMethodEnabled" value="14"/> + <enumerator name="WA_WState_Visible" value="15"/> + <enumerator name="WA_WState_Hidden" value="16"/> + <enumerator name="WA_ForceDisabled" value="32"/> + <enumerator name="WA_KeyCompression" value="33"/> + <enumerator name="WA_PendingMoveEvent" value="34"/> + <enumerator name="WA_PendingResizeEvent" value="35"/> + <enumerator name="WA_SetPalette" value="36"/> + <enumerator name="WA_SetFont" value="37"/> + <enumerator name="WA_SetCursor" value="38"/> + <enumerator name="WA_NoChildEventsFromChildren" value="39"/> + <enumerator name="WA_WindowModified" value="41"/> + <enumerator name="WA_Resized" value="42"/> + <enumerator name="WA_Moved" value="43"/> + <enumerator name="WA_PendingUpdate" value="44"/> + <enumerator name="WA_InvalidSize" value="45"/> + <enumerator name="WA_MacBrushedMetal" value="46"/> + <enumerator name="WA_MacMetalStyle" value="46"/> + <enumerator name="WA_CustomWhatsThis" value="47"/> + <enumerator name="WA_LayoutOnEntireRect" value="48"/> + <enumerator name="WA_OutsideWSRange" value="49"/> + <enumerator name="WA_GrabbedShortcut" value="50"/> + <enumerator name="WA_TransparentForMouseEvents" value="51"/> + <enumerator name="WA_PaintUnclipped" value="52"/> + <enumerator name="WA_SetWindowIcon" value="53"/> + <enumerator name="WA_NoMouseReplay" value="54"/> + <enumerator name="WA_DeleteOnClose" value="55"/> + <enumerator name="WA_RightToLeft" value="56"/> + <enumerator name="WA_SetLayoutDirection" value="57"/> + <enumerator name="WA_NoChildEventsForParent" value="58"/> + <enumerator name="WA_ForceUpdatesDisabled" value="59"/> + <enumerator name="WA_WState_Created" value="60"/> + <enumerator name="WA_WState_CompressKeys" value="61"/> + <enumerator name="WA_WState_InPaintEvent" value="62"/> + <enumerator name="WA_WState_Reparented" value="63"/> + <enumerator name="WA_WState_ConfigPending" value="64"/> + <enumerator name="WA_WState_Polished" value="66"/> + <enumerator name="WA_WState_DND" value="67"/> + <enumerator name="WA_WState_OwnSizePolicy" value="68"/> + <enumerator name="WA_WState_ExplicitShowHide" value="69"/> + <enumerator name="WA_ShowModal" value="70"/> + <enumerator name="WA_MouseNoMask" value="71"/> + <enumerator name="WA_GroupLeader" value="72"/> + <enumerator name="WA_NoMousePropagation" value="73"/> + <enumerator name="WA_Hover" value="74"/> + <enumerator name="WA_InputMethodTransparent" value="75"/> + <enumerator name="WA_QuitOnClose" value="76"/> + <enumerator name="WA_KeyboardFocusChange" value="77"/> + <enumerator name="WA_AcceptDrops" value="78"/> + <enumerator name="WA_DropSiteRegistered" value="79"/> + <enumerator name="WA_ForceAcceptDrops" value="79"/> + <enumerator name="WA_WindowPropagation" value="80"/> + <enumerator name="WA_NoX11EventCompression" value="81"/> + <enumerator name="WA_TintedBackground" value="82"/> + <enumerator name="WA_X11OpenGLOverlay" value="83"/> + <enumerator name="WA_AlwaysShowToolTips" value="84"/> + <enumerator name="WA_MacOpaqueSizeGrip" value="85"/> + <enumerator name="WA_SetStyle" value="86"/> + <enumerator name="WA_SetLocale" value="87"/> + <enumerator name="WA_MacShowFocusRect" value="88"/> + <enumerator name="WA_MacNormalSize" value="89"/> + <enumerator name="WA_MacSmallSize" value="90"/> + <enumerator name="WA_MacMiniSize" value="91"/> + <enumerator name="WA_LayoutUsesWidgetRect" value="92"/> + <enumerator name="WA_StyledBackground" value="93"/> + <enumerator name="WA_MSWindowsUseDirect3D" value="94"/> + <enumerator name="WA_CanHostQMdiSubWindowTitleBar" value="95"/> + <enumerator name="WA_MacAlwaysShowToolWindow" value="96"/> + <enumerator name="WA_StyleSheet" value="97"/> + <enumerator name="WA_ShowWithoutActivating" value="98"/> + <enumerator name="WA_X11BypassTransientForHint" value="99"/> + <enumerator name="WA_NativeWindow" value="100"/> + <enumerator name="WA_DontCreateNativeAncestors" value="101"/> + <enumerator name="WA_MacVariableSize" value="102"/> + <enumerator name="WA_DontShowOnScreen" value="103"/> + <enumerator name="WA_X11NetWmWindowTypeDesktop" value="104"/> + <enumerator name="WA_X11NetWmWindowTypeDock" value="105"/> + <enumerator name="WA_X11NetWmWindowTypeToolBar" value="106"/> + <enumerator name="WA_X11NetWmWindowTypeMenu" value="107"/> + <enumerator name="WA_X11NetWmWindowTypeUtility" value="108"/> + <enumerator name="WA_X11NetWmWindowTypeSplash" value="109"/> + <enumerator name="WA_X11NetWmWindowTypeDialog" value="110"/> + <enumerator name="WA_X11NetWmWindowTypeDropDownMenu" value="111"/> + <enumerator name="WA_X11NetWmWindowTypePopupMenu" value="112"/> + <enumerator name="WA_X11NetWmWindowTypeToolTip" value="113"/> + <enumerator name="WA_X11NetWmWindowTypeNotification" value="114"/> + <enumerator name="WA_X11NetWmWindowTypeCombo" value="115"/> + <enumerator name="WA_X11NetWmWindowTypeDND" value="116"/> + <enumerator name="WA_MacFrameworkScaled" value="117"/> + <enumerator name="WA_SetWindowModality" value="118"/> + <enumerator name="WA_WState_WindowOpacitySet" value="119"/> + <enumerator name="WA_TranslucentBackground" value="120"/> + <enumerator name="WA_AcceptTouchEvents" value="121"/> + <enumerator name="WA_WState_AcceptedTouchBeginEvent" value="122"/> + <enumerator name="WA_TouchPadAcceptSingleTouchEvents" value="123"/> + <enumerator name="WA_MergeSoftkeys" value="124"/> + <enumerator name="WA_MergeSoftkeysRecursively" value="125"/> + <enumerator name="WA_AttributeCount" value="126"/> + </enum> + <enum name="ApplicationAttribute"> + <enumerator name="AA_ImmediateWidgetCreation" value="0"/> + <enumerator name="AA_MSWindowsUseDirect3DByDefault" value="1"/> + <enumerator name="AA_DontShowIconsInMenus" value="2"/> + <enumerator name="AA_NativeWindows" value="3"/> + <enumerator name="AA_DontCreateNativeWidgetSiblings" value="4"/> + <enumerator name="AA_MacPluginApplication" value="5"/> + <enumerator name="AA_DontUseNativeMenuBar" value="6"/> + <enumerator name="AA_MacDontSwapCtrlAndMeta" value="7"/> + <enumerator name="AA_S60DontConstructApplicationPanes" value="8"/> + <enumerator name="AA_AttributeCount" value="9"/> + </enum> + <enum name="ImageConversionFlags"> + <enumerator name="ColorMode_Mask" value="3"/> + <enumerator name="AutoColor" value="0"/> + <enumerator name="ColorOnly" value="3"/> + <enumerator name="MonoOnly" value="2"/> + <enumerator name="AlphaDither_Mask" value="12"/> + <enumerator name="ThresholdAlphaDither" value="0"/> + <enumerator name="OrderedAlphaDither" value="4"/> + <enumerator name="DiffuseAlphaDither" value="8"/> + <enumerator name="NoAlpha" value="12"/> + <enumerator name="Dither_Mask" value="48"/> + <enumerator name="DiffuseDither" value="0"/> + <enumerator name="OrderedDither" value="16"/> + <enumerator name="ThresholdDither" value="32"/> + <enumerator name="DitherMode_Mask" value="192"/> + <enumerator name="AutoDither" value="0"/> + <enumerator name="PreferDither" value="64"/> + <enumerator name="AvoidDither" value="128"/> + <enumerator name="NoOpaqueDetection" value="256"/> + </enum> + <enum name="BGMode"> + <enumerator name="TransparentMode" value="0"/> + <enumerator name="OpaqueMode" value="1"/> + </enum> + <enum name="Key"> + <enumerator name="Key_Escape" value="16777216"/> + <enumerator name="Key_Tab" value="16777217"/> + <enumerator name="Key_Backtab" value="16777218"/> + <enumerator name="Key_Backspace" value="16777219"/> + <enumerator name="Key_Return" value="16777220"/> + <enumerator name="Key_Enter" value="16777221"/> + <enumerator name="Key_Insert" value="16777222"/> + <enumerator name="Key_Delete" value="16777223"/> + <enumerator name="Key_Pause" value="16777224"/> + <enumerator name="Key_Print" value="16777225"/> + <enumerator name="Key_SysReq" value="16777226"/> + <enumerator name="Key_Clear" value="16777227"/> + <enumerator name="Key_Home" value="16777232"/> + <enumerator name="Key_End" value="16777233"/> + <enumerator name="Key_Left" value="16777234"/> + <enumerator name="Key_Up" value="16777235"/> + <enumerator name="Key_Right" value="16777236"/> + <enumerator name="Key_Down" value="16777237"/> + <enumerator name="Key_PageUp" value="16777238"/> + <enumerator name="Key_PageDown" value="16777239"/> + <enumerator name="Key_Shift" value="16777248"/> + <enumerator name="Key_Control" value="16777249"/> + <enumerator name="Key_Meta" value="16777250"/> + <enumerator name="Key_Alt" value="16777251"/> + <enumerator name="Key_CapsLock" value="16777252"/> + <enumerator name="Key_NumLock" value="16777253"/> + <enumerator name="Key_ScrollLock" value="16777254"/> + <enumerator name="Key_F1" value="16777264"/> + <enumerator name="Key_F2" value="16777265"/> + <enumerator name="Key_F3" value="16777266"/> + <enumerator name="Key_F4" value="16777267"/> + <enumerator name="Key_F5" value="16777268"/> + <enumerator name="Key_F6" value="16777269"/> + <enumerator name="Key_F7" value="16777270"/> + <enumerator name="Key_F8" value="16777271"/> + <enumerator name="Key_F9" value="16777272"/> + <enumerator name="Key_F10" value="16777273"/> + <enumerator name="Key_F11" value="16777274"/> + <enumerator name="Key_F12" value="16777275"/> + <enumerator name="Key_F13" value="16777276"/> + <enumerator name="Key_F14" value="16777277"/> + <enumerator name="Key_F15" value="16777278"/> + <enumerator name="Key_F16" value="16777279"/> + <enumerator name="Key_F17" value="16777280"/> + <enumerator name="Key_F18" value="16777281"/> + <enumerator name="Key_F19" value="16777282"/> + <enumerator name="Key_F20" value="16777283"/> + <enumerator name="Key_F21" value="16777284"/> + <enumerator name="Key_F22" value="16777285"/> + <enumerator name="Key_F23" value="16777286"/> + <enumerator name="Key_F24" value="16777287"/> + <enumerator name="Key_F25" value="16777288"/> + <enumerator name="Key_F26" value="16777289"/> + <enumerator name="Key_F27" value="16777290"/> + <enumerator name="Key_F28" value="16777291"/> + <enumerator name="Key_F29" value="16777292"/> + <enumerator name="Key_F30" value="16777293"/> + <enumerator name="Key_F31" value="16777294"/> + <enumerator name="Key_F32" value="16777295"/> + <enumerator name="Key_F33" value="16777296"/> + <enumerator name="Key_F34" value="16777297"/> + <enumerator name="Key_F35" value="16777298"/> + <enumerator name="Key_Super_L" value="16777299"/> + <enumerator name="Key_Super_R" value="16777300"/> + <enumerator name="Key_Menu" value="16777301"/> + <enumerator name="Key_Hyper_L" value="16777302"/> + <enumerator name="Key_Hyper_R" value="16777303"/> + <enumerator name="Key_Help" value="16777304"/> + <enumerator name="Key_Direction_L" value="16777305"/> + <enumerator name="Key_Direction_R" value="16777312"/> + <enumerator name="Key_Space" value="32"/> + <enumerator name="Key_Any" value="32"/> + <enumerator name="Key_Exclam" value="33"/> + <enumerator name="Key_QuoteDbl" value="34"/> + <enumerator name="Key_NumberSign" value="35"/> + <enumerator name="Key_Dollar" value="36"/> + <enumerator name="Key_Percent" value="37"/> + <enumerator name="Key_Ampersand" value="38"/> + <enumerator name="Key_Apostrophe" value="39"/> + <enumerator name="Key_ParenLeft" value="40"/> + <enumerator name="Key_ParenRight" value="41"/> + <enumerator name="Key_Asterisk" value="42"/> + <enumerator name="Key_Plus" value="43"/> + <enumerator name="Key_Comma" value="44"/> + <enumerator name="Key_Minus" value="45"/> + <enumerator name="Key_Period" value="46"/> + <enumerator name="Key_Slash" value="47"/> + <enumerator name="Key_0" value="48"/> + <enumerator name="Key_1" value="49"/> + <enumerator name="Key_2" value="50"/> + <enumerator name="Key_3" value="51"/> + <enumerator name="Key_4" value="52"/> + <enumerator name="Key_5" value="53"/> + <enumerator name="Key_6" value="54"/> + <enumerator name="Key_7" value="55"/> + <enumerator name="Key_8" value="56"/> + <enumerator name="Key_9" value="57"/> + <enumerator name="Key_Colon" value="58"/> + <enumerator name="Key_Semicolon" value="59"/> + <enumerator name="Key_Less" value="60"/> + <enumerator name="Key_Equal" value="61"/> + <enumerator name="Key_Greater" value="62"/> + <enumerator name="Key_Question" value="63"/> + <enumerator name="Key_At" value="64"/> + <enumerator name="Key_A" value="65"/> + <enumerator name="Key_B" value="66"/> + <enumerator name="Key_C" value="67"/> + <enumerator name="Key_D" value="68"/> + <enumerator name="Key_E" value="69"/> + <enumerator name="Key_F" value="70"/> + <enumerator name="Key_G" value="71"/> + <enumerator name="Key_H" value="72"/> + <enumerator name="Key_I" value="73"/> + <enumerator name="Key_J" value="74"/> + <enumerator name="Key_K" value="75"/> + <enumerator name="Key_L" value="76"/> + <enumerator name="Key_M" value="77"/> + <enumerator name="Key_N" value="78"/> + <enumerator name="Key_O" value="79"/> + <enumerator name="Key_P" value="80"/> + <enumerator name="Key_Q" value="81"/> + <enumerator name="Key_R" value="82"/> + <enumerator name="Key_S" value="83"/> + <enumerator name="Key_T" value="84"/> + <enumerator name="Key_U" value="85"/> + <enumerator name="Key_V" value="86"/> + <enumerator name="Key_W" value="87"/> + <enumerator name="Key_X" value="88"/> + <enumerator name="Key_Y" value="89"/> + <enumerator name="Key_Z" value="90"/> + <enumerator name="Key_BracketLeft" value="91"/> + <enumerator name="Key_Backslash" value="92"/> + <enumerator name="Key_BracketRight" value="93"/> + <enumerator name="Key_AsciiCircum" value="94"/> + <enumerator name="Key_Underscore" value="95"/> + <enumerator name="Key_QuoteLeft" value="96"/> + <enumerator name="Key_BraceLeft" value="123"/> + <enumerator name="Key_Bar" value="124"/> + <enumerator name="Key_BraceRight" value="125"/> + <enumerator name="Key_AsciiTilde" value="126"/> + <enumerator name="Key_nobreakspace" value="160"/> + <enumerator name="Key_exclamdown" value="161"/> + <enumerator name="Key_cent" value="162"/> + <enumerator name="Key_sterling" value="163"/> + <enumerator name="Key_currency" value="164"/> + <enumerator name="Key_yen" value="165"/> + <enumerator name="Key_brokenbar" value="166"/> + <enumerator name="Key_section" value="167"/> + <enumerator name="Key_diaeresis" value="168"/> + <enumerator name="Key_copyright" value="169"/> + <enumerator name="Key_ordfeminine" value="170"/> + <enumerator name="Key_guillemotleft" value="171"/> + <enumerator name="Key_notsign" value="172"/> + <enumerator name="Key_hyphen" value="173"/> + <enumerator name="Key_registered" value="174"/> + <enumerator name="Key_macron" value="175"/> + <enumerator name="Key_degree" value="176"/> + <enumerator name="Key_plusminus" value="177"/> + <enumerator name="Key_twosuperior" value="178"/> + <enumerator name="Key_threesuperior" value="179"/> + <enumerator name="Key_acute" value="180"/> + <enumerator name="Key_mu" value="181"/> + <enumerator name="Key_paragraph" value="182"/> + <enumerator name="Key_periodcentered" value="183"/> + <enumerator name="Key_cedilla" value="184"/> + <enumerator name="Key_onesuperior" value="185"/> + <enumerator name="Key_masculine" value="186"/> + <enumerator name="Key_guillemotright" value="187"/> + <enumerator name="Key_onequarter" value="188"/> + <enumerator name="Key_onehalf" value="189"/> + <enumerator name="Key_threequarters" value="190"/> + <enumerator name="Key_questiondown" value="191"/> + <enumerator name="Key_Agrave" value="192"/> + <enumerator name="Key_Aacute" value="193"/> + <enumerator name="Key_Acircumflex" value="194"/> + <enumerator name="Key_Atilde" value="195"/> + <enumerator name="Key_Adiaeresis" value="196"/> + <enumerator name="Key_Aring" value="197"/> + <enumerator name="Key_AE" value="198"/> + <enumerator name="Key_Ccedilla" value="199"/> + <enumerator name="Key_Egrave" value="200"/> + <enumerator name="Key_Eacute" value="201"/> + <enumerator name="Key_Ecircumflex" value="202"/> + <enumerator name="Key_Ediaeresis" value="203"/> + <enumerator name="Key_Igrave" value="204"/> + <enumerator name="Key_Iacute" value="205"/> + <enumerator name="Key_Icircumflex" value="206"/> + <enumerator name="Key_Idiaeresis" value="207"/> + <enumerator name="Key_ETH" value="208"/> + <enumerator name="Key_Ntilde" value="209"/> + <enumerator name="Key_Ograve" value="210"/> + <enumerator name="Key_Oacute" value="211"/> + <enumerator name="Key_Ocircumflex" value="212"/> + <enumerator name="Key_Otilde" value="213"/> + <enumerator name="Key_Odiaeresis" value="214"/> + <enumerator name="Key_multiply" value="215"/> + <enumerator name="Key_Ooblique" value="216"/> + <enumerator name="Key_Ugrave" value="217"/> + <enumerator name="Key_Uacute" value="218"/> + <enumerator name="Key_Ucircumflex" value="219"/> + <enumerator name="Key_Udiaeresis" value="220"/> + <enumerator name="Key_Yacute" value="221"/> + <enumerator name="Key_THORN" value="222"/> + <enumerator name="Key_ssharp" value="223"/> + <enumerator name="Key_division" value="247"/> + <enumerator name="Key_ydiaeresis" value="255"/> + <enumerator name="Key_AltGr" value="16781571"/> + <enumerator name="Key_Multi_key" value="16781600"/> + <enumerator name="Key_Codeinput" value="16781623"/> + <enumerator name="Key_SingleCandidate" value="16781628"/> + <enumerator name="Key_MultipleCandidate" value="16781629"/> + <enumerator name="Key_PreviousCandidate" value="16781630"/> + <enumerator name="Key_Mode_switch" value="16781694"/> + <enumerator name="Key_Kanji" value="16781601"/> + <enumerator name="Key_Muhenkan" value="16781602"/> + <enumerator name="Key_Henkan" value="16781603"/> + <enumerator name="Key_Romaji" value="16781604"/> + <enumerator name="Key_Hiragana" value="16781605"/> + <enumerator name="Key_Katakana" value="16781606"/> + <enumerator name="Key_Hiragana_Katakana" value="16781607"/> + <enumerator name="Key_Zenkaku" value="16781608"/> + <enumerator name="Key_Hankaku" value="16781609"/> + <enumerator name="Key_Zenkaku_Hankaku" value="16781610"/> + <enumerator name="Key_Touroku" value="16781611"/> + <enumerator name="Key_Massyo" value="16781612"/> + <enumerator name="Key_Kana_Lock" value="16781613"/> + <enumerator name="Key_Kana_Shift" value="16781614"/> + <enumerator name="Key_Eisu_Shift" value="16781615"/> + <enumerator name="Key_Eisu_toggle" value="16781616"/> + <enumerator name="Key_Hangul" value="16781617"/> + <enumerator name="Key_Hangul_Start" value="16781618"/> + <enumerator name="Key_Hangul_End" value="16781619"/> + <enumerator name="Key_Hangul_Hanja" value="16781620"/> + <enumerator name="Key_Hangul_Jamo" value="16781621"/> + <enumerator name="Key_Hangul_Romaja" value="16781622"/> + <enumerator name="Key_Hangul_Jeonja" value="16781624"/> + <enumerator name="Key_Hangul_Banja" value="16781625"/> + <enumerator name="Key_Hangul_PreHanja" value="16781626"/> + <enumerator name="Key_Hangul_PostHanja" value="16781627"/> + <enumerator name="Key_Hangul_Special" value="16781631"/> + <enumerator name="Key_Dead_Grave" value="16781904"/> + <enumerator name="Key_Dead_Acute" value="16781905"/> + <enumerator name="Key_Dead_Circumflex" value="16781906"/> + <enumerator name="Key_Dead_Tilde" value="16781907"/> + <enumerator name="Key_Dead_Macron" value="16781908"/> + <enumerator name="Key_Dead_Breve" value="16781909"/> + <enumerator name="Key_Dead_Abovedot" value="16781910"/> + <enumerator name="Key_Dead_Diaeresis" value="16781911"/> + <enumerator name="Key_Dead_Abovering" value="16781912"/> + <enumerator name="Key_Dead_Doubleacute" value="16781913"/> + <enumerator name="Key_Dead_Caron" value="16781914"/> + <enumerator name="Key_Dead_Cedilla" value="16781915"/> + <enumerator name="Key_Dead_Ogonek" value="16781916"/> + <enumerator name="Key_Dead_Iota" value="16781917"/> + <enumerator name="Key_Dead_Voiced_Sound" value="16781918"/> + <enumerator name="Key_Dead_Semivoiced_Sound" value="16781919"/> + <enumerator name="Key_Dead_Belowdot" value="16781920"/> + <enumerator name="Key_Dead_Hook" value="16781921"/> + <enumerator name="Key_Dead_Horn" value="16781922"/> + <enumerator name="Key_Back" value="16777313"/> + <enumerator name="Key_Forward" value="16777314"/> + <enumerator name="Key_Stop" value="16777315"/> + <enumerator name="Key_Refresh" value="16777316"/> + <enumerator name="Key_VolumeDown" value="16777328"/> + <enumerator name="Key_VolumeMute" value="16777329"/> + <enumerator name="Key_VolumeUp" value="16777330"/> + <enumerator name="Key_BassBoost" value="16777331"/> + <enumerator name="Key_BassUp" value="16777332"/> + <enumerator name="Key_BassDown" value="16777333"/> + <enumerator name="Key_TrebleUp" value="16777334"/> + <enumerator name="Key_TrebleDown" value="16777335"/> + <enumerator name="Key_MediaPlay" value="16777344"/> + <enumerator name="Key_MediaStop" value="16777345"/> + <enumerator name="Key_MediaPrevious" value="16777346"/> + <enumerator name="Key_MediaNext" value="16777347"/> + <enumerator name="Key_MediaRecord" value="16777348"/> + <enumerator name="Key_HomePage" value="16777360"/> + <enumerator name="Key_Favorites" value="16777361"/> + <enumerator name="Key_Search" value="16777362"/> + <enumerator name="Key_Standby" value="16777363"/> + <enumerator name="Key_OpenUrl" value="16777364"/> + <enumerator name="Key_LaunchMail" value="16777376"/> + <enumerator name="Key_LaunchMedia" value="16777377"/> + <enumerator name="Key_Launch0" value="16777378"/> + <enumerator name="Key_Launch1" value="16777379"/> + <enumerator name="Key_Launch2" value="16777380"/> + <enumerator name="Key_Launch3" value="16777381"/> + <enumerator name="Key_Launch4" value="16777382"/> + <enumerator name="Key_Launch5" value="16777383"/> + <enumerator name="Key_Launch6" value="16777384"/> + <enumerator name="Key_Launch7" value="16777385"/> + <enumerator name="Key_Launch8" value="16777386"/> + <enumerator name="Key_Launch9" value="16777387"/> + <enumerator name="Key_LaunchA" value="16777388"/> + <enumerator name="Key_LaunchB" value="16777389"/> + <enumerator name="Key_LaunchC" value="16777390"/> + <enumerator name="Key_LaunchD" value="16777391"/> + <enumerator name="Key_LaunchE" value="16777392"/> + <enumerator name="Key_LaunchF" value="16777393"/> + <enumerator name="Key_MonBrightnessUp" value="16777394"/> + <enumerator name="Key_MonBrightnessDown" value="16777395"/> + <enumerator name="Key_KeyboardLightOnOff" value="16777396"/> + <enumerator name="Key_KeyboardBrightnessUp" value="16777397"/> + <enumerator name="Key_KeyboardBrightnessDown" value="16777398"/> + <enumerator name="Key_PowerOff" value="16777399"/> + <enumerator name="Key_WakeUp" value="16777400"/> + <enumerator name="Key_Eject" value="16777401"/> + <enumerator name="Key_ScreenSaver" value="16777402"/> + <enumerator name="Key_WWW" value="16777403"/> + <enumerator name="Key_Memo" value="16777404"/> + <enumerator name="Key_LightBulb" value="16777405"/> + <enumerator name="Key_Shop" value="16777406"/> + <enumerator name="Key_History" value="16777407"/> + <enumerator name="Key_AddFavorite" value="16777408"/> + <enumerator name="Key_HotLinks" value="16777409"/> + <enumerator name="Key_BrightnessAdjust" value="16777410"/> + <enumerator name="Key_Finance" value="16777411"/> + <enumerator name="Key_Community" value="16777412"/> + <enumerator name="Key_AudioRewind" value="16777413"/> + <enumerator name="Key_BackForward" value="16777414"/> + <enumerator name="Key_ApplicationLeft" value="16777415"/> + <enumerator name="Key_ApplicationRight" value="16777416"/> + <enumerator name="Key_Book" value="16777417"/> + <enumerator name="Key_CD" value="16777418"/> + <enumerator name="Key_Calculator" value="16777419"/> + <enumerator name="Key_ToDoList" value="16777420"/> + <enumerator name="Key_ClearGrab" value="16777421"/> + <enumerator name="Key_Close" value="16777422"/> + <enumerator name="Key_Copy" value="16777423"/> + <enumerator name="Key_Cut" value="16777424"/> + <enumerator name="Key_Display" value="16777425"/> + <enumerator name="Key_DOS" value="16777426"/> + <enumerator name="Key_Documents" value="16777427"/> + <enumerator name="Key_Excel" value="16777428"/> + <enumerator name="Key_Explorer" value="16777429"/> + <enumerator name="Key_Game" value="16777430"/> + <enumerator name="Key_Go" value="16777431"/> + <enumerator name="Key_iTouch" value="16777432"/> + <enumerator name="Key_LogOff" value="16777433"/> + <enumerator name="Key_Market" value="16777434"/> + <enumerator name="Key_Meeting" value="16777435"/> + <enumerator name="Key_MenuKB" value="16777436"/> + <enumerator name="Key_MenuPB" value="16777437"/> + <enumerator name="Key_MySites" value="16777438"/> + <enumerator name="Key_News" value="16777439"/> + <enumerator name="Key_OfficeHome" value="16777440"/> + <enumerator name="Key_Option" value="16777441"/> + <enumerator name="Key_Paste" value="16777442"/> + <enumerator name="Key_Phone" value="16777443"/> + <enumerator name="Key_Calendar" value="16777444"/> + <enumerator name="Key_Reply" value="16777445"/> + <enumerator name="Key_Reload" value="16777446"/> + <enumerator name="Key_RotateWindows" value="16777447"/> + <enumerator name="Key_RotationPB" value="16777448"/> + <enumerator name="Key_RotationKB" value="16777449"/> + <enumerator name="Key_Save" value="16777450"/> + <enumerator name="Key_Send" value="16777451"/> + <enumerator name="Key_Spell" value="16777452"/> + <enumerator name="Key_SplitScreen" value="16777453"/> + <enumerator name="Key_Support" value="16777454"/> + <enumerator name="Key_TaskPane" value="16777455"/> + <enumerator name="Key_Terminal" value="16777456"/> + <enumerator name="Key_Tools" value="16777457"/> + <enumerator name="Key_Travel" value="16777458"/> + <enumerator name="Key_Video" value="16777459"/> + <enumerator name="Key_Word" value="16777460"/> + <enumerator name="Key_Xfer" value="16777461"/> + <enumerator name="Key_ZoomIn" value="16777462"/> + <enumerator name="Key_ZoomOut" value="16777463"/> + <enumerator name="Key_Away" value="16777464"/> + <enumerator name="Key_Messenger" value="16777465"/> + <enumerator name="Key_WebCam" value="16777466"/> + <enumerator name="Key_MailForward" value="16777467"/> + <enumerator name="Key_Pictures" value="16777468"/> + <enumerator name="Key_Music" value="16777469"/> + <enumerator name="Key_Battery" value="16777470"/> + <enumerator name="Key_Bluetooth" value="16777471"/> + <enumerator name="Key_WLAN" value="16777472"/> + <enumerator name="Key_UWB" value="16777473"/> + <enumerator name="Key_AudioForward" value="16777474"/> + <enumerator name="Key_AudioRepeat" value="16777475"/> + <enumerator name="Key_AudioRandomPlay" value="16777476"/> + <enumerator name="Key_Subtitle" value="16777477"/> + <enumerator name="Key_AudioCycleTrack" value="16777478"/> + <enumerator name="Key_Time" value="16777479"/> + <enumerator name="Key_Hibernate" value="16777480"/> + <enumerator name="Key_View" value="16777481"/> + <enumerator name="Key_TopMenu" value="16777482"/> + <enumerator name="Key_PowerDown" value="16777483"/> + <enumerator name="Key_Suspend" value="16777484"/> + <enumerator name="Key_ContrastAdjust" value="16777485"/> + <enumerator name="Key_MediaLast" value="16842751"/> + <enumerator name="Key_Select" value="16842752"/> + <enumerator name="Key_Yes" value="16842753"/> + <enumerator name="Key_No" value="16842754"/> + <enumerator name="Key_Cancel" value="16908289"/> + <enumerator name="Key_Printer" value="16908290"/> + <enumerator name="Key_Execute" value="16908291"/> + <enumerator name="Key_Sleep" value="16908292"/> + <enumerator name="Key_Play" value="16908293"/> + <enumerator name="Key_Zoom" value="16908294"/> + <enumerator name="Key_Context1" value="17825792"/> + <enumerator name="Key_Context2" value="17825793"/> + <enumerator name="Key_Context3" value="17825794"/> + <enumerator name="Key_Context4" value="17825795"/> + <enumerator name="Key_Call" value="17825796"/> + <enumerator name="Key_Hangup" value="17825797"/> + <enumerator name="Key_Flip" value="17825798"/> + <enumerator name="Key_unknown" value="33554431"/> + </enum> + <enum name="ArrowType"> + <enumerator name="NoArrow" value="0"/> + <enumerator name="UpArrow" value="1"/> + <enumerator name="DownArrow" value="2"/> + <enumerator name="LeftArrow" value="3"/> + <enumerator name="RightArrow" value="4"/> + </enum> + <enum name="PenStyle"> + <enumerator name="NoPen" value="0"/> + <enumerator name="SolidLine" value="1"/> + <enumerator name="DashLine" value="2"/> + <enumerator name="DotLine" value="3"/> + <enumerator name="DashDotLine" value="4"/> + <enumerator name="DashDotDotLine" value="5"/> + <enumerator name="CustomDashLine" value="6"/> + </enum> + <enum name="PenCapStyle"> + <enumerator name="FlatCap" value="0"/> + <enumerator name="SquareCap" value="16"/> + <enumerator name="RoundCap" value="32"/> + <enumerator name="MPenCapStyle" value="48"/> + </enum> + <enum name="PenJoinStyle"> + <enumerator name="MiterJoin" value="0"/> + <enumerator name="BevelJoin" value="64"/> + <enumerator name="RoundJoin" value="128"/> + <enumerator name="SvgMiterJoin" value="256"/> + <enumerator name="MPenJoinStyle" value="448"/> + </enum> + <enum name="BrushStyle"> + <enumerator name="NoBrush" value="0"/> + <enumerator name="SolidPattern" value="1"/> + <enumerator name="Dense1Pattern" value="2"/> + <enumerator name="Dense2Pattern" value="3"/> + <enumerator name="Dense3Pattern" value="4"/> + <enumerator name="Dense4Pattern" value="5"/> + <enumerator name="Dense5Pattern" value="6"/> + <enumerator name="Dense6Pattern" value="7"/> + <enumerator name="Dense7Pattern" value="8"/> + <enumerator name="HorPattern" value="9"/> + <enumerator name="VerPattern" value="10"/> + <enumerator name="CrossPattern" value="11"/> + <enumerator name="BDiagPattern" value="12"/> + <enumerator name="FDiagPattern" value="13"/> + <enumerator name="DiagCrossPattern" value="14"/> + <enumerator name="LinearGradientPattern" value="15"/> + <enumerator name="RadialGradientPattern" value="16"/> + <enumerator name="ConicalGradientPattern" value="17"/> + <enumerator name="TexturePattern" value="24"/> + </enum> + <enum name="SizeMode"> + <enumerator name="AbsoluteSize" value="0"/> + <enumerator name="RelativeSize" value="1"/> + </enum> + <enum name="CursorShape"> + <enumerator name="ArrowCursor" value="0"/> + <enumerator name="UpArrowCursor" value="1"/> + <enumerator name="CrossCursor" value="2"/> + <enumerator name="WaitCursor" value="3"/> + <enumerator name="IBeamCursor" value="4"/> + <enumerator name="SizeVerCursor" value="5"/> + <enumerator name="SizeHorCursor" value="6"/> + <enumerator name="SizeBDiagCursor" value="7"/> + <enumerator name="SizeFDiagCursor" value="8"/> + <enumerator name="SizeAllCursor" value="9"/> + <enumerator name="BlankCursor" value="10"/> + <enumerator name="SplitVCursor" value="11"/> + <enumerator name="SplitHCursor" value="12"/> + <enumerator name="PointingHandCursor" value="13"/> + <enumerator name="ForbiddenCursor" value="14"/> + <enumerator name="WhatsThisCursor" value="15"/> + <enumerator name="BusyCursor" value="16"/> + <enumerator name="OpenHandCursor" value="17"/> + <enumerator name="ClosedHandCursor" value="18"/> + <enumerator name="DragCopyCursor" value="19"/> + <enumerator name="DragMoveCursor" value="20"/> + <enumerator name="DragLinkCursor" value="21"/> + <enumerator name="LastCursor" value="21"/> + <enumerator name="BitmapCursor" value="24"/> + <enumerator name="CustomCursor" value="25"/> + </enum> + <enum name="TextFormat"> + <enumerator name="PlainText" value="0"/> + <enumerator name="RichText" value="1"/> + <enumerator name="AutoText" value="2"/> + <enumerator name="LogText" value="3"/> + </enum> + <enum name="AspectRatioMode"> + <enumerator name="IgnoreAspectRatio" value="0"/> + <enumerator name="KeepAspectRatio" value="1"/> + <enumerator name="KeepAspectRatioByExpanding" value="2"/> + </enum> + <enum name="DockWidgetArea"> + <enumerator name="LeftDockWidgetArea" value="1"/> + <enumerator name="RightDockWidgetArea" value="2"/> + <enumerator name="TopDockWidgetArea" value="4"/> + <enumerator name="BottomDockWidgetArea" value="8"/> + <enumerator name="DockWidgetArea_Mask" value="15"/> + <enumerator name="AllDockWidgetAreas" value="15"/> + <enumerator name="NoDockWidgetArea" value="0"/> + </enum> + <enum name="DockWidgetAreas"> + <enumerator name="LeftDockWidgetArea" value="1"/> + <enumerator name="RightDockWidgetArea" value="2"/> + <enumerator name="TopDockWidgetArea" value="4"/> + <enumerator name="BottomDockWidgetArea" value="8"/> + <enumerator name="DockWidgetArea_Mask" value="15"/> + <enumerator name="AllDockWidgetAreas" value="15"/> + <enumerator name="NoDockWidgetArea" value="0"/> + </enum> + <enum name="ToolBarArea"> + <enumerator name="LeftToolBarArea" value="1"/> + <enumerator name="RightToolBarArea" value="2"/> + <enumerator name="TopToolBarArea" value="4"/> + <enumerator name="BottomToolBarArea" value="8"/> + <enumerator name="ToolBarArea_Mask" value="15"/> + <enumerator name="AllToolBarAreas" value="15"/> + <enumerator name="NoToolBarArea" value="0"/> + </enum> + <enum name="ToolBarAreas"> + <enumerator name="LeftToolBarArea" value="1"/> + <enumerator name="RightToolBarArea" value="2"/> + <enumerator name="TopToolBarArea" value="4"/> + <enumerator name="BottomToolBarArea" value="8"/> + <enumerator name="ToolBarArea_Mask" value="15"/> + <enumerator name="AllToolBarAreas" value="15"/> + <enumerator name="NoToolBarArea" value="0"/> + </enum> + <enum name="DateFormat"> + <enumerator name="TextDate" value="0"/> + <enumerator name="ISODate" value="1"/> + <enumerator name="SystemLocaleDate" value="2"/> + <enumerator name="LocalDate" value="2"/> + <enumerator name="LocaleDate" value="3"/> + <enumerator name="SystemLocaleShortDate" value="4"/> + <enumerator name="SystemLocaleLongDate" value="5"/> + <enumerator name="DefaultLocaleShortDate" value="6"/> + <enumerator name="DefaultLocaleLongDate" value="7"/> + </enum> + <enum name="TimeSpec"> + <enumerator name="LocalTime" value="0"/> + <enumerator name="UTC" value="1"/> + <enumerator name="OffsetFromUTC" value="2"/> + </enum> + <enum name="DayOfWeek"> + <enumerator name="Monday" value="1"/> + <enumerator name="Tuesday" value="2"/> + <enumerator name="Wednesday" value="3"/> + <enumerator name="Thursday" value="4"/> + <enumerator name="Friday" value="5"/> + <enumerator name="Saturday" value="6"/> + <enumerator name="Sunday" value="7"/> + </enum> + <enum name="ScrollBarPolicy"> + <enumerator name="ScrollBarAsNeeded" value="0"/> + <enumerator name="ScrollBarAlwaysOff" value="1"/> + <enumerator name="ScrollBarAlwaysOn" value="2"/> + </enum> + <enum name="CaseSensitivity"> + <enumerator name="CaseInsensitive" value="0"/> + <enumerator name="CaseSensitive" value="1"/> + </enum> + <enum name="Corner"> + <enumerator name="TopLeftCorner" value="0"/> + <enumerator name="TopRightCorner" value="1"/> + <enumerator name="BottomLeftCorner" value="2"/> + <enumerator name="BottomRightCorner" value="3"/> + </enum> + <enum name="ConnectionType"> + <enumerator name="AutoConnection" value="0"/> + <enumerator name="DirectConnection" value="1"/> + <enumerator name="QueuedConnection" value="2"/> + <enumerator name="AutoCompatConnection" value="3"/> + <enumerator name="BlockingQueuedConnection" value="4"/> + <enumerator name="UniqueConnection" value="128"/> + </enum> + <enum name="ShortcutContext"> + <enumerator name="WidgetShortcut" value="0"/> + <enumerator name="WindowShortcut" value="1"/> + <enumerator name="ApplicationShortcut" value="2"/> + <enumerator name="WidgetWithChildrenShortcut" value="3"/> + </enum> + <enum name="FillRule"> + <enumerator name="OddEvenFill" value="0"/> + <enumerator name="WindingFill" value="1"/> + </enum> + <enum name="MaskMode"> + <enumerator name="MaskInColor" value="0"/> + <enumerator name="MaskOutColor" value="1"/> + </enum> + <enum name="ClipOperation"> + <enumerator name="NoClip" value="0"/> + <enumerator name="ReplaceClip" value="1"/> + <enumerator name="IntersectClip" value="2"/> + <enumerator name="UniteClip" value="3"/> + </enum> + <enum name="ItemSelectionMode"> + <enumerator name="ContainsItemShape" value="0"/> + <enumerator name="IntersectsItemShape" value="1"/> + <enumerator name="ContainsItemBoundingRect" value="2"/> + <enumerator name="IntersectsItemBoundingRect" value="3"/> + </enum> + <enum name="TransformationMode"> + <enumerator name="FastTransformation" value="0"/> + <enumerator name="SmoothTransformation" value="1"/> + </enum> + <enum name="Axis"> + <enumerator name="XAxis" value="0"/> + <enumerator name="YAxis" value="1"/> + <enumerator name="ZAxis" value="2"/> + </enum> + <enum name="ContextMenuPolicy"> + <enumerator name="NoContextMenu" value="0"/> + <enumerator name="DefaultContextMenu" value="1"/> + <enumerator name="ActionsContextMenu" value="2"/> + <enumerator name="CustomContextMenu" value="3"/> + <enumerator name="PreventContextMenu" value="4"/> + </enum> + <enum name="InputMethodHint"> + <enumerator name="ImhNone" value="0"/> + <enumerator name="ImhHiddenText" value="1"/> + <enumerator name="ImhNoAutoUppercase" value="2"/> + <enumerator name="ImhPreferNumbers" value="4"/> + <enumerator name="ImhPreferUppercase" value="8"/> + <enumerator name="ImhPreferLowercase" value="16"/> + <enumerator name="ImhNoPredictiveText" value="32"/> + <enumerator name="ImhDigitsOnly" value="65536"/> + <enumerator name="ImhFormattedNumbersOnly" value="131072"/> + <enumerator name="ImhUppercaseOnly" value="262144"/> + <enumerator name="ImhLowercaseOnly" value="524288"/> + <enumerator name="ImhDialableCharactersOnly" value="1048576"/> + <enumerator name="ImhEmailCharactersOnly" value="2097152"/> + <enumerator name="ImhUrlCharactersOnly" value="4194304"/> + <enumerator name="ImhExclusiveInputMask" value="-65536"/> + </enum> + <enum name="InputMethodHints"> + <enumerator name="ImhNone" value="0"/> + <enumerator name="ImhHiddenText" value="1"/> + <enumerator name="ImhNoAutoUppercase" value="2"/> + <enumerator name="ImhPreferNumbers" value="4"/> + <enumerator name="ImhPreferUppercase" value="8"/> + <enumerator name="ImhPreferLowercase" value="16"/> + <enumerator name="ImhNoPredictiveText" value="32"/> + <enumerator name="ImhDigitsOnly" value="65536"/> + <enumerator name="ImhFormattedNumbersOnly" value="131072"/> + <enumerator name="ImhUppercaseOnly" value="262144"/> + <enumerator name="ImhLowercaseOnly" value="524288"/> + <enumerator name="ImhDialableCharactersOnly" value="1048576"/> + <enumerator name="ImhEmailCharactersOnly" value="2097152"/> + <enumerator name="ImhUrlCharactersOnly" value="4194304"/> + <enumerator name="ImhExclusiveInputMask" value="-65536"/> + </enum> + <enum name="ToolButtonStyle"> + <enumerator name="ToolButtonIconOnly" value="0"/> + <enumerator name="ToolButtonTextOnly" value="1"/> + <enumerator name="ToolButtonTextBesideIcon" value="2"/> + <enumerator name="ToolButtonTextUnderIcon" value="3"/> + <enumerator name="ToolButtonFollowStyle" value="4"/> + </enum> + <enum name="LayoutDirection"> + <enumerator name="LeftToRight" value="0"/> + <enumerator name="RightToLeft" value="1"/> + </enum> + <enum name="DropAction"> + <enumerator name="CopyAction" value="1"/> + <enumerator name="MoveAction" value="2"/> + <enumerator name="LinkAction" value="4"/> + <enumerator name="ActionMask" value="255"/> + <enumerator name="TargetMoveAction" value="32770"/> + <enumerator name="IgnoreAction" value="0"/> + </enum> + <enum name="DropActions"> + <enumerator name="CopyAction" value="1"/> + <enumerator name="MoveAction" value="2"/> + <enumerator name="LinkAction" value="4"/> + <enumerator name="ActionMask" value="255"/> + <enumerator name="TargetMoveAction" value="32770"/> + <enumerator name="IgnoreAction" value="0"/> + </enum> + <enum name="CheckState"> + <enumerator name="Unchecked" value="0"/> + <enumerator name="PartiallyChecked" value="1"/> + <enumerator name="Checked" value="2"/> + </enum> + <enum name="ItemFlags"> + <enumerator name="NoItemFlags" value="0"/> + <enumerator name="ItemIsSelectable" value="1"/> + <enumerator name="ItemIsEditable" value="2"/> + <enumerator name="ItemIsDragEnabled" value="4"/> + <enumerator name="ItemIsDropEnabled" value="8"/> + <enumerator name="ItemIsUserCheckable" value="16"/> + <enumerator name="ItemIsEnabled" value="32"/> + <enumerator name="ItemIsTristate" value="64"/> + </enum> + <enum name="MatchFlags"> + <enumerator name="MatchExactly" value="0"/> + <enumerator name="MatchContains" value="1"/> + <enumerator name="MatchStartsWith" value="2"/> + <enumerator name="MatchEndsWith" value="3"/> + <enumerator name="MatchRegExp" value="4"/> + <enumerator name="MatchWildcard" value="5"/> + <enumerator name="MatchFixedString" value="8"/> + <enumerator name="MatchCaseSensitive" value="16"/> + <enumerator name="MatchWrap" value="32"/> + <enumerator name="MatchRecursive" value="64"/> + </enum> + <enum name="WindowModality"> + <enumerator name="NonModal" value="0"/> + <enumerator name="WindowModal" value="1"/> + <enumerator name="ApplicationModal" value="2"/> + </enum> + <enum name="TextInteractionFlag"> + <enumerator name="NoTextInteraction" value="0"/> + <enumerator name="TextSelectableByMouse" value="1"/> + <enumerator name="TextSelectableByKeyboard" value="2"/> + <enumerator name="LinksAccessibleByMouse" value="4"/> + <enumerator name="LinksAccessibleByKeyboard" value="8"/> + <enumerator name="TextEditable" value="16"/> + <enumerator name="TextEditorInteraction" value="19"/> + <enumerator name="TextBrowserInteraction" value="13"/> + </enum> + <enum name="TextInteractionFlags"> + <enumerator name="NoTextInteraction" value="0"/> + <enumerator name="TextSelectableByMouse" value="1"/> + <enumerator name="TextSelectableByKeyboard" value="2"/> + <enumerator name="LinksAccessibleByMouse" value="4"/> + <enumerator name="LinksAccessibleByKeyboard" value="8"/> + <enumerator name="TextEditable" value="16"/> + <enumerator name="TextEditorInteraction" value="19"/> + <enumerator name="TextBrowserInteraction" value="13"/> + </enum> + <enum name="SizeHint"> + <enumerator name="MinimumSize" value="0"/> + <enumerator name="PreferredSize" value="1"/> + <enumerator name="MaximumSize" value="2"/> + <enumerator name="MinimumDescent" value="3"/> + <enumerator name="NSizeHints" value="4"/> + </enum> + </type> + <type name="Qt.PathQuad" version="4.6" extends="QDeclarativeCurve"> + <property name="controlX" type="qreal"/> + <property name="controlY" type="qreal"/> + </type> + <type name="Qt.ParticleMotionGravity" version="4.6" extends="Qt.ParticleMotion"> + <property name="xattractor" type="qreal"/> + <property name="yattractor" type="qreal"/> + <property name="acceleration" type="qreal"/> + <signal name="xattractorChanged"/> + <signal name="yattractorChanged"/> + <signal name="accelerationChanged"/> + </type> + <type name="Qt.Column" version="4.6" extends="QDeclarativeBasePositioner"/> + <type name="QDeclarativePathElement" extends="Qt.QtObject"> + <signal name="changed"/> + </type> + <type name="Qt.AnchorChanges" version="4.6" extends="QDeclarativeStateOperation"> + <property name="target" type="Qt.Item"/> + <property name="reset" type="string"/> + <property name="left" type="QDeclarativeAnchorLine"/> + <property name="right" type="QDeclarativeAnchorLine"/> + <property name="horizontalCenter" type="QDeclarativeAnchorLine"/> + <property name="top" type="QDeclarativeAnchorLine"/> + <property name="bottom" type="QDeclarativeAnchorLine"/> + <property name="verticalCenter" type="QDeclarativeAnchorLine"/> + <property name="baseline" type="QDeclarativeAnchorLine"/> + </type> + <type name="Qt.Component" version="4.6" extends="Qt.QtObject"> + <enum name="Status"> + <enumerator name="Null" value="0"/> + <enumerator name="Ready" value="1"/> + <enumerator name="Loading" value="2"/> + <enumerator name="Error" value="3"/> + </enum> + <property name="isNull" type="bool"/> + <property name="isReady" type="bool"/> + <property name="isError" type="bool"/> + <property name="isLoading" type="bool"/> + <property name="progress" type="qreal"/> + <property name="status" type="Status"/> + <property name="url" type="QUrl"/> + <signal name="statusChanged"> + <param type="QDeclarativeComponent.Status"/> + </signal> + <signal name="progressChanged"> + <param type="qreal"/> + </signal> + <method name="errorsString" type="string"/> + <method name="createObject" type="QScriptValue"/> + </type> + <type name="QAction" extends="Qt.QtObject"> + <enum name="MenuRole"> + <enumerator name="NoRole" value="0"/> + <enumerator name="TextHeuristicRole" value="1"/> + <enumerator name="ApplicationSpecificRole" value="2"/> + <enumerator name="AboutQtRole" value="3"/> + <enumerator name="AboutRole" value="4"/> + <enumerator name="PreferencesRole" value="5"/> + <enumerator name="QuitRole" value="6"/> + </enum> + <enum name="SoftKeyRole"> + <enumerator name="NoSoftKey" value="0"/> + <enumerator name="PositiveSoftKey" value="1"/> + <enumerator name="NegativeSoftKey" value="2"/> + <enumerator name="SelectSoftKey" value="3"/> + </enum> + <enum name="Priority"> + <enumerator name="LowPriority" value="0"/> + <enumerator name="NormalPriority" value="128"/> + <enumerator name="HighPriority" value="256"/> + </enum> + <property name="checkable" type="bool"/> + <property name="checked" type="bool"/> + <property name="enabled" type="bool"/> + <property name="icon" type="QIcon"/> + <property name="text" type="string"/> + <property name="iconText" type="string"/> + <property name="toolTip" type="string"/> + <property name="statusTip" type="string"/> + <property name="whatsThis" type="string"/> + <property name="font" type="QFont"/> + <property name="shortcut" type="QKeySequence"/> + <property name="shortcutContext" type="Qt.ShortcutContext"/> + <property name="autoRepeat" type="bool"/> + <property name="visible" type="bool"/> + <property name="menuRole" type="MenuRole"/> + <property name="softKeyRole" type="SoftKeyRole"/> + <property name="iconVisibleInMenu" type="bool"/> + <property name="priority" type="Priority"/> + <signal name="changed"/> + <signal name="triggered"> + <param name="checked" type="bool"/> + </signal> + <signal name="triggered"/> + <signal name="hovered"/> + <signal name="toggled"> + <param type="bool"/> + </signal> + <method name="trigger"/> + <method name="hover"/> + <method name="setChecked"> + <param type="bool"/> + </method> + <method name="toggle"/> + <method name="setEnabled"> + <param type="bool"/> + </method> + <method name="setDisabled"> + <param name="b" type="bool"/> + </method> + <method name="setVisible"> + <param type="bool"/> + </method> + </type> + <type name="Qt.QtObject" version="4.6"> + <property name="objectName" type="string"/> + <signal name="destroyed"> + <param type="Qt.QtObject"/> + </signal> + <signal name="destroyed"/> + <method name="deleteLater"/> + </type> + <type name="Qt.WorkerListModel" version="4.6" extends="QListModelInterface"> + <property name="count" type="int"/> + <signal name="countChanged"/> + <method name="clear"/> + <method name="remove"> + <param name="index" type="int"/> + </method> + <method name="append"> + <param type="QScriptValue"/> + </method> + <method name="insert"> + <param name="index" type="int"/> + <param type="QScriptValue"/> + </method> + <method name="get" type="QScriptValue"> + <param name="index" type="int"/> + </method> + <method name="set"> + <param name="index" type="int"/> + <param type="QScriptValue"/> + </method> + </type> + <type name="QGraphicsObject" extends="Qt.QtObject"> + <property name="parent" type="QGraphicsObject"/> + <property name="opacity" type="qreal"/> + <property name="enabled" type="bool"/> + <property name="visible" type="bool"/> + <property name="pos" type="QPointF"/> + <property name="x" type="qreal"/> + <property name="y" type="qreal"/> + <property name="z" type="qreal"/> + <property name="rotation" type="qreal"/> + <property name="scale" type="qreal"/> + <property name="transformOriginPoint" type="QPointF"/> + <signal name="parentChanged"/> + <signal name="opacityChanged"/> + <signal name="visibleChanged"/> + <signal name="enabledChanged"/> + <signal name="xChanged"/> + <signal name="yChanged"/> + <signal name="zChanged"/> + <signal name="rotationChanged"/> + <signal name="scaleChanged"/> + </type> + <type name="Qt.Gradient" version="4.6" extends="Qt.QtObject"> + <property name="stops" type="Qt.GradientStop" isList="true"/> + <signal name="updated"/> + </type> + <type name="Qt.VisualDataModel" version="4.6" extends="QDeclarativeVisualModel"> + <property name="model" type="QVariant"/> + <property name="delegate" type="Qt.Component"/> + <property name="part" type="string"/> + <property name="parts" type="Qt.QtObject"/> + <property name="rootIndex" type="QModelIndex"/> + <signal name="createdPackage"> + <param name="index" type="int"/> + <param name="package" type="Qt.Package"/> + </signal> + <signal name="destroyingPackage"> + <param name="package" type="Qt.Package"/> + </signal> + <signal name="rootIndexChanged"/> + </type> + <type name="Qt.Keys" version="4.6" extends="Qt.QtObject"> + <property name="enabled" type="bool"/> + <property name="forwardTo" type="Qt.Item" isList="true"/> + <signal name="enabledChanged"/> + <signal name="pressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="released"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="digit0Pressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="digit1Pressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="digit2Pressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="digit3Pressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="digit4Pressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="digit5Pressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="digit6Pressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="digit7Pressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="digit8Pressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="digit9Pressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="leftPressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="rightPressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="upPressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="downPressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="asteriskPressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="numberSignPressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="escapePressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="returnPressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="enterPressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="deletePressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="spacePressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="backPressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="cancelPressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="selectPressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="yesPressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="noPressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="context1Pressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="context2Pressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="context3Pressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="context4Pressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="callPressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="hangupPressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="flipPressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="menuPressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="volumeUpPressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + <signal name="volumeDownPressed"> + <param name="event" type="QDeclarativeKeyEvent"/> + </signal> + </type> + <type name="QGraphicsTransform" extends="Qt.QtObject"/> + <type name="Qt.Transition" version="4.6" extends="Qt.QtObject"> + <property name="from" type="string"/> + <property name="to" type="string"/> + <property name="reversible" type="bool"/> + <property name="animations" type="QDeclarativeAbstractAnimation" isList="true"/> + </type> + <type name="Qt.QDoubleValidator" version="4.7" extends="QValidator"> + <enum name="Notation"> + <enumerator name="StandardNotation" value="0"/> + <enumerator name="ScientificNotation" value="1"/> + </enum> + <property name="bottom" type="double"/> + <property name="top" type="double"/> + <property name="decimals" type="int"/> + <property name="notation" type="Notation"/> + </type> + <type name="QDeclarativeWebSettings" extends="Qt.QtObject"> + <property name="standardFontFamily" type="string"/> + <property name="fixedFontFamily" type="string"/> + <property name="serifFontFamily" type="string"/> + <property name="sansSerifFontFamily" type="string"/> + <property name="cursiveFontFamily" type="string"/> + <property name="fantasyFontFamily" type="string"/> + <property name="minimumFontSize" type="int"/> + <property name="minimumLogicalFontSize" type="int"/> + <property name="defaultFontSize" type="int"/> + <property name="defaultFixedFontSize" type="int"/> + <property name="autoLoadImages" type="bool"/> + <property name="javascriptEnabled" type="bool"/> + <property name="javaEnabled" type="bool"/> + <property name="pluginsEnabled" type="bool"/> + <property name="privateBrowsingEnabled" type="bool"/> + <property name="javascriptCanOpenWindows" type="bool"/> + <property name="javascriptCanAccessClipboard" type="bool"/> + <property name="developerExtrasEnabled" type="bool"/> + <property name="linksIncludedInFocusChain" type="bool"/> + <property name="zoomTextOnly" type="bool"/> + <property name="printElementBackgrounds" type="bool"/> + <property name="offlineStorageDatabaseEnabled" type="bool"/> + <property name="offlineWebApplicationCacheEnabled" type="bool"/> + <property name="localStorageDatabaseEnabled" type="bool"/> + <property name="localContentCanAccessRemoteUrls" type="bool"/> + </type> + <type name="Qt.GridView" version="4.6" extends="Qt.Flickable"> + <enum name="Flow"> + <enumerator name="LeftToRight" value="0"/> + <enumerator name="TopToBottom" value="1"/> + </enum> + <property name="model" type="QVariant"/> + <property name="delegate" type="Qt.Component"/> + <property name="currentIndex" type="int"/> + <property name="currentItem" type="Qt.Item"/> + <property name="count" type="int"/> + <property name="highlight" type="Qt.Component"/> + <property name="highlightItem" type="Qt.Item"/> + <property name="highlightFollowsCurrentItem" type="bool"/> + <property name="flow" type="Flow"/> + <property name="keyNavigationWraps" type="bool"/> + <property name="cacheBuffer" type="int"/> + <property name="cellWidth" type="int"/> + <property name="cellHeight" type="int"/> + <signal name="countChanged"/> + <signal name="currentIndexChanged"/> + <signal name="cellWidthChanged"/> + <signal name="cellHeightChanged"/> + <signal name="highlightChanged"/> + <method name="moveCurrentIndexUp"/> + <method name="moveCurrentIndexDown"/> + <method name="moveCurrentIndexLeft"/> + <method name="moveCurrentIndexRight"/> + <method name="positionViewAtIndex"> + <param name="index" type="int"/> + </method> + </type> + <type name="Qt.DropShadow" version="4.6" extends="QGraphicsEffect"> + <property name="offset" type="QPointF"/> + <property name="xOffset" type="qreal"/> + <property name="yOffset" type="qreal"/> + <property name="blurRadius" type="qreal"/> + <property name="color" type="QColor"/> + <signal name="offsetChanged"> + <param name="offset" type="QPointF"/> + </signal> + <signal name="blurRadiusChanged"> + <param name="blurRadius" type="qreal"/> + </signal> + <signal name="colorChanged"> + <param name="color" type="QColor"/> + </signal> + <method name="setOffset"> + <param name="ofs" type="QPointF"/> + </method> + <method name="setOffset"> + <param name="dx" type="qreal"/> + <param name="dy" type="qreal"/> + </method> + <method name="setOffset"> + <param name="d" type="qreal"/> + </method> + <method name="setXOffset"> + <param name="dx" type="qreal"/> + </method> + <method name="setYOffset"> + <param name="dy" type="qreal"/> + </method> + <method name="setBlurRadius"> + <param name="blurRadius" type="qreal"/> + </method> + <method name="setColor"> + <param name="color" type="QColor"/> + </method> + </type> + <type name="Qt.SystemPalette" version="4.6" extends="Qt.QtObject"> + <enum name="ColorGroup"> + <enumerator name="Active" value="0"/> + <enumerator name="Inactive" value="2"/> + <enumerator name="Disabled" value="1"/> + </enum> + <property name="colorGroup" type="QDeclarativeSystemPalette.ColorGroup"/> + <property name="window" type="QColor"/> + <property name="windowText" type="QColor"/> + <property name="base" type="QColor"/> + <property name="text" type="QColor"/> + <property name="alternateBase" type="QColor"/> + <property name="button" type="QColor"/> + <property name="buttonText" type="QColor"/> + <property name="light" type="QColor"/> + <property name="midlight" type="QColor"/> + <property name="dark" type="QColor"/> + <property name="mid" type="QColor"/> + <property name="shadow" type="QColor"/> + <property name="highlight" type="QColor"/> + <property name="highlightedText" type="QColor"/> + <signal name="paletteChanged"/> + </type> + <type name="Qt.Flickable" version="4.6" extends="Qt.Item"> + <enum name="FlickDirection"> + <enumerator name="AutoFlickDirection" value="0"/> + <enumerator name="HorizontalFlick" value="1"/> + <enumerator name="VerticalFlick" value="2"/> + <enumerator name="HorizontalAndVerticalFlick" value="3"/> + </enum> + <property name="viewportWidth" type="qreal"/> + <property name="viewportHeight" type="qreal"/> + <property name="viewportX" type="qreal"/> + <property name="viewportY" type="qreal"/> + <property name="horizontalVelocity" type="qreal"/> + <property name="verticalVelocity" type="qreal"/> + <property name="reportedVelocitySmoothing" type="qreal"/> + <property name="overShoot" type="bool"/> + <property name="maximumFlickVelocity" type="qreal"/> + <property name="flickDeceleration" type="qreal"/> + <property name="moving" type="bool"/> + <property name="flicking" type="bool"/> + <property name="flickDirection" type="FlickDirection"/> + <property name="interactive" type="bool"/> + <property name="pressDelay" type="int"/> + <property name="atXEnd" type="bool"/> + <property name="atYEnd" type="bool"/> + <property name="atXBeginning" type="bool"/> + <property name="atYBeginning" type="bool"/> + <property name="visibleArea" type="Qt.VisibleArea"/> + <property name="flickableData" type="Qt.QtObject" isList="true"/> + <property name="flickableChildren" type="Qt.Item" isList="true"/> + <signal name="viewportWidthChanged"/> + <signal name="viewportHeightChanged"/> + <signal name="positionXChanged"/> + <signal name="positionYChanged"/> + <signal name="movingChanged"/> + <signal name="flickingChanged"/> + <signal name="movementStarted"/> + <signal name="movementEnded"/> + <signal name="flickStarted"/> + <signal name="flickEnded"/> + <signal name="reportedVelocitySmoothingChanged"> + <param type="int"/> + </signal> + <signal name="horizontalVelocityChanged"/> + <signal name="verticalVelocityChanged"/> + <signal name="isAtBoundaryChanged"/> + <signal name="pageChanged"/> + <signal name="flickDirectionChanged"/> + <signal name="interactiveChanged"/> + <signal name="overShootChanged"/> + <signal name="maximumFlickVelocityChanged"/> + <signal name="flickDecelerationChanged"/> + <signal name="pressDelayChanged"/> + </type> + <type name="Qt.SequentialAnimation" version="4.6" extends="QDeclarativeAnimationGroup"/> + <type name="Qt.Drag" version="4.6" extends="Qt.QtObject"> + <enum name="Axis"> + <enumerator name="XAxis" value="1"/> + <enumerator name="YAxis" value="2"/> + <enumerator name="XandYAxis" value="3"/> + </enum> + <property name="target" type="Qt.Item"/> + <property name="axis" type="Axis"/> + <property name="minimumX" type="qreal"/> + <property name="maximumX" type="qreal"/> + <property name="minimumY" type="qreal"/> + <property name="maximumY" type="qreal"/> + <signal name="targetChanged"/> + <signal name="axisChanged"/> + <signal name="minimumXChanged"/> + <signal name="maximumXChanged"/> + <signal name="minimumYChanged"/> + <signal name="maximumYChanged"/> + </type> + <type name="Qt.ListView" version="4.6" extends="Qt.Flickable"> + <enum name="HighlightRangeMode"> + <enumerator name="NoHighlightRange" value="0"/> + <enumerator name="ApplyRange" value="1"/> + <enumerator name="StrictlyEnforceRange" value="2"/> + </enum> + <enum name="Orientation"> + <enumerator name="Horizontal" value="1"/> + <enumerator name="Vertical" value="2"/> + </enum> + <enum name="SnapMode"> + <enumerator name="NoSnap" value="0"/> + <enumerator name="SnapToItem" value="1"/> + <enumerator name="SnapOneItem" value="2"/> + </enum> + <property name="model" type="QVariant"/> + <property name="delegate" type="Qt.Component"/> + <property name="currentIndex" type="int"/> + <property name="currentItem" type="Qt.Item"/> + <property name="count" type="int"/> + <property name="highlight" type="Qt.Component"/> + <property name="highlightItem" type="Qt.Item"/> + <property name="highlightFollowsCurrentItem" type="bool"/> + <property name="highlightMoveSpeed" type="qreal"/> + <property name="highlightResizeSpeed" type="qreal"/> + <property name="preferredHighlightBegin" type="qreal"/> + <property name="preferredHighlightEnd" type="qreal"/> + <property name="highlightRangeMode" type="HighlightRangeMode"/> + <property name="spacing" type="qreal"/> + <property name="orientation" type="Orientation"/> + <property name="keyNavigationWraps" type="bool"/> + <property name="cacheBuffer" type="int"/> + <property name="section" type="Qt.ViewSection"/> + <property name="currentSection" type="string"/> + <property name="snapMode" type="SnapMode"/> + <property name="header" type="Qt.Component"/> + <property name="footer" type="Qt.Component"/> + <signal name="countChanged"/> + <signal name="spacingChanged"/> + <signal name="orientationChanged"/> + <signal name="currentIndexChanged"/> + <signal name="currentSectionChanged"/> + <signal name="highlightMoveSpeedChanged"/> + <signal name="highlightResizeSpeedChanged"/> + <signal name="highlightChanged"/> + <method name="incrementCurrentIndex"/> + <method name="decrementCurrentIndex"/> + <method name="positionViewAtIndex"> + <param name="index" type="int"/> + </method> + </type> + <type name="Qt.NumberAnimation" version="4.6" extends="Qt.PropertyAnimation"> + <property name="from" type="qreal"/> + <property name="to" type="qreal"/> + </type> + <type name="Qt.Image" version="4.6" extends="QDeclarativeImageBase"> + <enum name="FillMode"> + <enumerator name="Stretch" value="0"/> + <enumerator name="PreserveAspectFit" value="1"/> + <enumerator name="PreserveAspectCrop" value="2"/> + <enumerator name="Tile" value="3"/> + <enumerator name="TileVertically" value="4"/> + <enumerator name="TileHorizontally" value="5"/> + </enum> + <property name="pixmap" type="QPixmap"/> + <property name="fillMode" type="FillMode"/> + <property name="paintedWidth" type="qreal"/> + <property name="paintedHeight" type="qreal"/> + <signal name="fillModeChanged"/> + <signal name="paintedGeometryChanged"/> + </type> + <type name="Qt.PropertyAction" version="4.6" extends="QDeclarativeAbstractAnimation"> + <property name="target" type="Qt.QtObject"/> + <property name="property" type="string"/> + <property name="properties" type="string"/> + <property name="targets" type="Qt.QtObject" isList="true"/> + <property name="exclude" type="Qt.QtObject" isList="true"/> + <property name="value" type="QVariant"/> + <signal name="valueChanged"> + <param type="QVariant"/> + </signal> + <signal name="propertiesChanged"> + <param type="string"/> + </signal> + <signal name="targetChanged"> + <param type="Qt.QtObject"/> + <param type="string"/> + </signal> + </type> + <type name="Qt.LayoutItem" version="4.6" extends="Qt.Item"> + <property name="maximumSize" type="QSizeF"/> + <property name="minimumSize" type="QSizeF"/> + <property name="preferredSize" type="QSizeF"/> + <signal name="maximumSizeChanged"/> + <signal name="minimumSizeChanged"/> + <signal name="preferredSizeChanged"/> + </type> + <type name="Qt.ParticleMotionWander" version="4.6" extends="Qt.ParticleMotion"> + <property name="xvariance" type="qreal"/> + <property name="yvariance" type="qreal"/> + <property name="pace" type="qreal"/> + <signal name="xvarianceChanged"/> + <signal name="yvarianceChanged"/> + <signal name="paceChanged"/> + </type> + <type name="Qt.Row" version="4.6" extends="QDeclarativeBasePositioner"/> + <type name="Qt.PathCubic" version="4.6" extends="QDeclarativeCurve"> + <property name="control1X" type="qreal"/> + <property name="control1Y" type="qreal"/> + <property name="control2X" type="qreal"/> + <property name="control2Y" type="qreal"/> + </type> + <type name="Qt.TextInput" version="4.6" extends="QDeclarativePaintedItem"> + <enum name="EchoMode"> + <enumerator name="Normal" value="0"/> + <enumerator name="NoEcho" value="1"/> + <enumerator name="Password" value="2"/> + <enumerator name="PasswordEchoOnEdit" value="3"/> + </enum> + <enum name="HAlignment"> + <enumerator name="AlignLeft" value="1"/> + <enumerator name="AlignRight" value="2"/> + <enumerator name="AlignHCenter" value="4"/> + </enum> + <property name="text" type="string"/> + <property name="color" type="QColor"/> + <property name="selectionColor" type="QColor"/> + <property name="selectedTextColor" type="QColor"/> + <property name="font" type="QFont"/> + <property name="horizontalAlignment" type="HAlignment"/> + <property name="readOnly" type="bool"/> + <property name="cursorVisible" type="bool"/> + <property name="cursorPosition" type="int"/> + <property name="cursorRect" type="QRect"/> + <property name="cursorDelegate" type="Qt.Component"/> + <property name="selectionStart" type="int"/> + <property name="selectionEnd" type="int"/> + <property name="selectedText" type="string"/> + <property name="maximumLength" type="int"/> + <property name="validator" type="QValidator"/> + <property name="inputMask" type="string"/> + <property name="inputMethodHints" type="Qt.InputMethodHints"/> + <property name="acceptableInput" type="bool"/> + <property name="echoMode" type="EchoMode"/> + <property name="focusOnPress" type="bool"/> + <signal name="textChanged"/> + <signal name="cursorPositionChanged"/> + <signal name="selectionStartChanged"/> + <signal name="selectionEndChanged"/> + <signal name="selectedTextChanged"/> + <signal name="accepted"/> + <signal name="acceptableInputChanged"/> + <signal name="colorChanged"> + <param name="color" type="QColor"/> + </signal> + <signal name="selectionColorChanged"> + <param name="color" type="QColor"/> + </signal> + <signal name="selectedTextColorChanged"> + <param name="color" type="QColor"/> + </signal> + <signal name="fontChanged"> + <param name="font" type="QFont"/> + </signal> + <signal name="horizontalAlignmentChanged"> + <param name="alignment" type="HAlignment"/> + </signal> + <signal name="readOnlyChanged"> + <param name="isReadOnly" type="bool"/> + </signal> + <signal name="cursorVisibleChanged"> + <param name="isCursorVisible" type="bool"/> + </signal> + <signal name="cursorDelegateChanged"/> + <signal name="maximumLengthChanged"> + <param name="maximumLength" type="int"/> + </signal> + <signal name="validatorChanged"/> + <signal name="inputMaskChanged"> + <param name="inputMask" type="string"/> + </signal> + <signal name="echoModeChanged"> + <param name="echoMode" type="EchoMode"/> + </signal> + <signal name="focusOnPressChanged"> + <param name="focusOnPress" type="bool"/> + </signal> + <method name="selectAll"/> + <method name="xToPos" type="int"> + <param name="x" type="int"/> + </method> + </type> + <type name="Qt.Flipable" version="4.6" extends="Qt.Item"> + <enum name="Side"> + <enumerator name="Front" value="0"/> + <enumerator name="Back" value="1"/> + </enum> + <property name="front" type="Qt.Item"/> + <property name="back" type="Qt.Item"/> + <property name="side" type="Side"/> + <signal name="sideChanged"/> + </type> + <type name="Qt.PathAttribute" version="4.6" extends="QDeclarativePathElement"> + <property name="name" type="string"/> + <property name="value" type="qreal"/> + </type> + <type name="QDeclarativeVisualDataModelParts" extends="Qt.QtObject"/> + <type name="Qt.NumberFormatter" version="4.6" extends="Qt.QtObject"> + <property name="text" type="string"/> + <property name="format" type="string"/> + <property name="number" type="qreal"/> + <signal name="textChanged"/> + </type> + <type name="Qt.XmlListModel" version="4.6" extends="QListModelInterface"> + <enum name="Status"> + <enumerator name="Null" value="0"/> + <enumerator name="Ready" value="1"/> + <enumerator name="Loading" value="2"/> + <enumerator name="Error" value="3"/> + </enum> + <property name="status" type="Status"/> + <property name="progress" type="qreal"/> + <property name="source" type="QUrl"/> + <property name="xml" type="string"/> + <property name="query" type="string"/> + <property name="namespaceDeclarations" type="string"/> + <property name="roles" type="Qt.XmlRole" isList="true"/> + <property name="count" type="int"/> + <signal name="statusChanged"> + <param type="Status"/> + </signal> + <signal name="progressChanged"> + <param name="progress" type="qreal"/> + </signal> + <signal name="countChanged"/> + <method name="reload"/> + </type> + <type name="Qt.Rectangle" version="4.6" extends="Qt.Item"> + <property name="color" type="QColor"/> + <property name="gradient" type="Qt.Gradient"/> + <property name="border" type="Qt.Pen"/> + <property name="radius" type="qreal"/> + <signal name="colorChanged"/> + <signal name="radiusChanged"/> + </type> + <type name="Qt.WebView" version="4.6" extends="QDeclarativePaintedItem"> + <enum name="Status"> + <enumerator name="Null" value="0"/> + <enumerator name="Ready" value="1"/> + <enumerator name="Loading" value="2"/> + <enumerator name="Error" value="3"/> + </enum> + <property name="title" type="string"/> + <property name="icon" type="QPixmap"/> + <property name="zoomFactor" type="qreal"/> + <property name="statusText" type="string"/> + <property name="html" type="string"/> + <property name="pressGrabTime" type="int"/> + <property name="preferredWidth" type="int"/> + <property name="preferredHeight" type="int"/> + <property name="url" type="QUrl"/> + <property name="progress" type="qreal"/> + <property name="status" type="Status"/> + <property name="reload" type="QAction"/> + <property name="back" type="QAction"/> + <property name="forward" type="QAction"/> + <property name="stop" type="QAction"/> + <property name="settings" type="QDeclarativeWebSettings"/> + <property name="javaScriptWindowObjects" type="Qt.QtObject" isList="true"/> + <property name="newWindowComponent" type="Qt.Component"/> + <property name="newWindowParent" type="Qt.Item"/> + <property name="renderingEnabled" type="bool"/> + <signal name="preferredWidthChanged"/> + <signal name="preferredHeightChanged"/> + <signal name="urlChanged"/> + <signal name="progressChanged"/> + <signal name="statusChanged"> + <param type="Status"/> + </signal> + <signal name="titleChanged"> + <param type="string"/> + </signal> + <signal name="iconChanged"/> + <signal name="statusTextChanged"/> + <signal name="htmlChanged"/> + <signal name="pressGrabTimeChanged"/> + <signal name="zoomFactorChanged"/> + <signal name="newWindowComponentChanged"/> + <signal name="newWindowParentChanged"/> + <signal name="renderingEnabledChanged"/> + <signal name="loadStarted"/> + <signal name="loadFinished"/> + <signal name="loadFailed"/> + <signal name="doubleClick"> + <param name="clickX" type="int"/> + <param name="clickY" type="int"/> + </signal> + <signal name="zoomTo"> + <param name="zoom" type="qreal"/> + <param name="centerX" type="int"/> + <param name="centerY" type="int"/> + </signal> + <signal name="alert"> + <param name="message" type="string"/> + </signal> + <method name="evaluateJavaScript" type="QVariant"> + <param type="string"/> + </method> + <method name="heuristicZoom" type="bool"> + <param name="clickX" type="int"/> + <param name="clickY" type="int"/> + <param name="maxzoom" type="qreal"/> + </method> + </type> + <type name="QDeclarativeImageBase" extends="Qt.Item"> + <enum name="Status"> + <enumerator name="Null" value="0"/> + <enumerator name="Ready" value="1"/> + <enumerator name="Loading" value="2"/> + <enumerator name="Error" value="3"/> + </enum> + <property name="status" type="Status"/> + <property name="source" type="QUrl"/> + <property name="progress" type="qreal"/> + <property name="asynchronous" type="bool"/> + <signal name="sourceChanged"> + <param type="QUrl"/> + </signal> + <signal name="statusChanged"> + <param type="Status"/> + </signal> + <signal name="progressChanged"> + <param name="progress" type="qreal"/> + </signal> + <signal name="pixmapChanged"/> + <signal name="asynchronousChanged"/> + </type> + <type name="Qt.Connection" version="4.6" extends="Qt.QtObject"> + <property name="sender" type="Qt.QtObject"/> + <property name="script" type="QDeclarativeScriptString"/> + <property name="signal" type="string"/> + </type> + <type name="Qt.Scale" version="4.6" extends="QGraphicsTransform"> + <property name="origin" type="QVector3D"/> + <property name="xScale" type="qreal"/> + <property name="yScale" type="qreal"/> + <property name="zScale" type="qreal"/> + <signal name="originChanged"/> + <signal name="scaleChanged"/> + </type> + <type name="Qt.TextEdit" version="4.6" extends="QDeclarativePaintedItem"> + <enum name="HAlignment"> + <enumerator name="AlignLeft" value="1"/> + <enumerator name="AlignRight" value="2"/> + <enumerator name="AlignHCenter" value="4"/> + </enum> + <enum name="VAlignment"> + <enumerator name="AlignTop" value="32"/> + <enumerator name="AlignBottom" value="64"/> + <enumerator name="AlignVCenter" value="128"/> + </enum> + <enum name="TextFormat"> + <enumerator name="PlainText" value="0"/> + <enumerator name="RichText" value="1"/> + <enumerator name="AutoText" value="2"/> + </enum> + <property name="text" type="string"/> + <property name="color" type="QColor"/> + <property name="selectionColor" type="QColor"/> + <property name="selectedTextColor" type="QColor"/> + <property name="font" type="QFont"/> + <property name="horizontalAlignment" type="HAlignment"/> + <property name="verticalAlignment" type="VAlignment"/> + <property name="wrap" type="bool"/> + <property name="textFormat" type="TextFormat"/> + <property name="readOnly" type="bool"/> + <property name="cursorVisible" type="bool"/> + <property name="cursorPosition" type="int"/> + <property name="cursorDelegate" type="Qt.Component"/> + <property name="selectionStart" type="int"/> + <property name="selectionEnd" type="int"/> + <property name="selectedText" type="string"/> + <property name="focusOnPress" type="bool"/> + <property name="persistentSelection" type="bool"/> + <property name="textMargin" type="qreal"/> + <property name="inputMethodHints" type="Qt.InputMethodHints"/> + <signal name="textChanged"> + <param type="string"/> + </signal> + <signal name="cursorPositionChanged"/> + <signal name="selectionStartChanged"/> + <signal name="selectionEndChanged"/> + <signal name="selectionChanged"/> + <signal name="colorChanged"> + <param name="color" type="QColor"/> + </signal> + <signal name="selectionColorChanged"> + <param name="color" type="QColor"/> + </signal> + <signal name="selectedTextColorChanged"> + <param name="color" type="QColor"/> + </signal> + <signal name="fontChanged"> + <param name="font" type="QFont"/> + </signal> + <signal name="horizontalAlignmentChanged"> + <param name="alignment" type="HAlignment"/> + </signal> + <signal name="verticalAlignmentChanged"> + <param name="alignment" type="VAlignment"/> + </signal> + <signal name="wrapChanged"> + <param name="isWrapped" type="bool"/> + </signal> + <signal name="textFormatChanged"> + <param name="textFormat" type="TextFormat"/> + </signal> + <signal name="readOnlyChanged"> + <param name="isReadOnly" type="bool"/> + </signal> + <signal name="cursorVisibleChanged"> + <param name="isCursorVisible" type="bool"/> + </signal> + <signal name="cursorDelegateChanged"/> + <signal name="focusOnPressChanged"> + <param name="focusIsPressed" type="bool"/> + </signal> + <signal name="persistentSelectionChanged"> + <param name="isPersistentSelection" type="bool"/> + </signal> + <signal name="textMarginChanged"> + <param name="textMargin" type="qreal"/> + </signal> + <method name="selectAll"/> + </type> + <type name="Qt.QRegExpValidator" version="4.7" extends="QValidator"> + <property name="regExp" type="QRegExp"/> + </type> + <type name="Qt.Opacity" version="4.6" extends="QGraphicsEffect"> + <property name="opacity" type="qreal"/> + <property name="opacityMask" type="QBrush"/> + <signal name="opacityChanged"> + <param name="opacity" type="qreal"/> + </signal> + <signal name="opacityMaskChanged"> + <param name="mask" type="QBrush"/> + </signal> + <method name="setOpacity"> + <param name="opacity" type="qreal"/> + </method> + <method name="setOpacityMask"> + <param name="mask" type="QBrush"/> + </method> + </type> + <type name="QGraphicsEffect" extends="Qt.QtObject"> + <enum name="ChangeFlags"> + <enumerator name="SourceAttached" value="1"/> + <enumerator name="SourceDetached" value="2"/> + <enumerator name="SourceBoundingRectChanged" value="4"/> + <enumerator name="SourceInvalidated" value="8"/> + </enum> + <property name="enabled" type="bool"/> + <signal name="enabledChanged"> + <param name="enabled" type="bool"/> + </signal> + <method name="setEnabled"> + <param name="enable" type="bool"/> + </method> + <method name="update"/> + </type> + <type name="Qt.MouseArea" version="4.6" extends="Qt.Item"> + <property name="mouseX" type="qreal"/> + <property name="mouseY" type="qreal"/> + <property name="containsMouse" type="bool"/> + <property name="pressed" type="bool"/> + <property name="enabled" type="bool"/> + <property name="pressedButtons" type="Qt.MouseButtons"/> + <property name="acceptedButtons" type="Qt.MouseButtons"/> + <property name="hoverEnabled" type="bool"/> + <property name="drag" type="Qt.Drag"/> + <signal name="hoveredChanged"/> + <signal name="pressedChanged"/> + <signal name="enabledChanged"/> + <signal name="acceptedButtonsChanged"/> + <signal name="positionChanged"> + <param name="mouse" type="QDeclarativeMouseEvent"/> + </signal> + <signal name="pressed"> + <param name="mouse" type="QDeclarativeMouseEvent"/> + </signal> + <signal name="pressAndHold"> + <param name="mouse" type="QDeclarativeMouseEvent"/> + </signal> + <signal name="released"> + <param name="mouse" type="QDeclarativeMouseEvent"/> + </signal> + <signal name="clicked"> + <param name="mouse" type="QDeclarativeMouseEvent"/> + </signal> + <signal name="doubleClicked"> + <param name="mouse" type="QDeclarativeMouseEvent"/> + </signal> + <signal name="entered"/> + <signal name="exited"/> + </type> + <type name="Qt.ParallelAnimation" version="4.6" extends="QDeclarativeAnimationGroup"/> + <type name="Qt.Item" version="4.6" extends="QGraphicsObject"> + <enum name="TransformOrigin"> + <enumerator name="TopLeft" value="0"/> + <enumerator name="Top" value="1"/> + <enumerator name="TopRight" value="2"/> + <enumerator name="Left" value="3"/> + <enumerator name="Center" value="4"/> + <enumerator name="Right" value="5"/> + <enumerator name="BottomLeft" value="6"/> + <enumerator name="Bottom" value="7"/> + <enumerator name="BottomRight" value="8"/> + </enum> + <property name="parent" type="Qt.Item"/> + <property name="data" type="Qt.QtObject" isList="true"/> + <property name="children" type="Qt.Item" isList="true"/> + <property name="resources" type="Qt.QtObject" isList="true"/> + <property name="states" type="Qt.State" isList="true"/> + <property name="transitions" type="Qt.Transition" isList="true"/> + <property name="state" type="string"/> + <property name="width" type="qreal"/> + <property name="height" type="qreal"/> + <property name="childrenRect" type="QRectF"/> + <property name="anchors" type="QDeclarativeAnchors"/> + <property name="left" type="QDeclarativeAnchorLine"/> + <property name="right" type="QDeclarativeAnchorLine"/> + <property name="horizontalCenter" type="QDeclarativeAnchorLine"/> + <property name="top" type="QDeclarativeAnchorLine"/> + <property name="bottom" type="QDeclarativeAnchorLine"/> + <property name="verticalCenter" type="QDeclarativeAnchorLine"/> + <property name="baseline" type="QDeclarativeAnchorLine"/> + <property name="baselineOffset" type="qreal"/> + <property name="clip" type="bool"/> + <property name="focus" type="bool"/> + <property name="wantsFocus" type="bool"/> + <property name="transform" type="QGraphicsTransform" isList="true"/> + <property name="transformOrigin" type="TransformOrigin"/> + <property name="smooth" type="bool"/> + <property name="effect" type="QGraphicsEffect"/> + <signal name="widthChanged"/> + <signal name="heightChanged"/> + <signal name="childrenChanged"/> + <signal name="childrenRectChanged"/> + <signal name="baselineOffsetChanged"/> + <signal name="stateChanged"> + <param type="string"/> + </signal> + <signal name="focusChanged"/> + <signal name="wantsFocusChanged"/> + <signal name="parentChanged"/> + <signal name="transformOriginChanged"> + <param type="TransformOrigin"/> + </signal> + <signal name="smoothChanged"/> + <signal name="clipChanged"/> + </type> + <type name="Qt.Vector3dAnimation" version="4.6" extends="Qt.PropertyAnimation"> + <property name="from" type="QVector3D"/> + <property name="to" type="QVector3D"/> + </type> + <type name="Qt.PropertyChanges" version="4.6" extends="QDeclarativeStateOperation"> + <property name="target" type="Qt.QtObject"/> + <property name="restoreEntryValues" type="bool"/> + <property name="explicit" type="bool"/> + </type> + <type name="Qt.ParentAction" version="4.6" extends="QDeclarativeAbstractAnimation"> + <property name="target" type="Qt.Item"/> + <property name="parent" type="Qt.Item"/> + </type> + <type name="Qt.DateTimeFormatter" version="4.6" extends="Qt.QtObject"> + <property name="dateText" type="string"/> + <property name="timeText" type="string"/> + <property name="dateTimeText" type="string"/> + <property name="date" type="QDate"/> + <property name="time" type="QTime"/> + <property name="dateTime" type="QDateTime"/> + <property name="dateFormat" type="string"/> + <property name="timeFormat" type="string"/> + <property name="dateTimeFormat" type="string"/> + <property name="longStyle" type="bool"/> + <signal name="textChanged"/> + </type> + <type name="Qt.Timer" version="4.6" extends="Qt.QtObject"> + <property name="interval" type="int"/> + <property name="running" type="bool"/> + <property name="repeat" type="bool"/> + <property name="triggeredOnStart" type="bool"/> + <signal name="triggered"/> + <signal name="runningChanged"/> + <method name="start"/> + <method name="stop"/> + <method name="restart"/> + </type> + <type name="Qt.PathView" version="4.6" extends="Qt.Item"> + <property name="model" type="QVariant"/> + <property name="path" type="Qt.Path"/> + <property name="currentIndex" type="int"/> + <property name="offset" type="qreal"/> + <property name="snapPosition" type="qreal"/> + <property name="dragMargin" type="qreal"/> + <property name="count" type="int"/> + <property name="delegate" type="Qt.Component"/> + <property name="pathItemCount" type="int"/> + <signal name="currentIndexChanged"/> + <signal name="offsetChanged"/> + </type> + <type name="Qt.Particles" version="4.6" extends="Qt.Item"> + <property name="source" type="QUrl"/> + <property name="count" type="int"/> + <property name="emissionRate" type="int"/> + <property name="emissionVariance" type="qreal"/> + <property name="lifeSpan" type="int"/> + <property name="lifeSpanDeviation" type="int"/> + <property name="fadeInDuration" type="int"/> + <property name="fadeOutDuration" type="int"/> + <property name="angle" type="qreal"/> + <property name="angleDeviation" type="qreal"/> + <property name="velocity" type="qreal"/> + <property name="velocityDeviation" type="qreal"/> + <property name="motion" type="Qt.ParticleMotion"/> + <signal name="sourceChanged"/> + <signal name="countChanged"/> + <signal name="emissionRateChanged"/> + <signal name="emissionVarianceChanged"/> + <signal name="lifeSpanChanged"/> + <signal name="lifeSpanDeviationChanged"/> + <signal name="fadeInDurationChanged"/> + <signal name="fadeOutDurationChanged"/> + <signal name="angleChanged"/> + <signal name="angleDeviationChanged"/> + <signal name="velocityChanged"/> + <signal name="velocityDeviationChanged"/> + <signal name="emittingChanged"/> + <signal name="motionChanged"/> + <method name="burst"> + <param name="count" type="int"/> + <param name="emissionRate" type="int"/> + </method> + <method name="burst"> + <param name="count" type="int"/> + </method> + </type> + <type name="Qt.Grid" version="4.6" extends="QDeclarativeBasePositioner"> + <property name="rows" type="int"/> + <property name="columns" type="int"/> + <signal name="rowsChanged"/> + <signal name="columnsChanged"/> + </type> + <type name="Qt.BorderImage" version="4.6" extends="QDeclarativeImageBase"> + <enum name="TileMode"> + <enumerator name="Stretch" value="0"/> + <enumerator name="Repeat" value="1"/> + <enumerator name="Round" value="2"/> + </enum> + <property name="border" type="QDeclarativeScaleGrid"/> + <property name="horizontalTileMode" type="TileMode"/> + <property name="verticalTileMode" type="TileMode"/> + <signal name="horizontalTileModeChanged"/> + <signal name="verticalTileModeChanged"/> + </type> + <type name="Qt.PathPercent" version="4.6" extends="QDeclarativePathElement"> + <property name="value" type="qreal"/> + </type> + <type name="QDeclarativeAbstractAnimation" extends="Qt.QtObject"> + <property name="running" type="bool"/> + <property name="paused" type="bool"/> + <property name="alwaysRunToEnd" type="bool"/> + <property name="repeat" type="bool"/> + <signal name="started"/> + <signal name="completed"/> + <signal name="runningChanged"> + <param type="bool"/> + </signal> + <signal name="pausedChanged"> + <param type="bool"/> + </signal> + <signal name="repeatChanged"> + <param type="bool"/> + </signal> + <signal name="alwaysRunToEndChanged"> + <param type="bool"/> + </signal> + <method name="restart"/> + <method name="start"/> + <method name="pause"/> + <method name="resume"/> + <method name="stop"/> + <method name="complete"/> + </type> + <type name="Qt.Text" version="4.6" extends="Qt.Item"> + <enum name="HAlignment"> + <enumerator name="AlignLeft" value="1"/> + <enumerator name="AlignRight" value="2"/> + <enumerator name="AlignHCenter" value="4"/> + </enum> + <enum name="VAlignment"> + <enumerator name="AlignTop" value="32"/> + <enumerator name="AlignBottom" value="64"/> + <enumerator name="AlignVCenter" value="128"/> + </enum> + <enum name="TextStyle"> + <enumerator name="Normal" value="0"/> + <enumerator name="Outline" value="1"/> + <enumerator name="Raised" value="2"/> + <enumerator name="Sunken" value="3"/> + </enum> + <enum name="TextFormat"> + <enumerator name="PlainText" value="0"/> + <enumerator name="RichText" value="1"/> + <enumerator name="AutoText" value="2"/> + <enumerator name="StyledText" value="4"/> + </enum> + <enum name="TextElideMode"> + <enumerator name="ElideLeft" value="0"/> + <enumerator name="ElideRight" value="1"/> + <enumerator name="ElideMiddle" value="2"/> + <enumerator name="ElideNone" value="3"/> + </enum> + <property name="text" type="string"/> + <property name="font" type="QFont"/> + <property name="color" type="QColor"/> + <property name="style" type="TextStyle"/> + <property name="styleColor" type="QColor"/> + <property name="horizontalAlignment" type="HAlignment"/> + <property name="verticalAlignment" type="VAlignment"/> + <property name="wrap" type="bool"/> + <property name="textFormat" type="TextFormat"/> + <property name="elide" type="TextElideMode"/> + <signal name="textChanged"> + <param name="text" type="string"/> + </signal> + <signal name="linkActivated"> + <param name="link" type="string"/> + </signal> + <signal name="fontChanged"> + <param name="font" type="QFont"/> + </signal> + <signal name="colorChanged"> + <param name="color" type="QColor"/> + </signal> + <signal name="styleChanged"> + <param name="style" type="TextStyle"/> + </signal> + <signal name="styleColorChanged"> + <param name="color" type="QColor"/> + </signal> + <signal name="horizontalAlignmentChanged"> + <param name="alignment" type="HAlignment"/> + </signal> + <signal name="verticalAlignmentChanged"> + <param name="alignment" type="VAlignment"/> + </signal> + <signal name="wrapChanged"> + <param name="wrap" type="bool"/> + </signal> + <signal name="textFormatChanged"> + <param name="textFormat" type="TextFormat"/> + </signal> + <signal name="elideModeChanged"> + <param name="mode" type="TextElideMode"/> + </signal> + </type> + <type name="Qt.AnimatedImage" version="4.6" extends="Qt.Image"> + <property name="playing" type="bool"/> + <property name="paused" type="bool"/> + <property name="currentFrame" type="int"/> + <property name="frameCount" type="int"/> + <signal name="playingChanged"/> + <signal name="pausedChanged"/> + <signal name="frameChanged"/> + </type> + <type name="Qt.ParticleMotion" version="4.6" extends="Qt.QtObject"/> + <type name="QDeclarativeCurve" extends="QDeclarativePathElement"> + <property name="x" type="qreal"/> + <property name="y" type="qreal"/> + </type> + <type name="Qt.GraphicsObjectContainer" version="4.6" extends="Qt.Item"> + <property name="graphicsObject" type="QGraphicsObject"/> + <property name="synchronizedResizing" type="bool"/> + </type> + <type name="QDeclarativeStateOperation" extends="Qt.QtObject"/> + <type name="Qt.ParentChange" version="4.6" extends="QDeclarativeStateOperation"> + <property name="target" type="Qt.Item"/> + <property name="parent" type="Qt.Item"/> + </type> + <type name="Qt.Package" version="4.6" extends="Qt.QtObject"> + <property name="data" type="Qt.QtObject" isList="true"/> + </type> + <type name="Qt.XmlRole" version="4.6" extends="Qt.QtObject"> + <property name="name" type="string"/> + <property name="query" type="string"/> + <property name="isKey" type="bool"/> + </type> + <type name="Qt.EaseFollow" version="4.6" extends="Qt.QtObject"> + <enum name="ReversingMode"> + <enumerator name="Eased" value="0"/> + <enumerator name="Immediate" value="1"/> + <enumerator name="Sync" value="2"/> + </enum> + <property name="source" type="qreal"/> + <property name="velocity" type="qreal"/> + <property name="duration" type="qreal"/> + <property name="reversingMode" type="ReversingMode"/> + <property name="enabled" type="bool"/> + <property name="maximumEasingTime" type="qreal"/> + <signal name="sourceChanged"/> + <signal name="velocityChanged"/> + <signal name="durationChanged"/> + <signal name="reversingModeChanged"/> + <signal name="enabledChanged"/> + <signal name="maximumEasingTimeChanged"/> + </type> + <type name="Qt.ListModel" version="4.6" extends="QListModelInterface"> + <property name="count" type="int"/> + <signal name="countChanged"> + <param type="int"/> + </signal> + <method name="clear"/> + <method name="remove"> + <param name="index" type="int"/> + </method> + <method name="append"> + <param type="QScriptValue"/> + </method> + <method name="insert"> + <param name="index" type="int"/> + <param type="QScriptValue"/> + </method> + <method name="get" type="QScriptValue"> + <param name="index" type="int"/> + </method> + <method name="set"> + <param name="index" type="int"/> + <param type="QScriptValue"/> + </method> + <method name="setProperty"> + <param name="index" type="int"/> + <param name="property" type="string"/> + <param name="value" type="QVariant"/> + </method> + <method name="move"> + <param name="from" type="int"/> + <param name="to" type="int"/> + <param name="count" type="int"/> + </method> + </type> + <type name="Qt.Pen" version="4.6" extends="Qt.QtObject"> + <property name="width" type="int"/> + <property name="color" type="QColor"/> + <signal name="penChanged"/> + </type> + <type name="Qt.Rotation" version="4.6" extends="QGraphicsTransform"> + <property name="origin" type="QVector3D"/> + <property name="angle" type="qreal"/> + <property name="axis" type="QVector3D"/> + <signal name="originChanged"/> + <signal name="angleChanged"/> + <signal name="axisChanged"/> + </type> + <type name="QDeclarativePaintedItem" extends="Qt.Item"> + <property name="contentsSize" type="QSize"/> + <property name="fillColor" type="QColor"/> + <property name="pixelCacheSize" type="int"/> + <property name="smoothCache" type="bool"/> + <property name="contentsScale" type="qreal"/> + <signal name="fillColorChanged"/> + <signal name="contentsSizeChanged"/> + <signal name="contentsScaleChanged"/> + </type> + <type name="Qt.SpringFollow" version="4.6" extends="Qt.QtObject"> + <property name="source" type="qreal"/> + <property name="velocity" type="qreal"/> + <property name="spring" type="qreal"/> + <property name="damping" type="qreal"/> + <property name="epsilon" type="qreal"/> + <property name="enabled" type="bool"/> + <property name="value" type="qreal"/> + <property name="modulus" type="qreal"/> + <property name="mass" type="qreal"/> + <property name="inSync" type="bool"/> + <signal name="valueChanged"> + <param type="qreal"/> + </signal> + <signal name="modulusChanged"/> + <signal name="massChanged"/> + <signal name="syncChanged"/> + </type> + <type name="QDeclarativeVisualModel" extends="Qt.QtObject"> + <property name="count" type="int"/> + <signal name="countChanged"/> + <signal name="itemsInserted"> + <param name="index" type="int"/> + <param name="count" type="int"/> + </signal> + <signal name="itemsRemoved"> + <param name="index" type="int"/> + <param name="count" type="int"/> + </signal> + <signal name="itemsMoved"> + <param name="from" type="int"/> + <param name="to" type="int"/> + <param name="count" type="int"/> + </signal> + <signal name="createdItem"> + <param name="index" type="int"/> + <param name="item" type="Qt.Item"/> + </signal> + <signal name="destroyingItem"> + <param name="item" type="Qt.Item"/> + </signal> + </type> + <type name="QValidator" extends="Qt.QtObject"/> + <type name="Qt.Colorize" version="4.6" extends="QGraphicsEffect"> + <property name="color" type="QColor"/> + <property name="strength" type="qreal"/> + <signal name="colorChanged"> + <param name="color" type="QColor"/> + </signal> + <signal name="strengthChanged"> + <param name="strength" type="qreal"/> + </signal> + <method name="setColor"> + <param name="c" type="QColor"/> + </method> + <method name="setStrength"> + <param name="strength" type="qreal"/> + </method> + </type> + <type name="Qt.Behavior" version="4.6" extends="Qt.QtObject"> + <property name="animation" type="QDeclarativeAbstractAnimation"/> + <property name="enabled" type="bool"/> + <signal name="enabledChanged"/> + </type> +</module> diff --git a/share/qtcreator/static.pro b/share/qtcreator/static.pro index 46db15fa93064df0cd193598f240701f1d6dd0a3..ddb9ac8f3d57850cf1040839b7c2c4a3b73eedf1 100644 --- a/share/qtcreator/static.pro +++ b/share/qtcreator/static.pro @@ -29,7 +29,8 @@ DATA_DIRS = \ schemes \ styles \ gdbmacros \ - qmldesigner + qmldesigner \ + qml-type-descriptions !isEmpty(copydata) { diff --git a/src/libs/qmljs/qmljs-lib.pri b/src/libs/qmljs/qmljs-lib.pri index e79c071181c1acd970297c53a0b2307aae6232cf..e0057cae72d3aa854b9f4d80de91aa8ce08bd9f8 100644 --- a/src/libs/qmljs/qmljs-lib.pri +++ b/src/libs/qmljs/qmljs-lib.pri @@ -26,17 +26,10 @@ SOURCES += \ $$PWD/qmljsdocument.cpp \ $$PWD/qmljsscanner.cpp \ $$PWD/qmljsinterpreter.cpp \ - $$PWD/qmljsmetatypesystem.cpp \ $$PWD/qmljslink.cpp \ $$PWD/qmljscheck.cpp \ $$PWD/qmljsscopebuilder.cpp -contains(QT_CONFIG, declarative) { - QT += declarative -} else { - DEFINES += NO_DECLARATIVE_BACKEND -} - contains(QT, gui) { SOURCES += $$PWD/qmljsindenter.cpp HEADERS += $$PWD/qmljsindenter.h diff --git a/src/libs/qmljs/qmljsbind.cpp b/src/libs/qmljs/qmljsbind.cpp index bdbf5e6fe47c28aa10737e3e940a4291483949cf..637bbb79613311fe06d773d038a201b314f53eb8 100644 --- a/src/libs/qmljs/qmljsbind.cpp +++ b/src/libs/qmljs/qmljsbind.cpp @@ -30,7 +30,6 @@ #include "parser/qmljsast_p.h" #include "qmljsbind.h" #include "qmljsdocument.h" -#include "qmljsmetatypesystem.h" #include <QtCore/QDir> #include <QtCore/QFileInfo> diff --git a/src/libs/qmljs/qmljscheck.cpp b/src/libs/qmljs/qmljscheck.cpp index ab9e336719a68667ecb5d0e2ecad81ac48acb7cd..b866ab3ac4d7e403504b0039363d13ffbbb6f81f 100644 --- a/src/libs/qmljs/qmljscheck.cpp +++ b/src/libs/qmljs/qmljscheck.cpp @@ -38,10 +38,6 @@ #include <QtGui/QColor> #include <QtGui/QApplication> -#ifndef NO_DECLARATIVE_BACKEND -# include <QtDeclarative/private/qdeclarativestringconverters_p.h> // ### remove me -#endif - namespace QmlJS { namespace Messages { static const char *invalid_property_name = QT_TRANSLATE_NOOP("QmlJS::Check", "'%1' is not a valid property name"); @@ -122,7 +118,6 @@ public: if (StringLiteral *stringLiteral = cast<StringLiteral *>(_ast)) { const QString curveName = stringLiteral->value->asString(); - // ### update when easing changes hit master if (!EasingCurveNameValue::curveNames().contains(curveName)) { _message.message = tr(Messages::unknown_easing_curve_name); } @@ -139,12 +134,23 @@ public: if (StringLiteral *stringLiteral = cast<StringLiteral *>(_ast)) { const QString colorString = stringLiteral->value->asString(); -#ifndef NO_DECLARATIVE_BACKEND - bool ok = false; - QDeclarativeStringConverters::colorFromString(colorString, &ok); + bool ok = true; + if (colorString.size() == 9 && colorString.at(0) == QLatin1Char('#')) { + // #rgba + for (int i = 1; i < 9; ++i) { + const QChar c = colorString.at(i); + if (c >= QLatin1Char('0') && c <= QLatin1Char('9') + || c >= QLatin1Char('a') && c <= QLatin1Char('f') + || c >= QLatin1Char('A') && c <= QLatin1Char('F')) + continue; + ok = false; + break; + } + } else { + ok = QColor(colorString).isValid(); + } if (!ok) _message.message = QCoreApplication::translate("QmlJS::Check", "not a valid color"); -#endif } else { visit((StringValue *)0); } diff --git a/src/libs/qmljs/qmljsinterpreter.cpp b/src/libs/qmljs/qmljsinterpreter.cpp index c685af07208333351d9c8ebefe46c1c8e28451ce..cb0a81b0a45173090e8d6747e0f830584c2b7274 100644 --- a/src/libs/qmljs/qmljsinterpreter.cpp +++ b/src/libs/qmljs/qmljsinterpreter.cpp @@ -31,18 +31,15 @@ #include "qmljsevaluate.h" #include "qmljslink.h" #include "parser/qmljsast_p.h" + +#include <QtCore/QFile> +#include <QtCore/QString> +#include <QtCore/QStringList> #include <QtCore/QMetaObject> #include <QtCore/QMetaProperty> +#include <QtCore/QXmlStreamReader> #include <QtCore/QDebug> -#ifndef NO_DECLARATIVE_BACKEND -# include <QtDeclarative/private/qdeclarativemetatype_p.h> -# include <QtDeclarative/private/qdeclarativeanchors_p.h> // ### remove me -# include <QtDeclarative/private/qdeclarativerectangle_p.h> // ### remove me -# include <QtDeclarative/private/qdeclarativevaluetype_p.h> // ### remove me -# include <QtDeclarative/private/qdeclarativeanimation_p.h> // ### remove me -#endif - using namespace QmlJS::Interpreter; using namespace QmlJS::AST; @@ -100,16 +97,171 @@ public: } // end of anonymous namespace -#ifndef NO_DECLARATIVE_BACKEND +namespace QmlJS { +namespace Interpreter { + +class FakeMetaEnum { + QString name; + QStringList keys; + QList<int> values; + +public: + FakeMetaEnum(const QString &name) + : name(name) + {} + + void addKey(const QString &key, int value) + { keys.append(key); values.append(value); } + + QString key(int index) const + { return keys.at(index); } + + int keyCount() const + { return keys.size(); } +}; + +class FakeMetaMethod { +public: + enum { + Signal, + Slot, + Method + }; + + enum { + Private, + Protected, + Public + }; + +public: + FakeMetaMethod(const QString &name, const QString &returnType = QString()) + : name(name), returnType(returnType) + {} + + QString methodName() const + { return name; } + + QStringList parameterNames() const + { return paramNames; } + + QStringList parameterTypes() const + { return paramTypes; } + + void addParameter(const QString &name, const QString &type) + { paramNames.append(name); paramTypes.append(type); } + + int methodType() const + { return methodTy; } + void setMethodType(int methodType) + { methodTy = methodType; } + + int access() const + { return methodAccess; } + +private: + QString name; + QString returnType; + QStringList paramNames; + QStringList paramTypes; + int methodTy; + int methodAccess; +}; + +class FakeMetaProperty { + QString propertyName; + QString type; + bool isList; + +public: + FakeMetaProperty(const QString &name, const QString &type, bool isList) + : propertyName(name), type(type), isList(isList) + {} + + QString name() const + { return propertyName; } + + QString typeName() const + { return type; } +}; + +class FakeMetaObject { + FakeMetaObject(FakeMetaObject&); + FakeMetaObject &operator=(const FakeMetaObject&); + + QString name; + QString package; + int major; + int minor; + const FakeMetaObject *super; + QString superName; + QList<FakeMetaEnum> enums; + QList<FakeMetaProperty> props; + QList<FakeMetaMethod> methods; + +public: + FakeMetaObject(const QString &name, const QString &package, int major, int minor) + : name(name), package(package), major(major), minor(minor), super(0) + {} + + void setSuperclassName(const QString &superclass) + { superName = superclass; } + QString superclassName() const + { return superName; } + + void setSuperclass(FakeMetaObject *superClass) + { super = superClass; } + const FakeMetaObject *superClass() const + { return super; } + QString className() const + { return name; } + QString packageName() const + { return package; } + + void addEnum(const FakeMetaEnum &fakeEnum) + { enums.append(fakeEnum); } + int enumeratorCount() const + { return enums.size(); } + int enumeratorOffset() const + { return 0; } + FakeMetaEnum enumerator(int index) const + { return enums.at(index); } + + void addProperty(const FakeMetaProperty &property) + { props.append(property); } + int propertyCount() const + { return props.size(); } + int propertyOffset() const + { return 0; } + FakeMetaProperty property(int index) const + { return props.at(index); } + + void addMethod(const FakeMetaMethod &method) + { methods.append(method); } + int methodCount() const + { return methods.size(); } + int methodOffset() const + { return 0; } + FakeMetaMethod method(int index) const + { return methods.at(index); } + + int majorVersion() const + { return major; } + int minorVersion() const + { return minor; } +}; + +} // end of Interpreter namespace +} // end of QmlJS namespace namespace { class MetaFunction: public FunctionValue { - QMetaMethod _method; + FakeMetaMethod _method; public: - MetaFunction(const QMetaMethod &method, Engine *engine) + MetaFunction(const FakeMetaMethod &method, Engine *engine) : FunctionValue(engine), _method(method) { } @@ -148,35 +300,384 @@ public: } }; +class QmlXmlReader +{ +public: + QmlXmlReader(QIODevice *dev) + : _xml(dev) + {} + + bool operator()(QMap<QString, FakeMetaObject *> *objects) { + Q_ASSERT(objects); + _objects = objects; + + if (_xml.readNextStartElement()) { + if (_xml.name() == "module") + readModule(); + else + _xml.raiseError(QObject::tr("The file is not module file.")); + } + + return !_xml.error(); + } + + QString errorMessage() const { + return _xml.errorString(); + } + +private: + void unexpectedElement(const QStringRef &child, const QString &parent) { + _xml.raiseError(QObject::tr("Unexpected element <%1> in <%2>").arg(child.toString(), parent)); + } + + void ignoreAttr(const QXmlStreamAttribute &attr) { + qDebug() << "** ignoring attribute" << attr.name().toString() + << "in tag" << _xml.name(); + } + + void invalidAttr(const QString &value, const QString &attrName, const QString &tag) { + _xml.raiseError(QObject::tr("invalid value '%1' for attribute %2 in <%3>").arg(value, attrName, tag)); + } + + void noValidAttr(const QString &attrName, const QString &tag) { + _xml.raiseError(QObject::tr("<%1> has no valid %2 attribute").arg(tag, attrName)); + } + + void readModule() + { + Q_ASSERT(_xml.isStartElement() && _xml.name() == QLatin1String("module")); + + foreach (const QXmlStreamAttribute &attr, _xml.attributes()) + ignoreAttr(attr); + + while (_xml.readNextStartElement()) { + if (_xml.name() == QLatin1String("type")) + readType(); + else + unexpectedElement(_xml.name(), QLatin1String("module")); + } + } + + void readType() + { + const QLatin1String tag("type"); + Q_ASSERT(_xml.isStartElement() && _xml.name() == tag); + + QString name; + int major = -1, minor = -1; + QString extends; + foreach (const QXmlStreamAttribute &attr, _xml.attributes()) { + if (attr.name() == QLatin1String("name")) { + name = attr.value().toString(); + if (name.isEmpty()) { + invalidAttr(name, QLatin1String("name"), tag); + return; + } + } else if (attr.name() == QLatin1String("version")) { + QString version = attr.value().toString(); + int dotIdx = version.indexOf('.'); + if (dotIdx == -1) { + bool ok = false; + major = version.toInt(&ok); + if (!ok) { + invalidAttr(version, QLatin1String("version"), tag); + return; + } + minor = -1; + } else { + bool ok = false; + major = version.left(dotIdx).toInt(&ok); + if (!ok) { + invalidAttr(version, QLatin1String("version"), tag); + return; + } + minor = version.mid(dotIdx + 1).toInt(&ok); + if (!ok) { + invalidAttr(version, QLatin1String("version"), tag); + return; + } + } + } else if (attr.name() == QLatin1String("extends")) { + if (! attr.value().isEmpty()) + extends = attr.value().toString(); + } else { + ignoreAttr(attr); + } + } + + QString className, packageName; + split(name, &packageName, &className); + FakeMetaObject *metaObject = new FakeMetaObject(className, packageName, + major, minor); + if (! extends.isEmpty()) + metaObject->setSuperclassName(extends); + + while (_xml.readNextStartElement()) { + if (_xml.name() == QLatin1String("property")) + readProperty(metaObject); + else if (_xml.name() == QLatin1String("enum")) + readEnum(metaObject); + else if (_xml.name() == QLatin1String("signal")) + readSignal(metaObject); + else if (_xml.name() == QLatin1String("method")) + readMethod(metaObject); + else + unexpectedElement(_xml.name(), tag); + } + + _objects->insert(name, metaObject); + } + + bool split(const QString &name, QString *packageName, QString *className) { + int dotIdx = name.indexOf(QLatin1Char('.')); + if (dotIdx != -1) { + if (packageName) + *packageName = name.left(dotIdx); + if (className) + *className = name.mid(dotIdx + 1); + return true; + } else { + if (packageName) + packageName->clear(); + if (className) + *className = name; + return false; + } + } + + void readProperty(FakeMetaObject *metaObject) + { + const QLatin1String tag("property"); + Q_ASSERT(_xml.isStartElement() && _xml.name() == tag); + + QString name, type; + bool isList = false; + foreach (const QXmlStreamAttribute &attr, _xml.attributes()) { + if (attr.name() == QLatin1String("name")) { + name = attr.value().toString(); + } else if (attr.name() == QLatin1String("type")) { + type = attr.value().toString(); + } else if (attr.name() == QLatin1String("isList")) { + if (attr.value() == QLatin1String("true")) { + isList = true; + } else if (attr.value() == QLatin1String("false")) { + isList = false; + } else { + invalidAttr(attr.value().toString(), QLatin1String("idList"), tag); + return; + } + } else { + ignoreAttr(attr); + } + } + + if (name.isEmpty()) + noValidAttr(QLatin1String("name"), tag); + else if (type.isEmpty()) + noValidAttr(QLatin1String("type"), tag); + else + createProperty(metaObject, name, type, isList); + + while (_xml.readNextStartElement()) { + unexpectedElement(_xml.name(), tag); + } + } + + void createProperty(FakeMetaObject *metaObject, const QString &name, + const QString &type, bool isList) { + Q_ASSERT(metaObject); + + metaObject->addProperty(FakeMetaProperty(name, type, isList)); + } + + void readEnum(FakeMetaObject *metaObject) + { + Q_ASSERT(metaObject); + + QLatin1String tag("enum"); + Q_ASSERT(_xml.isStartElement() && _xml.name() == tag); + + QString name; + foreach (const QXmlStreamAttribute &attr, _xml.attributes()) { + if (attr.name() == QLatin1String("name")) { + name = attr.value().toString(); + } else { + ignoreAttr(attr); + } + } + + if (name.isEmpty()) { + noValidAttr(QLatin1String("name"), tag); + return; + } + + FakeMetaEnum metaEnum(name); + metaObject->addEnum(metaEnum); + + while (_xml.readNextStartElement()) { + if (_xml.name() == QLatin1String("enumerator")) + readEnumerator(&metaEnum); + else + unexpectedElement(_xml.name(), tag); + } + } + + void readEnumerator(FakeMetaEnum *metaEnum) + { + Q_ASSERT(metaEnum); + + QLatin1String tag("enumerator"); + Q_ASSERT(_xml.isStartElement() && _xml.name() == tag); + + QString name; + int value = 0; + foreach (const QXmlStreamAttribute &attr, _xml.attributes()) { + if (attr.name() == QLatin1String("name")) { + name = attr.value().toString(); + } else if (attr.name() == QLatin1String("value")) { + const QString valueStr = attr.value().toString(); + bool ok = false; + value = valueStr.toInt(&ok); + if (!ok) { + invalidAttr(valueStr, QLatin1String("value"), tag); + } + } else { + ignoreAttr(attr); + } + } + + if (name.isEmpty()) + noValidAttr(QLatin1String("name"), tag); + else + metaEnum->addKey(name, value); + + while (_xml.readNextStartElement()) { + unexpectedElement(_xml.name(), tag); + } + } + + void readSignal(FakeMetaObject *metaObject) + { + Q_ASSERT(metaObject); + QLatin1String tag("signal"); + Q_ASSERT(_xml.isStartElement() && _xml.name() == tag); + + QString name; + foreach (const QXmlStreamAttribute &attr, _xml.attributes()) { + if (attr.name() == QLatin1String("name")) { + name = attr.value().toString(); + } else { + ignoreAttr(attr); + } + } + + if (name.isEmpty()) { + noValidAttr(QLatin1String("name"), tag); + return; + } + + FakeMetaMethod method(name); + method.setMethodType(FakeMetaMethod::Signal); + + while (_xml.readNextStartElement()) { + if (_xml.name() == QLatin1String("param")) { + readParam(&method); + } else { + unexpectedElement(_xml.name(), tag); + } + } + } + + void readParam(FakeMetaMethod *method) + { + Q_ASSERT(method); + QLatin1String tag("param"); + Q_ASSERT(_xml.isStartElement() && _xml.name() == tag); + + QString name, type; + foreach (const QXmlStreamAttribute &attr, _xml.attributes()) { + if (attr.name() == QLatin1String("name")) { + name = attr.value().toString(); + } else if (attr.name() == QLatin1String("type")) { + type = attr.value().toString(); + } else { + ignoreAttr(attr); + } + } + + // note: name attribute is optional + if (type.isEmpty()) + noValidAttr(QLatin1String("type"), tag); + + method->addParameter(name, type); + + while (_xml.readNextStartElement()) { + unexpectedElement(_xml.name(), tag); + } + } + + void readMethod(FakeMetaObject *metaObject) + { + Q_ASSERT(metaObject); + QLatin1String tag("method"); + Q_ASSERT(_xml.isStartElement() && _xml.name() == tag); + + QString name, type; + foreach (const QXmlStreamAttribute &attr, _xml.attributes()) { + if (attr.name() == QLatin1String("name")) { + name = attr.value().toString(); + } else if (attr.name() == QLatin1String("type")) { + type = attr.value().toString(); + } else { + ignoreAttr(attr); + } + } + + // note: type attribute is optional, in which case it's a void method. + if (name.isEmpty()) { + noValidAttr(QLatin1String("name"), tag); + return; + } + + FakeMetaMethod method(name, type); + metaObject->addMethod(method); + + while (_xml.readNextStartElement()) { + if (_xml.name() == QLatin1String("param")) { + readParam(&method); + } else { + unexpectedElement(_xml.name(), tag); + } + } + } + +private: + QXmlStreamReader _xml; + QMap<QString, FakeMetaObject *> *_objects; +}; + } // end of anonymous namespace -QmlObjectValue::QmlObjectValue(const QMetaObject *metaObject, const QString &qmlTypeName, - int majorVersion, int minorVersion, Engine *engine) +const int QmlObjectValue::NoVersion = -1; + +QmlObjectValue::QmlObjectValue(const FakeMetaObject *metaObject, Engine *engine) : ObjectValue(engine), - _metaObject(metaObject), - _qmlTypeName(qmlTypeName), - _majorVersion(majorVersion), - _minorVersion(minorVersion) + _metaObject(metaObject) { - setClassName(qmlTypeName); // ### TODO: we probably need to do more than just this... + setClassName(metaObject->className()); // ### TODO: we probably need to do more than just this... } -QmlObjectValue::~QmlObjectValue() {} +QmlObjectValue::~QmlObjectValue() +{} const Value *QmlObjectValue::lookupMember(const QString &name, Context *context) const { return ObjectValue::lookupMember(name, context); } -const Value *QmlObjectValue::findOrCreateSignature(int index, const QMetaMethod &method, QString *methodName) const +const Value *QmlObjectValue::findOrCreateSignature(int index, const FakeMetaMethod &method, QString *methodName) const { - const QString signature = QString::fromUtf8(method.signature()); - - const int indexOfParen = signature.indexOf(QLatin1Char('(')); - if (indexOfParen == -1) - return engine()->undefinedValue(); // skip it, invalid signature. - - *methodName = signature.left(indexOfParen); + *methodName = method.methodName(); const Value *value = _metaSignature.value(index); if (! value) { value = new MetaFunction(method, engine()); @@ -188,31 +689,31 @@ const Value *QmlObjectValue::findOrCreateSignature(int index, const QMetaMethod void QmlObjectValue::processMembers(MemberProcessor *processor) const { // process the meta enums - for (int index = _metaObject->enumeratorOffset(); index < _metaObject->propertyCount(); ++index) { - QMetaEnum e = _metaObject->enumerator(index); + for (int index = _metaObject->enumeratorOffset(); index < _metaObject->enumeratorCount(); ++index) { + FakeMetaEnum e = _metaObject->enumerator(index); for (int i = 0; i < e.keyCount(); ++i) { - processor->processEnumerator(QString::fromUtf8(e.key(i)), engine()->numberValue()); + processor->processEnumerator(e.key(i), engine()->numberValue()); } } // process the meta properties for (int index = 0; index < _metaObject->propertyCount(); ++index) { - QMetaProperty prop = _metaObject->property(index); + FakeMetaProperty prop = _metaObject->property(index); processor->processProperty(prop.name(), propertyValue(prop)); } // process the meta methods for (int index = 0; index < _metaObject->methodCount(); ++index) { - QMetaMethod method = _metaObject->method(index); + FakeMetaMethod method = _metaObject->method(index); QString methodName; const Value *signature = findOrCreateSignature(index, method, &methodName); - if (method.methodType() == QMetaMethod::Slot && method.access() == QMetaMethod::Public) { + if (method.methodType() == FakeMetaMethod::Slot && method.access() == FakeMetaMethod::Public) { processor->processSlot(methodName, signature); - } else if (method.methodType() == QMetaMethod::Signal && method.access() != QMetaMethod::Private) { + } else if (method.methodType() == FakeMetaMethod::Signal && method.access() != FakeMetaMethod::Private) { // process the signal processor->processSignal(methodName, signature); @@ -229,57 +730,34 @@ void QmlObjectValue::processMembers(MemberProcessor *processor) const ObjectValue::processMembers(processor); } -const Value *QmlObjectValue::propertyValue(const QMetaProperty &prop) const +const Value *QmlObjectValue::propertyValue(const FakeMetaProperty &prop) const { - if (QDeclarativeMetaType::isQObject(prop.userType())) { - QDeclarativeType *qmlPropertyType = QDeclarativeMetaType::qmlType(prop.userType()); - - if (qmlPropertyType && !qmlPropertyType->qmlTypeName().isEmpty()) { - QString typeName = qmlPropertyType->qmlTypeName(); - int slashIdx = typeName.lastIndexOf(QLatin1Char('/')); - QString package; - if (slashIdx != -1) { - package = typeName.left(slashIdx); - typeName = typeName.mid(slashIdx + 1); - } - - if (const ObjectValue *objectValue = engine()->newQmlObject(typeName, package, qmlPropertyType->majorVersion(), qmlPropertyType->minorVersion())) - return objectValue; - } else { - QString typeName = QString::fromUtf8(prop.typeName()); - - if (typeName.endsWith(QLatin1Char('*'))) - typeName.truncate(typeName.length() - 1); - - typeName.replace(QLatin1Char('.'), QLatin1Char('/')); + const QString typeName = prop.typeName(); - if (const ObjectValue *objectValue = engine()->newQmlObject(typeName, "", -1, -1)) // ### we should extend this to lookup the property types in the QDeclarativeType object, instead of the QMetaProperty. - return objectValue; - } - } + // ### Verify type resolving. + QmlObjectValue *objectValue = engine()->metaTypeSystem().staticTypeForImport(typeName); + if (objectValue) + return objectValue; const Value *value = engine()->undefinedValue(); - - switch (prop.type()) { - case QMetaType::QByteArray: - case QMetaType::QString: - case QMetaType::QUrl: + if (typeName == QLatin1String("QByteArray") + || typeName == QLatin1String("string") + || typeName == QLatin1String("QString") + || typeName == QLatin1String("QUrl")) { value = engine()->stringValue(); - break; - - case QMetaType::Bool: + } else if (typeName == QLatin1String("bool")) { value = engine()->booleanValue(); - break; - - case QMetaType::Int: - case QMetaType::Float: - case QMetaType::Double: + } else if (typeName == QLatin1String("int") + || typeName == QLatin1String("float") + || typeName == QLatin1String("double") + || typeName == QLatin1String("qreal") + || typeName == QLatin1String("long") + // ### Review: more types here? + ) { value = engine()->numberValue(); - break; - - case QMetaType::QFont: { - // ### cache + } else if (typeName == QLatin1String("QFont")) { ObjectValue *object = engine()->newObject(/*prototype =*/ 0); + object->setClassName(QLatin1String("Font")); object->setProperty("family", engine()->stringValue()); object->setProperty("weight", engine()->undefinedValue()); // ### make me an object object->setProperty("copitalization", engine()->undefinedValue()); // ### make me an object @@ -293,69 +771,69 @@ const Value *QmlObjectValue::propertyValue(const QMetaProperty &prop) const object->setProperty("letterSpacing", engine()->numberValue()); object->setProperty("wordSpacing", engine()->numberValue()); value = object; - } break; - - case QMetaType::QPoint: - case QMetaType::QPointF: - case QMetaType::QVector2D: { + } else if (typeName == QLatin1String("QPoint") + || typeName == QLatin1String("QPointF") + || typeName == QLatin1String("QVector2D")) { // ### cache ObjectValue *object = engine()->newObject(/*prototype =*/ 0); + object->setClassName(QLatin1String("Point")); object->setProperty("x", engine()->numberValue()); object->setProperty("y", engine()->numberValue()); value = object; - } break; - - case QMetaType::QRect: - case QMetaType::QRectF: { + } else if (typeName == QLatin1String("QRect") + || typeName == QLatin1String("QRectF")) { // ### cache ObjectValue *object = engine()->newObject(/*prototype =*/ 0); + object->setClassName("Rect"); object->setProperty("x", engine()->numberValue()); object->setProperty("y", engine()->numberValue()); object->setProperty("width", engine()->numberValue()); object->setProperty("height", engine()->numberValue()); value = object; - } break; - - case QMetaType::QVector3D: { + } else if (typeName == QLatin1String("QVector3D")) { // ### cache ObjectValue *object = engine()->newObject(/*prototype =*/ 0); + object->setClassName(QLatin1String("Vector3D")); object->setProperty("x", engine()->numberValue()); object->setProperty("y", engine()->numberValue()); object->setProperty("z", engine()->numberValue()); value = object; - } break; - - case QMetaType::QColor: { + } else if (typeName == QLatin1String("QColor")) { value = engine()->colorValue(); - } break; - - default: - break; - } // end of switch - - const QString typeName = prop.typeName(); - if (typeName == QLatin1String("QDeclarativeAnchorLine")) { + } else if (typeName == QLatin1String("QDeclarativeAnchorLine")) { value = engine()->anchorLineValue(); - } - if (value->asStringValue() && prop.name() == QLatin1String("easing") - && isDerivedFrom(&QDeclarativePropertyAnimation::staticMetaObject)) { - value = engine()->easingCurveNameValue(); + } else if (typeName == QLatin1String("QEasingCurve")) { + // ### cache + ObjectValue *object = engine()->newObject(/*prototype =*/ 0); + object->setClassName(QLatin1String("EasingCurve")); + object->setProperty("type", engine()->easingCurveNameValue()); + object->setProperty("period", engine()->numberValue()); + object->setProperty("amplitude", engine()->numberValue()); + object->setProperty("overshoot", engine()->numberValue()); + value = object; } return value; } -bool QmlObjectValue::isDerivedFrom(const QMetaObject *base) const +QString QmlObjectValue::packageName() const +{ return _metaObject->packageName(); } + +int QmlObjectValue::majorVersion() const +{ return _metaObject->majorVersion(); } + +int QmlObjectValue::minorVersion() const +{ return _metaObject->minorVersion(); } + +bool QmlObjectValue::isDerivedFrom(const FakeMetaObject *base) const { - for (const QMetaObject *iter = _metaObject; iter; iter = iter->superClass()) { + for (const FakeMetaObject *iter = _metaObject; iter; iter = iter->superClass()) { if (iter == base) return true; } return false; } -#endif - namespace { //////////////////////////////////////////////////////////////////////////////// @@ -945,47 +1423,47 @@ QSet<QString> EasingCurveNameValue::curveNames() { if (_curveNames.isEmpty()) { _curveNames = QSet<QString>() - << "easeLinear" - << "easeInQuad" - << "easeOutQuad" - << "easeInOutQuad" - << "easeOutInQuad" - << "easeInCubic" - << "easeOutCubic" - << "easeInOutCubic" - << "easeOutInCubic" - << "easeInQuart" - << "easeOutQuart" - << "easeInOutQuart" - << "easeOutInQuart" - << "easeInQuint" - << "easeOutQuint" - << "easeInOutQuint" - << "easeOutInQuint" - << "easeInSine" - << "easeOutSine" - << "easeInOutSine" - << "easeOutInSine" - << "easeInExpo" - << "easeOutExpo" - << "easeInOutExpo" - << "easeOutInExpo" - << "easeInCirc" - << "easeOutCirc" - << "easeInOutCirc" - << "easeOutInCirc" - << "easeInElastic" - << "easeOutElastic" - << "easeInOutElastic" - << "easeOutInElastic" - << "easeInBack" - << "easeOutBack" - << "easeInOutBack" - << "easeOutInBack" - << "easeInBounce" - << "easeOutBounce" - << "easeInOutBounce" - << "easeOutInBounce"; + << "Linear" + << "InQuad" + << "OutQuad" + << "InOutQuad" + << "OutInQuad" + << "InCubic" + << "OutCubic" + << "InOutCubic" + << "OutInCubic" + << "InQuart" + << "OutQuart" + << "InOutQuart" + << "OutInQuart" + << "InQuint" + << "OutQuint" + << "InOutQuint" + << "OutInQuint" + << "InSine" + << "OutSine" + << "InOutSine" + << "OutInSine" + << "InExpo" + << "OutExpo" + << "InOutExpo" + << "OutInExpo" + << "InCirc" + << "OutCirc" + << "InOutCirc" + << "OutInCirc" + << "InElastic" + << "OutElastic" + << "InOutElastic" + << "OutInElastic" + << "InBack" + << "OutBack" + << "InOutBack" + << "OutInBack" + << "InBounce" + << "OutBounce" + << "InOutBounce" + << "OutInBounce"; } return _curveNames; @@ -1357,6 +1835,121 @@ const Value *Function::invoke(const Activation *activation) const //////////////////////////////////////////////////////////////////////////////// // typing environment //////////////////////////////////////////////////////////////////////////////// + +QList<const FakeMetaObject *> MetaTypeSystem::_metaObjects; + +QStringList MetaTypeSystem::load(const QFileInfoList &xmlFiles) +{ + QMap<QString, FakeMetaObject *> objects; + + QStringList errorMsgs; + + foreach (const QFileInfo &xmlFile, xmlFiles) { + QFile file(xmlFile.absoluteFilePath()); + if (file.open(QIODevice::ReadOnly)) { + QmlXmlReader read(&file); + if (!read(&objects)) { + errorMsgs.append(read.errorMessage()); + } + file.close(); + } else { + errorMsgs.append(QObject::tr("%1: %2").arg(xmlFile.absoluteFilePath(), + file.errorString())); + } + } + + if (errorMsgs.isEmpty()) { + qDeleteAll(_metaObjects); + _metaObjects.clear(); + + foreach (FakeMetaObject *obj, objects.values()) { + const QString superName = obj->superclassName(); + if (! superName.isEmpty()) { + obj->setSuperclass(objects.value(superName, 0)); + } + _metaObjects.append(obj); + } + } + + return errorMsgs; +} + +void MetaTypeSystem::reload(Interpreter::Engine *interpreter) +{ + QHash<const FakeMetaObject *, QmlObjectValue *> qmlObjects; + _importedTypes.clear(); + + foreach (const FakeMetaObject *metaObject, _metaObjects) { + QmlObjectValue *objectValue = new QmlObjectValue(metaObject, interpreter); + qmlObjects.insert(metaObject, objectValue); + _importedTypes[metaObject->packageName()].append(objectValue); + } + + foreach (const FakeMetaObject *metaObject, _metaObjects) { + QmlObjectValue *objectValue = qmlObjects.value(metaObject); + if (!objectValue) + continue; + objectValue->setPrototype(qmlObjects.value(metaObject->superClass(), 0)); + } +} + +QList<QmlObjectValue *> MetaTypeSystem::staticTypesForImport(const QString &packageName, int majorVersion, int minorVersion) const +{ + QMap<QString, QmlObjectValue *> objectValuesByName; + + foreach (QmlObjectValue *qmlObjectValue, _importedTypes.value(packageName)) { + if (qmlObjectValue->majorVersion() < majorVersion || + (qmlObjectValue->majorVersion() == majorVersion && qmlObjectValue->minorVersion() <= minorVersion)) { + // we got a candidate. + const QString typeName = qmlObjectValue->className(); + QmlObjectValue *previousCandidate = objectValuesByName.value(typeName, 0); + if (previousCandidate) { + // check if our new candidate is newer than the one we found previously + if (qmlObjectValue->majorVersion() > previousCandidate->majorVersion() || + (qmlObjectValue->majorVersion() == previousCandidate->majorVersion() && qmlObjectValue->minorVersion() > previousCandidate->minorVersion())) { + // the new candidate has a higher version no. than the one we found previously, so replace it + objectValuesByName.insert(typeName, qmlObjectValue); + } + } else { + objectValuesByName.insert(typeName, qmlObjectValue); + } + } + } + + return objectValuesByName.values(); +} + +QmlObjectValue *MetaTypeSystem::staticTypeForImport(const QString &qualifiedName) const +{ + QString name = qualifiedName; + QString packageName; + int dotIdx = name.indexOf(QLatin1Char('.')); + if (dotIdx != -1) { + packageName = name.left(dotIdx); + name = name.mid(dotIdx + 1); + } + + QmlObjectValue *previousCandidate = 0; + foreach (QmlObjectValue *qmlObjectValue, _importedTypes.value(packageName)) { + const QString typeName = qmlObjectValue->className(); + if (typeName != name) + continue; + + if (previousCandidate) { + // check if our new candidate is newer than the one we found previously + if (qmlObjectValue->majorVersion() > previousCandidate->majorVersion() || + (qmlObjectValue->majorVersion() == previousCandidate->majorVersion() && qmlObjectValue->minorVersion() > previousCandidate->minorVersion())) { + // the new candidate has a higher version no. than the one we found previously, so replace it + previousCandidate = qmlObjectValue; + } + } else { + previousCandidate = qmlObjectValue; + } + } + + return previousCandidate; +} + ConvertToNumber::ConvertToNumber(Engine *engine) : _engine(engine), _result(0) { @@ -1628,9 +2221,7 @@ Engine::Engine() _globalObject(0), _mathObject(0), _qtObject(0), -#ifndef NO_DECLARATIVE_BACKEND _qmlKeysObject(0), -#endif _convertToNumber(this), _convertToString(this), _convertToObject(this) @@ -2132,11 +2723,7 @@ void Engine::initializePrototypes() const ObjectValue *Engine::qmlKeysObject() { -#ifndef NO_DECLARATIVE_BACKEND return _qmlKeysObject; -#else - return 0; -#endif } const Value *Engine::defaultValueForBuiltinType(const QString &typeName) const @@ -2152,40 +2739,6 @@ const Value *Engine::defaultValueForBuiltinType(const QString &typeName) const return undefinedValue(); } -#ifndef NO_DECLARATIVE_BACKEND -QmlObjectValue *Engine::newQmlObject(const QString &name, const QString &prefix, int majorVersion, int minorVersion) -{ - if (name == QLatin1String("QDeclarativeAnchors")) { - QmlObjectValue *object = new QmlObjectValue(&QDeclarativeAnchors::staticMetaObject, QLatin1String("Anchors"), -1, -1, this); - return object; - } else if (name == QLatin1String("QDeclarativePen")) { - QmlObjectValue *object = new QmlObjectValue(&QDeclarativePen::staticMetaObject, QLatin1String("Pen"), -1, -1, this); - return object; - } else if (name == QLatin1String("QDeclarativeScaleGrid")) { - QmlObjectValue *object = new QmlObjectValue(&QObject::staticMetaObject, QLatin1String("ScaleGrid"), -1, -1, this); - object->setProperty("left", numberValue()); - object->setProperty("top", numberValue()); - object->setProperty("right", numberValue()); - object->setProperty("bottom", numberValue()); - return object; - } - - // ### TODO: add support for QML packages - const QString componentName = prefix + QLatin1Char('/') + name; - - if (QDeclarativeType *qmlType = QDeclarativeMetaType::qmlType(componentName.toUtf8(), majorVersion, minorVersion)) { - const QString typeName = qmlType->qmlTypeName(); - const QString strippedTypeName = typeName.mid(typeName.lastIndexOf('/') + 1); - QmlObjectValue *object = new QmlObjectValue(qmlType->metaObject(), strippedTypeName, majorVersion, minorVersion, this); - return object; - } - - return 0; -} -#endif - - - ASTObjectValue::ASTObjectValue(UiQualifiedId *typeName, UiObjectInitializer *initializer, const QmlJS::Document *doc, diff --git a/src/libs/qmljs/qmljsinterpreter.h b/src/libs/qmljs/qmljsinterpreter.h index 164e6094026fc67c3c39c89f2d9d455e8a41c388..e8ef1535e9afeab432d3abcc5ec95ed04c1e0402 100644 --- a/src/libs/qmljs/qmljsinterpreter.h +++ b/src/libs/qmljs/qmljsinterpreter.h @@ -32,9 +32,9 @@ #include <qmljs/qmljsdocument.h> #include <qmljs/qmljs_global.h> -#include <qmljs/qmljsmetatypesystem.h> #include <qmljs/parser/qmljsastfwd_p.h> +#include <QtCore/QFileInfoList> #include <QtCore/QList> #include <QtCore/QString> #include <QtCore/QHash> @@ -66,6 +66,10 @@ class AnchorLineValue; typedef QList<const Value *> ValueList; +class FakeMetaObject; +class FakeMetaMethod; +class FakeMetaProperty; + //////////////////////////////////////////////////////////////////////////////// // Value visitor //////////////////////////////////////////////////////////////////////////////// @@ -396,41 +400,32 @@ private: QString _className; }; -#ifndef NO_DECLARATIVE_BACKEND - class QmlObjectValue: public ObjectValue { public: - QmlObjectValue(const QMetaObject *metaObject, const QString &qmlTypeName, int majorVersion, int minorVersion, Engine *engine); + static const int NoVersion; + +public: + QmlObjectValue(const FakeMetaObject *metaObject, Engine *engine); virtual ~QmlObjectValue(); virtual const Value *lookupMember(const QString &name, Context *context) const; virtual void processMembers(MemberProcessor *processor) const; - const Value *propertyValue(const QMetaProperty &prop) const; + const Value *propertyValue(const FakeMetaProperty &prop) const; - QString qmlTypeName() const - { return _qmlTypeName; } - - int majorVersion() const - { return _majorVersion; } - - int minorVersion() const - { return _minorVersion; } + QString packageName() const; + int majorVersion() const; + int minorVersion() const; protected: - const Value *findOrCreateSignature(int index, const QMetaMethod &method, QString *methodName) const; - bool isDerivedFrom(const QMetaObject *base) const; + const Value *findOrCreateSignature(int index, const FakeMetaMethod &method, QString *methodName) const; + bool isDerivedFrom(const FakeMetaObject *base) const; private: - const QMetaObject *_metaObject; - QString _qmlTypeName; - int _majorVersion; - int _minorVersion; + const FakeMetaObject *_metaObject; mutable QHash<int, const Value *> _metaSignature; }; -#endif // !NO_DECLARATIVE_BACKEND - class QMLJS_EXPORT Activation { public: @@ -518,6 +513,23 @@ private: // typing environment //////////////////////////////////////////////////////////////////////////////// +class QMLJS_EXPORT MetaTypeSystem +{ + static QList<const FakeMetaObject *> _metaObjects; + +public: + /** \return an empty list when successful, error messages otherwise. */ + static QStringList load(const QFileInfoList &xmlFiles); + + void reload(Interpreter::Engine *interpreter); + + QList<Interpreter::QmlObjectValue *> staticTypesForImport(const QString &prefix, int majorVersion, int minorVersion) const; + Interpreter::QmlObjectValue *staticTypeForImport(const QString &qualifiedName) const; + +private: + QHash<QString, QList<QmlObjectValue *> > _importedTypes; +}; + class ConvertToNumber: protected ValueVisitor // ECMAScript ToInt() { public: @@ -633,9 +645,6 @@ public: // QML objects const ObjectValue *qmlKeysObject(); const Value *defaultValueForBuiltinType(const QString &typeName) const; -#ifndef NO_DECLARATIVE_BACKEND - QmlObjectValue *newQmlObject(const QString &name, const QString &prefix, int majorVersion, int minorVersion); -#endif // global object ObjectValue *globalObject() const; @@ -703,9 +712,7 @@ private: ObjectValue *_globalObject; ObjectValue *_mathObject; ObjectValue *_qtObject; -#ifndef NO_DECLARATIVE_BACKEND ObjectValue *_qmlKeysObject; -#endif NullValue _nullValue; UndefinedValue _undefinedValue; diff --git a/src/libs/qmljs/qmljslink.cpp b/src/libs/qmljs/qmljslink.cpp index c94ad265e053120aefa25ba86e8373cf41e8ef62..35c9dab7f18899fdcf31f89ff6862790e96e36ee 100644 --- a/src/libs/qmljs/qmljslink.cpp +++ b/src/libs/qmljs/qmljslink.cpp @@ -254,8 +254,8 @@ void Link::importNonFile(Interpreter::ObjectValue *typeEnv, Document::Ptr doc, A // try the metaobject system if (import->importUri) { const QString package = Bind::toString(import->importUri, '/'); - int majorVersion = -1; // ### TODO: Check these magic version numbers - int minorVersion = -1; // ### TODO: Check these magic version numbers + int majorVersion = QmlObjectValue::NoVersion; + int minorVersion = QmlObjectValue::NoVersion; if (import->versionToken.isValid()) { const QString versionString = doc->source().mid(import->versionToken.offset, import->versionToken.length); @@ -269,11 +269,10 @@ void Link::importNonFile(Interpreter::ObjectValue *typeEnv, Document::Ptr doc, A minorVersion = versionString.mid(dotIdx + 1).toInt(); } } -#ifndef NO_DECLARATIVE_BACKEND + foreach (QmlObjectValue *object, engine()->metaTypeSystem().staticTypesForImport(package, majorVersion, minorVersion)) { - namespaceObject->setProperty(object->qmlTypeName(), object); + namespaceObject->setProperty(object->className(), object); } -#endif // NO_DECLARATIVE_BACKEND } } diff --git a/src/libs/qmljs/qmljsmetatypesystem.cpp b/src/libs/qmljs/qmljsmetatypesystem.cpp deleted file mode 100644 index 9adfd42c42115549b0388f7953d14a95bd9c9c19..0000000000000000000000000000000000000000 --- a/src/libs/qmljs/qmljsmetatypesystem.cpp +++ /dev/null @@ -1,86 +0,0 @@ -/************************************************************************** -** -** This file is part of Qt Creator -** -** Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -** -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** Commercial Usage -** -** Licensees holding valid Qt Commercial licenses may use this file in -** accordance with the Qt Commercial License Agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and Nokia. -** -** GNU Lesser General Public License Usage -** -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 2.1 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPL included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 2.1 requirements -** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** If you are unsure which license is appropriate for your use, please -** contact the sales department at http://qt.nokia.com/contact. -** -**************************************************************************/ - -#include "qmljsinterpreter.h" -#include "qmljsmetatypesystem.h" - -#ifndef NO_DECLARATIVE_BACKEND -#include <QtDeclarative/private/qdeclarativemetatype_p.h> -#endif // NO_DECLARATIVE_BACKEND - -using namespace QmlJS; -using namespace QmlJS::Interpreter; - -void MetaTypeSystem::reload(Interpreter::Engine *interpreter) -{ - _importedTypes.clear(); - -#ifndef NO_DECLARATIVE_BACKEND - foreach (QDeclarativeType *type, QDeclarativeMetaType::qmlTypes()) { - const QString fqType = type->qmlTypeName(); - const int sepIdx = fqType.lastIndexOf(QLatin1Char('/')); - QString typeName; - QString package; - if (sepIdx == -1) { - typeName = fqType; - } else { - typeName = fqType.mid(sepIdx + 1); - package = fqType.left(sepIdx); - } - - _importedTypes[package].append(interpreter->newQmlObject(typeName, package, type->majorVersion(), type->minorVersion())); - } -} - -QList<QmlObjectValue *> MetaTypeSystem::staticTypesForImport(const QString &prefix, int majorVersion, int minorVersion) const -{ - QMap<QString, QmlObjectValue *> objectValuesByName; - - foreach (QmlObjectValue *qmlObjectValue, _importedTypes.value(prefix)) { - if (qmlObjectValue->majorVersion() < majorVersion || - (qmlObjectValue->majorVersion() == majorVersion && qmlObjectValue->minorVersion() <= minorVersion)) { - // we got a candidate. - const QString typeName = qmlObjectValue->qmlTypeName(); - QmlObjectValue *previousCandidate = objectValuesByName.value(typeName, 0); - if (previousCandidate) { - // check if our new candidate is newer than the one we found previously - if (qmlObjectValue->majorVersion() > previousCandidate->majorVersion() || - (qmlObjectValue->majorVersion() == previousCandidate->majorVersion() && qmlObjectValue->minorVersion() > previousCandidate->minorVersion())) { - // the new candidate has a higher version no. than the one we found previously, so replace it - objectValuesByName.insert(typeName, qmlObjectValue); - } - } else { - objectValuesByName.insert(typeName, qmlObjectValue); - } - } - } - - return objectValuesByName.values(); -#endif // NO_DECLARATIVE_BACKEND -} diff --git a/src/libs/qmljs/qmljsmetatypesystem.h b/src/libs/qmljs/qmljsmetatypesystem.h deleted file mode 100644 index 8f96a56d457c47f5f397d8e04c83e15237adcbd9..0000000000000000000000000000000000000000 --- a/src/libs/qmljs/qmljsmetatypesystem.h +++ /dev/null @@ -1,58 +0,0 @@ -/************************************************************************** -** -** This file is part of Qt Creator -** -** Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -** -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** Commercial Usage -** -** Licensees holding valid Qt Commercial licenses may use this file in -** accordance with the Qt Commercial License Agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and Nokia. -** -** GNU Lesser General Public License Usage -** -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 2.1 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPL included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 2.1 requirements -** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** If you are unsure which license is appropriate for your use, please -** contact the sales department at http://qt.nokia.com/contact. -** -**************************************************************************/ - -#ifndef QMLJSMETATYPESYSTEM_H -#define QMLJSMETATYPESYSTEM_H - -#include <QtCore/QHash> -#include <QtCore/QString> - -namespace QmlJS { - -namespace Interpreter { - class Engine; - class QmlObjectValue; -} // namespace Interpreter - -class MetaTypeSystem -{ -public: - void reload(Interpreter::Engine *interpreter); - -#ifndef NO_DECLARATIVE_BACKEND - QList<Interpreter::QmlObjectValue *> staticTypesForImport(const QString &prefix, int majorVersion, int minorVersion) const; -#endif // NO_DECLARATIVE_BACKEND - -private: - QHash<QString, QList<Interpreter::QmlObjectValue *> > _importedTypes; -}; - -} // namespace QmlJS - -#endif // QMLJSMETATYPESYSTEM_H diff --git a/src/libs/qmljs/qmljsscopebuilder.cpp b/src/libs/qmljs/qmljsscopebuilder.cpp index 9ab4381441f4b5ff93848edda3dbb475337db7b9..2ebd2a05ace5e3475b406260c935ecb6c79c4160 100644 --- a/src/libs/qmljs/qmljsscopebuilder.cpp +++ b/src/libs/qmljs/qmljsscopebuilder.cpp @@ -73,13 +73,12 @@ void ScopeBuilder::setQmlScopeObject(Node *node) return; // Probably syntax errors, where we're working with a "recovered" AST. } -#ifndef NO_DECLARATIVE_BACKEND // check if the object has a Qt.ListElement ancestor const ObjectValue *prototype = scopeObject->prototype(_context); while (prototype) { if (const QmlObjectValue *qmlMetaObject = dynamic_cast<const QmlObjectValue *>(prototype)) { - // ### Also check for Qt package. Involves changes in QmlObjectValue. - if (qmlMetaObject->qmlTypeName() == QLatin1String("ListElement")) { + if (qmlMetaObject->className() == QLatin1String("ListElement") + && qmlMetaObject->packageName() == QLatin1String("Qt")) { scopeChain.qmlScopeObjects.clear(); break; } @@ -91,8 +90,8 @@ void ScopeBuilder::setQmlScopeObject(Node *node) prototype = scopeObject->prototype(_context); while (prototype) { if (const QmlObjectValue *qmlMetaObject = dynamic_cast<const QmlObjectValue *>(prototype)) { - // ### Also check for Qt package. Involves changes in QmlObjectValue. - if (qmlMetaObject->qmlTypeName() == QLatin1String("PropertyChanges")) + if (qmlMetaObject->className() == QLatin1String("PropertyChanges") + && qmlMetaObject->packageName() == QLatin1String("Qt")) break; } prototype = prototype->prototype(_context); @@ -126,5 +125,4 @@ void ScopeBuilder::setQmlScopeObject(Node *node) } } } -#endif } diff --git a/src/plugins/qmljseditor/qmljsmodelmanager.cpp b/src/plugins/qmljseditor/qmljsmodelmanager.cpp index d4d553041d86139e37c7f0c41073151f4eebcd00..d6adf67347de9fc424b4e39046cbf8009bd563c3 100644 --- a/src/plugins/qmljseditor/qmljsmodelmanager.cpp +++ b/src/plugins/qmljseditor/qmljsmodelmanager.cpp @@ -35,14 +35,18 @@ #include <coreplugin/editormanager/editormanager.h> #include <coreplugin/progressmanager/progressmanager.h> #include <coreplugin/mimedatabase.h> +#include <qmljs/qmljsinterpreter.h> #include <texteditor/itexteditor.h> +#include <QDir> #include <QFile> #include <QFileInfo> #include <QtConcurrentRun> #include <qtconcurrent/runextensions.h> #include <QTextStream> +#include <QDebug> + using namespace QmlJS; using namespace QmlJSEditor; using namespace QmlJSEditor::Internal; @@ -57,6 +61,22 @@ ModelManager::ModelManager(QObject *parent): connect(this, SIGNAL(documentUpdated(QmlJS::Document::Ptr)), this, SLOT(onDocumentUpdated(QmlJS::Document::Ptr))); + + loadQmlTypeDescriptions(); +} + +void ModelManager::loadQmlTypeDescriptions() +{ + const QString resourcePath = Core::ICore::instance()->resourcePath(); + const QDir typeFileDir(resourcePath + QLatin1String("/qml-type-descriptions")); + const QStringList xmlExtensions = QStringList() << QLatin1String("*.xml"); + const QFileInfoList xmlFiles = typeFileDir.entryInfoList(xmlExtensions, + QDir::Files, + QDir::Name); + + const QStringList errors = Interpreter::MetaTypeSystem::load(xmlFiles); + foreach (const QString &error, errors) + qWarning() << qPrintable(error); } Snapshot ModelManager::snapshot() const diff --git a/src/plugins/qmljseditor/qmljsmodelmanager.h b/src/plugins/qmljseditor/qmljsmodelmanager.h index 47192044da9d5b93bd46d5b615502796e62df758..84ab2d6d0fdc0d2cffe0c8d07ed1b05790a82cf6 100644 --- a/src/plugins/qmljseditor/qmljsmodelmanager.h +++ b/src/plugins/qmljseditor/qmljsmodelmanager.h @@ -82,6 +82,8 @@ protected: QStringList files, ModelManager *modelManager); + void loadQmlTypeDescriptions(); + private: static bool matchesMimeType(const Core::MimeType &fileMimeType, const Core::MimeType &knownMimeType);