Accepting request 432953 from KDE:Extra
1 OBS-URL: https://build.opensuse.org/request/show/432953 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/digikam?expand=0&rev=151
This commit is contained in:
commit
b66928d3ef
@ -1,3 +1,11 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Oct 3 07:55:43 UTC 2016 - alarrosa@suse.com
|
||||||
|
|
||||||
|
- Added migration_from_digikam4.diff to support migration of
|
||||||
|
settings and database from digikam4 the first time digikam5
|
||||||
|
is run by adding a migration page in the welcome wizard and
|
||||||
|
letting the user choose what to do (kde#364258).
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Thu Sep 29 22:19:22 UTC 2016 - lbeltrame@kde.org
|
Thu Sep 29 22:19:22 UTC 2016 - lbeltrame@kde.org
|
||||||
|
|
||||||
|
@ -26,6 +26,8 @@ Url: http://www.digikam.org/
|
|||||||
Source0: http://download.kde.org/stable/%{name}/%{name}-%{version}.tar.xz
|
Source0: http://download.kde.org/stable/%{name}/%{name}-%{version}.tar.xz
|
||||||
# PATCH-FIX-OPENSUSE find_libastro-qt5.patch -- fix build of geolocation support in Leap 42.1
|
# PATCH-FIX-OPENSUSE find_libastro-qt5.patch -- fix build of geolocation support in Leap 42.1
|
||||||
Patch2: find_libastro-qt5.patch
|
Patch2: find_libastro-qt5.patch
|
||||||
|
# PATCH-FIX-UPSTREAM migration_from_digikam4.diff alarrosa@suse.com kde#364258 -- Migration wizard page to migrate configuration and db from digikam4
|
||||||
|
Patch3: migration_from_digikam4.diff
|
||||||
#This pulls in QWebEngine, which is not available on ppc64
|
#This pulls in QWebEngine, which is not available on ppc64
|
||||||
%ifarch %ix86 x86_64 %arm aarch64 mips mips64
|
%ifarch %ix86 x86_64 %arm aarch64 mips mips64
|
||||||
BuildRequires: akonadi-contact-devel
|
BuildRequires: akonadi-contact-devel
|
||||||
@ -170,6 +172,7 @@ The main digikam libraries that are being shared between showfoto and digikam
|
|||||||
# we renamed libastro to libastro-qt5 in Leap 42.1, make FindMARBLE.cmake find it
|
# we renamed libastro to libastro-qt5 in Leap 42.1, make FindMARBLE.cmake find it
|
||||||
%patch2 -p1
|
%patch2 -p1
|
||||||
%endif
|
%endif
|
||||||
|
%patch3 -p1
|
||||||
|
|
||||||
# Remove build time references so build-compare can do its work
|
# Remove build time references so build-compare can do its work
|
||||||
FAKE_BUILDDATE=$(LC_ALL=C date -u -r %{_sourcedir}/%{name}.changes '+%%b %%e %%Y')
|
FAKE_BUILDDATE=$(LC_ALL=C date -u -r %{_sourcedir}/%{name}.changes '+%%b %%e %%Y')
|
||||||
|
458
migration_from_digikam4.diff
Normal file
458
migration_from_digikam4.diff
Normal file
@ -0,0 +1,458 @@
|
|||||||
|
Index: digikam-5.2.0/core/utilities/assistants/firstrun/CMakeLists.txt
|
||||||
|
===================================================================
|
||||||
|
--- digikam-5.2.0.orig/core/utilities/assistants/firstrun/CMakeLists.txt
|
||||||
|
+++ digikam-5.2.0/core/utilities/assistants/firstrun/CMakeLists.txt
|
||||||
|
@@ -11,6 +11,7 @@ endif (POLICY CMP0063)
|
||||||
|
|
||||||
|
set(libfirstrun_SRCS
|
||||||
|
firstrundlg.cpp
|
||||||
|
+ migratefromdigikam4page.cpp
|
||||||
|
firstrundlgpage.cpp
|
||||||
|
welcomepage.cpp
|
||||||
|
collectionpage.cpp
|
||||||
|
@@ -26,6 +27,7 @@ set(libfirstrun_SRCS
|
||||||
|
include_directories($<TARGET_PROPERTY:Qt5::Gui,INTERFACE_INCLUDE_DIRECTORIES>
|
||||||
|
$<TARGET_PROPERTY:Qt5::Widgets,INTERFACE_INCLUDE_DIRECTORIES>
|
||||||
|
$<TARGET_PROPERTY:Qt5::Core,INTERFACE_INCLUDE_DIRECTORIES>
|
||||||
|
+ $<TARGET_PROPERTY:Qt5::Sql,INTERFACE_INCLUDE_DIRECTORIES>
|
||||||
|
|
||||||
|
$<TARGET_PROPERTY:KF5::I18n,INTERFACE_INCLUDE_DIRECTORIES>
|
||||||
|
$<TARGET_PROPERTY:KF5::ConfigCore,INTERFACE_INCLUDE_DIRECTORIES>
|
||||||
|
Index: digikam-5.2.0/core/utilities/assistants/firstrun/firstrundlg.cpp
|
||||||
|
===================================================================
|
||||||
|
--- digikam-5.2.0.orig/core/utilities/assistants/firstrun/firstrundlg.cpp
|
||||||
|
+++ digikam-5.2.0/core/utilities/assistants/firstrun/firstrundlg.cpp
|
||||||
|
@@ -27,10 +27,15 @@
|
||||||
|
|
||||||
|
#include <QPushButton>
|
||||||
|
|
||||||
|
+// KDE includes
|
||||||
|
+
|
||||||
|
+#include <kdelibs4migration.h>
|
||||||
|
+
|
||||||
|
// Local incudes
|
||||||
|
|
||||||
|
#include "dxmlguiwindow.h"
|
||||||
|
#include "welcomepage.h"
|
||||||
|
+#include "migratefromdigikam4page.h"
|
||||||
|
#include "collectionpage.h"
|
||||||
|
#include "databasepage.h"
|
||||||
|
#include "rawpage.h"
|
||||||
|
@@ -49,6 +54,7 @@ public:
|
||||||
|
|
||||||
|
Private() :
|
||||||
|
welcomePage(0),
|
||||||
|
+ migrateFromDigikam4Page(0),
|
||||||
|
collectionPage(0),
|
||||||
|
databasePage(0),
|
||||||
|
rawPage(0),
|
||||||
|
@@ -61,6 +67,7 @@ public:
|
||||||
|
}
|
||||||
|
|
||||||
|
WelcomePage* welcomePage;
|
||||||
|
+ MigrateFromDigikam4Page* migrateFromDigikam4Page;
|
||||||
|
CollectionPage* collectionPage;
|
||||||
|
DatabasePage* databasePage;
|
||||||
|
RawPage* rawPage;
|
||||||
|
@@ -82,7 +89,21 @@ FirstRunDlg::FirstRunDlg(QWidget* const
|
||||||
|
<< QWizard::NextButton
|
||||||
|
<< QWizard::FinishButton);
|
||||||
|
|
||||||
|
+ bool migrateAvailable = false;
|
||||||
|
+
|
||||||
|
+#ifdef Q_OS_LINUX
|
||||||
|
+ ::Kdelibs4Migration migration;
|
||||||
|
+
|
||||||
|
+ // If there's a digikamrc file in $KDEHOME/share/config,
|
||||||
|
+ // then we create the migration page in the wizard
|
||||||
|
+ migrateAvailable = !migration.locateLocal("config", QStringLiteral("digikamrc")).isEmpty();
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
d->welcomePage = new WelcomePage(this); // First assistant page
|
||||||
|
+
|
||||||
|
+ if (migrateAvailable)
|
||||||
|
+ d->migrateFromDigikam4Page = new MigrateFromDigikam4Page(this);
|
||||||
|
+
|
||||||
|
d->collectionPage = new CollectionPage(this);
|
||||||
|
d->databasePage = new DatabasePage(this);
|
||||||
|
d->rawPage = new RawPage(this);
|
||||||
|
@@ -151,14 +172,22 @@ bool FirstRunDlg::validateCurrentPage()
|
||||||
|
|
||||||
|
void FirstRunDlg::slotFinishPressed()
|
||||||
|
{
|
||||||
|
- // Save settings to rc files.
|
||||||
|
- d->collectionPage->saveSettings();
|
||||||
|
- d->databasePage->saveSettings();
|
||||||
|
- d->rawPage->saveSettings();
|
||||||
|
- d->metadataPage->saveSettings();
|
||||||
|
- d->previewPage->saveSettings();
|
||||||
|
- d->openFilePage->saveSettings();
|
||||||
|
- d->tooltipsPage->saveSettings();
|
||||||
|
+ if (d->migrateFromDigikam4Page && d->migrateFromDigikam4Page->isMigrationChecked())
|
||||||
|
+ {
|
||||||
|
+ // The user choosed to do a migration from digikam4
|
||||||
|
+ d->migrateFromDigikam4Page->doMigration();
|
||||||
|
+ }
|
||||||
|
+ else
|
||||||
|
+ {
|
||||||
|
+ // Save settings to rc files.
|
||||||
|
+ d->collectionPage->saveSettings();
|
||||||
|
+ d->databasePage->saveSettings();
|
||||||
|
+ d->rawPage->saveSettings();
|
||||||
|
+ d->metadataPage->saveSettings();
|
||||||
|
+ d->previewPage->saveSettings();
|
||||||
|
+ d->openFilePage->saveSettings();
|
||||||
|
+ d->tooltipsPage->saveSettings();
|
||||||
|
+ }
|
||||||
|
}
|
||||||
|
|
||||||
|
} // namespace Digikam
|
||||||
|
Index: digikam-5.2.0/core/utilities/assistants/firstrun/migratefromdigikam4page.cpp
|
||||||
|
===================================================================
|
||||||
|
--- /dev/null
|
||||||
|
+++ digikam-5.2.0/core/utilities/assistants/firstrun/migratefromdigikam4page.cpp
|
||||||
|
@@ -0,0 +1,203 @@
|
||||||
|
+/* ============================================================
|
||||||
|
+ *
|
||||||
|
+ * This file is a part of digiKam project
|
||||||
|
+ * http://www.digikam.org
|
||||||
|
+ *
|
||||||
|
+ * Date : 2016-09-29
|
||||||
|
+ * Description : migration page from digikam4
|
||||||
|
+ *
|
||||||
|
+ * Copyright (C) 2016 by Antonio Larrosa <alarrosa at suse dot com>
|
||||||
|
+ *
|
||||||
|
+ * This program is free software; you can redistribute it
|
||||||
|
+ * and/or modify it under the terms of the GNU General
|
||||||
|
+ * Public License as published by the Free Software Foundation;
|
||||||
|
+ * either version 2, or (at your option)
|
||||||
|
+ * any later version.
|
||||||
|
+ *
|
||||||
|
+ * This program is distributed in the hope that it will be useful,
|
||||||
|
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
+ * GNU General Public License for more details.
|
||||||
|
+ *
|
||||||
|
+ * ============================================================ */
|
||||||
|
+
|
||||||
|
+#include "migratefromdigikam4page.h"
|
||||||
|
+
|
||||||
|
+// Qt includes
|
||||||
|
+
|
||||||
|
+#include <QLabel>
|
||||||
|
+#include <QRadioButton>
|
||||||
|
+#include <QButtonGroup>
|
||||||
|
+#include <QDir>
|
||||||
|
+#include <QFileInfo>
|
||||||
|
+#include <QFile>
|
||||||
|
+#include <QStringList>
|
||||||
|
+#include <QVBoxLayout>
|
||||||
|
+#include <QApplication>
|
||||||
|
+#include <QStyle>
|
||||||
|
+#include <QSqlDatabase>
|
||||||
|
+#include <QSqlQuery>
|
||||||
|
+#include <QSqlError>
|
||||||
|
+
|
||||||
|
+// KDE includes
|
||||||
|
+
|
||||||
|
+#include <klocalizedstring.h>
|
||||||
|
+#include <kdelibs4configmigrator.h>
|
||||||
|
+#include <kdelibs4migration.h>
|
||||||
|
+
|
||||||
|
+// Local includes
|
||||||
|
+
|
||||||
|
+#include "digikam_debug.h"
|
||||||
|
+#include "dbengineparameters.h"
|
||||||
|
+#include "dwidgetutils.h"
|
||||||
|
+
|
||||||
|
+namespace Digikam
|
||||||
|
+{
|
||||||
|
+
|
||||||
|
+MigrateFromDigikam4Page::MigrateFromDigikam4Page(FirstRunDlg* const dlg)
|
||||||
|
+ : FirstRunDlgPage(dlg, i18n("Migration from digiKam 4") ),
|
||||||
|
+ m_migrateBehavior(0L), m_migrate(0L), m_createnew(0L)
|
||||||
|
+{
|
||||||
|
+ const int spacing = QApplication::style()->pixelMetric(QStyle::PM_DefaultLayoutSpacing);
|
||||||
|
+
|
||||||
|
+ DVBox* const vbox = new DVBox(this);
|
||||||
|
+ QLabel* const title = new QLabel(vbox);
|
||||||
|
+ title->setWordWrap(true);
|
||||||
|
+ title->setText(i18n("<qt>"
|
||||||
|
+ "<p><h1><b>Migrate configuration and metadata from digiKam 4</b></h1></p>"
|
||||||
|
+ "<p>You can choose here if you want to use the configuration and albums from digiKam 4 in digiKam 5 . "
|
||||||
|
+ "Please note the following warnings:</p>"
|
||||||
|
+ "<p>Migration is done <b>at your own risk</b>. Digikam developers "
|
||||||
|
+ "don't recommend it and don't support it. On the other hand, Creating "
|
||||||
|
+ "a new configuration might result in loss of tags and other metadata that wasn't embedded inside "
|
||||||
|
+ "the pictures and was only available in digiKam 4's database.</p>"
|
||||||
|
+ "<p>In either case you're recommended to backup "
|
||||||
|
+ "the configuration files and databases before proceeding.</p>"
|
||||||
|
+ "</qt>"));
|
||||||
|
+
|
||||||
|
+ QWidget* const btns = new QWidget(vbox);
|
||||||
|
+ QVBoxLayout* const vlay = new QVBoxLayout(btns);
|
||||||
|
+
|
||||||
|
+ m_migrateBehavior = new QButtonGroup(btns);
|
||||||
|
+ m_migrate = new QRadioButton(btns);
|
||||||
|
+ m_migrate->setText(i18n("Migrate configuration from digiKam 4"));
|
||||||
|
+ m_migrate->setChecked(true);
|
||||||
|
+ connect(m_migrate, SIGNAL(toggled(bool)), this, SLOT(migrationToggled(bool)) );
|
||||||
|
+ m_migrateBehavior->addButton(m_migrate);
|
||||||
|
+
|
||||||
|
+ m_createnew = new QRadioButton(btns);
|
||||||
|
+ m_createnew->setText(i18n("Create a new configuration"));
|
||||||
|
+ m_migrateBehavior->addButton(m_createnew);
|
||||||
|
+
|
||||||
|
+ vlay->addWidget(m_migrate);
|
||||||
|
+ vlay->addWidget(m_createnew);
|
||||||
|
+ vlay->setContentsMargins(spacing, spacing, spacing, spacing);
|
||||||
|
+ vlay->setSpacing(spacing);
|
||||||
|
+
|
||||||
|
+ connect(m_migrateBehavior, SIGNAL(buttonClicked(int)), this, SIGNAL(completeChanged()));
|
||||||
|
+
|
||||||
|
+ setPageWidget(vbox);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+MigrateFromDigikam4Page::~MigrateFromDigikam4Page()
|
||||||
|
+{
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+void MigrateFromDigikam4Page::doMigration()
|
||||||
|
+{
|
||||||
|
+ // Migrate digiKam config files from $KDEHOME/share/config/
|
||||||
|
+ Kdelibs4ConfigMigrator migrator(QStringLiteral("digikam"));
|
||||||
|
+ QStringList configFiles;
|
||||||
|
+ configFiles << QStringLiteral("digikamrc")
|
||||||
|
+ << QStringLiteral("digikam_tagsmanagerrc")
|
||||||
|
+ << QStringLiteral("kipipluginsrc")
|
||||||
|
+ << QStringLiteral("kipirc")
|
||||||
|
+ << QStringLiteral("showfotorc");
|
||||||
|
+ migrator.setConfigFiles( configFiles );
|
||||||
|
+ migrator.migrate();
|
||||||
|
+
|
||||||
|
+ // Migrate digiKam config files from $KDEHOME/share/apps/digikam/
|
||||||
|
+ Kdelibs4Migration migration;
|
||||||
|
+ QString oldappdatadir = migration.locateLocal("data", QStringLiteral("digikam"));
|
||||||
|
+ QStringList oldAppFiles = QDir(oldappdatadir).entryList( QDir::Files | QDir::Readable | QDir::NoDotAndDotDot );
|
||||||
|
+
|
||||||
|
+ Q_FOREACH( const QString &configFileName, oldAppFiles)
|
||||||
|
+ {
|
||||||
|
+ const QString newConfigLocation
|
||||||
|
+ = QStandardPaths::writableLocation(QStandardPaths::DataLocation)
|
||||||
|
+ + QLatin1Char('/') + configFileName;
|
||||||
|
+
|
||||||
|
+ if (QFile(newConfigLocation).exists()) {
|
||||||
|
+ qCDebug(DIGIKAM_GENERAL_LOG) << newConfigLocation << " already exists. Skipping";
|
||||||
|
+ continue;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ QFileInfo fileInfo(newConfigLocation);
|
||||||
|
+ QDir().mkpath(fileInfo.absolutePath());
|
||||||
|
+
|
||||||
|
+ const QString oldConfigFile = oldappdatadir + QLatin1Char('/') + configFileName;
|
||||||
|
+ if (!oldConfigFile.isEmpty()) {
|
||||||
|
+ if (QFile(oldConfigFile).copy(newConfigLocation)) {
|
||||||
|
+ qCDebug(DIGIKAM_GENERAL_LOG) << "Config file" << oldConfigFile << "was migrated to" << newConfigLocation;
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ // Fix albumroot identifier since digiKam 5 doesn't interpret correctly
|
||||||
|
+ // values like volumeid:?path=%2Fhome%2Fantonio%2FPictures and it needs
|
||||||
|
+ // to be url-decoded.
|
||||||
|
+ DbEngineParameters parameters = DbEngineParameters::parametersFromConfig(KSharedConfig::openConfig());
|
||||||
|
+ QSqlDatabase databaseHandler = QSqlDatabase::addDatabase(parameters.databaseType, QStringLiteral("digikam4migration"));
|
||||||
|
+
|
||||||
|
+ databaseHandler.setHostName(parameters.hostName);
|
||||||
|
+ databaseHandler.setPort(parameters.port);
|
||||||
|
+ databaseHandler.setDatabaseName(parameters.databaseNameCore);
|
||||||
|
+ databaseHandler.setUserName(parameters.userName);
|
||||||
|
+ databaseHandler.setPassword(parameters.password);
|
||||||
|
+ databaseHandler.setConnectOptions(parameters.connectOptions);
|
||||||
|
+ if (!databaseHandler.open()) {
|
||||||
|
+ qCDebug(DIGIKAM_GENERAL_LOG) << "Cannot open database:" << databaseHandler.lastError().text();
|
||||||
|
+ return;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ QSqlQuery query(QStringLiteral("SELECT id,identifier FROM albumroots"), databaseHandler);
|
||||||
|
+ while (query.next()) {
|
||||||
|
+ int id = query.value(0).toInt();
|
||||||
|
+ QString identifier = query.value(1).toString();
|
||||||
|
+
|
||||||
|
+ if (identifier.startsWith(QStringLiteral("volumeid:?path=%2F")))
|
||||||
|
+ {
|
||||||
|
+ QUrl url(identifier);
|
||||||
|
+ url.setQuery(url.query(QUrl::FullyDecoded), QUrl::DecodedMode);
|
||||||
|
+ qCDebug(DIGIKAM_GENERAL_LOG) << "Updating albumroot " << id << " from " << identifier << " to " << url.toString();
|
||||||
|
+ QSqlQuery uquery(QStringLiteral("UPDATE albumroots SET identifier=? WHERE id=?"), databaseHandler);
|
||||||
|
+ uquery.bindValue(0, url.toString());
|
||||||
|
+ uquery.bindValue(1, id);
|
||||||
|
+ uquery.exec();
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+ databaseHandler.close();
|
||||||
|
+
|
||||||
|
+ qCDebug(DIGIKAM_GENERAL_LOG) << "Migration finished";
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+bool MigrateFromDigikam4Page::isMigrationChecked() const
|
||||||
|
+{
|
||||||
|
+ return m_migrate->isChecked();
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+void MigrateFromDigikam4Page::migrationToggled(bool b)
|
||||||
|
+{
|
||||||
|
+ setFinalPage(b);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+int MigrateFromDigikam4Page::nextId() const
|
||||||
|
+{
|
||||||
|
+ if (m_migrate->isChecked())
|
||||||
|
+ return -1;
|
||||||
|
+ else
|
||||||
|
+ return QWizardPage::nextId();
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+} // namespace Digikam
|
||||||
|
Index: digikam-5.2.0/core/utilities/assistants/firstrun/migratefromdigikam4page.h
|
||||||
|
===================================================================
|
||||||
|
--- /dev/null
|
||||||
|
+++ digikam-5.2.0/core/utilities/assistants/firstrun/migratefromdigikam4page.h
|
||||||
|
@@ -0,0 +1,63 @@
|
||||||
|
+/* ============================================================
|
||||||
|
+ *
|
||||||
|
+ * This file is a part of digiKam project
|
||||||
|
+ * http://www.digikam.org
|
||||||
|
+ *
|
||||||
|
+ * Date : 2016-09-29
|
||||||
|
+ * Description : migration page from digikam4
|
||||||
|
+ *
|
||||||
|
+ * Copyright (C) 2016 by Antonio Larrosa <alarrosa at suse dot com>
|
||||||
|
+ *
|
||||||
|
+ * This program is free software; you can redistribute it
|
||||||
|
+ * and/or modify it under the terms of the GNU General
|
||||||
|
+ * Public License as published by the Free Software Foundation;
|
||||||
|
+ * either version 2, or (at your option)
|
||||||
|
+ * any later version.
|
||||||
|
+ *
|
||||||
|
+ * This program is distributed in the hope that it will be useful,
|
||||||
|
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
+ * GNU General Public License for more details.
|
||||||
|
+ *
|
||||||
|
+ * ============================================================ */
|
||||||
|
+
|
||||||
|
+#ifndef MIGRATEFROMDIGIKAM4_PAGE_H
|
||||||
|
+#define MIGRATEFROMDIGIKAM4_PAGE_H
|
||||||
|
+
|
||||||
|
+// Local includes
|
||||||
|
+
|
||||||
|
+#include "firstrundlgpage.h"
|
||||||
|
+
|
||||||
|
+class QRadioButton;
|
||||||
|
+class QButtonGroup;
|
||||||
|
+namespace Digikam
|
||||||
|
+{
|
||||||
|
+
|
||||||
|
+class MigrateFromDigikam4Page : public FirstRunDlgPage
|
||||||
|
+{
|
||||||
|
+Q_OBJECT
|
||||||
|
+
|
||||||
|
+public:
|
||||||
|
+
|
||||||
|
+ explicit MigrateFromDigikam4Page(FirstRunDlg* const dlg);
|
||||||
|
+ ~MigrateFromDigikam4Page();
|
||||||
|
+
|
||||||
|
+ /**
|
||||||
|
+ * Returns true if the user selected to do a migration
|
||||||
|
+ */
|
||||||
|
+ bool isMigrationChecked() const;
|
||||||
|
+ void doMigration();
|
||||||
|
+ int nextId() const;
|
||||||
|
+
|
||||||
|
+public Q_SLOTS:
|
||||||
|
+ void migrationToggled(bool b);
|
||||||
|
+
|
||||||
|
+protected:
|
||||||
|
+ QButtonGroup *m_migrateBehavior;
|
||||||
|
+ QRadioButton *m_migrate;
|
||||||
|
+ QRadioButton *m_createnew;
|
||||||
|
+};
|
||||||
|
+
|
||||||
|
+} // namespace Digikam
|
||||||
|
+
|
||||||
|
+#endif /* MIGRATEFROMDIGIKAM4_PAGE_H */
|
||||||
|
Index: digikam-5.2.0/core/utilities/assistants/firstrun/welcomepage.cpp
|
||||||
|
===================================================================
|
||||||
|
--- digikam-5.2.0.orig/core/utilities/assistants/firstrun/welcomepage.cpp
|
||||||
|
+++ digikam-5.2.0/core/utilities/assistants/firstrun/welcomepage.cpp
|
||||||
|
@@ -52,6 +52,7 @@ WelcomePage::WelcomePage(FirstRunDlg* co
|
||||||
|
"application published as open-source.</p>"
|
||||||
|
"<p>This assistant will help you to configure first "
|
||||||
|
"run settings to be able to use digiKam quickly.</p>"
|
||||||
|
+#if defined Q_OS_WIN || defined Q_OS_OSX
|
||||||
|
"<br/>"
|
||||||
|
"<p>You can ignore the following if you use digiKam "
|
||||||
|
"for the first time:</p>"
|
||||||
|
@@ -75,10 +76,11 @@ WelcomePage::WelcomePage(FirstRunDlg* co
|
||||||
|
#elif defined Q_OS_OSX
|
||||||
|
// MacOS settings place.
|
||||||
|
QLatin1String("~/Library/Preferences/"), QLatin1String("~/Library/Preferences/KDE/share/config/")
|
||||||
|
-#else
|
||||||
|
- // Linux settings place.
|
||||||
|
- QLatin1String("~/.config/"), QLatin1String("~/.kde4/share/config")
|
||||||
|
#endif
|
||||||
|
+#else // defined Q_OS_LINUX
|
||||||
|
+ "</qt>",
|
||||||
|
+ QLatin1String(digikam_version_short)
|
||||||
|
+#endif
|
||||||
|
));
|
||||||
|
|
||||||
|
setPageWidget(vbox);
|
||||||
|
Index: digikam-5.2.0/po/es/digikam.po
|
||||||
|
===================================================================
|
||||||
|
--- digikam-5.2.0.orig/po/es/digikam.po
|
||||||
|
+++ digikam-5.2.0/po/es/digikam.po
|
||||||
|
@@ -16820,6 +16820,41 @@ msgstr ""
|
||||||
|
"podrá alterar las operaciones de gestión de las fotografías haciéndolas más "
|
||||||
|
"lentas.</p></qt>"
|
||||||
|
|
||||||
|
+#: utilities/assistants/firstrun/migratefromdigikam4page.cpp:58
|
||||||
|
+msgid "Migration from digiKam 4"
|
||||||
|
+msgstr "Migración desde Digikam4"
|
||||||
|
+
|
||||||
|
+#: utilities/assistants/firstrun/migratefromdigikam4page.cpp:66
|
||||||
|
+msgid ""
|
||||||
|
+"<qt><p><h1><b>Migrate configuration and metadata from digiKam 4</b></h1></"
|
||||||
|
+"p><p>You can choose here if you want to use the configuration and albums "
|
||||||
|
+"from digiKam 4 in digiKam 5 . Please note the following warnings:</"
|
||||||
|
+"p><p>Migration is done <b>at your own risk</b>. Digikam developers don't "
|
||||||
|
+"recommend it and don't support it. On the other hand, Creating a new "
|
||||||
|
+"configuration might result in loss of tags and other metadata that wasn't "
|
||||||
|
+"embedded inside the pictures and was only available in digiKam 4's database."
|
||||||
|
+"</p><p>In either case you're recommended to backup the configuration files "
|
||||||
|
+"and databases before proceeding.</p></qt>"
|
||||||
|
+msgstr ""
|
||||||
|
+"<qt><p><h1><b>Migración de configuración y metadatos desde digiKam 4</b></"
|
||||||
|
+"h1></p><p>Puede elegir aquí si quieres usar la configuración y albums de "
|
||||||
|
+"digiKam 4 en digiKam 5. Por favor, observe las siguientes advertencias:</"
|
||||||
|
+"p><p>La migration se hace <b>bajo su propia responsabilidad</b>. Los "
|
||||||
|
+"desarrolladores de Digikam no la recomiendan y no dan soporte. Por otra "
|
||||||
|
+"parte, crear una configuración nueva puede resultar en pérdida de etiquetas "
|
||||||
|
+"y otros metadatos que no estaban almacenados dentro de las imágenes y sólo "
|
||||||
|
+"estaban en la base de datos de digiKam 4.</p><p>En cualquier caso, se "
|
||||||
|
+"recomienda que hagas un backup de los ficheros de configuración y bases de "
|
||||||
|
+"datos antes de continuar.</p></qt>"
|
||||||
|
+
|
||||||
|
+#: utilities/assistants/firstrun/migratefromdigikam4page.cpp:83
|
||||||
|
+msgid "Migrate configuration from digiKam 4"
|
||||||
|
+msgstr "Migrar configuración de digiKam 4"
|
||||||
|
+
|
||||||
|
+#: utilities/assistants/firstrun/migratefromdigikam4page.cpp:89
|
||||||
|
+msgid "Create a new configuration"
|
||||||
|
+msgstr "Crear nueva configuración"
|
||||||
|
+
|
||||||
|
#: utilities/assistants/firstrun/openfilepage.cpp:66
|
||||||
|
msgid "<b>Configure Open File Behavior</b>"
|
||||||
|
msgstr "<b>Configurar el comportamiento de apertura de archivos</b>"
|
Loading…
Reference in New Issue
Block a user