Warning, /maui/nomad-style/TextField.qml is written in an unsupported language. File is not indexed.
0001 /* 0002 * Copyright 2017 Marco Martin <mart@kde.org> 0003 * Copyright 2017 The Qt Company Ltd. 0004 * 0005 * GNU Lesser General Public License Usage 0006 * Alternatively, this file may be used under the terms of the GNU Lesser 0007 * General Public License version 3 as published by the Free Software 0008 * Foundation and appearing in the file LICENSE.LGPLv3 included in the 0009 * packaging of this file. Please review the following information to 0010 * ensure the GNU Lesser General Public License version 3 requirements 0011 * will be met: https://www.gnu.org/licenses/lgpl.html. 0012 * 0013 * GNU General Public License Usage 0014 * Alternatively, this file may be used under the terms of the GNU 0015 * General Public License version 2.0 or later as published by the Free 0016 * Software Foundation and appearing in the file LICENSE.GPL included in 0017 * the packaging of this file. Please review the following information to 0018 * ensure the GNU General Public License version 2.0 requirements will be 0019 * met: http://www.gnu.org/licenses/gpl-2.0.html. 0020 */ 0021 0022 0023 import QtQuick 2.6 0024 import QtQuick.Window 2.1 0025 import QtQuick.Controls 2.3 as Controls 0026 import QtQuick.Templates 2.3 as T 0027 import org.kde.kirigami 2.2 as Kirigami 0028 import org.kde.qqc2desktopstyle.private 1.0 as StylePrivate 0029 0030 T.TextField { 0031 id: controlRoot 0032 Kirigami.Theme.colorSet: Kirigami.Theme.View 0033 Kirigami.Theme.inherit: false 0034 0035 implicitWidth: Math.max(200, 0036 placeholderText ? placeholder.implicitWidth + leftPadding + rightPadding : 0) 0037 || contentWidth + leftPadding + rightPadding 0038 implicitHeight: Math.max(contentHeight + topPadding + bottomPadding, 0039 background ? Kirigami.Units.iconSizes.smallMedium : 0, 0040 placeholder.implicitHeight + topPadding + bottomPadding) 0041 0042 padding: 6 0043 0044 color: controlRoot.enabled ? Kirigami.Theme.textColor : Kirigami.Theme.disabledTextColor 0045 selectionColor: Kirigami.Theme.highlightColor 0046 selectedTextColor: Kirigami.Theme.highlightedTextColor 0047 verticalAlignment: TextInput.AlignVCenter 0048 //Text.NativeRendering is broken on non integer pixel ratios 0049 renderType: Window.devicePixelRatio % 1 !== 0 ? Text.QtRendering : Text.NativeRendering 0050 selectByMouse: true 0051 0052 Controls.Label { 0053 id: placeholder 0054 x: controlRoot.leftPadding 0055 y: controlRoot.topPadding 0056 width: controlRoot.width - (controlRoot.leftPadding + controlRoot.rightPadding) 0057 height: controlRoot.height - (controlRoot.topPadding + controlRoot.bottomPadding) 0058 0059 text: controlRoot.placeholderText 0060 font: controlRoot.font 0061 color: Kirigami.Theme.disabledTextColor 0062 horizontalAlignment: controlRoot.horizontalAlignment 0063 verticalAlignment: controlRoot.verticalAlignment 0064 visible: !controlRoot.length && !controlRoot.preeditText && (!controlRoot.activeFocus || controlRoot.horizontalAlignment !== Qt.AlignHCenter) 0065 elide: Text.ElideRight 0066 } 0067 0068 background: StylePrivate.StyleItem { 0069 id: style 0070 0071 control: controlRoot 0072 elementType: "edit" 0073 0074 sunken: true 0075 hasFocus: controlRoot.activeFocus 0076 hover: controlRoot.hovered 0077 } 0078 }