Skip to content
AtlasOSFramework API
Browse the docs

AtlasTextField

A single-line text field with an error message, a clear button, a prefix and suffix, a character counter and validation messages.

Since 1.3.0

A single-line text field with small rounded corners, 28 px high (24 compact; it grows with large text). placeholderText shows while it is empty. A non-empty errorText turns the outline red, tints the field, puts an error symbol at the trailing edge and shows the message below the field. For a password, use AtlasPasswordField; for several lines, AtlasTextArea.

AtlasTextField is a Qt Quick Controls TextField; text, placeholderText, validator, maximumLength, accepted and the rest work as usual.

Example

AtlasTextField {
    placeholderText: qsTr("Name")
    clearable: true
    errorText: text.length === 0 ? qsTr("A name is required") : ""
}
AtlasTextField {
    maximumLength: 40; showCounter: true
    validator: RegularExpressionValidator { regularExpression: /[a-z]+/ }
    invalidText: qsTr("Use lowercase letters only")
}

Properties

Name Type Default Description
clearable bool false Shows a small cross that empties the field once there is text.
errorText string "" The message under the field; empty for no error. Shows at once and wins over invalidText.
hasError bool (read-only) — true while errorText or invalidText shows.
invalidText string "" The message for a text the validator (or inputMask) does not accept. See below for when it shows. Since 1.4.0.
prefix string "" Fixed, muted text inside the field before what is typed ("$"). Since 1.4.0.
rtl bool (read-only) — Whether the layout is mirrored. A TextField has no mirrored of its own.
showCounter bool false Writes "length/max" under the field at its trailing end. Only when maximumLength is set. Since 1.4.0.
suffix string "" Fixed, muted text inside the field after what is typed ("kg"). Since 1.4.0.
validateOn string "leaving" When invalidText first shows: "leaving" or "typing". Since 1.4.0.

Validation messages

invalidText is not shown while the user types, because the unfinished text of an email or URL validator is not an error yet. With validateOn: "leaving" it appears once the focus has left the field or Return is pressed. With validateOn: "typing" it appears at once. After it has appeared it follows the text live and goes as soon as the text is acceptable. An errorText set by the app shows at once and wins.

The Atlas validators are made for this: AtlasNumberValidator and AtlasPathValidator, plus AtlasUrlValidator and AtlasEmailValidator.

Accessibility

A new error message is announced to screen readers when it appears.