From 52622a036bc565049a8b99d7061d64afac946657 Mon Sep 17 00:00:00 2001 From: Leena Miettinen Date: Mon, 17 Aug 2020 14:18:36 +0200 Subject: [PATCH] Doc: Add info about supported property types Also describe that custom properties are visible in the Properties view, where their values can be set. Change-Id: Ie82975116ae4de0ebb92050e7e2190315521ff8b Reviewed-by: Thomas Hartmann --- .../images/qmldesigner-dynamicprops.png | Bin 3414 -> 7228 bytes .../images/qtquick-custom-properties.png | Bin 0 -> 29191 bytes .../qtquick-connection-editor-properties.qdoc | 81 +++++++++++++++--- .../src/qtquick/qtquick-properties.qdoc | 41 ++++++--- 4 files changed, 99 insertions(+), 23 deletions(-) create mode 100644 doc/qtcreator/images/qtquick-custom-properties.png diff --git a/doc/qtcreator/images/qmldesigner-dynamicprops.png b/doc/qtcreator/images/qmldesigner-dynamicprops.png index ae2125481ad7d45b472fa66d9ad29cda3f82976c..82cd304888b680bcedac6f7a6b36af05535460be 100644 GIT binary patch literal 7228 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 II;Vst0FeK8XaE2J diff --git a/doc/qtcreator/images/qtquick-custom-properties.png b/doc/qtcreator/images/qtquick-custom-properties.png new file mode 100644 index 0000000000000000000000000000000000000000..9964bb6317f4e186c51b2d48ef84baa8c6504c8e GIT binary patch literal 29191 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 literal 0 HcmV?d00001 diff --git a/doc/qtcreator/src/qtquick/qtquick-connection-editor-properties.qdoc b/doc/qtcreator/src/qtquick/qtquick-connection-editor-properties.qdoc index 9c05d2524c5..176a9070a38 100644 --- a/doc/qtcreator/src/qtquick/qtquick-connection-editor-properties.qdoc +++ b/doc/qtcreator/src/qtquick/qtquick-connection-editor-properties.qdoc @@ -30,8 +30,8 @@ \title Specifying Dynamic Properties - In addition to the properties predefined for QML types, you can specify - \e {dynamic properties} to add properties that would not otherwise + Each predefined QML type has a set of predefined properties that you can + specify values for. You can add custom properties that would not otherwise exist for a particular type. You bind the properties to dynamic expressions to define global properties for an object that can be read by other objects. For example, you can specify global properties for the root object that you @@ -42,18 +42,19 @@ and then use bindings to refer to the value of the margin property from other objects. - Similarly, you can add dynamic properties at component level. + Similarly, you can add custom properties for your own QML types that are + based on the predefined types. - You can specify dynamic properties for objects in the - \uicontrol Connections view. + You can add properties for objects in the \uicontrol Connections view, + \uicontrol Properties tab. - \image qmldesigner-dynamicprops.png + \image qmldesigner-dynamicprops.png "Custom properties in Connection View Custom Properties tab" - To specify dynamic properties for an object: + To add properties for an object: \list 1 - \li In the \uicontrol {Connections} view, select the - \uicontrol {Properties} tab. + \li Select \uicontrol View > \uicontrol Views > + \uicontrol {Connections View} > \uicontrol {Properties}. \li Select the \inlineimage plus.png (\uicontrol Add) button to add a dynamic property for the currently selected item. The item ID is displayed in the \uicontrol Item @@ -61,9 +62,67 @@ \li Double-click the value in the \uicontrol Property column to give a name to the property. \li Double-click the value in the \uicontrol {Property Type} column to - specify the type of the property. + specify the \l{Supported Property Types}{type of the property}. \li Double-click the value in the \uicontrol {Property Value} column - to specify a dynamic expression as the value of the property. + to specify the value of the property. \endlist + The properties you add for a QML type are displayed in the + \uicontrol Properties view when you select a component of + that type in \uicontrol Navigator or \uicontrol {Form Editor}. + + \image qtquick-custom-properties.png "Custom properties in Properties view" + + For more information about setting property values in the + \uicontrol Properties view, see \l{Specifying Item Properties}. + + For an example of using custom properties in an application, see + \l{Creating a Mobile Application}. + + \section1 Supported Property Types + + The following table describes the supported property types: + + \table + \header + \li Type + \li Description + \row + \li alias + \li \l{Property Aliases}{Property alias} that holds a reference to + another property + \row + \li bool + \li Binary \c true or \c false value + \row + \li color + \li Color value that can be specified by using an SVG color name, such + as "red", "green", or "lightsteelblue", or a hexadecimal triplet or + quad in the form "#RRGGBB" and "#AARRGGBB", respectively. For + example, the color red corresponds to a triplet of "#FF0000" and + a slightly transparent blue to a quad of "#800000FF". + In addition, you can use the following Qt functions: \l{Qt::rgba()} + {Qt.rgba()}, \l{Qt::hsva()}{Qt.hsva()}, \l{Qt::hsla()}{Qt.hsla()}, + \l{Qt::darker()}{Qt.darker()}, \l{Qt::lighter()}{Qt.lighter()}, and + \l{Qt::tint()}{Qt.tint()}. + \row + \li int + \li Whole integer number, such as 0, 10, or -20 + \row + \li real + \li Number with a decimal point + \row + \li string + \li Free form text string + \row + \li url + \li Resource locator, such as a file name. It can be either absolute, + (\c http://qt-project.org), or relative (\c pics/logo.png). A + relative URL is resolved relative to the URL of the parent + component. + \row + \li variant + \li Generic property type. For example, variant properties can store + numbers, strings, objects, arrays, and functions. + \endtable */ diff --git a/doc/qtcreator/src/qtquick/qtquick-properties.qdoc b/doc/qtcreator/src/qtquick/qtquick-properties.qdoc index 78c70b28093..b26107ca2a4 100644 --- a/doc/qtcreator/src/qtquick/qtquick-properties.qdoc +++ b/doc/qtcreator/src/qtquick/qtquick-properties.qdoc @@ -32,25 +32,30 @@ The \uicontrol Properties view displays all the properties of the selected item. The properties are grouped by type. The top part of the view displays - properties that are common to all QML types, such as position, size, and - visibility. + properties that are common to all QML types, such as type, id, position, + size, and visibility. - The bottom part of the view displays properties that are specific to each - QML type. For example, the following image displays the properties you can - set for \uicontrol Rectangle and \uicontrol Text items. + The bottom part of the view displays properties that have been defined for + the QML type. For example, the following image displays the predefined + properties you can set for \uicontrol Rectangle and \uicontrol Text items. \image qmldesigner-element-properties.png - To change the item type, double-click the \uicontrol Type field in the - \uicontrol Properties view, and enter the name of another QML type in the - field. If you have specified properties for the item that are not supported - for the new type, the type cannot be changed and an error message is - displayed. Select the \inlineimage icons/action-icon.png + When you create a component using a QML type, the component has all the + properties of the type you used. If you realize later that another + QML type with another set of predefined properties would be more suitable + for your purposes, you can change the component type by double-clicking the + \uicontrol Type field in the \uicontrol Properties view. Enter the name of + another QML type in the field. + + If you have specified values for properties that are not supported by + the new type, \QC offers to remove them for you. If you'd rather do + this yourself, you can select the \inlineimage icons/action-icon.png (\uicontrol Actions) menu next to the property name, and then select \uicontrol Reset to remove the property values before trying again. - To modify the common properties of multiple items simultaneously, select - them in the \uicontrol Navigator or on the canvas: + To modify the values of common properties of multiple items simultaneously, + select the items in the \uicontrol Navigator or on the canvas: \list \li On Windows, press and hold \key Ctrl and \key Shift, and then click @@ -71,6 +76,18 @@ For more information on the properties available for an item, press \key {F1}. + \section1 Specifying Custom Properties + + Each predefined QML type has a set of properties that you can extend by + defining additional properties for your own QML components. For more + information, see \l{Specifying Dynamic Properties}. + + The properties you add for a QML type are displayed in the + \uicontrol Properties view when you select a component + of that type in \uicontrol Navigator or \uicontrol {Form Editor}. + + \image qtquick-custom-properties.png "Custom properties in Properties view" + \section1 Viewing Changes in Properties The default values of properties are displayed in white color, while the