Fixed QML_ELEMENT macro, preset steps model preperations

This commit is contained in:
2023-03-04 19:13:23 +01:00
parent c4b910d073
commit 4720c05cb1
27 changed files with 390 additions and 398 deletions

View File

@@ -12,22 +12,21 @@ ColumnLayout {
text: qsTr("Presets Settings")
}
RowLayout {
//Layout.fillWidth: true
Layout.fillWidth: true
Layout.fillHeight: true
EditableListView {
id: listView
id: presetsListView
Layout.preferredWidth: 300
Layout.maximumWidth: 300
Layout.fillWidth: true
Layout.fillHeight: true
model: PresetsModel {
id: model
id: presetsModel
controller: __controller
}
onAddClicked: (index) => { const newIndex = index < 0 ? 0 : index + 1; if (model.insertRow(newIndex)) currentIndex = newIndex; else console.warn('failed'); }
onAddClicked: (index) => { const newIndex = index < 0 ? 0 : index + 1; if (presetsModel.insertRow(newIndex)) currentIndex = newIndex; else console.warn('failed'); }
onRemoveClicked: (index) => {
const dialog = dialogComponent.createObject(Overlay.overlay);
dialog.index = index;
@@ -45,7 +44,7 @@ ColumnLayout {
modal: true
title: qsTr('Confirmation')
onAccepted: model.removeRow(index)
onAccepted: presetsModel.removeRow(index)
Label {
id: textContainer
@@ -62,51 +61,23 @@ ColumnLayout {
}
ColumnLayout {
enabled: listView.currentIndex !== -1
Layout.fillHeight: true
enabled: presetsListView.currentIndex !== -1
GridLayout {
Layout.preferredWidth: 300
Layout.maximumWidth: 300
columns: 2
Label { text: qsTr("Id:") }
SpinBox {
enabled: false
Layout.fillWidth: true
value: listView.currentData ? listView.currentData.id : -1
onValueModified: if (listView.currentData) listView.currentData.id = value; else console.warn('discarded');
value: presetsListView.currentData ? presetsListView.currentData.id : -1
onValueModified: if (presetsListView.currentData) presetsListView.currentData.id = value; else console.warn('discarded');
}
Label { text: qsTr("Name:") }
TextField {
Layout.fillWidth: true
text: listView.currentData ? listView.currentData.name : ''
onTextEdited: if (listView.currentData) listView.currentData.name = text; else console.warn('discarded');
}
}
GridLayout {
Layout.fillWidth: true
columns: 3
PresetModel {
id: presetModel
controller: __controller
presetId: listView.currentData ? listView.currentData.id : -1
}
Button {
text: qsTr('Auf Schieberegler\nunten kopieren');
onPressed: presetModel.copyToFaders()
}
Button {
text: qsTr('Von Schieberegler\nunten kopieren');
onPressed: presetModel.copyFromFaders()
}
Item {
Layout.rowSpan: 2
Layout.fillWidth: true
text: presetsListView.currentData ? presetsListView.currentData.name : ''
onTextEdited: if (presetsListView.currentData) presetsListView.currentData.name = text; else console.warn('discarded');
}
}
@@ -115,9 +86,35 @@ ColumnLayout {
}
}
PresetModel {
id: presetModel
controller: __controller
presetId: presetsListView.currentData ? presetsListView.currentData.id : -1
}
EditableListView {
enabled: presetsListView.currentIndex !== -1
model: PresetStepsModel {
controller: __controller
presetId: presetsListView.currentData ? presetsListView.currentData.id : -1
}
}
ColumnLayout {
Layout.fillWidth: true
RowLayout {
Button {
text: qsTr('Auf Schieberegler\nunten kopieren');
onPressed: presetModel.copyToFaders()
}
Button {
text: qsTr('Von Schieberegler\nunten kopieren');
onPressed: presetModel.copyFromFaders()
}
}
RowLayout {
Button {
text: qsTr('Alle auf\n0 setzen');
@@ -128,6 +125,7 @@ ColumnLayout {
onPressed: presetModel.setAllFadersMax()
}
}
RowLayout {
SpinBox {
id: nSpinBox
@@ -160,6 +158,10 @@ ColumnLayout {
onPressed: presetModel.setPattern(nSpinBox.value, kSpinBox.value, registerTypeComboBox.currentValue, valueSlider.value)
}
}
Item {
Layout.fillHeight: true
}
}
}
}