Changeset View
Changeset View
Standalone View
Standalone View
examples/gallerydata/contents/ui/gallery/TextFieldGallery.qml
Show All 14 Lines | |||||
15 | * License along with this program; if not, write to the | 15 | * License along with this program; if not, write to the | ||
16 | * Free Software Foundation, Inc., | 16 | * Free Software Foundation, Inc., | ||
17 | * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. | 17 | * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. | ||
18 | */ | 18 | */ | ||
19 | 19 | | |||
20 | import QtQuick 2.0 | 20 | import QtQuick 2.0 | ||
21 | import QtQuick.Controls 2.0 as Controls | 21 | import QtQuick.Controls 2.0 as Controls | ||
22 | import QtQuick.Layouts 1.2 | 22 | import QtQuick.Layouts 1.2 | ||
23 | import org.kde.kirigami 2.2 | 23 | import org.kde.kirigami 2.3 as Kirigami | ||
24 | 24 | | |||
25 | ScrollablePage { | 25 | Kirigami.ScrollablePage { | ||
26 | id: page | 26 | id: page | ||
27 | Layout.fillWidth: true | 27 | Layout.fillWidth: true | ||
28 | implicitWidth: applicationWindow().width | 28 | implicitWidth: applicationWindow().width | ||
29 | title: "Text fields" | 29 | title: "Text fields" | ||
30 | 30 | | |||
31 | ColumnLayout { | 31 | ColumnLayout { | ||
32 | objectName: "pollo" | 32 | Kirigami.FormLayout { | ||
33 | Layout.alignment: Qt.AlignHCenter | ||||
34 | Layout.fillWidth: true | ||||
35 | | ||||
33 | width: page.width | 36 | width: page.width | ||
34 | spacing: Units.smallSpacing | 37 | spacing: Units.smallSpacing | ||
35 | 38 | | |||
36 | Controls.Label { | | |||
37 | text: "Placeholder text:" | | |||
38 | } | | |||
39 | Controls.TextField { | 39 | Controls.TextField { | ||
40 | placeholderText: "Search..." | 40 | placeholderText: "Search..." | ||
41 | Layout.alignment: Qt.AlignHCenter | 41 | Kirigami.FormData.label: "Placeholder text:" | ||
42 | } | | |||
43 | Controls.Label { | | |||
44 | text: "Disabled field:" | | |||
45 | } | 42 | } | ||
46 | Controls.TextField { | 43 | Controls.TextField { | ||
47 | text: "Disabled" | 44 | text: "Disabled" | ||
48 | enabled: false | 45 | enabled: false | ||
49 | Layout.alignment: Qt.AlignHCenter | 46 | Kirigami.FormData.label: "Disabled field:" | ||
50 | } | | |||
51 | Controls.Label { | | |||
52 | text: "Password:" | | |||
53 | } | 47 | } | ||
54 | Controls.TextField { | 48 | Controls.TextField { | ||
55 | echoMode: TextInput.Password | 49 | echoMode: TextInput.Password | ||
56 | Layout.alignment: Qt.AlignHCenter | 50 | Kirigami.FormData.label: "Password:" | ||
57 | } | | |||
58 | Controls.Label { | | |||
59 | text: "Numbers:" | | |||
60 | } | 51 | } | ||
52 | | ||||
61 | Controls.TextField { | 53 | Controls.TextField { | ||
62 | inputMask: "99999999" | 54 | inputMask: "99999999" | ||
63 | inputMethodHints: Qt.ImhDigitsOnly | 55 | inputMethodHints: Qt.ImhDigitsOnly | ||
64 | Layout.alignment: Qt.AlignHCenter | 56 | Kirigami.FormData.label: "Numbers:" | ||
65 | } | 57 | } | ||
58 | } | ||||
59 | | ||||
66 | Controls.Label { | 60 | Controls.Label { | ||
67 | text: "Text area:" | 61 | text: "Text area:" | ||
68 | } | 62 | } | ||
69 | //this to make text selection work on Android | 63 | //this to make text selection work on Android | ||
70 | //QQC2 should do this by itself | 64 | //QQC2 should do this by itself | ||
71 | MouseArea { | 65 | MouseArea { | ||
72 | Layout.fillWidth: true | 66 | Layout.fillWidth: true | ||
73 | drag.filterChildren: Settings.isMobile | 67 | drag.filterChildren: Settings.isMobile | ||
74 | implicitHeight: field.implicitHeight | 68 | implicitHeight: field.implicitHeight | ||
75 | onPressAndHold: { | 69 | onPressAndHold: { | ||
76 | field.forceActiveFocus(); | 70 | field.forceActiveFocus(); | ||
77 | field.cursorPosition = field.positionAt(mouse.x, mouse.y); | 71 | field.cursorPosition = field.positionAt(mouse.x, mouse.y); | ||
78 | field.selectWord(); | 72 | field.selectWord(); | ||
79 | } | 73 | } | ||
80 | Controls.TextArea { | 74 | Controls.TextArea { | ||
81 | id: field | 75 | id: field | ||
82 | anchors.fill: parent | 76 | anchors.fill: parent | ||
83 | text: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent eu nisl ac nibh malesuada pretium ut sit amet libero. Nulla libero arcu, pharetra a dignissim nec, iaculis sit amet metus. Suspendisse quis justo efficitur, pharetra dui maximus, aliquam dolor. Vestibulum vel imperdiet turpis. Mauris ut leo mauris. Praesent ut libero sollicitudin, tincidunt nisi a, efficitur erat. Curabitur lacinia leo et tempor aliquam." | 77 | text: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent eu nisl ac nibh malesuada pretium ut sit amet libero. Nulla libero arcu, pharetra a dignissim nec, iaculis sit amet metus. Suspendisse quis justo efficitur, pharetra dui maximus, aliquam dolor. Vestibulum vel imperdiet turpis. Mauris ut leo mauris. Praesent ut libero sollicitudin, tincidunt nisi a, efficitur erat. Curabitur lacinia leo et tempor aliquam." | ||
84 | Layout.minimumWidth: Units.gridUnit * 12 | 78 | Layout.minimumWidth: Kirigami.Units.gridUnit * 12 | ||
85 | Layout.minimumHeight: Units.gridUnit * 12 | 79 | Layout.minimumHeight: Kirigami.Units.gridUnit * 12 | ||
86 | wrapMode: Controls.TextArea.WordWrap | 80 | wrapMode: Controls.TextArea.WordWrap | ||
87 | } | 81 | } | ||
88 | } | 82 | } | ||
89 | } | 83 | } | ||
90 | } | 84 | } |