From 02659c84f6582ace4b189d53b0811846ec28ecef Mon Sep 17 00:00:00 2001 From: Jens Bache-Wiig <jens.bache-wiig@digia.com> Date: Sun, 10 Feb 2013 10:27:43 +0100 Subject: [PATCH] Update API and documentation of TableView Note that I renamed Column to TableViewColumn Change-Id: I8968797cede9a117a6acac09997fba385ff76b30 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com> --- examples/ApplicationTemplate/qml/main.qml | 2 +- examples/gallery/content/ModelView.qml | 6 +- examples/tableview/main.qml | 20 +- src/qtdesktop/TableView.qml | 210 +++++++++++------- .../{TableColumn.qml => TableViewColumn.qml} | 34 ++- src/qtdesktop/doc/images/tableview.png | Bin 0 -> 55512 bytes src/qtdesktop/qmldir | 2 +- src/qtdesktop/qtdesktop.pro | 2 +- .../data/tableview/table1_qobjectmodel.qml | 2 +- .../tableview/table2_qabstractitemmodel.qml | 2 +- .../data/tableview/table3_qobjectlist.qml | 2 +- .../data/tableview/table4_qstringlist.qml | 2 +- .../data/tableview/table5_listmodel.qml | 2 +- .../data/tableview/table6_countmodel.qml | 2 +- .../data/tableview/table7_arraymodel.qml | 2 +- .../data/tableview/table8_itemmodel.qml | 2 +- tests/auto/qtdesktop/data/tst_tableview.qml | 4 +- tests/manual/scrollbars.qml | 2 +- tests/manual/tableviewmodels/qml/main.qml | 16 +- 19 files changed, 198 insertions(+), 116 deletions(-) rename src/qtdesktop/{TableColumn.qml => TableViewColumn.qml} (72%) create mode 100644 src/qtdesktop/doc/images/tableview.png diff --git a/examples/ApplicationTemplate/qml/main.qml b/examples/ApplicationTemplate/qml/main.qml index 52e080c07..dcfe6064d 100644 --- a/examples/ApplicationTemplate/qml/main.qml +++ b/examples/ApplicationTemplate/qml/main.qml @@ -71,7 +71,7 @@ ApplicationWindow { frame: false highlightOnFocus: false model: 40 - TableColumn { title: "Left Column" } + TableViewColumn { title: "Left Column" } } TextArea { frame: false diff --git a/examples/gallery/content/ModelView.qml b/examples/gallery/content/ModelView.qml index babb70308..a3c67fc0c 100644 --- a/examples/gallery/content/ModelView.qml +++ b/examples/gallery/content/ModelView.qml @@ -72,17 +72,17 @@ Item { model: dummyModel anchors.fill: parent - TableColumn { + TableViewColumn { role: "title" title: "Title" width: 120 } - TableColumn { + TableViewColumn { role: "credit" title: "Credit" width: 120 } - TableColumn { + TableViewColumn { role: "imagesource" title: "Image source" width: 200 diff --git a/examples/tableview/main.qml b/examples/tableview/main.qml index 82ca13b2f..dcebb4d24 100644 --- a/examples/tableview/main.qml +++ b/examples/tableview/main.qml @@ -132,17 +132,17 @@ Rectangle { anchors.fill: parent anchors.margins: 12 - TableColumn { + TableViewColumn { role: "title" title: "Title" width: 120 } - TableColumn { + TableViewColumn { role: "credit" title: "Credit" width: 120 } - TableColumn { + TableViewColumn { role: "imagesource" title: "Image source" width: 200 @@ -163,7 +163,7 @@ Rectangle { anchors.fill: parent anchors.margins: 12 - TableColumn { + TableViewColumn { role: "attributes" title: "Text and Color" width: 220 @@ -204,17 +204,17 @@ Rectangle { model: largeModel anchors.margins: 12 anchors.fill: parent - TableColumn { + TableViewColumn { role: "name" title: "Name" width: 120 } - TableColumn { + TableViewColumn { role: "age" title: "Age" width: 120 } - TableColumn { + TableViewColumn { role: "gender" title: "Gender" width: 120 @@ -307,17 +307,17 @@ Rectangle { sortIndicatorVisible: sortableCheckbox.checked alternateRowColor: alternateCheckbox.checked - TableColumn { + TableViewColumn { role: "name" title: "Name" width: 120 } - TableColumn { + TableViewColumn { role: "age" title: "Age" width: 120 } - TableColumn { + TableViewColumn { role: "sex" title: "Sex" width: 120 diff --git a/src/qtdesktop/TableView.qml b/src/qtdesktop/TableView.qml index a053ae2f3..53a18ba5e 100644 --- a/src/qtdesktop/TableView.qml +++ b/src/qtdesktop/TableView.qml @@ -45,134 +45,190 @@ import QtDesktop.Private 1.0 /*! \qmltype TableView \inqmlmodule QtDesktop 1.0 - \ingroup tables - \brief TableView is an extended ListView that provides column and header support. + \ingroup views + \brief Provides a list view with scroll bars, styling and header sections. + \image tableview.png - This component provides an item-view with resizable - header sections. + A TableView is similar to \l ListView and adds scroll bars, selection and + resizable header sections. As with \l ListView, data for each row is provided through a \l model: - You can style the drawn delegate by overriding the itemDelegate - property. The following properties are supported for custom - delegates: - - Note: Currently only row selection is available for this component - -\list -\li itemHeight - default platform size of item -\li itemWidth - default platform width of item -\li itemSelected - if the row is currently selected -\li itemValue - The text for this item -\li itemForeground - The default text color for an item -\endlist - -\code - For example: - itemDelegate: Item { - Text { - anchors.verticalCenter: parent.verticalCenter - color: itemForeground - elide: Text.ElideRight - text: itemValue - } - } -\endcode - - Data for each row is provided through a model: - -\code + \code ListModel { - ListElement{ column1: "value 1"; column2: "value 2"} - ListElement{ column1: "value 3"; column2: "value 4"} + id: libraryModel + ListElement{ title: "A Masterpiece" ; author: "Gabriel" } + ListElement{ title: "Brilliance" ; author: "Jens" } + ListElement{ title: "Outstanding" ; author: "Frederik" } } -\endcode + \endcode - You provide title and size properties on TableColumns - by setting the default header property : + You provide title and size of a column header + by adding a \l TableViewColumn to the default \l header property + as demonstrated below. + \code -\code TableView { - TableColumn{ role: "column1" ; title: "Column 1" ; width:100} - TableColumn{ role: "column2" ; title: "Column 2" ; width:200} - model: datamodel + TableViewColumn{ role: "title" ; title: "Title" ; width: 100 } + TableViewColumn{ role: "author" ; title: "Author" ; width: 200 } + model: libraryModel } -\endcode + \endcode + + The header sections are attached to values in the \l model by defining + the model role they attach to. Each property in the model, will + then be shown in their corresponding column. + + You can customize the look by overriding the \l itemDelegate, + \l rowDelegate or \l headerDelegate properties. - The header sections are attached to values in the datamodel by defining - the listmodel property they attach to. Each property in the model, will - then be shown in each column section. + The view itself does not provide sorting. This has to + be done on the model itself. However you can provide sorting + on the model and enable sort indicators on headers. - The view itself does not provide sorting. This has to - be done on the model itself. However you can provide sorting - on the model and enable sort indicators on headers. \list -\li sortColumn - The index of the currently selected sort header -\li sortIndicatorVisible - If sort indicators should be enabled -\li sortIndicatorDirection - "up" or "down" depending on state + \li sortColumn - The index of the currently selected sort header + \li sortIndicatorVisible - If sort indicators should be enabled + \li sortIndicatorDirection - "up" or "down" depending on state \endlist */ ScrollArea { id: root + /*! This property holds the model providing data for the list. + + The model provides the set of data that is used to create the items in the view. + Models can be created directly in QML using ListModel, XmlListModel or VisualItemModel, + or provided by C++ model classes. \sa ListView::model + + Example model: + + \code + model: ListModel { + ListElement{ column1: "value 1" ; column2: "value 2" } + ListElement{ column1: "value 3" ; column2: "value 4" } + } + \endcode */ property variant model width: 200 height: 200 + /*! \internal */ __scrollBarTopMargin: styleitem.style == "mac" ? headerrow.height : 0 - // Cosmetic properties + /*! This property sets if the frame should paint the focus frame around its contents. + The default value is \c false. + \Note Only certain platforms such as Mac OS X will be affected by this property */ property bool highlightOnFocus: false + + /*! This property is set to \c true if the view alternates the row color. + The default value is \c true. */ property bool alternateRowColor: true + + /*! This property determines if the header is visible. + The default value is \c true. */ property bool headerVisible: true - // Styling properties + /*! This property defines a delegate to draw a specific cell. + + In the item delegate you have access to the following special properties: + \list + \li itemHeight - default platform size of item + \li itemWidth - default platform width of item + \li itemSelected - if the row is currently selected + \li itemValue - The text for this item + \li itemForeground - The default text color for an item + \endlist + Example: + \code + itemDelegate: Item { + Text { + anchors.verticalCenter: parent.verticalCenter + color: itemForeground + elide: Text.ElideRight + text: itemValue + } + } + \endcode */ property Component itemDelegate: standardDelegate + + /*! This property defines a delegate to draw a row. */ property Component rowDelegate: rowDelegate + + /*! This property defines a delegate to draw a header. */ property Component headerDelegate: headerDelegate - /*! - \qmlproperty color ScrollArea:backgroundColor + /*! \qmlproperty color TableView::backgroundColor This property sets the background color of the viewport. - - The default value is the base color of the SystemPalette. - - */ + The default value is the base color of the SystemPalette. */ property alias backgroundColor: colorRect.color + /*! This property sets if the frame should be visible. + The default value is \c true. */ frame: true - // Sort properties - property int sortColumn // Index of currently selected sort column - property bool sortIndicatorVisible: false // enables or disables sort indicator - property string sortIndicatorDirection: "down" // "up" or "down" depending on current state - - // Item properties + /*! Index of the currently selected sort column + The default value is \c 0. */ + property int sortColumn + + /*! This property shows or hides the sort indicator + \ Note the view itself does not sort the data. + The default value is \c false. */ + property bool sortIndicatorVisible: false + + /*! This sets the sorting direction of the sort indicator + The allowed values are: + \list + \li "up" + \li "down" - the default + \endlist */ + property string sortIndicatorDirection: "down" + + /*! \qmlproperty Component TableView::header + This property contains the TableViewHeader items */ default property alias header: listView.columnheader + + /*! \qmlproperty Component TableView::contentHeader + This is the content header of the TableView */ property alias contentHeader: listView.header + + /*! \qmlproperty Component TableView::contentFooter + This is the content footer of the TableView */ property alias contentFooter: listView.footer + + /*! \qmlproperty Item TableView::currentItem + This is the current item of the TableView */ property alias currentItem: listView.currentItem - // Viewport properties + /*! \qmlproperty int TableView::count + The current number of rows */ property alias count: listView.count - property alias section: listView.section - property alias currentIndex: listView.currentIndex // Should this be currentRowIndex? + /*! \qmlproperty string TableView::section + The section of the view. See \l ListView::section */ + readonly property alias section: listView.section + + /*! \qmlproperty int TableView::currentIndex + The current row index of the view. */ + property alias currentIndex: listView.currentIndex Accessible.role: Accessible.Table - // Signals + /*! \qmlsignal TableView::activated() + Emitted when a new row is selected by the user. */ signal activated - function decrementCurrentIndex() { + /*! \internal */ + function __decrementCurrentIndex() { __scroller.blockUpdates = true; listView.decrementCurrentIndex(); __scroller.blockUpdates = false; } - function incrementCurrentIndex() { + /*! \internal */ + function __incrementCurrentIndex() { __scroller.blockUpdates = true; listView.incrementCurrentIndex(); __scroller.blockUpdates = false; @@ -217,8 +273,8 @@ ScrollArea { } // Handle vertical scrolling whem dragging mouse outside boundraries - Timer { running: mousearea.autoincrement && __scroller.verticalScrollBar.visible; repeat: true; interval: 20 ; onTriggered: incrementCurrentIndex()} - Timer { running: mousearea.autodecrement && __scroller.verticalScrollBar.visible; repeat: true; interval: 20 ; onTriggered: decrementCurrentIndex()} + Timer { running: mousearea.autoincrement && __scroller.verticalScrollBar.visible; repeat: true; interval: 20 ; onTriggered: __incrementCurrentIndex()} + Timer { running: mousearea.autodecrement && __scroller.verticalScrollBar.visible; repeat: true; interval: 20 ; onTriggered: __decrementCurrentIndex()} onPositionChanged: { if (mouseY > listView.height && pressed) { @@ -277,7 +333,7 @@ ScrollArea { } } - property list<TableColumn> columnheader + property list<TableViewColumn> columnheader highlightFollowsCurrentItem: true model: root.model @@ -307,7 +363,7 @@ ScrollArea { id: rowstyle // row delegate sourceComponent: root.rowDelegate - // Row fills the tree width regardless of item size + // Row fills the view width regardless of item size // But scrollbar should not adjust to it width: parent.width + __scroller.horizontalScrollBar.width x: flickableItem.contentX @@ -353,7 +409,7 @@ ScrollArea { property int rowIndex: rowitem.rowIndex property int columnIndex: index property int itemElideMode: header[index].elideMode - property int itemTextAlignment: header[index].textAlignment + property int itemTextAlignment: header[index].horizontalAlignment } } onWidthChanged: listView.contentWidth = width diff --git a/src/qtdesktop/TableColumn.qml b/src/qtdesktop/TableViewColumn.qml similarity index 72% rename from src/qtdesktop/TableColumn.qml rename to src/qtdesktop/TableViewColumn.qml index ef7c01d54..ba83524e9 100644 --- a/src/qtdesktop/TableColumn.qml +++ b/src/qtdesktop/TableViewColumn.qml @@ -41,19 +41,45 @@ import QtQuick 2.0 /*! - \qmltype TableColumn + \qmltype TableViewColumn \inqmlmodule QtDesktop 1.0 - \ingroup tables - \brief TableColumn is doing bla...bla... + \ingroup views + \brief Used by the \l TableView to define a column header. */ QtObject { + /*! The title text of the column. */ property string title + + /*! The model \c role of the column. */ property string role + + /*! The current width of the column + The default value depends on platform. */ property int width: 160 + + /*! The horizontal offset of the column. */ property int x + + /*! The visible status of the column.*/ property bool visible: true + + /*! The text elide mode of the column. + Allowed values are: + \list + \li Text.AlignLeft - the default + \li Text.AligntRight + \li Text.AlignHCenter + \li Text.AlignJustify + \endlist + \sa Text::elide */ property int elideMode: Text.ElideRight - property int textAlignment: Text.AlignLeft + + /*! The text elide mode of the column. + \sa Text::horizontalAlignment: */ + property int horizontalAlignment: Text.AlignLeft + + /*! The delegate of the column. This can be used to set the + \l TableView::itemDelegate for a specific column. */ property Component delegate } diff --git a/src/qtdesktop/doc/images/tableview.png b/src/qtdesktop/doc/images/tableview.png new file mode 100644 index 0000000000000000000000000000000000000000..e7e5e27dc5d606233ddf3255c7ec74f4a32255aa GIT binary patch literal 55512 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 literal 0 HcmV?d00001 diff --git a/src/qtdesktop/qmldir b/src/qtdesktop/qmldir index 72ebb39d6..7d5e4cc76 100644 --- a/src/qtdesktop/qmldir +++ b/src/qtdesktop/qmldir @@ -24,7 +24,7 @@ StatusBar 1.0 StatusBar.qml Tab 1.0 Tab.qml TabFrame 1.0 TabFrame.qml TableView 1.0 TableView.qml -TableColumn 1.0 TableColumn.qml +TableViewColumn 1.0 TableViewColumn.qml TextArea 1.0 TextArea.qml TextField 1.0 TextField.qml ToolBar 1.0 ToolBar.qml diff --git a/src/qtdesktop/qtdesktop.pro b/src/qtdesktop/qtdesktop.pro index 52bdf33dd..bee11d1c0 100644 --- a/src/qtdesktop/qtdesktop.pro +++ b/src/qtdesktop/qtdesktop.pro @@ -30,8 +30,8 @@ QML_FILES = \ StatusBar.qml \ Tab.qml \ TabFrame.qml \ - TableColumn.qml \ TableView.qml \ + TableViewColumn.qml \ TextArea.qml \ TextField.qml \ ToolBar.qml \ diff --git a/tests/auto/qtdesktop/data/tableview/table1_qobjectmodel.qml b/tests/auto/qtdesktop/data/tableview/table1_qobjectmodel.qml index 60d95553d..692e8bc50 100644 --- a/tests/auto/qtdesktop/data/tableview/table1_qobjectmodel.qml +++ b/tests/auto/qtdesktop/data/tableview/table1_qobjectmodel.qml @@ -45,7 +45,7 @@ import QtDesktopTest 1.0 TableView { model: TestObject {} height: 70 - TableColumn { + TableViewColumn { role: "value" width: 100 } diff --git a/tests/auto/qtdesktop/data/tableview/table2_qabstractitemmodel.qml b/tests/auto/qtdesktop/data/tableview/table2_qabstractitemmodel.qml index 4e9efaf64..c67c7fac0 100644 --- a/tests/auto/qtdesktop/data/tableview/table2_qabstractitemmodel.qml +++ b/tests/auto/qtdesktop/data/tableview/table2_qabstractitemmodel.qml @@ -45,7 +45,7 @@ import QtDesktopTest 1.0 TableView { model: TestItemModel {} height: 70 - TableColumn { + TableViewColumn { role: "test" width: 100 } diff --git a/tests/auto/qtdesktop/data/tableview/table3_qobjectlist.qml b/tests/auto/qtdesktop/data/tableview/table3_qobjectlist.qml index 8ffb126f6..f008a72e7 100644 --- a/tests/auto/qtdesktop/data/tableview/table3_qobjectlist.qml +++ b/tests/auto/qtdesktop/data/tableview/table3_qobjectlist.qml @@ -45,7 +45,7 @@ import QtDesktopTest 1.0 TableView { model: model_qobjectlist height: 70 - TableColumn { + TableViewColumn { role: "value" width: 100 } diff --git a/tests/auto/qtdesktop/data/tableview/table4_qstringlist.qml b/tests/auto/qtdesktop/data/tableview/table4_qstringlist.qml index 6733165e6..2f847cf5c 100644 --- a/tests/auto/qtdesktop/data/tableview/table4_qstringlist.qml +++ b/tests/auto/qtdesktop/data/tableview/table4_qstringlist.qml @@ -45,7 +45,7 @@ import QtDesktopTest 1.0 TableView { model: model_qstringlist height: 70 - TableColumn { + TableViewColumn { width: 100 } } diff --git a/tests/auto/qtdesktop/data/tableview/table5_listmodel.qml b/tests/auto/qtdesktop/data/tableview/table5_listmodel.qml index 151fff4f9..0b44b918a 100644 --- a/tests/auto/qtdesktop/data/tableview/table5_listmodel.qml +++ b/tests/auto/qtdesktop/data/tableview/table5_listmodel.qml @@ -49,7 +49,7 @@ TableView { ListElement { value: "C" } } // qml height: 70 - TableColumn { + TableViewColumn { role: "value" width: 100 } diff --git a/tests/auto/qtdesktop/data/tableview/table6_countmodel.qml b/tests/auto/qtdesktop/data/tableview/table6_countmodel.qml index 3df45b479..e07235506 100644 --- a/tests/auto/qtdesktop/data/tableview/table6_countmodel.qml +++ b/tests/auto/qtdesktop/data/tableview/table6_countmodel.qml @@ -44,7 +44,7 @@ import QtDesktop 1.0 TableView { model: 3 // qml height: 70 - TableColumn { + TableViewColumn { width: 100 } } diff --git a/tests/auto/qtdesktop/data/tableview/table7_arraymodel.qml b/tests/auto/qtdesktop/data/tableview/table7_arraymodel.qml index 1c91528ef..53c2a068d 100644 --- a/tests/auto/qtdesktop/data/tableview/table7_arraymodel.qml +++ b/tests/auto/qtdesktop/data/tableview/table7_arraymodel.qml @@ -44,7 +44,7 @@ import QtDesktop 1.0 TableView { model: ["A", "B", "C"] // qml height: 70 - TableColumn { + TableViewColumn { width: 100 } } diff --git a/tests/auto/qtdesktop/data/tableview/table8_itemmodel.qml b/tests/auto/qtdesktop/data/tableview/table8_itemmodel.qml index 0d2316683..621cd5977 100644 --- a/tests/auto/qtdesktop/data/tableview/table8_itemmodel.qml +++ b/tests/auto/qtdesktop/data/tableview/table8_itemmodel.qml @@ -44,7 +44,7 @@ import QtDesktop 1.0 TableView { model: Item { x: 10 }// qml height: 70 - TableColumn { + TableViewColumn { role: "x" width: 100 } diff --git a/tests/auto/qtdesktop/data/tst_tableview.qml b/tests/auto/qtdesktop/data/tst_tableview.qml index fde2c24ef..4d051ad48 100644 --- a/tests/auto/qtdesktop/data/tst_tableview.qml +++ b/tests/auto/qtdesktop/data/tst_tableview.qml @@ -100,7 +100,7 @@ TestCase { table.forceActiveFocus(); // to go to next row (this model has 10 rows) - table.incrementCurrentIndex() + table.__incrementCurrentIndex() // read data from the model directly var valuefrommodel = table.model.dataAt(table.currentIndex) @@ -128,7 +128,7 @@ TestCase { table.forceActiveFocus(); // to go to next row (this model has 3 rows, read the second row) - table.incrementCurrentIndex() + table.__incrementCurrentIndex() verify(table.currentItem !== undefined, "No current item found") var label = findAChild(table.currentItem, "label") diff --git a/tests/manual/scrollbars.qml b/tests/manual/scrollbars.qml index a9028321d..c23ea96c9 100644 --- a/tests/manual/scrollbars.qml +++ b/tests/manual/scrollbars.qml @@ -176,7 +176,7 @@ ApplicationWindow { model: 10 frame: frameCheck.checked - TableColumn {title: "first" + TableViewColumn {title: "first" width: view.viewport.width } } diff --git a/tests/manual/tableviewmodels/qml/main.qml b/tests/manual/tableviewmodels/qml/main.qml index 2c4c359c3..abdedc817 100644 --- a/tests/manual/tableviewmodels/qml/main.qml +++ b/tests/manual/tableviewmodels/qml/main.qml @@ -58,7 +58,7 @@ Rectangle { model: model_listmodel // qml anchors { left: parent.left; right: parent.right } height: 70 - TableColumn { + TableViewColumn { role: "value" width: 100 } @@ -67,7 +67,7 @@ Rectangle { model: 3 // qml anchors { left: parent.left; right: parent.right } height: 70 - TableColumn { + TableViewColumn { width: 100 } } @@ -75,7 +75,7 @@ Rectangle { model: ["A", "B", "C"] // qml anchors { left: parent.left; right: parent.right } height: 70 - TableColumn { + TableViewColumn { width: 100 } } @@ -83,7 +83,7 @@ Rectangle { model: Item { x: 10 } // qml anchors { left: parent.left; right: parent.right } height: 70 - TableColumn { + TableViewColumn { role: "x" width: 100 } @@ -92,7 +92,7 @@ Rectangle { model: model_qobjectlist // c++ anchors { left: parent.left; right: parent.right } height: 70 - TableColumn { + TableViewColumn { role: "value" width: 100 } @@ -101,7 +101,7 @@ Rectangle { model: model_qaim // c++ anchors { left: parent.left; right: parent.right } height: 70 - TableColumn { + TableViewColumn { role: "test" width: 100 } @@ -110,7 +110,7 @@ Rectangle { model: model_qstringlist // c++ anchors { left: parent.left; right: parent.right } height: 70 - TableColumn { + TableViewColumn { width: 100 } } @@ -118,7 +118,7 @@ Rectangle { model: model_qobject // c++ anchors { left: parent.left; right: parent.right } height: 70 - TableColumn { + TableViewColumn { role: "value" width: 100 } -- GitLab