Revision control
++ // Copyright (C) 2025 The Qt Company Ltd.
++ // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
++ // Qt-Security score:significant reason:default
++
++ import QtQuick
++ import QtQuick.Controls.impl
++ import QtQuick.Templates as T
++ import Qt.labs.StyleKit
++ import Qt.labs.StyleKit.impl
++
++ T.TextField {
++ id: control
++
++ implicitWidth: implicitBackgroundWidth + leftInset + rightInset
++ || Math.max(contentWidth, placeholder.implicitWidth) + leftPadding + rightPadding
++ implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
++ contentHeight + topPadding + bottomPadding,
++ placeholder.implicitHeight + topPadding + bottomPadding)
++
++ leftPadding: styleReader.leftPadding
++ topPadding: styleReader.topPadding
++ rightPadding: styleReader.rightPadding
++ bottomPadding: styleReader.bottomPadding
++
++ leftInset: styleReader.background.leftMargin
++ topInset: styleReader.background.topMargin
++ rightInset: styleReader.background.rightMargin
++ bottomInset: styleReader.background.bottomMargin
++
++ font: styleReader.font
++
++ color: styleReader.text.color
++ verticalAlignment: styleReader.text.alignment & Qt.AlignVertical_Mask
++ horizontalAlignment: styleReader.text.alignment & Qt.AlignHorizontal_Mask
++
++ selectionColor: control.palette.highlight
++ selectedTextColor: control.palette.highlightedText
++ placeholderTextColor: control.palette.placeholderText
++
++ StyleVariation.controlType: styleReader.controlType
++ StyleReader {
++ id: styleReader
++ controlType: StyleReader.TextField
++ enabled: control.enabled
++ focused: control.activeFocus
++ hovered: control.hovered
++ palette: control.palette
++ }
++
++ PlaceholderText {
++ id: placeholder
++ x: control.leftPadding
++ y: control.topPadding
++ width: control.width - (control.leftPadding + control.rightPadding)
++ height: control.height - (control.topPadding + control.bottomPadding)
++
++ text: control.placeholderText
++ font: control.font
++ color: control.placeholderTextColor
++ verticalAlignment: control.verticalAlignment
++ visible: !control.length && !control.preeditText && (!control.activeFocus || control.horizontalAlignment !== Qt.AlignHCenter)
++ elide: Text.ElideRight
++ renderType: control.renderType
++ }
++
++ background: BackgroundDelegate {
++ quickControl: control
++ backgroundStyle: styleReader.background
++ }
++ }