diff options
Diffstat (limited to 'src/revisioncontrolobserver.h')
| -rw-r--r-- | src/revisioncontrolobserver.h | 23 |
1 files changed, 21 insertions, 2 deletions
diff --git a/src/revisioncontrolobserver.h b/src/revisioncontrolobserver.h index 14ea0528e..c5cf9bb0d 100644 --- a/src/revisioncontrolobserver.h +++ b/src/revisioncontrolobserver.h @@ -22,14 +22,18 @@ #include <libdolphin_export.h> +#include <kfileitem.h> +#include <revisioncontrolplugin.h> #include <QObject> +#include <QPersistentModelIndex> #include <QString> class DolphinModel; class KDirLister; class QAbstractItemView; +class QThread; class QTimer; -class RevisionControlPlugin; +class UpdateItemStatesThread; /** * @brief Observes all revision control plugins. @@ -50,16 +54,31 @@ public: private slots: void delayedDirectoryVerification(); void verifyDirectory(); - + void applyUpdatedItemStates(); + private: void updateItemStates(); private: + struct ItemState + { + QPersistentModelIndex index; + KFileItem item; + RevisionControlPlugin::RevisionState revision; + }; + + bool m_pendingItemStatesUpdate; + QAbstractItemView* m_view; KDirLister* m_dirLister; DolphinModel* m_dolphinModel; + QTimer* m_dirVerificationTimer; + RevisionControlPlugin* m_plugin; + UpdateItemStatesThread* m_updateItemStatesThread; + + friend class UpdateItemStatesThread; }; #endif // REVISIONCONTROLOBSERVER_H |
