Changeset View
Changeset View
Standalone View
Standalone View
importer/importdialog.cpp
Show First 20 Lines • Show All 52 Lines • ▼ Show 20 Line(s) | |||||
53 | public: | 53 | public: | ||
54 | ImportDialog* q; | 54 | ImportDialog* q; | ||
55 | QStackedWidget* mCentralWidget; | 55 | QStackedWidget* mCentralWidget; | ||
56 | ThumbnailPage* mThumbnailPage; | 56 | ThumbnailPage* mThumbnailPage; | ||
57 | ProgressPage* mProgressPage; | 57 | ProgressPage* mProgressPage; | ||
58 | DialogPage* mDialogPage; | 58 | DialogPage* mDialogPage; | ||
59 | Importer* mImporter; | 59 | Importer* mImporter; | ||
60 | 60 | | |||
61 | void checkForFailedUrls() | ||||
62 | { | ||||
63 | // First check for errors on file imports or subfolder creation | ||||
64 | QList<QUrl> failedUrls = mImporter->failedUrlList(); | ||||
65 | QList<QUrl> failedSubFolders = mImporter->failedSubFolderList(); | ||||
66 | int failedUrlCount = failedUrls.count(); | ||||
67 | int failedSubFolderCount = failedSubFolders.count(); | ||||
68 | if (failedUrlCount + failedSubFolderCount > 0) { | ||||
69 | QStringList files, dirs; | ||||
70 | for (int i=0; i<failedUrlCount; i++) { | ||||
71 | files << failedUrls[i].toString(QUrl::PreferLocalFile); | ||||
72 | } | ||||
73 | for (int i=0; i<failedSubFolderCount; i++) { | ||||
74 | dirs << failedSubFolders[i].toString(QUrl::PreferLocalFile); | ||||
75 | } | ||||
76 | emit q->showErrors(files, dirs); | ||||
77 | } | ||||
78 | } | ||||
79 | | ||||
61 | void deleteImportedUrls() | 80 | void deleteImportedUrls() | ||
62 | { | 81 | { | ||
63 | QList<QUrl> importedUrls = mImporter->importedUrlList(); | 82 | QList<QUrl> importedUrls = mImporter->importedUrlList(); | ||
64 | QList<QUrl> skippedUrls = mImporter->skippedUrlList(); | 83 | QList<QUrl> skippedUrls = mImporter->skippedUrlList(); | ||
65 | int importedCount = importedUrls.count(); | 84 | int importedCount = importedUrls.count(); | ||
66 | int skippedCount = skippedUrls.count(); | 85 | int skippedCount = skippedUrls.count(); | ||
67 | 86 | | |||
68 | if (importedCount == 0 && skippedCount == 0) { | 87 | if (importedCount == 0 && skippedCount == 0) { | ||
▲ Show 20 Lines • Show All 130 Lines • ▼ Show 20 Line(s) | 195 | { | |||
199 | d->mCentralWidget->addWidget(d->mDialogPage); | 218 | d->mCentralWidget->addWidget(d->mDialogPage); | ||
200 | 219 | | |||
201 | connect(d->mThumbnailPage, &ThumbnailPage::importRequested, | 220 | connect(d->mThumbnailPage, &ThumbnailPage::importRequested, | ||
202 | this, &ImportDialog::startImport); | 221 | this, &ImportDialog::startImport); | ||
203 | connect(d->mThumbnailPage, &ThumbnailPage::rejected, | 222 | connect(d->mThumbnailPage, &ThumbnailPage::rejected, | ||
204 | this, &QWidget::close); | 223 | this, &QWidget::close); | ||
205 | connect(d->mImporter, &Importer::importFinished, | 224 | connect(d->mImporter, &Importer::importFinished, | ||
206 | this, &ImportDialog::slotImportFinished); | 225 | this, &ImportDialog::slotImportFinished); | ||
226 | connect(this, &ImportDialog::showErrors, | ||||
227 | d->mDialogPage, &DialogPage::slotShowErrors); | ||||
207 | 228 | | |||
208 | d->mCentralWidget->setCurrentWidget(d->mThumbnailPage); | 229 | d->mCentralWidget->setCurrentWidget(d->mThumbnailPage); | ||
209 | 230 | | |||
210 | setWindowIcon(QIcon::fromTheme("gwenview")); | 231 | setWindowIcon(QIcon::fromTheme("gwenview")); | ||
211 | setAutoSaveSettings(); | 232 | setAutoSaveSettings(); | ||
212 | } | 233 | } | ||
213 | 234 | | |||
214 | ImportDialog::~ImportDialog() | 235 | ImportDialog::~ImportDialog() | ||
Show All 34 Lines | 269 | d->mImporter->setAutoRenameFormat( | |||
249 | ImporterConfig::autoRename() | 270 | ImporterConfig::autoRename() | ||
250 | ? ImporterConfig::autoRenameFormat() | 271 | ? ImporterConfig::autoRenameFormat() | ||
251 | : QString()); | 272 | : QString()); | ||
252 | d->mImporter->start(d->mThumbnailPage->urlList(), url); | 273 | d->mImporter->start(d->mThumbnailPage->urlList(), url); | ||
253 | } | 274 | } | ||
254 | 275 | | |||
255 | void ImportDialog::slotImportFinished() | 276 | void ImportDialog::slotImportFinished() | ||
256 | { | 277 | { | ||
278 | d->checkForFailedUrls(); | ||||
257 | d->deleteImportedUrls(); | 279 | d->deleteImportedUrls(); | ||
258 | d->showWhatNext(); | 280 | d->showWhatNext(); | ||
259 | } | 281 | } | ||
260 | 282 | | |||
261 | void ImportDialog::showImportError(const QString& message) | 283 | void ImportDialog::showImportError(const QString& message) | ||
262 | { | 284 | { | ||
263 | KMessageBox::sorry(this, message); | 285 | KMessageBox::sorry(this, message); | ||
264 | d->mCentralWidget->setCurrentWidget(d->mThumbnailPage); | 286 | d->mCentralWidget->setCurrentWidget(d->mThumbnailPage); | ||
265 | } | 287 | } | ||
266 | 288 | | |||
267 | } // namespace | 289 | } // namespace |