From 1cebf145f52f961e041ccd9c951ed5f1295f2eac Mon Sep 17 00:00:00 2001 From: Remco Burema Date: Fri, 29 Mar 2019 09:23:10 +0100 Subject: [PATCH 1/2] Make User-Agreement work with new 'WizadPanel'. [CURA-6057] --- cura/UI/WelcomePagesModel.py | 9 +++++++-- resources/qml/WelcomePages/UserAgreementContent.qml | 2 +- resources/qml/WelcomePages/WizardPanel.qml | 2 ++ 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/cura/UI/WelcomePagesModel.py b/cura/UI/WelcomePagesModel.py index a3aae49ed7..cb47b37bfc 100644 --- a/cura/UI/WelcomePagesModel.py +++ b/cura/UI/WelcomePagesModel.py @@ -76,6 +76,12 @@ class WelcomePagesModel(ListModel): self._current_page_index = page_index self.currentPageIndexChanged.emit() + # Ends the Welcome-Pages. Put as a separate function for cases like the 'decline' in the User-Agreement. + @pyqtSlot() + def atEnd(self) -> None: + self.allFinished.emit() + self.resetState() + # Goes to the next page. # If "from_index" is given, it will look for the next page to show starting from the "from_index" page instead of # the "self._current_page_index". @@ -100,8 +106,7 @@ class WelcomePagesModel(ListModel): # If we have reached the last page, emit allFinished signal and reset. if next_page_index == len(self._items): - self.allFinished.emit() - self.resetState() + self.atEnd() return # Check if the this page should be shown (default yes), if not, keep looking for the next one. diff --git a/resources/qml/WelcomePages/UserAgreementContent.qml b/resources/qml/WelcomePages/UserAgreementContent.qml index 2f4b2a0290..62e30ebbf7 100644 --- a/resources/qml/WelcomePages/UserAgreementContent.qml +++ b/resources/qml/WelcomePages/UserAgreementContent.qml @@ -83,7 +83,7 @@ Item onClicked: { CuraApplication.writeToLog("i", "User declined the User Agreement.") - base.passLastPage() + base.endWizard() CuraApplication.closeApplication() // NOTE: Hard exit, don't use if anything needs to be saved! } } diff --git a/resources/qml/WelcomePages/WizardPanel.qml b/resources/qml/WelcomePages/WizardPanel.qml index 51b131409e..94fb083664 100644 --- a/resources/qml/WelcomePages/WizardPanel.qml +++ b/resources/qml/WelcomePages/WizardPanel.qml @@ -28,11 +28,13 @@ Item signal showNextPage() signal showPreviousPage() signal goToPage(string page_id) // Go to a specific page by the given page_id. + signal endWizard() // Call the corresponding functions in the model onShowNextPage: model.goToNextPage() onShowPreviousPage: model.goToPreviousPage() onGoToPage: model.goToPage(page_id) + onEndWizard: model.atEnd() Rectangle // Panel background { From 60920c89aff663a23f455994629b9c5bb177822c Mon Sep 17 00:00:00 2001 From: Remco Burema Date: Fri, 29 Mar 2019 09:33:41 +0100 Subject: [PATCH 2/2] Remove old send slice-info confirm: part of the new onboard. [CURA-6057] --- plugins/SliceInfoPlugin/SliceInfo.py | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/plugins/SliceInfoPlugin/SliceInfo.py b/plugins/SliceInfoPlugin/SliceInfo.py index 5149b6a6a6..065923c43d 100755 --- a/plugins/SliceInfoPlugin/SliceInfo.py +++ b/plugins/SliceInfoPlugin/SliceInfo.py @@ -48,20 +48,6 @@ class SliceInfo(QObject, Extension): def _onAppInitialized(self): # DO NOT read any preferences values in the constructor because at the time plugins are created, no version # upgrade has been performed yet because version upgrades are plugins too! - if not self._application.getPreferences().getValue("info/asked_send_slice_info"): - self.send_slice_info_message = Message(catalog.i18nc("@info", "Cura collects anonymized usage statistics."), - lifetime = 0, - dismissable = False, - title = catalog.i18nc("@info:title", "Collecting Data")) - - self.send_slice_info_message.addAction("MoreInfo", name = catalog.i18nc("@action:button", "More info"), icon = None, - description = catalog.i18nc("@action:tooltip", "See more information on what data Cura sends."), button_style = Message.ActionButtonStyle.LINK) - - self.send_slice_info_message.addAction("Dismiss", name = catalog.i18nc("@action:button", "Allow"), icon = None, - description = catalog.i18nc("@action:tooltip", "Allow Cura to send anonymized usage statistics to help prioritize future improvements to Cura. Some of your preferences and settings are sent, the Cura version and a hash of the models you're slicing.")) - self.send_slice_info_message.actionTriggered.connect(self.messageActionTriggered) - self.send_slice_info_message.show() - if self._more_info_dialog is None: self._more_info_dialog = self._createDialog("MoreInfoWindow.qml")