X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/b2e54c3a316b502ab4f7a95250f8316dc591c057..76a46fd9094b17eb99e8a42cca8562fdc0b3814c:/src/kitemviews/private/kitemlistroleeditor.h diff --git a/src/kitemviews/private/kitemlistroleeditor.h b/src/kitemviews/private/kitemlistroleeditor.h index 14aa694ce..7285d62f7 100644 --- a/src/kitemviews/private/kitemlistroleeditor.h +++ b/src/kitemviews/private/kitemlistroleeditor.h @@ -20,48 +20,57 @@ #ifndef KITEMLISTROLEEDITOR_H #define KITEMLISTROLEEDITOR_H -#include "libdolphin_export.h" +#include "dolphin_export.h" #include /** - * @brief + * @brief Editor for renaming roles of a KItemListWidget. + * + * Provides signals when the editing got cancelled (e.g. by + * pressing Escape or when losing the focus) or when the editing + * got finished (e.g. by pressing Enter or Return). + * + * The size automatically gets increased if the text does not fit. */ -class LIBDOLPHINPRIVATE_EXPORT KItemListRoleEditor : public KTextEdit +class DOLPHIN_EXPORT KItemListRoleEditor : public KTextEdit { Q_OBJECT public: explicit KItemListRoleEditor(QWidget* parent); - virtual ~KItemListRoleEditor(); - - void setIndex(int index); - int index() const; + ~KItemListRoleEditor() override; void setRole(const QByteArray& role); QByteArray role() const; - virtual bool eventFilter(QObject* watched, QEvent* event); + bool eventFilter(QObject* watched, QEvent* event) override; signals: - void roleEditingFinished(int index, const QByteArray& role, const QVariant& value); - void roleEditingCanceled(int index, const QByteArray& role, const QVariant& value); + void roleEditingFinished(const QByteArray& role, const QVariant& value); + void roleEditingCanceled(const QByteArray& role, const QVariant& value); protected: - virtual bool event(QEvent* event); - virtual void keyPressEvent(QKeyEvent* event); + bool event(QEvent* event) override; + void keyPressEvent(QKeyEvent* event) override; private slots: /** - * Increases the width of the editor in case if there is not + * Increases the size of the editor in case if there is not * enough room for the text. */ void autoAdjustSize(); private: - int m_index; - QByteArray m_role; + /** + * Emits the signal roleEditingFinished if m_blockFinishedSignal + * is false. + */ + void emitRoleEditingFinished(); +private: + QByteArray m_role; + bool m_blockFinishedSignal; }; #endif