Files
komplex-hub/KomplexHubModule/Controls/SearchBar.qml
T
2026-06-18 01:10:08 -04:00

71 lines
2.0 KiB
QML

/*
This is a UI file (.ui.qml) that is intended to be edited in Qt Design Studio only.
It is supposed to be strictly declarative and only uses a subset of QML. If you edit
this file manually, you might introduce QML code that is not supported by Qt Design Studio.
Check out https://doc.qt.io/qtcreator/creator-quick-ui-forms.html for details on .ui.qml files.
*/
import QtQuick
import QtQuick.Controls
import QtQuick.Layouts
import KomplexHub
Item {
property string searchTerm: ""
property string icon: ""
property color color: "transparent"
id: searchBarRootItem
clip: true
Rectangle {
color: searchBarRootItem.color
anchors.fill: parent
RowLayout {
id: searchContainerLayout
anchors.fill: parent
LineEdit {
id: searchEdit
Layout.fillHeight: true
Layout.fillWidth: true
Layout.leftMargin: Constants.mediumMargin
Layout.rightMargin: Constants.mediumMargin
Layout.topMargin: Constants.smallMargin
Layout.bottomMargin: Constants.smallMargin
padding.top: 12
font.pixelSize: 12
onAccepted: () => searchBarRootItem.searchTerm = text
}
SquareButton {
id: searchButton
Layout.fillHeight: searchEdit.height
Layout.preferredWidth: searchEdit.height
Layout.rightMargin: Constants.mediumMargin
Layout.topMargin: Constants.mediumMargin
Layout.bottomMargin: Constants.mediumMargin
icon.source: searchBarRootItem.icon
icon.width: 16
icon.height: 16
onTriggered: () => searchBarRootItem.searchTerm = searchEdit.text
}
}
}
states: [
State {
name: "hidden"
PropertyChanges {
target: searchBarRootItem
visible: false
}
}
]
}