digiKam
Loading...
Searching...
No Matches
dbengineguierrorhandler.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-09-27
7 * Description : Database engine gui error handler
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
22// Local includes
23
24#include "dbenginebackend.h"
26#include "digikam_export.h"
27
28namespace Digikam
29{
30
31class DIGIKAM_EXPORT DbEngineConnectionChecker : public QThread
32{
33 Q_OBJECT
34
35public:
36
37 explicit DbEngineConnectionChecker(const DbEngineParameters& parameters);
39
40 bool checkSuccessful() const;
41
42public Q_SLOTS:
43
44 void stopChecking();
45
46protected:
47
48 void run() override;
49
50Q_SIGNALS:
51
53 void done();
54
55private:
56
57 // Disable
58 DbEngineConnectionChecker(QObject*) = delete;
59
60 class Private;
61 Private* const d = nullptr;
62};
63
64// --------------------------------------------------------------
65
66class DIGIKAM_EXPORT DbEngineGuiErrorHandler : public DbEngineErrorHandler
67{
68 Q_OBJECT
69
70public:
71
72 explicit DbEngineGuiErrorHandler(const DbEngineParameters& parameters);
73 ~DbEngineGuiErrorHandler() override;
74
75 bool checkDatabaseConnection();
76
77public Q_SLOTS:
78
79 void connectionError(DbEngineErrorAnswer* answer, const QSqlError& error, const QString& query) override;
80 void consultUserForError(DbEngineErrorAnswer* answer, const QSqlError& error, const QString& query) override;
81
82private Q_SLOTS:
83
84 void showProgressDialog();
85
86private:
87
88 // Disabled
89 DbEngineGuiErrorHandler(QObject*) = delete;
90
91 class Private;
92 Private* const d = nullptr;
93};
94
95} // namespace Digikam
Definition dbengineguierrorhandler.h:32
Definition dbengineerrorhandler.h:32
Definition dbengineerrorhandler.h:50
Definition dbengineguierrorhandler.h:67
Definition dbengineparameters.h:39
Definition datefolderview.cpp:34