977 lines
46 KiB
QML
Executable File
977 lines
46 KiB
QML
Executable File
/*
|
|
* AdvoTracker - Hotline tackingtool for Advocats
|
|
*
|
|
* Copyright (c) 2017 Ralf Zerres <ralf.zerres@networkx.de>
|
|
*
|
|
* AdvoTracker is free software; you can redistribute it and/or modify it
|
|
* under the terms of the GNU Lesser General Public License as published by
|
|
* the Free Software Foundation; either version 2.1 of the License, or
|
|
* (at your option) any later version.
|
|
*
|
|
* AdvoTracker is distributed in the hope that it will be useful, but
|
|
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
* Lesser General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU Lesser General Public License
|
|
* along with AdvoTracker; If not, see <http://www.gnu.org/licenses/>.
|
|
*/
|
|
|
|
import QtQuick 2.10 // Qt 5.10
|
|
import QtQuick.Controls 2.3 // Qt 5.10
|
|
import QtQuick.Layouts 1.3 // Qt 5.10
|
|
import QtQuick.Controls.Material 2.3 // Qt 5.10
|
|
|
|
// AdvoTracker Module
|
|
import de.networkx.AdvoTracker 1.0 as Nwx
|
|
import SortFilterProxyModel 0.2
|
|
|
|
|
|
Pane {
|
|
id: paneNumberHarmAdmin
|
|
Layout.fillWidth:true
|
|
//width: parent.width
|
|
leftPadding: 26
|
|
rightPadding: 26
|
|
topPadding: 18
|
|
bottomPadding: 18
|
|
|
|
ListView {
|
|
id: listNumberHarmData
|
|
anchors.fill: parent
|
|
property string numberHarm
|
|
|
|
//Layout.fillWidth: true
|
|
//Layout.fillHeight: true
|
|
//Layout.margins: 12
|
|
//displayMarginBeginning: 40
|
|
//displayMarginEnd: 40
|
|
|
|
model: SortFilterProxyModel {
|
|
id: filterNumberHarm
|
|
sourceModel: modelNumberHarm
|
|
filters: RegExpFilter {
|
|
// useRole
|
|
roleName: "numberHarm"
|
|
pattern: numberHarm
|
|
//caseSensitivity: Qt.CaseInsensitive
|
|
//caseSensitivity: Qt.Sensitive
|
|
}
|
|
sorters: [ StringSorter { roleName: "numberHarm" } ]
|
|
} // filterNumberHarm
|
|
|
|
|
|
delegate: delegateNumberHarmData
|
|
}
|
|
|
|
Component {
|
|
id: delegateNumberHarmData
|
|
|
|
Pane {
|
|
id: paneNumberHarmData
|
|
//Layout.fillWidth: true
|
|
width: parent.width
|
|
leftPadding: 18
|
|
rightPadding: 18
|
|
topPadding: 18
|
|
bottomPadding: 18
|
|
|
|
property string numberHarm
|
|
|
|
Item {
|
|
id: itemWidth
|
|
property int labelWidth: 140
|
|
property int textFieldWidth: 300
|
|
}
|
|
|
|
GroupBox {
|
|
id: groupBoxBaseData
|
|
title: qsTr("Base data")
|
|
width: parent.width
|
|
Layout.fillWidth: true
|
|
|
|
RowLayout {
|
|
id: rowBoxBaseData
|
|
spacing: 12
|
|
|
|
Pane {
|
|
id: groupBoxKeyData
|
|
//title: qsTr("Key data")
|
|
anchors.fill: parent
|
|
|
|
ColumnLayout {
|
|
id: columnBaseData
|
|
width: parent.width
|
|
anchors.topMargin: 12
|
|
spacing: 16
|
|
|
|
RowLayout {
|
|
id: rowNumberHarm
|
|
//width: parent.width
|
|
Layout.fillWidth: true
|
|
//visible: true
|
|
spacing: 12
|
|
|
|
Nwx.Label {
|
|
id: labelNumberHarm
|
|
Layout.minimumWidth: 100
|
|
Layout.preferredWidth: itemWidth.labelWidth
|
|
text: qsTr("Harm number")
|
|
//"Schadensnummer"
|
|
horizontalAlignment: Qt.AlignHRight
|
|
verticalAlignment: Qt.AlignTop
|
|
}
|
|
Nwx.TextField {
|
|
id: numberHarm
|
|
Layout.preferredWidth: itemWidth.textFieldWidth
|
|
Layout.maximumWidth: itemWidth.textFieldWidth
|
|
placeholderText: qsTr("Harm number")
|
|
text: model.numberHarm
|
|
ToolTip.timeout: 2000
|
|
ToolTip.visible: pressed
|
|
ToolTip.text: qsTr("Harm number must be in line with given mask!")
|
|
//"Die Schadensnummer muss der vorgegebenen Maske entsprechen!"
|
|
background: Rectangle {
|
|
border.color: numberHarm.activeFocus ? "#6f1a32" : "lightgrey"
|
|
radius: 5
|
|
border.width: 2
|
|
}
|
|
} // numberHarm
|
|
|
|
} // rowNumberHarm
|
|
|
|
RowLayout {
|
|
id: rowPolicyOwner
|
|
visible: true
|
|
//Layout.fillWidth: true
|
|
Layout.alignment: Qt.AlignLeft | Qt.AlignTop
|
|
spacing: 12
|
|
|
|
Nwx.Label {
|
|
id: labelPolicyowner
|
|
Layout.minimumWidth: 100
|
|
Layout.preferredWidth: itemWidth.labelWidth
|
|
text: qsTr("Name")
|
|
horizontalAlignment: Qt.AlignHRight
|
|
verticalAlignment: Qt.AlignTop
|
|
}
|
|
Nwx.TextField {
|
|
id: namePolicyowner
|
|
//Layout.preferredWidth: 200
|
|
//Layout.maximumWidth: 400
|
|
Layout.preferredWidth: itemWidth.textFieldWidth
|
|
Layout.maximumWidth: itemWidth.textFieldWidth
|
|
//width: rowPoliciesowner - 100
|
|
//Layout.fillWidth: true
|
|
text: model.namePolicyowner
|
|
//width: 300
|
|
placeholderText: qsTr("Name of the given policies owner")
|
|
background: Rectangle {
|
|
radius: 5
|
|
border.color: namePolicyowner.activeFocus ? "#6f1a32" : "lightgrey"
|
|
border.width: 2
|
|
}
|
|
} // namePolicyowner
|
|
|
|
} // rowPolicyOwner
|
|
|
|
RowLayout {
|
|
id: rowPolicyholder
|
|
Layout.fillWidth: true
|
|
visible: true
|
|
Layout.alignment: Qt.AlignLeft | Qt.AlignTop
|
|
spacing: 12
|
|
|
|
Nwx.Label {
|
|
id: labelPolicyholder
|
|
Layout.minimumWidth: 100
|
|
//Layout.preferredWidth: 140
|
|
Layout.preferredWidth: itemWidth.labelWidth
|
|
text: qsTr("Policy number")
|
|
horizontalAlignment: Qt.AlignHRight
|
|
verticalAlignment: Qt.AlignTop
|
|
}
|
|
|
|
Nwx.TextField {
|
|
id: numberPolicyholder
|
|
//Layout.preferredWidth: 200
|
|
//Layout.maximumWidth: 300
|
|
Layout.preferredWidth: itemWidth.textFieldWidth
|
|
Layout.maximumWidth: itemWidth.textFieldWidth
|
|
//width: rowPolicyholder - 100
|
|
//Layout.fillWidth: true
|
|
//text: qsTr("Nummer der Police")
|
|
text: model.numberPolicyholder
|
|
//width: 300
|
|
placeholderText: qsTr("Number of the given policy")
|
|
inputMask: "0000-00-000-0000"
|
|
background: Rectangle {
|
|
radius: 5
|
|
border.color: numberPolicyholder.activeFocus ? "#6f1a32" : "lightgrey"
|
|
border.width: 2
|
|
}
|
|
} // numberPolicyholder
|
|
} // rowPolicyholder
|
|
|
|
} // columnBaseData
|
|
|
|
} // groupBoxKeyData
|
|
|
|
Pane {
|
|
id: groupBoxSelectionData
|
|
//title: qsTr("Key data")
|
|
implicitWidth: Math.max(switchSecurity.width, comboLawSpec.width) + comboLawSpec.rightPadding + leftPadding
|
|
//anchors.right: parent.right
|
|
//anchors.fill: parent
|
|
//Layout.fillWidth: true
|
|
|
|
ColumnLayout {
|
|
id: columnSelectionData
|
|
//width: parent.width
|
|
anchors.topMargin: 12
|
|
spacing: 4
|
|
|
|
Switch {
|
|
id: switchSecurity
|
|
text: qsTr("Security")
|
|
//Layout.minimumWidth: 150
|
|
//Layout.preferredWidth: 150
|
|
Layout.fillWidth: true
|
|
anchors.right: parent.right
|
|
checked: model.switchSecuritiy ? true : false
|
|
|
|
indicator: Rectangle {
|
|
implicitWidth: 32
|
|
implicitHeight: 20
|
|
//x: switchSecurity.leftPadding
|
|
x: switchSecurity.width - width - switchSecurity.rightPadding
|
|
y: parent.height / 2 - height / 2
|
|
radius: 13
|
|
color: switchSecurity.checked ? "#6f1a32" : "#ffffff"
|
|
border.color: switchSecurity.checked ? "#6f1a32" : "#cccccc"
|
|
|
|
Rectangle {
|
|
x: switchSecurity.checked ? parent.width - width : 0
|
|
width: 20
|
|
height: 20
|
|
radius: 13
|
|
color: switchSecurity.down ? "#6f1a32" : "#ffffff"
|
|
border.color: switchSecurity.checked ? (switchSecurity.down ? "#6f1a32" : "lightgrey") : "#999999"
|
|
}
|
|
}
|
|
|
|
contentItem: Text {
|
|
text: switchSecurity.text
|
|
font: switchSecurity.font
|
|
opacity: enabled ? 1.0 : 0.3
|
|
color: switchSecurity.down ? "#6f1a32" : "black"
|
|
horizontalAlignment: Text.AlignRight
|
|
verticalAlignment: Text.AlignVCenter
|
|
//leftPadding: switchSecurity.indicator.width + switchSecurity.spacing
|
|
rightPadding: switchSecurity.indicator.width + switchSecurity.spacing
|
|
}
|
|
} // switchSecurity
|
|
|
|
Switch {
|
|
id: switchSB
|
|
text: qsTr("SB")
|
|
//Layout.minimumWidth: 150
|
|
//Layout.preferredWidth: 150
|
|
Layout.fillWidth: true
|
|
anchors.right: parent.right
|
|
checked: model.switchSB ? true : false
|
|
|
|
contentItem: Text {
|
|
text: switchSB.text
|
|
font: switchSB.font
|
|
opacity: enabled ? 1.0 : 0.3
|
|
horizontalAlignment: Text.AlignRight
|
|
verticalAlignment: Text.AlignVCenter
|
|
//leftPadding: switchSB.indicator.width + switchSB.spacing
|
|
rightPadding: switchSB.indicator.width + switchSB.spacing
|
|
}
|
|
indicator: Rectangle {
|
|
implicitWidth: 32
|
|
implicitHeight: 20
|
|
//x: switchSB.leftPadding
|
|
x: switchSB.width - width - switchSB.rightPadding
|
|
y: parent.height / 2 - height / 2
|
|
radius: 13
|
|
color: switchSB.checked ? "#6f1a32" : "#ffffff"
|
|
border.color: switchSB.checked ? "#6f1a32" : "#cccccc"
|
|
|
|
Rectangle {
|
|
x: switchSB.checked ? parent.width - width : 0
|
|
width: 20
|
|
height: 20
|
|
radius: 13
|
|
color: switchSB.down ? "#cccccc" : "#ffffff"
|
|
border.color: switchSB.checked ? (switchSB.down ? "#17a81a" : "#6f1a32") : "#999999"
|
|
}
|
|
}
|
|
} // switchSB
|
|
|
|
ComboBox {
|
|
id: comboLawSpec
|
|
//textRole: qsTr("field of law")
|
|
//Layout.fillWidth: true
|
|
Layout.minimumWidth: 100
|
|
Layout.preferredWidth: 180
|
|
anchors.right: parent.right
|
|
rightPadding: 8
|
|
leftPadding: 8
|
|
|
|
model: ["Arbeitsrecht", "Baurecht", "Gesellschaftsrecht", "Verkehrsrecht", "Versicherungsrecht"]
|
|
|
|
delegate: ItemDelegate {
|
|
width: comboLawSpec.width
|
|
contentItem: Text {
|
|
text: modelData
|
|
color: "black"
|
|
font: comboLawSpec.font
|
|
elide: Text.ElideRight
|
|
verticalAlignment: Text.AlignVCenter
|
|
}
|
|
highlighted: comboLawSpec.highlightedIndex === index
|
|
}
|
|
|
|
indicator: Canvas {
|
|
id: canvas
|
|
x: comboLawSpec.width - width - comboLawSpec.rightPadding
|
|
y: comboLawSpec.topPadding + (comboLawSpec.availableHeight - height) / 2
|
|
width: 12
|
|
height: 8
|
|
contextType: "2d"
|
|
|
|
Connections {
|
|
target: comboLawSpec
|
|
onPressedChanged: canvas.requestPaint()
|
|
}
|
|
|
|
onPaint: {
|
|
context.reset();
|
|
context.moveTo(0, 0);
|
|
context.lineTo(width, 0);
|
|
context.lineTo(width / 2, height);
|
|
context.closePath();
|
|
context.fillStyle = comboLawSpec.pressed ? "#6f1a32" : "grey";
|
|
context.fill();
|
|
}
|
|
}
|
|
|
|
contentItem: Text {
|
|
leftPadding: 0
|
|
rightPadding: comboLawSpec.indicator.width + comboLawSpec.spacing
|
|
|
|
text: comboLawSpec.displayText
|
|
font: comboLawSpec.font
|
|
color: comboLawSpec.pressed ? "#6f1a32" : "black"
|
|
horizontalAlignment: Text.AlignLeft
|
|
verticalAlignment: Text.AlignVCenter
|
|
elide: Text.ElideRight
|
|
}
|
|
|
|
background: Rectangle {
|
|
implicitWidth: 120
|
|
implicitHeight: 40
|
|
border.color: comboLawSpec.pressed ? "#6f1a32" : "lightgrey"
|
|
radius: 5
|
|
border.width: 1
|
|
}
|
|
|
|
popup: Popup {
|
|
y: comboLawSpec.height - 1
|
|
width: comboLawSpec.width
|
|
font.pixelSize: 8
|
|
implicitHeight: contentItem.implicitHeight
|
|
padding: 5
|
|
|
|
contentItem: ListView {
|
|
clip: true
|
|
implicitHeight: contentHeight
|
|
model: comboLawSpec.popup.visible ? comboLawSpec.delegateModel : null
|
|
currentIndex: comboLawSpec.highlightedIndex
|
|
|
|
ScrollIndicator.vertical: ScrollIndicator { }
|
|
}
|
|
|
|
background: Rectangle {
|
|
border.color: "lightgrey"
|
|
radius: 5
|
|
}
|
|
}
|
|
|
|
} // comboLawSpec
|
|
|
|
} // groupBoxSelectionData
|
|
|
|
} // groupBoxSelectonData
|
|
|
|
} // gridBoxBaseData
|
|
|
|
} // groupBoxBaseData
|
|
|
|
GroupBox {
|
|
id: groupBoxHarmData
|
|
title: qsTr("Data facts")
|
|
anchors.top: groupBoxBaseData.bottom
|
|
anchors.topMargin: 18
|
|
width: parent.width
|
|
Layout.fillWidth: true
|
|
|
|
ColumnLayout {
|
|
id: columnHarmData
|
|
width: parent.width
|
|
anchors.topMargin: 12
|
|
Layout.fillWidth: true
|
|
spacing: 16
|
|
|
|
RowLayout {
|
|
id: rowNumberHarmReport
|
|
//width: pane.availableWidth - 2 * rowNumberHarmReport.spacing
|
|
//width: pane.availableWidth - rowNumberHarmReport.spacing
|
|
//width: 450
|
|
//height: rowNumberHarmReport.implicitHeight
|
|
Layout.fillWidth: true
|
|
Layout.alignment: Qt.AlignLeft | Qt.AlignTop
|
|
visible: true
|
|
spacing: 12
|
|
|
|
Nwx.Label {
|
|
id: labelNumberHarmReport
|
|
Layout.minimumWidth: 100
|
|
//Layout.preferredWidth: 140
|
|
Layout.preferredWidth: itemWidth.labelWidth
|
|
text: qsTr("Harm report")
|
|
Layout.alignment: Qt.AlignLeft | Qt.AlignTop
|
|
horizontalAlignment: Qt.AlignHRight
|
|
verticalAlignment: Qt.AlignTop
|
|
anchors.top: parent.top
|
|
anchors.topMargin: 16
|
|
} // Label
|
|
|
|
Flickable {
|
|
id: flickableNumberHarmReport
|
|
//clip: true
|
|
flickableDirection: Flickable.VerticalFlick
|
|
|
|
Layout.fillWidth: true
|
|
height: 120
|
|
//anchors.centerIn: parent
|
|
//anchors.fill: parent
|
|
|
|
//focus: true
|
|
Keys.onUpPressed: scrollBarNumberHarmReport.decrease()
|
|
Keys.onDownPressed: scrollBarNumberHarmReport.increase()
|
|
|
|
// place a TextArea inside the flickable
|
|
TextArea.flickable: TextArea {
|
|
id: numberHarmReport
|
|
textMargin: 8
|
|
//textFormat: TextEdit.RichText
|
|
//width: pane.availableWidth - 2 * rowNumberHarmReport.spacing - labelNumberHarmReport.width
|
|
//text: qsTr("Initial Text 1st line\n2nd line\n\n\Last line.")
|
|
text: model.harmReport
|
|
Layout.fillWidth: true
|
|
Layout.alignment: Qt.AlignLeft | Qt.AlignTop
|
|
//Layout.preferredWidth: rowNumberHarmReport.availableWidth - 2 * rowNumberHarmReport.spacing - labelNumberHarmReport.width
|
|
//width: rowPolicyholder - 100
|
|
//Layout.preferredWidth: rowNumberHarmReport - 100
|
|
Layout.preferredWidth: 300
|
|
Layout.maximumHeight: 400
|
|
renderType: TextArea.NativeRendering
|
|
wrapMode: TextArea.WordWrap
|
|
background: Rectangle {
|
|
border.color: numberHarmReport.activeFocus ? "#6f1a32" : "lightgrey"
|
|
radius: 5
|
|
border.width: 2
|
|
//implicitWidth: 100
|
|
//implicitHeight: 24
|
|
} // TextArea
|
|
ToolTip {
|
|
id: toolTipNumberHarmReport
|
|
text: qsTr("Please record all infomation and curcumstances that are relevant to the harm.")
|
|
//visible: true
|
|
delay: 1500
|
|
timeout: 5000
|
|
visible: numberHarmReport.hovered
|
|
|
|
contentItem: Text {
|
|
text: toolTipNumberHarmReport.text
|
|
font: toolTipNumberHarmReport.font
|
|
color: "#6f1a32"
|
|
}
|
|
|
|
background: Rectangle {
|
|
border.color: "lightgrey"
|
|
}
|
|
}
|
|
} // numberHarmReport
|
|
|
|
ScrollIndicator.vertical: ScrollIndicator {
|
|
id: scrollIndicatorNumberHarmReport
|
|
padding: 5
|
|
leftPadding: 5
|
|
topPadding: 5
|
|
}
|
|
|
|
ScrollBar.vertical: ScrollBar {
|
|
id: scrollBarNumberHarmReport
|
|
policy: ScrollBar.AsNeeded
|
|
//interactive: true
|
|
active: hovered || pressed
|
|
//parent: numberHarmReport
|
|
//anchors.right: parent.right
|
|
//policy: ScrollBar.AlwaysOn
|
|
//x: scrollViewNumberHarmReport.mirrored ? 0 : scrollViewNumberHarmReport.width - width
|
|
//y: scrollViewNumberHarmReport.topPadding
|
|
//height: scrollViewNumberHarmReport.availableHeight
|
|
//active: scrollViewNumberHarmReport.ScrollBar.vertical.active
|
|
background: Rectangle {
|
|
radius: 5
|
|
//implicitWidth: 100
|
|
//implicitHeight: 24
|
|
border.color: "grey"
|
|
color: "lightgrey"
|
|
border.width: 2
|
|
}
|
|
} //scrollBarNumberHarmReport
|
|
|
|
// Only show the scrollbars when the flickableNumberHarmReport is moving.
|
|
states: State {
|
|
name: "ShowBars"
|
|
when: flickableNumberHarmReport.movingVertically
|
|
// PropertyChanges { target: verticalScrollBar; opacity: 1 }
|
|
}
|
|
|
|
transitions: Transition {
|
|
NumberAnimation { properties: "opacity"; duration: 400 }
|
|
}
|
|
|
|
//height: pane.availableHeight * 3 / 2
|
|
//width: Math.max(pane.availableWidth - labelNumberHarmReport.width - rowNumberHarmReport.spacing, Math.min(implicitWidth))
|
|
//width: Math.max(pane.availableWidth * 8 / 10, Math.min(pane.availableWidth - rowNumberHarmReport.spacing - labelNumberHarmReport.Width))
|
|
//width: implicitwidth
|
|
} // flickable
|
|
} // rowNumberHarmReport
|
|
|
|
RowLayout {
|
|
id: rowRightsCouncil
|
|
//width: pane.availableWidth - 2 * rowNumberHarmReport.spacing
|
|
//width: pane.availableWidth - rowNumberHarmReport.spacing
|
|
//width: 450
|
|
//height: rowNumberHarmReport.implicitHeight
|
|
Layout.fillWidth: true
|
|
Layout.alignment: Qt.AlignLeft | Qt.AlignTop
|
|
visible: true
|
|
spacing: 12
|
|
|
|
Nwx.Label {
|
|
id: labelRightsCouncil
|
|
Layout.minimumWidth: 100
|
|
//Layout.preferredWidth: 140
|
|
Layout.preferredWidth: itemWidth.labelWidth
|
|
text: qsTr("Rights Council")
|
|
Layout.alignment: Qt.AlignLeft | Qt.AlignTop
|
|
horizontalAlignment: Qt.AlignHRight
|
|
verticalAlignment: Qt.AlignTop
|
|
anchors.top: parent.top
|
|
anchors.topMargin: 16
|
|
} // labelRightsCouncil
|
|
|
|
Flickable {
|
|
id: flickableRightsCouncil
|
|
//clip: true
|
|
flickableDirection: Flickable.VerticalFlick
|
|
|
|
Layout.fillWidth: true
|
|
height: 120
|
|
//anchors.centerIn: parent
|
|
//anchors.fill: parent
|
|
|
|
//focus: true
|
|
Keys.onUpPressed: scrollBarRightsCouncil.decrease()
|
|
Keys.onDownPressed: scrollBarRightsCouncil.increase()
|
|
|
|
// place a TextArea inside the flickable
|
|
TextArea.flickable: TextArea {
|
|
id: rightsCouncil
|
|
textMargin: 8
|
|
//textFormat: TextEdit.RichText
|
|
//text: qsTr("Initial Text 1st line\n2nd line\n\n\Last line.")
|
|
text: model.rightsCouncil
|
|
Layout.fillWidth: true
|
|
Layout.alignment: Qt.AlignLeft | Qt.AlignTop
|
|
//Layout.preferredWidth: rowRightsCouncil.availableWidth - 2 * rowRightsCouncil.spacing - labelRightsCouncil.width
|
|
//width: rowPolicyholder - 100
|
|
//Layout.preferredWidth: rowRightsCouncil - 100
|
|
Layout.preferredHeight: 250
|
|
Layout.maximumHeight: 400
|
|
renderType: TextArea.NativeRendering
|
|
wrapMode: TextArea.WordWrap
|
|
|
|
background: Rectangle {
|
|
border.color: rightsCouncil.activeFocus ? "#6f1a32" : "lightgrey"
|
|
radius: 5
|
|
border.width: 2
|
|
//implicitWidth: 100
|
|
//implicitHeight: 24
|
|
}
|
|
|
|
ToolTip {
|
|
id: toolTipRightsCouncil
|
|
text: qsTr("Please record the given rights council.")
|
|
//visible: true
|
|
delay: 1500
|
|
timeout: 5000
|
|
visible: rightsCouncil.hovered
|
|
|
|
contentItem: Text {
|
|
text: toolTipRightsCouncil.text
|
|
font: toolTipRightsCouncil.font
|
|
color: "#6f1a32"
|
|
}
|
|
|
|
background: Rectangle {
|
|
border.color: "lightgrey"
|
|
}
|
|
} // toolTipRightsCouncil
|
|
} // rightsCouncil
|
|
|
|
ScrollIndicator.vertical: ScrollIndicator {
|
|
id: scrollIndicatorRightsCouncil
|
|
padding: 5
|
|
leftPadding: 5
|
|
topPadding: 5
|
|
}
|
|
|
|
ScrollBar.vertical: ScrollBar {
|
|
id: scrollBarRightsCouncil
|
|
policy: ScrollBar.AsNeeded
|
|
//interactive: true
|
|
active: hovered || pressed
|
|
//parent: numberHarmReport
|
|
//anchors.right: parent.right
|
|
//policy: ScrollBar.AlwaysOn
|
|
//x: scrollViewRightsCouncil.mirrored ? 0 : scrollViewRightsCouncil.width - width
|
|
//y: scrollViewRightsCouncil.topPadding
|
|
//height: scrollViewRightsCouncil.availableHeight
|
|
//active: scrollViewRightsCouncil.ScrollBar.vertical.active
|
|
background: Rectangle {
|
|
radius: 5
|
|
//implicitWidth: 100
|
|
//implicitHeight: 24
|
|
border.color: "grey"
|
|
color: "lightgrey"
|
|
border.width: 2
|
|
}
|
|
} // scrollBarRightsCouncil
|
|
|
|
// Only show the scrollbars when the flickableRightsCouncil is moving.
|
|
states: State {
|
|
name: "ShowBars"
|
|
when: flickableRightsCouncil.movingVertically
|
|
// PropertyChanges { target: verticalScrollBar; opacity: 1 }
|
|
}
|
|
|
|
transitions: Transition {
|
|
NumberAnimation { properties: "opacity"; duration: 400 }
|
|
}
|
|
|
|
//height: pane.availableHeight * 3 / 2
|
|
//width: Math.max(pane.availableWidth - labelRightsCouncil.width - rowRightsCouncil.spacing, Math.min(implicitWidth))
|
|
//width: Math.max(pane.availableWidth * 8 / 10, Math.min(pane.availableWidth - rowRightsCouncil.spacing - labelRightsCouncil.Width))
|
|
//width: implicitwidth
|
|
} // flickable
|
|
} // rowRightsCouncil
|
|
} // columHarmData
|
|
} // groupBoxHarmData
|
|
|
|
GroupBox {
|
|
id: groupBoxMgmtData
|
|
title: qsTr("Management data")
|
|
anchors.top: groupBoxHarmData.bottom
|
|
width: parent.width
|
|
anchors.topMargin: 18
|
|
Layout.fillWidth: true
|
|
|
|
ColumnLayout {
|
|
id: columnAdminData
|
|
width: parent.width
|
|
anchors.topMargin: 12
|
|
spacing: 16
|
|
|
|
GroupBox {
|
|
id: groupBoxDone
|
|
Layout.fillWidth: true
|
|
|
|
RowLayout {
|
|
id: rowDone
|
|
Layout.fillWidth: true
|
|
//Layout.preferredWidth: 450
|
|
|
|
ButtonGroup {
|
|
id: buttonGroupCME
|
|
//buttons: rowRadioCME
|
|
}
|
|
RowLayout {
|
|
id: rowRadioCME
|
|
spacing: 12
|
|
Nwx.Label {
|
|
id: labelDone
|
|
Layout.minimumWidth: 100
|
|
Layout.preferredWidth: 120
|
|
text: qsTr("Done")
|
|
//horizontalAlignment: Qt.AlignHLeft
|
|
//verticalAlignment: Qt.AlignVCenter
|
|
}
|
|
RadioButton {
|
|
id: buttonDoneYes
|
|
ButtonGroup.group: buttonGroupCME
|
|
text: qsTr("Yes")
|
|
checked: model.switchDone ? true : false
|
|
//signal qmlSignal(string msg)
|
|
onClicked: advoTrackerClass.buttonDoneYes(text)
|
|
//onClicked: qmSignal(text)
|
|
}
|
|
RadioButton {
|
|
id: buttonDoneNo
|
|
ButtonGroup.group: buttonGroupCME
|
|
text: qsTr("No")
|
|
}
|
|
RadioButton {
|
|
id: buttonDoneCME
|
|
ButtonGroup.group: buttonGroupCME
|
|
text: qsTr("CME")
|
|
checked: model.switchCME ? true : false
|
|
//signal qmlSignal(string msg)
|
|
//onClicked: qmlSignal(text)
|
|
onClicked: {
|
|
advoTrackerClass.buttonDoneCME(text)
|
|
doneCME: true
|
|
}
|
|
} // buttonCME
|
|
|
|
Nwx.TextField {
|
|
id: phoneCME
|
|
opacity: buttonDoneCME ? 1.0 : 0
|
|
Layout.preferredWidth: 250
|
|
Layout.maximumWidth: 300
|
|
//Layout.preferredWidth: itemWidth.textFieldWidth
|
|
//Layout.maximumWidth: itemWidth.textFieldWidth
|
|
placeholderText: qsTr("Phone number policieowner")
|
|
background: Rectangle {
|
|
radius: 5
|
|
border.color: buttonDoneCME.activeFocus ? "#6f1a32" : "lightgrey"
|
|
border.width: 2
|
|
}
|
|
} // phoneCME
|
|
} // rowRodioCME
|
|
/*
|
|
ButtonGroup {
|
|
id: buttonGroup
|
|
}
|
|
|
|
ListView {
|
|
model: [qsTr("Yes"), qsTr("No"), qsTr("CME")]
|
|
orientation: ListView.Horizontal
|
|
Layout.preferredWidth: 200
|
|
delegate: RadioDelegate {
|
|
text: modelData
|
|
anchors.top: groupBoxDone.top
|
|
//checked: index == 0
|
|
//ButtonGroup.group: buttonGroup
|
|
}
|
|
}*/
|
|
} // rowDone
|
|
} // GroupBoxDone
|
|
|
|
GroupBox {
|
|
id: groupBoxCME
|
|
Layout.fillWidth: true
|
|
RowLayout {
|
|
id: rowCME
|
|
Layout.fillWidth: true
|
|
Layout.alignment: Qt.AlignLeft | Qt.AlignTop
|
|
Nwx.Label {
|
|
id: labelCME
|
|
Layout.minimumWidth: 100
|
|
Layout.preferredWidth: 120
|
|
text: qsTr("CME submitted")
|
|
horizontalAlignment: Qt.AlignHLeft
|
|
verticalAlignment: Qt.AlignTop
|
|
}
|
|
|
|
Row {
|
|
RadioButton { text: qsTr("Yes") }
|
|
RadioButton { text: qsTr("No") }
|
|
}
|
|
} // rowCME
|
|
} // groupBoxCME
|
|
|
|
RowLayout {
|
|
id: rowComboDone
|
|
Layout.fillWidth: true
|
|
Layout.alignment: Qt.AlignLeft | Qt.AlignTop
|
|
spacing: 12
|
|
|
|
Nwx.Label {
|
|
id: labelcomboDone
|
|
Layout.minimumWidth: 100
|
|
Layout.preferredWidth: 120
|
|
text: qsTr("CME")
|
|
horizontalAlignment: Qt.AlignHRight
|
|
verticalAlignment: Qt.AlignTop
|
|
}
|
|
|
|
ComboBox {
|
|
id: comboDone
|
|
//textRole: qsTr("done")
|
|
Layout.minimumWidth: 100
|
|
Layout.preferredWidth: 180
|
|
rightPadding: 8
|
|
leftPadding: 8
|
|
model: [qsTr("Yes"), qsTr("No"), qsTr("CME")]
|
|
|
|
delegate: ItemDelegate {
|
|
width: comboDone.width
|
|
contentItem: Text {
|
|
text: modelData
|
|
color: "black"
|
|
elide: Text.ElideRight
|
|
verticalAlignment: Text.AlignVCenter
|
|
}
|
|
highlighted: comboDone.highlightedIndex === index
|
|
}
|
|
|
|
indicator: Canvas {
|
|
id: canvasComboDone
|
|
x: comboDone.width - width - comboDone.rightPadding
|
|
y: comboDone.topPadding + (comboDone.availableHeight - height) / 2
|
|
width: 12
|
|
height: 8
|
|
contextType: "2d"
|
|
|
|
Connections {
|
|
target: comboDone
|
|
onPressedChanged: canvas.requestPaint()
|
|
}
|
|
|
|
onPaint: {
|
|
context.reset();
|
|
context.moveTo(0, 0);
|
|
context.lineTo(width, 0);
|
|
context.lineTo(width / 2, height);
|
|
context.closePath();
|
|
context.fillStyle = comboDone.pressed ? "#6f1a32" : "grey";
|
|
context.fill();
|
|
}
|
|
}
|
|
|
|
contentItem: Text {
|
|
leftPadding: 0
|
|
rightPadding: comboDone.indicator.width + comboDone.spacing
|
|
|
|
text: comboDone.displayText
|
|
//font: lawSpec.font
|
|
color: comboDone.pressed ? "#6f1a32" : "black"
|
|
horizontalAlignment: Text.AlignLeft
|
|
verticalAlignment: Text.AlignVCenter
|
|
elide: Text.ElideRight
|
|
}
|
|
|
|
background: Rectangle {
|
|
implicitWidth: 120
|
|
implicitHeight: 40
|
|
border.color: comboDone.pressed ? "#6f1a32" : "lightgrey"
|
|
radius: 5
|
|
border.width: 1
|
|
}
|
|
|
|
popup: Popup {
|
|
y: comboDone.height - 1
|
|
width: comboDone.width
|
|
//font.pixelSize: 8
|
|
implicitHeight: contentItem.implicitHeight
|
|
padding: 5
|
|
|
|
contentItem: ListView {
|
|
clip: true
|
|
implicitHeight: contentHeight
|
|
model: comboDone.popup.visible ? comboDone.delegateModel : null
|
|
currentIndex: comboDone.highlightedIndex
|
|
|
|
ScrollIndicator.vertical: ScrollIndicator { }
|
|
}
|
|
|
|
background: Rectangle {
|
|
border.color: "lightgrey"
|
|
radius: 5
|
|
}
|
|
}
|
|
} // comboDone
|
|
} // rowDone
|
|
|
|
RowLayout {
|
|
id: rowOpitons
|
|
|
|
CheckBox {
|
|
id: checkBoxCME
|
|
text: qsTr("Central mandate editing")
|
|
checked: model.switchCME ? true : false
|
|
//mirrored: true
|
|
}
|
|
|
|
CheckBox {
|
|
text: qsTr("Surcharge")
|
|
//mirrored: true
|
|
checked: model.switchSurcharge ? true : false
|
|
}
|
|
}
|
|
/*
|
|
CheckBox {
|
|
id: control
|
|
text: qsTr("CheckBox")
|
|
checked: false
|
|
|
|
indicator: Rectangle {
|
|
implicitWidth: 26
|
|
implicitHeight: 26
|
|
x: control.width - width - control.rightPadding
|
|
//x: control.leftPadding
|
|
y: parent.height / 2 - height / 2
|
|
radius: 3
|
|
border.color: control.down ? "#6f1a32" : "black"
|
|
|
|
Rectangle {
|
|
width: 14
|
|
height: 14
|
|
x: 6
|
|
y: 6
|
|
radius: 2
|
|
color: control.down ? "#6f1a32" : "#6f1a32"
|
|
visible: control.checked
|
|
}
|
|
}
|
|
|
|
contentItem: Text {
|
|
text: control.text
|
|
font: control.font
|
|
opacity: enabled ? 1.0 : 0.3
|
|
color: control.down ? "#6f1a32" : "black"
|
|
horizontalAlignment: Text.AlignHCenter
|
|
verticalAlignment: Text.AlignVCenter
|
|
//leftPadding: control.indicator.width + control.spacing
|
|
rightPadding: control.indicator.width + control.spacing
|
|
ToolTip.text: qsTr("Tooltip text.")
|
|
}
|
|
}*/
|
|
} //columnAdminData
|
|
} // groupBoxMgmtData
|
|
|
|
} // paneNumberHarmData
|
|
|
|
} // listNumberHarmData
|
|
|
|
} // paneNumberHarmAdmin
|