@@ -336,6 +336,12 @@ PackageManagerGui::PackageManagerGui(PackageManagerCore *core, QWidget *parent)
336
336
setOption (QWizard::NoBackButtonOnStartPage);
337
337
setOption (QWizard::NoBackButtonOnLastPage);
338
338
339
+ if (m_core->noCancelButton ())
340
+ {
341
+ // Remove the cancel button from the installer/uninstaller
342
+ setOption (QWizard::NoCancelButton);
343
+ }
344
+
339
345
connect (this , &QDialog::rejected, m_core, &PackageManagerCore::setCanceled);
340
346
connect (this , &PackageManagerGui::interrupted, m_core, &PackageManagerCore::interrupt);
341
347
@@ -1849,6 +1855,9 @@ CustomIntroductionPage::CustomIntroductionPage(PackageManagerCore *core)
1849
1855
m_taskButton = nullptr ;
1850
1856
}
1851
1857
#endif
1858
+
1859
+ // By setting this as a commit page, we make sure that the back button on the following page will be disabled
1860
+ setCommitPage (true );
1852
1861
}
1853
1862
1854
1863
/* !
@@ -2285,17 +2294,21 @@ void CustomIntroductionPage::entering()
2285
2294
showWidgets (false );
2286
2295
setMessage (QString ());
2287
2296
setErrorMessage (QString ());
2288
- setButtonText (QWizard::CancelButton, tr (" &Quit" ));
2289
2297
2290
2298
m_progressBar->setValue (0 );
2291
2299
m_progressBar->setRange (0 , 0 );
2292
2300
PackageManagerCore *core = packageManagerCore ();
2293
2301
setSettingsButtonRequested ((!core->isOfflineOnly ()) && (!core->isUninstaller ()));
2294
2302
2303
+ if (!core->noCancelButton ())
2304
+ {
2305
+ setButtonText (QWizard::CancelButton, tr (" &Quit" ));
2306
+ }
2307
+
2295
2308
// Ready for installation text
2296
2309
if (core->isUninstaller ()) {
2297
2310
// m_taskDetailsBrowser->setVisible(false);
2298
- setButtonText (QWizard::NextButton , tr (" U&ninstall" ));
2311
+ setButtonText (QWizard::CommitButton , tr (" U&ninstall" ));
2299
2312
setColoredTitle (tr (" Ready to Uninstall %1" ).arg (productName ()));
2300
2313
m_spaceLabel->setText (tr (" Setup is now ready to begin removing %1 from your computer.<br>"
2301
2314
" <font color=\" red\" >The program directory %2 will be deleted completely</font>, "
@@ -2306,25 +2319,19 @@ void CustomIntroductionPage::entering()
2306
2319
// setComplete(true);
2307
2320
// return;
2308
2321
} else if (core->isMaintainer ()) {
2309
- setButtonText (QWizard::NextButton , tr (" U&pdate" ));
2322
+ setButtonText (QWizard::CommitButton , tr (" U&pdate" ));
2310
2323
// setColoredTitle(tr("Ready to Update Packages"));
2311
2324
m_spaceLabel->setText (tr (" Setup is now ready to begin updating your installation." ));
2312
2325
} else {
2313
2326
Q_ASSERT (core->isInstaller ());
2314
2327
core->calculateComponentsToInstall ();
2315
2328
showInstallerInformation ();
2316
- setButtonText (QWizard::NextButton , tr (" &Install" ));
2329
+ setButtonText (QWizard::CommitButton , tr (" &Install" ));
2317
2330
// setColoredTitle(tr("Ready to Install"));
2318
2331
m_spaceLabel->setText (tr (" Setup is now ready to begin installing %1 on your computer." )
2319
2332
.arg (productName ()));
2320
2333
}
2321
2334
2322
- // QString htmlOutput;
2323
- // bool componentsOk = core->calculateComponents(&htmlOutput);
2324
- // m_taskDetailsBrowser->setHtml(htmlOutput);
2325
- // m_taskDetailsBrowser->setVisible(!componentsOk || isVerbose());
2326
- // setComplete(componentsOk);
2327
-
2328
2335
if (!core->isUninstaller ()) {
2329
2336
QString spaceInfo;
2330
2337
if (core->checkAvailableSpace (spaceInfo)) {
@@ -2354,11 +2361,14 @@ void CustomIntroductionPage::leaving()
2354
2361
m_progressBar->setValue (0 );
2355
2362
m_progressBar->setRange (0 , 0 );
2356
2363
2357
- // Resetting the cancel button text from Quit to Cancel
2358
- setButtonText (QWizard::CancelButton, gui ()->defaultButtonText (QWizard::CancelButton));
2364
+ if (!packageManagerCore ()->noCancelButton ())
2365
+ {
2366
+ // Resetting the cancel button text from Quit to Cancel
2367
+ setButtonText (QWizard::CancelButton, gui ()->defaultButtonText (QWizard::CancelButton));
2368
+ }
2359
2369
2360
2370
// Resetting button text (after changing it to Install/Uninstall/Update)
2361
- setButtonText (QWizard::NextButton , gui ()->defaultButtonText (QWizard::NextButton ));
2371
+ setButtonText (QWizard::CommitButton , gui ()->defaultButtonText (QWizard::CommitButton ));
2362
2372
2363
2373
// Store the install location
2364
2374
packageManagerCore ()->setValue (scTargetDir, targetDir ());
@@ -3424,6 +3434,11 @@ PerformInstallationPage::PerformInstallationPage(PackageManagerCore *core)
3424
3434
3425
3435
m_performInstallationForm->setupUi (this );
3426
3436
3437
+ if (core->noDetails ())
3438
+ {
3439
+ m_performInstallationForm->noDetails ();
3440
+ }
3441
+
3427
3442
connect (ProgressCoordinator::instance (), &ProgressCoordinator::detailTextChanged,
3428
3443
m_performInstallationForm, &PerformInstallationForm::appendProgressDetails);
3429
3444
connect (ProgressCoordinator::instance (), &ProgressCoordinator::detailTextResetNeeded,
@@ -3446,8 +3461,11 @@ PerformInstallationPage::PerformInstallationPage(PackageManagerCore *core)
3446
3461
connect (this , &PerformInstallationPage::setAutomatedPageSwitchEnabled,
3447
3462
core, &PackageManagerCore::setAutomatedPageSwitchEnabled);
3448
3463
3449
- m_performInstallationForm->setDetailsWidgetVisible (true );
3450
-
3464
+ if (!core->noDetails ())
3465
+ {
3466
+ m_performInstallationForm->setDetailsWidgetVisible (true );
3467
+ }
3468
+
3451
3469
setCommitPage (true );
3452
3470
}
3453
3471
@@ -3495,10 +3513,13 @@ void PerformInstallationPage::entering()
3495
3513
QTimer::singleShot (30 , packageManagerCore (), SLOT (runInstaller ()));
3496
3514
}
3497
3515
3498
- m_performInstallationForm->enableDetails ();
3516
+ if (!packageManagerCore ()->noDetails ())
3517
+ {
3518
+ m_performInstallationForm->enableDetails ();
3519
+ }
3499
3520
emit setAutomatedPageSwitchEnabled (true );
3500
3521
3501
- if (isVerbose ())
3522
+ if (isVerbose () && ! packageManagerCore ()-> noDetails () )
3502
3523
m_performInstallationForm->toggleDetails ();
3503
3524
}
3504
3525
0 commit comments