126 lines
2.8 KiB
QML
126 lines
2.8 KiB
QML
import QtQuick
|
|
import QtQuick.Layouts
|
|
import QtQuick.Controls
|
|
import QtQuick.Controls.Fusion
|
|
import QtQuick.Dialogs
|
|
import "../js/qmldict.js" as JsLib
|
|
|
|
ColumnLayout
|
|
{
|
|
property var new_object: null
|
|
Layout.fillWidth: true
|
|
Layout.fillHeight: true
|
|
spacing: 15
|
|
Label
|
|
{
|
|
text: qsTr("Objekt anlegen")
|
|
horizontalAlignment: Text.AlignHCenter
|
|
Layout.fillWidth: true
|
|
font.pixelSize: 35
|
|
}
|
|
CheckBox
|
|
{
|
|
id: checkAddContact
|
|
text: qsTr("Ansprechpartner hinzufügen")
|
|
Layout.alignment: Qt.AlignRight
|
|
checked: false
|
|
onCheckStateChanged:
|
|
{
|
|
checkFields()
|
|
}
|
|
}
|
|
|
|
RowLayout
|
|
{
|
|
id: addObject
|
|
Layout.fillWidth: true
|
|
Layout.fillHeight: true
|
|
spacing: 45
|
|
|
|
Frame
|
|
{
|
|
Layout.alignment: Qt.AlignTop
|
|
Layout.fillWidth: true
|
|
AddNewObject
|
|
{
|
|
id: newObject
|
|
width: parent.width
|
|
}
|
|
}
|
|
|
|
ObjectAddOns
|
|
{
|
|
id: addObjectLayout
|
|
visible: checkAddContact.checked
|
|
}
|
|
}
|
|
RowLayout
|
|
{
|
|
Layout.fillHeight: true
|
|
Layout.alignment: Qt.AlignRight
|
|
Button
|
|
{
|
|
text: qsTr("Abbrechen")
|
|
onClicked: appLoader.source = "ObjectTable.qml"
|
|
}
|
|
Button
|
|
{
|
|
property var new_object: null
|
|
id: saveBtn
|
|
text: qsTr("Speichern")
|
|
enabled: false
|
|
onClicked:
|
|
{
|
|
if (!checkAddContact.checked)
|
|
{
|
|
var list = []
|
|
new_object = JsLib.parseForm(newObject)
|
|
object_model.addObject(new_object, list)
|
|
|
|
|
|
}
|
|
else
|
|
{
|
|
new_object = JsLib.parseForm(newObject)
|
|
var new_objecto = addObjectLayout.getForm()
|
|
object_model.addObject(new_object, new_objecto)
|
|
}
|
|
}
|
|
}
|
|
}
|
|
Item
|
|
{
|
|
id: spacer3
|
|
Layout.fillHeight: true
|
|
}
|
|
|
|
|
|
|
|
// Connections
|
|
// {
|
|
// target: spacer3
|
|
|
|
// function onObjectIdReady()
|
|
// {
|
|
// var obj_id = arguments[0]
|
|
// object_model.addObject(new_object, obj_id)
|
|
// appLoader.source = "ObjectTable.qml"
|
|
// }
|
|
// }
|
|
|
|
function checkFields()
|
|
{
|
|
if(checkAddContact.checked)
|
|
{
|
|
if(!newObject.checkObjectField() || !addObjectLayout.contactPerson.contacts || !addObjectLayout.contactPerson.contacts.length)
|
|
saveBtn.enabled = false
|
|
else
|
|
saveBtn.enabled = true
|
|
}
|
|
else if (!newObject.checkObjectField())
|
|
saveBtn.enabled = false
|
|
else
|
|
saveBtn.enabled = true
|
|
}
|
|
}
|