summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJens Bache-Wiig <jens.bache-wiig@nokia.com>2012-02-04 12:55:16 +0100
committerJens Bache-Wiig <jens.bache-wiig@nokia.com>2012-02-04 12:56:21 +0100
commit8ad6172a99e86f0ee25e61fec787c29f46258fbb (patch)
tree36ee89ca0f8d9f5b36071f23d9f9595cbf4201c9
parentb7d79a6b760ca1c0107409c7a95f9afda1b0e900 (diff)
downloadqtquickcontrols-8ad6172a99e86f0ee25e61fec787c29f46258fbb.tar.gz
Make it possible to use menu models with more than one role
There was a problem with using menu models with multiple roles. I also modified it so that if "text" role is defined, this will be used by default
-rw-r--r--components/ContextMenu.qml17
1 files changed, 9 insertions, 8 deletions
diff --git a/components/ContextMenu.qml b/components/ContextMenu.qml
index 10eced7d..d20b1480 100644
--- a/components/ContextMenu.qml
+++ b/components/ContextMenu.qml
@@ -64,16 +64,17 @@ Menu {
var oneRole = true
var roleName = ""
var roleCount = 0
- for (var i in listElement) {
- roleName = i
+ for (var role in listElement) {
+ if (!roleName || role === "text")
+ roleName = role
++roleCount
- if (roleCount > 1) {
- oneRole = false
- root.enabled = false
- console.log("When multiple roles used, provide textRole for the ComboBox.")
- break
- }
}
+ if (roleCount > 1 && roleName !== "text") {
+ oneRole = false
+ console.log("Warning: No textRole set for ComboBox.")
+ break
+ }
+
if (oneRole) {
root.textRole = roleName
textValue = root.model.get(j)[textRole]