digiKam
Loading...
Searching...
No Matches
dbmigrationdlg.h
Go to the documentation of this file.
1/* ============================================================
2 *
3 * This file is a part of digiKam project
4 * https://www.digikam.org
5 *
6 * Date : 2009-11-14
7 * Description : database migration dialog
8 *
9 * SPDX-FileCopyrightText: 2009-2010 by Holger Foerster <Hamsi2k at freenet dot de>
10 * SPDX-FileCopyrightText: 2010-2024 by Gilles Caulier <caulier dot gilles at gmail dot com>
11 *
12 * SPDX-License-Identifier: GPL-2.0-or-later
13 *
14 * ============================================================ */
15
16#pragma once
17
18// QT includes
19
20#include <QThread>
21#include <QProgressBar>
22#include <QDialog>
23
24// Local includes
25
26#include "digikam_export.h"
27#include "dbsettingswidget.h"
28#include "coredbbackend.h"
29#include "coredbcopymanager.h"
30
31namespace Digikam
32{
33
34class DatabaseCopyThread : public QThread
35{
36 Q_OBJECT
37
38public:
39
40 explicit DatabaseCopyThread(QWidget* const parent);
41 ~DatabaseCopyThread() override;
42
43 void init(const DbEngineParameters& fromDatabaseSettingsWidget,
44 const DbEngineParameters& toDatabaseSettingsWidget);
45 void run() override;
46
47public:
48
50
51private:
52
53 class Private;
54 Private* const d = nullptr;
55};
56
57// --------------------------------------------------------------------
58
59class DIGIKAM_GUI_EXPORT DatabaseMigrationDialog : public QDialog
60{
61 Q_OBJECT
62
63public:
64
65 explicit DatabaseMigrationDialog(QWidget* const parent);
66 ~DatabaseMigrationDialog() override;
67
68private Q_SLOTS:
69
70 void slotHelp();
71 void slotPerformCopy();
72 void slotUnlockInputFields();
73 void slotLockInputFields();
74
75 void slotHandleFinish(int finishState, const QString& errorMsg);
76 void slotHandleStepStarted(const QString& stepName);
77 void slotHandleSmallStepStarted(int currValue, int maxValue);
78
79private:
80
81 void setupMainArea();
82 void dataInit();
83
84private:
85
86 class Private;
87 Private* const d = nullptr;
88};
89
90} // namespace Digikam
Definition coredbcopymanager.h:31
Definition dbmigrationdlg.h:35
void init(const DbEngineParameters &fromDatabaseSettingsWidget, const DbEngineParameters &toDatabaseSettingsWidget)
Definition dbmigrationdlg.cpp:76
void run() override
Definition dbmigrationdlg.cpp:71
~DatabaseCopyThread() override
Definition dbmigrationdlg.cpp:66
CoreDbCopyManager m_copyManager
Definition dbmigrationdlg.h:49
Definition dbmigrationdlg.h:60
Definition dbengineparameters.h:39
Definition datefolderview.cpp:34