void PageParserWizard::loadSettingsFromFile(QString fileName, QString url) { pageWizardSettings = new QSettings(fileName, QSettings::IniFormat); pageWizardSettings->setValue("url", url); selectContentWizardPage = new SelectContentWizardPage(pageWizardSettings, prefs); paramsPage = new ParamsWizardPage(pageWizardSettings); checkPage = new CheckWizardPage(pageWizardSettings, prefs); cleanupPage(SELECT_CONTENT_PAGE); cleanupPage(PARAMS_PAGE); cleanupPage(CHECK_PAGE); setPage(SELECT_CONTENT_PAGE, selectContentWizardPage); setPage(PARAMS_PAGE, paramsPage); setPage(CHECK_PAGE, checkPage); }
void FirstRunWizard::next() { setUpdatesEnabled( false ); QWidget* currentPage = ui->stackedWidget->currentWidget(); if ( qobject_cast<WizardPage*>(currentPage)->validatePage() ) { // go to the next page cleanupPage( currentPage ); // remember what the last page was so we can go back() m_pages << currentPage; if ( m_commitPage ) { m_commitPage = false; m_pages.clear(); } if ( currentPage == ui->loginPage ) ui->stackedWidget->setCurrentWidget( ui->accessPage ); else if ( currentPage == ui->accessPage ) #ifdef Q_OS_WIN32 ui->stackedWidget->setCurrentWidget( ui->pluginsPage ); else if ( currentPage == ui->pluginsPage ) ui->stackedWidget->setCurrentWidget( ui->pluginsInstallPage ); else if ( currentPage == ui->pluginsInstallPage ) if( aApp->currentSession().user().canBootstrap() && (m_plugins->bootstrappablePlugins().count() > 0) ) ui->stackedWidget->setCurrentWidget( ui->bootstrapPage ); else ui->stackedWidget->setCurrentWidget( ui->tourScrobblesPage ); #elif defined Q_OS_MAC if( aApp->currentSession().user().canBootstrap() ) ui->stackedWidget->setCurrentWidget( ui->bootstrapPage ); else ui->stackedWidget->setCurrentWidget( ui->tourScrobblesPage ); #elif defined Q_WS_X11 ui->stackedWidget->setCurrentWidget( ui->tourScrobblesPage ); #endif else if ( currentPage == ui->bootstrapPage )
void PanoPreviewPage::computePreview() { // Cancel any stitching being processed if (d->stitchingBusy) { cleanupPage(); } QMutexLocker lock(&d->previewBusyMutex); connect(d->mngr->thread(), SIGNAL(stepFinished(Digikam::PanoActionData)), this, SLOT(slotPanoAction(Digikam::PanoActionData))); connect(d->mngr->thread(), SIGNAL(jobCollectionFinished(Digikam::PanoActionData)), this, SLOT(slotPanoAction(Digikam::PanoActionData))); d->canceled = false; d->previewWidget->setBusy(true, i18n("Processing Panorama Preview...")); d->previewDone = false; d->previewBusy = true; d->mngr->resetPreviewPto(); d->mngr->resetPreviewUrl(); d->mngr->resetPreviewMkUrl(); d->mngr->thread()->generatePanoramaPreview(d->mngr->viewAndCropOptimisePtoData(), d->mngr->previewPtoUrl(), d->mngr->previewMkUrl(), d->mngr->previewUrl(), d->mngr->preProcessedMap(), d->mngr->makeBinary().path(), d->mngr->pto2MkBinary().path(), d->mngr->huginExecutorBinary().path(), d->mngr->hugin2015(), d->mngr->enblendBinary().path(), d->mngr->nonaBinary().path()); }
void PanoPreviewPage::cleanupPage() { QMutexLocker lock(&d->previewBusyMutex); cleanupPage(lock); }
void PanoPreviewPage::startStitching() { QMutexLocker lock(&d->previewBusyMutex); if (d->previewBusy) { // The real beginning of the stitching starts after preview has finished / failed connect(this, SIGNAL(signalPreviewFinished()), this, SLOT(slotStartStitching())); cleanupPage(lock); return; } connect(d->mngr->thread(), SIGNAL(starting(Digikam::PanoActionData)), this, SLOT(slotPanoAction(Digikam::PanoActionData))); connect(d->mngr->thread(), SIGNAL(stepFinished(Digikam::PanoActionData)), this, SLOT(slotPanoAction(Digikam::PanoActionData))); connect(d->mngr->thread(), SIGNAL(jobCollectionFinished(Digikam::PanoActionData)), this, SLOT(slotPanoAction(Digikam::PanoActionData))); d->canceled = false; d->stitchingBusy = true; d->curProgress = 0; if (d->mngr->hugin2015()) { d->totalProgress = 1; } else { d->totalProgress = d->mngr->preProcessedMap().size() + 1; } d->previewWidget->hide(); QSize panoSize = d->mngr->viewAndCropOptimisePtoData()->project.size; QRect panoSelection = d->mngr->viewAndCropOptimisePtoData()->project.crop; if (d->previewDone) { QSize previewSize = d->mngr->previewPtoData()->project.size; QRectF selection = d->previewWidget->getSelectionArea(); QRectF proportionSelection(selection.x() / previewSize.width(), selection.y() / previewSize.height(), selection.width() / previewSize.width(), selection.height() / previewSize.height()); // At this point, if no selection area was created, proportionSelection is null, // hence panoSelection becomes a null rectangle panoSelection = QRect(proportionSelection.x() * panoSize.width(), proportionSelection.y() * panoSize.height(), proportionSelection.width() * panoSize.width(), proportionSelection.height() * panoSize.height()); } d->title->setText(i18n("<qt>" "<p><h1>Panorama Post-Processing</h1></p>" "</qt>")); d->progressBar->reset(); d->progressBar->setMaximum(d->totalProgress); d->progressBar->progressScheduled(i18nc("@title:group", "Panorama Post-Processing"), true, true); d->progressBar->progressThumbnailChanged(QIcon::fromTheme(QLatin1String("panorama")).pixmap(22, 22)); d->progressBar->show(); d->postProcessing->show(); d->mngr->resetPanoPto(); d->mngr->resetMkUrl(); d->mngr->resetPanoUrl(); d->mngr->thread()->compileProject(d->mngr->viewAndCropOptimisePtoData(), d->mngr->panoPtoUrl(), d->mngr->mkUrl(), d->mngr->panoUrl(), d->mngr->preProcessedMap(), d->mngr->format(), panoSelection, d->mngr->makeBinary().path(), d->mngr->pto2MkBinary().path(), d->mngr->huginExecutorBinary().path(), d->mngr->hugin2015(), d->mngr->enblendBinary().path(), d->mngr->nonaBinary().path()); }