adding footer information

This commit is contained in:
Chris Cochrun 2023-04-18 10:29:31 -05:00
parent 990edf3818
commit 4f081acd7a
2 changed files with 84 additions and 35 deletions

View file

@ -23,6 +23,7 @@ Kirigami.ApplicationWindow {
property bool editMode: false property bool editMode: false
property string soundEffect property string soundEffect
property string footerLeftString
signal edit() signal edit()
@ -59,11 +60,36 @@ Kirigami.ApplicationWindow {
} }
footer: RowLayout { footer: RowLayout {
Controls.Label { Controls.TextArea {
id: filePathLabel
Layout.alignment: Qt.AlignLeft
Layout.leftMargin: Kirigami.Units.smallSpacing * 2
text: footerLeftString
background: Item{}
readOnly: true
HoverHandler {
id: hoverHandler
enabled: false
cursorShape: parent.hoveredLink ? Qt.PointingHandCursor : Qt.IBeamCursor
}
}
RowLayout {
id: rightFooterItems
spacing: 10
Layout.alignment: Qt.AlignRight Layout.alignment: Qt.AlignRight
Layout.rightMargin: Kirigami.Units.smallSpacing * 2 Layout.rightMargin: Kirigami.Units.smallSpacing * 2
/* elide: Text.ElideLeft */ Controls.Label {
text: "hello" Layout.alignment: Qt.AlignRight
Layout.rightMargin: Kirigami.Units.smallSpacing * 2
/* elide: Text.ElideLeft */
text: "Total Service Items: " + ServiceItemModel.rowCount()
}
Controls.Label {
Layout.alignment: Qt.AlignRight
Layout.rightMargin: Kirigami.Units.smallSpacing * 2
/* elide: Text.ElideLeft */
text: "Total Slides: " + SlideModel.rowCount()
}
} }
} }

View file

@ -12,6 +12,7 @@ Item {
property string type: "video" property string type: "video"
property var video property var video
property bool audioOn: true property bool audioOn: true
property bool editingRange: false
GridLayout { GridLayout {
id: mainLayout id: mainLayout
@ -39,10 +40,6 @@ Item {
onEditingFinished: updateTitle(text); onEditingFinished: updateTitle(text);
} }
Controls.Label {
text: "Looping:"
Layout.leftMargin: 20
}
Controls.CheckBox { Controls.CheckBox {
id: loopCheckBox id: loopCheckBox
Layout.preferredWidth: 300 Layout.preferredWidth: 300
@ -59,6 +56,12 @@ Item {
Item { Layout.fillWidth: true } Item { Layout.fillWidth: true }
Controls.ToolSeparator {} Controls.ToolSeparator {}
Controls.ToolButton {
text: "Edit Range"
icon.name: "image-auto-adjust"
hoverEnabled: true
onClicked: editingRange = !editingRange
}
Controls.ToolButton { Controls.ToolButton {
text: "Effects" text: "Effects"
icon.name: "image-auto-adjust" icon.name: "image-auto-adjust"
@ -138,45 +141,63 @@ Item {
} }
} }
Controls.RangeSlider { Rectangle {
id: videoLengthSlider id: videoRangeBox
Layout.columnSpan: 2 Layout.columnSpan: 2
Layout.preferredWidth: videoPreview.Layout.preferredWidth
Layout.fillWidth: true Layout.fillWidth: true
Layout.alignment: Qt.AlignHCenter Layout.alignment: Qt.AlignHCenter
Layout.leftMargin: 25 Layout.leftMargin: 25
Layout.rightMargin: 25 Layout.rightMargin: 25
Layout.topMargin: 50 Layout.topMargin: 40
visible: editingRange
to: videoPreview.duration ColumnLayout {
from: 0 anchors.fill: parent
stepSize: 0.1
snapMode: Controls.RangeSlider.SnapAlways
first.value: video.startTime Controls.RangeSlider {
second.value: video.endTime id: videoLengthSlider
first.onMoved: updateStartTime(first.value) Layout.fillWidth: true
second.onMoved: updateEndTime(second.value) Layout.alignment: Qt.AlignHCenter
Layout.leftMargin: 25
Layout.rightMargin: 25
} to: videoPreview.duration
from: 0
stepSize: 0.1
snapMode: Controls.RangeSlider.SnapAlways
Controls.Label { first.value: video.startTime
Layout.alignment: Qt.AlignLeft second.value: video.endTime
Layout.leftMargin: videoLengthSlider.Layout.leftMargin
text: "Start Time: " + videoLengthSlider.first.value
}
Controls.Label { first.onMoved: updateStartTime(first.value)
Layout.alignment: Qt.AlignRight second.onMoved: updateEndTime(second.value)
Layout.rightMargin: videoLengthSlider.Layout.rightMargin
text: "End Time: " + videoLengthSlider.second.value
}
Controls.ToolButton { }
text: "FIX"
onClicked: videoLengthSlider.setValues(video.startTime, video.endTime) RowLayout {
Layout.preferredWidth: parent.width
Layout.alignment: Qt.AlignLeft
Layout.leftMargin: 25
Layout.rightMargin: 25
Controls.Label {
Layout.alignment: Qt.AlignLeft
text: "Start Time: " + new Date(videoLengthSlider.first.value * 1000).toISOString().slice(11, 19);
}
Controls.Label {
Layout.alignment: Qt.AlignRight
text: "End Time: " + new Date(videoLengthSlider.second.value * 1000).toISOString().slice(11, 19);
}
}
Controls.ToolButton {
text: "FIX"
onClicked: videoLengthSlider.setValues(video.startTime, video.endTime)
}
}
} }
Item { Item {
@ -218,6 +239,7 @@ Item {
console.log(video.endTime); console.log(video.endTime);
mpvLoadingTimer.restart(); mpvLoadingTimer.restart();
videoLengthSlider.setValues(vid.startTime, vid.endTime); videoLengthSlider.setValues(vid.startTime, vid.endTime);
footerLeftString = "File path: " + video.filePath
} }
function stop() { function stop() {
@ -250,7 +272,8 @@ Item {
function updateLoop(value) { function updateLoop(value) {
/* changeStartTime(value, false); */ /* changeStartTime(value, false); */
let bool = videoProxyModel.updateLoop(video.id, value); let bool = videoProxyModel.updateLoop(video.id, value);
video.loop = value; if (bool)
video.loop = value;
/* showPassiveNotification("Loop changed to: " + video.loop); */ /* showPassiveNotification("Loop changed to: " + video.loop); */
} }