/* === This file is part of Calamares - === * * SPDX-FileCopyrightText: 2015 Teo Mrnjavac * SPDX-FileCopyrightText: 2018 Adriaan de Groot * SPDX-License-Identifier: GPL-3.0-or-later * * Calamares is Free Software: see the License-Identifier above. * */ import QtQuick 2.0; import calamares.slideshow 1.0; Presentation { id: presentation function nextSlide() { console.log("QML Component (default slideshow) Next slide"); presentation.goToNextSlide(); } Timer { id: advanceTimer interval: 1000 running: presentation.activatedInCalamares repeat: true onTriggered: nextSlide() } Slide { Image { id: background source: "squid.png" width: 200; height: 200 fillMode: Image.PreserveAspectFit anchors.centerIn: parent } Text { anchors.horizontalCenter: background.horizontalCenter anchors.top: background.bottom text: "This is a customizable QML slideshow.
"+ "Distributions should provide their own slideshow and list it in
"+ "their custom branding.desc file.
"+ "To create a Calamares presentation in QML, import calamares.slideshow,
"+ "define a Presentation element with as many Slide elements as needed." wrapMode: Text.WordWrap width: presentation.width horizontalAlignment: Text.Center } } Slide { centeredText: qsTr("This is a second Slide element.") } Slide { centeredText: qsTr("This is a third Slide element.") } // When this slideshow is loaded as a V1 slideshow, only // activatedInCalamares is set, which starts the timer (see above). // // In V2, also the onActivate() and onLeave() methods are called. // These example functions log a message (and re-start the slides // from the first). function onActivate() { console.log("QML Component (default slideshow) activated"); presentation.currentSlide = 0; } function onLeave() { console.log("QML Component (default slideshow) deactivated"); } }