From b2e54c3a316b502ab4f7a95250f8316dc591c057 Mon Sep 17 00:00:00 2001 From: Peter Penz Date: Tue, 17 Apr 2012 18:13:31 +0200 Subject: Implement inline-renaming for the new view-engine BUG: 286893 FIXED-IN: 4.9.0 --- src/kitemviews/kitemlistwidget.h | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'src/kitemviews/kitemlistwidget.h') diff --git a/src/kitemviews/kitemlistwidget.h b/src/kitemviews/kitemlistwidget.h index 4c8ff1a95..8a28913b6 100644 --- a/src/kitemviews/kitemlistwidget.h +++ b/src/kitemviews/kitemlistwidget.h @@ -102,6 +102,16 @@ public: void setSiblingsInformation(const QBitArray& siblings); QBitArray siblingsInformation() const; + /** + * Allows the user to edit the role \a role. The signals + * roleEditingCanceled() or roleEditingFinished() will be + * emitted after editing. An ongoing editing gets canceled if + * the role is empty. Derived classes must implement + * editedRoleChanged(). + */ + void setEditedRole(const QByteArray& role); + QByteArray editedRole() const; + /** * @return True if \a point is inside KItemListWidget::hoverRect(), * KItemListWidget::textRect(), KItemListWidget::selectionToggleRect() @@ -143,6 +153,10 @@ public: */ virtual QRectF expansionToggleRect() const; +signals: + void roleEditingCanceled(int index, const QByteArray& role, const QVariant& value); + void roleEditingFinished(int index, const QByteArray& role, const QVariant& value); + protected: virtual void dataChanged(const QHash& current, const QSet& roles = QSet()); virtual void visibleRolesChanged(const QList& current, const QList& previous); @@ -153,6 +167,7 @@ protected: virtual void hoveredChanged(bool hovered); virtual void alternateBackgroundChanged(bool enabled); virtual void siblingsInformationChanged(const QBitArray& current, const QBitArray& previous); + virtual void editedRoleChanged(const QByteArray& current, const QByteArray& previous); virtual void resizeEvent(QGraphicsSceneResizeEvent* event); /** @@ -190,6 +205,8 @@ private: QPropertyAnimation* m_hoverAnimation; KItemListSelectionToggle* m_selectionToggle; + + QByteArray m_editedRole; }; #endif -- cgit v1.3.1