#ifndef RENAMEDIALOG_H
#define RENAMEDIALOG_H
+#include "libdolphin_export.h"
+
#include <kdialog.h>
#include <kurl.h>
-#include <QString>
+class KFileItem;
+class KFileItemList;
class KLineEdit;
/**
* }
* \endcode
*/
-class RenameDialog : public KDialog
+class LIBDOLPHINPRIVATE_EXPORT RenameDialog : public KDialog
{
Q_OBJECT
public:
- explicit RenameDialog(const KUrl::List& items);
+ explicit RenameDialog(QWidget *parent, const KFileItemList& items);
virtual ~RenameDialog();
/**
- * Returns the new name of the items. If the returned string is not empty,
- * then it is assured that the string contains exactly one character #,
- * which should be replaced by ascending numbers. An empty string indicates
- * that the user has removed the # character.
+ * Returns the new name of the items. If more than one
+ * item should be renamed, then it is assured that the # character
+ * is part of the returned string. If the returned string is empty,
+ * then RenameDialog::errorString() should be used to show the reason
+ * of having an empty string (e. g. if the # character has
+ * been deleted by the user, although more than one item should be
+ * renamed).
*/
- const QString& newName() const { return m_newName; }
+ const QString& newName() const
+ {
+ return m_newName;
+ }
/**
* Returns the error string, if Dialog::newName() returned an empty string.
*/
- const QString& errorString() const { return m_errorString; }
+ const QString& errorString() const
+ {
+ return m_errorString;
+ }
protected slots:
virtual void slotButtonClicked(int button);
private:
+ bool m_renameOneItem;
KLineEdit* m_lineEdit;
QString m_newName;
QString m_errorString;
+
+ friend class RenameDialogTest; // allow access for unit testing
};
#endif