1 | /* |
2 | This file is part of the KDE libraries |
3 | SPDX-FileCopyrightText: 2006-2010 Peter Penz <peter.penz@gmx.at> |
4 | SPDX-FileCopyrightText: 2020 Méven Car <meven.car@kdemail.net> |
5 | |
6 | SPDX-License-Identifier: LGPL-2.0-or-later |
7 | */ |
8 | |
9 | #ifndef RENAMEFILEDIALOG_H |
10 | #define RENAMEFILEDIALOG_H |
11 | |
12 | #include <KFileItem> |
13 | |
14 | #include "kiowidgets_export.h" |
15 | |
16 | #include <QDialog> |
17 | #include <QString> |
18 | |
19 | class QLineEdit; |
20 | class QSpinBox; |
21 | class QPushButton; |
22 | class KJob; |
23 | |
24 | namespace KIO |
25 | { |
26 | class RenameFileDialogPrivate; |
27 | |
28 | /** |
29 | * @class KIO::RenameFileDialog renamefiledialog.h <KIO/RenameFileDialog> |
30 | * |
31 | * @brief Dialog for renaming a variable number of files. |
32 | * |
33 | * The dialog deletes itself when accepted or rejected. |
34 | * |
35 | * @since 5.67 |
36 | */ |
37 | // TODO KF6 : rename the class RenameFileDialog to RenameDialog and the class RenameDialog to RenameFileOverwrittenDialog or similar. |
38 | class KIOWIDGETS_EXPORT RenameFileDialog : public QDialog |
39 | { |
40 | Q_OBJECT |
41 | |
42 | public: |
43 | /** |
44 | * Constructs the Dialog to rename file(s) |
45 | * |
46 | * @param parent the parent QWidget |
47 | * @param items a non-empty list of items to rename |
48 | */ |
49 | explicit RenameFileDialog(const KFileItemList &items, QWidget *parent); |
50 | ~RenameFileDialog() override; |
51 | |
52 | Q_SIGNALS: |
53 | void renamingFinished(const QList<QUrl> &urls); |
54 | void error(KJob *error); |
55 | |
56 | private Q_SLOTS: |
57 | KIOWIDGETS_NO_EXPORT void slotAccepted(); |
58 | KIOWIDGETS_NO_EXPORT void slotTextChanged(const QString &newName); |
59 | KIOWIDGETS_NO_EXPORT void slotFileRenamed(const QUrl &oldUrl, const QUrl &newUrl); |
60 | KIOWIDGETS_NO_EXPORT void slotResult(KJob *job); |
61 | |
62 | private: |
63 | class RenameFileDialogPrivate; |
64 | RenameFileDialogPrivate *const d; |
65 | }; |
66 | } // namespace KIO |
67 | |
68 | #endif |
69 | |