65 lines
1.8 KiB
QML
65 lines
1.8 KiB
QML
import QtQuick 2.6
|
|
import QtQuick.Layouts 1.0
|
|
import QtQuick.Controls 2.1
|
|
import QtQuick.Controls.Material 2.0
|
|
|
|
Item {
|
|
enum IconStyle {
|
|
None,
|
|
Info,
|
|
Warn,
|
|
Error
|
|
}
|
|
|
|
property alias text: infotext.text
|
|
property int iconStyle: InfoTextArea.IconStyle.Info
|
|
property alias textFormat: infotext.textFormat
|
|
|
|
implicitHeight: layout.height
|
|
|
|
ColumnLayout {
|
|
id: layout
|
|
|
|
spacing: 0
|
|
width: parent.width
|
|
|
|
Rectangle {
|
|
height: 2
|
|
Layout.fillWidth: true
|
|
color: Qt.rgba(1,1,1,0.25)
|
|
}
|
|
|
|
TextArea {
|
|
id: infotext
|
|
Layout.fillWidth: true
|
|
Layout.minimumHeight: constants.iconSizeLarge + 2*constants.paddingLarge
|
|
readOnly: true
|
|
rightPadding: constants.paddingLarge
|
|
leftPadding: 2*constants.iconSizeLarge
|
|
wrapMode: TextInput.Wrap
|
|
textFormat: TextEdit.RichText
|
|
background: Rectangle {
|
|
color: Qt.rgba(1,1,1,0.05) // whiten 5%
|
|
}
|
|
|
|
Image {
|
|
source: iconStyle == InfoTextArea.IconStyle.Info ? "../../../icons/info.png" : iconStyle == InfoTextArea.IconStyle.Warn ? "../../../icons/warning.png" : iconStyle == InfoTextArea.IconStyle.Error ? "../../../icons/expired.png" : ""
|
|
anchors.left: parent.left
|
|
anchors.top: parent.top
|
|
anchors.leftMargin: constants.paddingLarge
|
|
anchors.topMargin: constants.paddingLarge
|
|
height: constants.iconSizeLarge
|
|
width: constants.iconSizeLarge
|
|
fillMode: Image.PreserveAspectCrop
|
|
}
|
|
|
|
}
|
|
|
|
Rectangle {
|
|
height: 2
|
|
Layout.fillWidth: true
|
|
color: Qt.rgba(0,0,0,0.25)
|
|
}
|
|
}
|
|
}
|