Inline button/icon for input boxes

This commit is contained in:
Sander Ferdinand 2017-11-23 19:29:25 +01:00 committed by moneromooo-monero
parent 63132dc1db
commit 36ac2ee86d
3 changed files with 26 additions and 5 deletions

View file

@ -47,7 +47,9 @@ Item {
anchors.rightMargin: 8 anchors.rightMargin: 8
anchors.topMargin: 8 anchors.topMargin: 8
function onClicked(){} function onClicked(){
console.log("debug click");
}
function doClick() { function doClick() {
// Android workaround // Android workaround

View file

@ -39,8 +39,5 @@ TextField {
background: Rectangle { background: Rectangle {
color: "transparent" color: "transparent"
border.width: 1
border.color: Qt.rgba(1, 1, 1, 0.25)
radius: 4
} }
} }

View file

@ -38,6 +38,7 @@ Item {
property alias cursorPosition: input.cursorPosition property alias cursorPosition: input.cursorPosition
property alias echoMode: input.echoMode property alias echoMode: input.echoMode
property alias inlineButtonText: inlineButtonId.text property alias inlineButtonText: inlineButtonId.text
property alias inlineIcon: inlineIcon.visible
property int fontSize: 18 * scaleRatio property int fontSize: 18 * scaleRatio
property bool showBorder: true property bool showBorder: true
property bool error: false property bool error: false
@ -78,7 +79,7 @@ Item {
id: placeholderLabel id: placeholderLabel
anchors.verticalCenter: parent.verticalCenter anchors.verticalCenter: parent.verticalCenter
anchors.left: parent.left anchors.left: parent.left
anchors.leftMargin: 10 anchors.leftMargin: inlineIcon.visible ? 50 : 10
opacity: 0.25 opacity: 0.25
font.family: Style.fontRegular.name font.family: Style.fontRegular.name
font.pixelSize: 20 * scaleRatio font.pixelSize: 20 * scaleRatio
@ -95,9 +96,30 @@ Item {
//radius: 4 //radius: 4
} }
Rectangle {
color: "transparent"
border.width: 1
border.color: Qt.rgba(1, 1, 1, 0.25)
radius: 4
anchors.fill: parent
}
Image {
id: inlineIcon
width: 28 * scaleRatio
height: 28 * scaleRatio
anchors.top: parent.top
anchors.topMargin: 10 * scaleRatio
anchors.left: parent.left
anchors.leftMargin: 12 * scaleRatio
source: "../images/moneroIcon-28x28.png"
visible: false
}
Input { Input {
id: input id: input
anchors.fill: parent anchors.fill: parent
anchors.leftMargin: inlineIcon.visible ? 38 : 0
font.pixelSize: parent.fontSize font.pixelSize: parent.fontSize
onEditingFinished: item.editingFinished() onEditingFinished: item.editingFinished()
onAccepted: item.accepted(); onAccepted: item.accepted();