diff --git a/src/qml/presenter/Library.qml b/src/qml/presenter/Library.qml index 1a81022..ab84dc0 100644 --- a/src/qml/presenter/Library.qml +++ b/src/qml/presenter/Library.qml @@ -1119,6 +1119,7 @@ Item { dragItemText = ""; dragItemBackgroundType = "image"; dragItemBackground = filePath; + dragItemSlideNumber = pageCount; } else { presListItem.Drag.drop() dragHighlightLine.visible = false; diff --git a/src/qml/presenter/PresentationEditor.qml b/src/qml/presenter/PresentationEditor.qml index a1c5b80..bcacee4 100644 --- a/src/qml/presenter/PresentationEditor.qml +++ b/src/qml/presenter/PresentationEditor.qml @@ -108,11 +108,15 @@ Item { Image { id: presentationPreview - Layout.preferredWidth: 1000 + Layout.preferredWidth: root.width - Kirigami.Units.largeSpacing Layout.preferredHeight: Layout.preferredWidth / 16 * 9 Layout.alignment: Qt.AlignCenter fillMode: Image.PreserveAspectFit source: presentation.filePath + Component.onCompleted: { + updatePageCount(frameCount); + showPassiveNotification(presentation.pageCount); + } } RowLayout { Layout.fillWidth: true; @@ -146,6 +150,8 @@ Item { function changePresentation(presentation) { root.presentation = presentation; print(presentation.filePath.toString()); + updatePageCount(presentationPreview.frameCount); + console.log("page count " + presentation.pageCount); } function updateTitle(text) { @@ -159,4 +165,9 @@ Item { presentationTitleField.text = text; presentation.title = text; } + + function updatePageCount(pageCount) { + presentation.pageCount = pageCount; + pressqlmodel.updatePageCount(presentation.id, pageCount); + } } diff --git a/src/qml/presenter/ServiceList.qml b/src/qml/presenter/ServiceList.qml index 2399af6..2b4f2e3 100644 --- a/src/qml/presenter/ServiceList.qml +++ b/src/qml/presenter/ServiceList.qml @@ -516,15 +516,15 @@ Item { totalServiceItems++; return; } - /* if (type === "presentation") { */ - /* print("adding: " + name + " of type " + type + " with " + newtext.length + " slides"); */ - /* serviceItemModel.insertItem(index, name, */ - /* type, background, */ - /* backgroundType, "", */ - /* "", "", 0, pageCount); */ - /* totalServiceItems++; */ - /* return; */ - /* } */ + if (type === "presentation") { + print("adding: " + name + " of type " + type + " with " + dragItemSlideNumber + " slides"); + serviceItemModel.insertItem(index, name, + type, background, + backgroundType, "", + "", "", 0, dragItemSlideNumber); + totalServiceItems++; + return; + } print("adding: " + name + " of type " + type); serviceItemModel.insertItem(index, name, type, background,