1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101
|
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
import QtQuick
Rectangle {
id: root
width: 320
height: 480
color: "lightgray"
component LocaleDelegate: Text {
required property var modelData
required property int index
property string locale: modelData
height: 30
width: view.width
text: `${Qt.locale(modelData).name} (${Qt.locale(modelData).nativeCountryName}/${Qt.locale(modelData).nativeLanguageName})`
MouseArea {
anchors.fill: parent
onClicked: view.currentIndex = parent.index
}
}
property string locale: (view.currentItem as LocaleDelegate).locale
Text {
id: title
text: "Select locale:"
}
Rectangle {
id: chooser
anchors.top: title.bottom
anchors.topMargin: 5
width: parent.width-10
x: 5
height: parent.height/2 - 10
color: "#40300030"
ListView {
id: view
clip: true
focus: true
anchors.fill: parent
model: [
"en_US",
"en_GB",
"fi_FI",
"de_DE",
"ar_SA",
"hi_IN",
"zh_CN",
"th_TH",
"fr_FR",
"nb_NO",
"sv_SE"
]
delegate: LocaleDelegate {}
highlight: Rectangle {
height: 30
color: "#60300030"
}
}
}
Rectangle {
color: "white"
anchors.top: chooser.bottom
anchors.topMargin: 5
anchors.bottom: parent.bottom
anchors.bottomMargin: 5
x: 5; width: parent.width - 10
Column {
anchors.fill: parent
spacing: 5
Text {
property var date: new Date()
text: "Date: " + date.toLocaleDateString(Qt.locale(root.locale))
}
Text {
property var date: new Date()
text: "Time: " + date.toLocaleTimeString(Qt.locale(root.locale))
}
Text {
property var dow: Qt.locale(root.locale).firstDayOfWeek
text: "First day of week: " + Qt.locale(root.locale).standaloneDayName(dow)
}
Text {
property var num: 10023823
text: "Number: " + num.toLocaleString(Qt.locale(root.locale))
}
Text {
property var num: 10023823
text: "Currency: " + num.toLocaleCurrencyString(Qt.locale(root.locale))
}
}
}
}
|