diff options
author | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2014-01-23 09:03:00 +0200 |
---|---|---|
committer | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2014-01-23 09:25:49 +0200 |
commit | db4fa86cffefbc34b8da7961103ac97424ff41e9 (patch) | |
tree | f83ce363dcf06b3020a215484a7b6e779944b8e5 /examples/qmllegend/doc/src/qmllegend.qdoc | |
parent | 0237941e81d9f6713170c67a8dec6113fec1ef01 (diff) |
Add example for showing graph legend
+Fix default theme
Task-number: QTRD-2653
Change-Id: Iccf4161cd19a9dfe6226189568efeb4565ba53ed
Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
Diffstat (limited to 'examples/qmllegend/doc/src/qmllegend.qdoc')
-rw-r--r-- | examples/qmllegend/doc/src/qmllegend.qdoc | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/examples/qmllegend/doc/src/qmllegend.qdoc b/examples/qmllegend/doc/src/qmllegend.qdoc new file mode 100644 index 00000000..6d210ffb --- /dev/null +++ b/examples/qmllegend/doc/src/qmllegend.qdoc @@ -0,0 +1,67 @@ +/**************************************************************************** +** +** Copyright (C) 2013 Digia Plc +** All rights reserved. +** For any questions to Digia, please use contact form at http://qt.digia.com +** +** This file is part of the QtDataVisualization module. +** +** Licensees holding valid Qt Enterprise licenses may use this file in +** accordance with the Qt Enterprise License Agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and Digia. +** +** If you have questions regarding the use of this file, please use +** contact form at http://qt.digia.com +** +****************************************************************************/ + +/*! + \example qmllegend + \title Qt Quick 2 Legend Example + \ingroup qtdatavisualization_examples + \brief Showing graph legend in a QML application. + + The Qt Quick 2 legend example shows how to make an interactive legend for a graph. + + \image qmllegend-example.png + + The interesting thing about this example is displaying the legend. We'll concentrate on + thate and skip explaining the basic functionality - for + more detailed QML example documentation, see \l{Qt Quick 2 Scatter Example}. + + \section1 Legend + + The legend is simply a column of custom \c LegendItem items inside a transparent rectangle. + Each item is supplied with a series and the graph theme: + + \snippet ../examples/qmllegend/qml/qmllegend/main.qml 0 + + The legend items consist of a marker rectangle, which indicates the color of the series, + and a text field, which shows the name of the series. The colors we get from the series and + the theme supplied at legend item initialization: + + \snippet ../examples/qmllegend/qml/qmllegend/legenditem.qml 0 + \dots 4 + \snippet ../examples/qmllegend/qml/qmllegend/legenditem.qml 1 + + We want the legend to be interactive, so we add additional logic to enable selection of a + series by clicking on a legend item, as well as highlighting the legend item corresponding + to the selected series. + + The highlight depends on the selection state of the series, so we define two states, which + follow the Bar3DSeries::selectedBar property and adjust the \c legendItem color appropriately: + + \snippet ../examples/qmllegend/qml/qmllegend/legenditem.qml 3 + + To make the legend item interactive, we define a MouseArea to detect clicks on it and adjust + the series selection accordingly: + + \snippet ../examples/qmllegend/qml/qmllegend/legenditem.qml 2 + + The \c previousSelection used above is another custom property of \c LegendItem, which we update + whenever selection changes on the series. This way we remember the last selected bar of + each series: + + \snippet ../examples/qmllegend/qml/qmllegend/legenditem.qml 4 +*/ |