From 9dcd908fb53e65d5dc6e8acc61e883b7b715dc92 Mon Sep 17 00:00:00 2001 From: Jani Korteniemi Date: Sat, 29 Jan 2022 21:59:33 +0200 Subject: Add improvements to object listmodel example Scaled to fit whole screen on android. Replaced items with Qt Module names. Randomized colors. Added scrollbar. Task-number: QTBUG-95438 Pick-to: 6.3 6.2 Change-Id: I1686aff4d4770d0d34399f20301c8fc393b8d778 Reviewed-by: Assam Boudjelthia --- examples/quick/models/objectlistmodel/main.cpp | 30 ++++++++++++++++++++------ examples/quick/models/objectlistmodel/view.qml | 9 +++++--- 2 files changed, 29 insertions(+), 10 deletions(-) (limited to 'examples/quick/models/objectlistmodel') diff --git a/examples/quick/models/objectlistmodel/main.cpp b/examples/quick/models/objectlistmodel/main.cpp index cb8dac0638..5d406f356c 100644 --- a/examples/quick/models/objectlistmodel/main.cpp +++ b/examples/quick/models/objectlistmodel/main.cpp @@ -49,6 +49,7 @@ ****************************************************************************/ #include +#include #include #include @@ -68,12 +69,28 @@ int main(int argc, char ** argv) { QGuiApplication app(argc, argv); - QList dataList = { - new DataObject("Item 1", "red"), - new DataObject("Item 2", "green"), - new DataObject("Item 3", "blue"), - new DataObject("Item 4", "yellow") - }; + const QStringList colorList = {"red", + "green", + "blue", + "yellow"}; + + const QStringList moduleList = {"Core", "GUI", "Multimedia", "Multimedia Widgets", "Network", + "QML", "Quick", "Quick Controls", "Quick Dialogs", + "Quick Layouts", "Quick Test", "SQL", "Widgets", "3D", + "Android Extras", "Bluetooth", "Concurrent", "D-Bus", + "Gamepad", "Graphical Effects", "Help", "Image Formats", + "Location", "Mac Extras", "NFC", "OpenGL", "Platform Headers", + "Positioning", "Print Support", "Purchasing", "Quick Extras", + "Quick Timeline", "Quick Widgets", "Remote Objects", "Script", + "SCXML", "Script Tools", "Sensors", "Serial Bus", + "Serial Port", "Speech", "SVG", "UI Tools", "WebEngine", + "WebSockets", "WebView", "Windows Extras", "XML", + "XML Patterns", "Charts", "Network Authorization", + "Virtual Keyboard", "Quick 3D", "Quick WebGL"}; + + QList dataList; + for (const QString &module : moduleList) + dataList.append(new DataObject("Qt " + module, colorList.at(rand() % colorList.length()))); QQuickView view; view.setResizeMode(QQuickView::SizeRootObjectToView); @@ -85,4 +102,3 @@ int main(int argc, char ** argv) return app.exec(); } - diff --git a/examples/quick/models/objectlistmodel/view.qml b/examples/quick/models/objectlistmodel/view.qml index e8ec6197dc..4adc8ca84f 100644 --- a/examples/quick/models/objectlistmodel/view.qml +++ b/examples/quick/models/objectlistmodel/view.qml @@ -49,18 +49,21 @@ ****************************************************************************/ import QtQuick +import QtQuick.Controls //![0] ListView { - width: 100; height: 100 + id: listview + width: 200; height: 320 required model + ScrollBar.vertical: ScrollBar { } delegate: Rectangle { + width: listview.width; height: 25 + required color required property string name - height: 25 - width: 100 Text { text: parent.name } } } -- cgit v1.2.3