1 | /* |
2 | This file is part of the KDE project |
3 | SPDX-FileCopyrightText: 2003 Waldo Bastian <bastian@kde.org> |
4 | |
5 | SPDX-License-Identifier: LGPL-2.0-only |
6 | */ |
7 | |
8 | #ifndef KBUILDSYCOCAPROGRESSDIALOG_H |
9 | #define KBUILDSYCOCAPROGRESSDIALOG_H |
10 | |
11 | #include "kiowidgets_export.h" |
12 | #include <QProgressDialog> |
13 | #include <QTimer> |
14 | |
15 | #include <memory> |
16 | |
17 | class KBuildSycocaProgressDialogPrivate; |
18 | /*! |
19 | * \class KBuildSycocaProgressDialog |
20 | * \inmodule KIOWidgets |
21 | * |
22 | * \brief Progress dialog while ksycoca is being rebuilt (by kbuildsycoca). |
23 | * |
24 | * Usage: |
25 | * \code |
26 | * KBuildSycocaProgressDialog::rebuildKSycoca(parentWidget); |
27 | * \endcode |
28 | */ |
29 | class KIOWIDGETS_EXPORT KBuildSycocaProgressDialog : public QProgressDialog |
30 | { |
31 | Q_OBJECT |
32 | public: |
33 | /*! |
34 | * Rebuild KSycoca and show a progress dialog while doing so. |
35 | * |
36 | * \a parent Parent widget for the progress dialog |
37 | */ |
38 | static void rebuildKSycoca(QWidget *parent); |
39 | |
40 | private: |
41 | KIOWIDGETS_NO_EXPORT KBuildSycocaProgressDialog(QWidget *parent, const QString &title, const QString &text); |
42 | KIOWIDGETS_NO_EXPORT ~KBuildSycocaProgressDialog() override; |
43 | |
44 | private: |
45 | std::unique_ptr<KBuildSycocaProgressDialogPrivate> const d; |
46 | }; |
47 | |
48 | #endif |
49 | |