This commit is contained in:
Chris Cochrun 2025-07-25 15:19:21 -05:00
parent 92f2b18a20
commit 504b4bc944
24 changed files with 289 additions and 175 deletions

View file

@ -252,6 +252,7 @@ Item {
}
function isDragFile(item) {
console.log(item);
console.log(item.toString());
var extension = item.toString().split('.').pop();
var valid = false;

View file

@ -188,6 +188,10 @@ Controls.Page {
songModel: songModel
}
Presenter.PresentationWindow {
id: presWindow
}
Connections {
target: ServiceItemModel
function onSaveProgressChanged() {
@ -352,19 +356,20 @@ Controls.Page {
function present(present) {
if (present)
{
PresWindow.showFullScreen();
PresWindow.setSource("qrc:qml/presenter/PresentationWindow.qml")
console.log(PresWindow);
/* presWindow.slideObj = SlideObject; */
presWindow.showFullScreen();
/* presWindow.setSource("qrc:qml/presenter/PresentationWindow.qml") */
console.log(presWindow);
/* presWinLoader.active = true; */
}
else {
PresWindow.close();
presWindow.close();
/* presWinLoader.active = false; */
}
}
function closeAll() { PresWindow.close() }
function closeAll() { presWindow.close() }
function changeVidPos(pos) {
presentation.slide.seek(pos);

View file

@ -479,6 +479,11 @@ FocusScope {
previewSlide.stopVideo()
}
function playVideo() {
/* showPassiveNotification("Stopping Video") */
previewSlide.playVideo()
}
function nextSlideAction() {
keyHandler.forceActiveFocus();
SlideModel.next()

View file

@ -6,13 +6,13 @@ import org.kde.kirigami 2.13 as Kirigami
import "./" as Presenter
import org.presenter 1.0
Item {
Window {
id: presentationWindow
property Item slide: presentationSlide
/* property var slideObj */
/* property var SlideObject: SlideObject; */
property var pWin
anchors.fill: parent
/* anchors.fill: parent */
/* title: "presentation-window" */
/* height: maximumHeight */
@ -25,7 +25,7 @@ Item {
/* onClosing: { */
/* presentationSlide.stopVideo(); */
/* SlideObj.pause(); */
/* SlideObject.pause(); */
/* presentationSlide.stopAudio(); */
/* presenting = false; */
/* } */
@ -34,7 +34,7 @@ Item {
target: PresWindow
function onClosing() {
presentationSlide.stopVideo();
SlideObj.pause();
SlideObject.pause();
presentationSlide.stopAudio();
presenting = false;
}
@ -48,25 +48,25 @@ Item {
Presenter.Slide {
id: presentationSlide
anchors.fill: parent
imageSource: SlideObj.html ? "" : SlideObj.imageBackground
webSource: SlideObj.html ? SlideObj.imageBackground : ""
htmlVisible: SlideObj.html
videoSource: presentationWindow.visible ? SlideObj.videoBackground : ""
audioSource: SlideObj.audio
text: SlideObj.text
chosenFont: SlideObj.font
textSize: SlideObj.fontSize
pdfIndex: SlideObj.slideIndex
itemType: SlideObj.ty
vidLoop: SlideObj.looping
vidStartTime: SlideObj.videoStartTime
vidEndTime: SlideObj.videoEndTime
imageSource: SlideObject.html ? "" : SlideObject.imageBackground
webSource: SlideObject.html ? SlideObject.imageBackground : ""
htmlVisible: SlideObject.html
videoSource: presentationWindow.visible ? SlideObject.videoBackground : ""
audioSource: SlideObject.audio
text: SlideObject.text
chosenFont: SlideObject.font
textSize: SlideObject.fontSize
pdfIndex: SlideObject.slideIndex
itemType: SlideObject.ty
vidLoop: SlideObject.looping
vidStartTime: SlideObject.videoStartTime
vidEndTime: SlideObject.videoEndTime
}
Connections {
target: SlideObj
target: SlideObject
function onVideoBackgroundChanged() {
if (SlideObj.videoBackground === "")
if (SlideObject.videoBackground === "")
stopVideo();
else {
loadVideo();
@ -74,12 +74,12 @@ Item {
}
}
function onIsPlayingChanged() {
if(SlideObj.isPlaying)
if(SlideObject.isPlaying)
presentationSlide.playVideo();
pauseVideo();
}
function onLoopingChanged() {
if(SlideObj.looping)
if(SlideObject.looping)
presentationSlide.loopVideo();
}
function onAudioChanged() {

View file

@ -21,6 +21,7 @@ Kirigami.OverlaySheet {
Kirigami.FormLayout {
implicitHeight: Kirigami.Units.gridUnit * 30
implicitWidth: Kirigami.Units.gridUnit * 30
Controls.ComboBox {
id: screenSelectionField
Kirigami.FormData.label: i18nc("@label:textbox", "Presentation Screen:")