summaryrefslogtreecommitdiffstats
path: root/examples/sensors/sensor_explorer/doc/src
diff options
context:
space:
mode:
Diffstat (limited to 'examples/sensors/sensor_explorer/doc/src')
-rw-r--r--examples/sensors/sensor_explorer/doc/src/sensor_explorer.qdoc143
1 files changed, 0 insertions, 143 deletions
diff --git a/examples/sensors/sensor_explorer/doc/src/sensor_explorer.qdoc b/examples/sensors/sensor_explorer/doc/src/sensor_explorer.qdoc
deleted file mode 100644
index aef88c39..00000000
--- a/examples/sensors/sensor_explorer/doc/src/sensor_explorer.qdoc
+++ /dev/null
@@ -1,143 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2017 The Qt Company Ltd.
-** Contact: https://www.qt.io/licensing/
-**
-** This file is part of the documentation of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:FDL$
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and The Qt Company. For licensing terms
-** and conditions see https://www.qt.io/terms-conditions. For further
-** information use the contact form at https://www.qt.io/contact-us.
-**
-** GNU Free Documentation License Usage
-** Alternatively, this file may be used under the terms of the GNU Free
-** Documentation License version 1.3 as published by the Free Software
-** Foundation and appearing in the file included in the packaging of
-** this file. Please review the following information to ensure
-** the GNU Free Documentation License version 1.3 requirements
-** will be met: https://www.gnu.org/licenses/fdl-1.3.html.
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-/*!
- \example sensor_explorer
- \title Qt Sensors - Explorer QML Example
- \ingroup qtsensors-examples
- \brief Demonstrates how to read the meta-data of available sensors.
-
- \image qtsensors-examples-sensor-explorer.png
-
- The example is implemented as a typical model-view application. The
- models are written with C++ and exposed to QML, and the views are
- implemented as QML types in the QML application.
-
- \section1 Exposing and Importing the Models
-
- The QML models written in C++ are exposed in the project build files
- as a \c SensorModels QML module.
-
- \e CMake:
- \code
- set_target_properties(sensor_explorer PROPERTIES
- QT_QML_MODULE_VERSION 1.0
- QT_QML_MODULE_URI SensorModels
- )
- qt_qml_type_registration(sensor_explorer)
- \endcode
-
- \e qmake:
- \code
- CONFIG += qmltypes
- QML_IMPORT_NAME = SensorModels
- QML_IMPORT_MAJOR_VERSION = 1
- \endcode
-
- The indvidual model elements are exposed as part of the model
- code by using the \c QML_ELEMENT macro as illustrated here:
- \snippet sensor_explorer/sensormodels.h 0
-
- To access the models in the QML application, the module is imported
- by the application QML:
- \snippet sensor_explorer/sensor_explorer.qml 0
-
- \section1 Populating the Model of Available Sensors
-
- The \c AvailableSensorsModel is a list model that provides information on
- available sensors on the device. The model is populated once at the
- element's construction time:
-
- \snippet sensor_explorer/sensormodels.cpp 0
-
- The model's \c data() function returns a pointer to the requested sensor
- object.
-
- \snippet sensor_explorer/sensormodels.cpp 1
-
- Since the sensor (QSensor) is a QObject, the QML is then able to directly
- access all metaproperties and -functions directly.
-
- \note It would be possible to refresh the sensor list later at will, but for
- the simplicity of the example such functionality is not exposed to QML.
-
- \section1 Populating the Model of Sensor Properties
-
- The \c SensorPropertyModel is a table model that provides individual
- sensor's property-value pairs as columns. The column \c 0 provides the
- property's name and the column \c 1 provides the property's value. The
- population of the properties is done by reading the metadata of the sensors.
- The model reads both the sensor's metadata as well as the sensor's reading's
- metadata. The code below illustrates the reading of the \c reading metadata:
-
- \snippet sensor_explorer/sensormodels.cpp 2
-
- This metadata access allows providing the model data for all sensors
- without prior compile-time understanding of their properties.
-
- Once the metadata is set, the code then subscribes to the
- QSensor::readingChanged() signal to detect sensor reading changes.
- Upon such changes (for example a rotation value changes), the model data
- is updated accordingly.
-
- \section1 Viewing the Models
-
- The QML application is based on two views. The first view shows the available
- sensors as a selectable list. The second view shows the selected sensor's
- properties and their values. The delegates for viewing the individual items
- are simplistic \e {rectangle and text} items.
-
- Binding the two views functionally together is done by binding the property
- model's \c sensor property to the current selection of the available sensors
- model:
-
- \snippet sensor_explorer/sensor_explorer.qml 1
-
- When the selected sensor changes, the \c sensor of the property model changes
- accordingly.
-
- The following snippet illustrates how the property view is implemented. For
- more details about QML models and views, please see
- \l{Models and Views in Qt Quick}.
-
- \snippet sensor_explorer/sensor_explorer.qml 3
-
- For clarity it should be mentioned that the \c display attribute used by
- the text element refers to the Qt::DisplayRole role of the model, which is
- provided by default by Qt models.
-
- \section1 Activating the Sensors
-
- The example has a button for activating and deactivating the currently
- selected sensor. The button is enabled only if a sensor is currently
- selected, as illustrated below.
-
- \snippet sensor_explorer/sensor_explorer.qml 2
-
- On clicking the button, the sensor's active property is toggled on/off.
-
-*/