[Interest] Clean way to define and categorize constants in QML
Viktória Nemkin
viktoria.nemkin at gmail.com
Fri Apr 29 13:04:20 CEST 2016
Hello!
What is a clean way to define and categorize constants in QML?
I have came up with this so far:
I have a QML singleton element, named Theme. There I keep a few constant
things, like different background and font colors.
Theme.qml:
pragma Singleton
import QtQuick 2.0
QtObject {
readonly property color backgroundRed: "#FF2510"
readonly property color backgroundWhite: "#F0F0F0"
readonly property color backgroundPurple: "#930083"
readonly property color fontRed: "#FF1010"
readonly property color fontWhite: "#F6F6F6"
}
When I want to use one of the colors I write:
color: Theme.backgroundRed
I don't like this approach. What I would like to be able to write is this:
color: Theme.background.red
I have tried adding nested QtObjects inside Theme but I could not get it
working.
QtObject {
QtObject {
id: background
readonly property color red: "#FF2510"
readonly property color white: "#F0F0F0"
readonly property color purple: "#930083"
}
QtObject {
id: font
readonly property color red: "#FF1010"
readonly property color white: "#F6F6F6"
}
}
When I run it like this, I get an error: Theme.qml: Cannot assign to
non-existent default property.
Is there a way to accomplish this? Is there any clean way to define and
categorize constants in QML?
Thank you,
Viki
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20160429/1e29fd00/attachment.html>
More information about the Interest
mailing list