diff filestatuswidget.h @ 95:d1be9712818a

* Update actions appropriately when selections are changed
author Chris Cannam
date Wed, 24 Nov 2010 16:29:05 +0000
parents 44ed7766d55a
children 0dc7305acbc8
line wrap: on
line diff
--- a/filestatuswidget.h	Wed Nov 24 14:41:52 2010 +0000
+++ b/filestatuswidget.h	Wed Nov 24 16:29:05 2010 +0000
@@ -43,19 +43,23 @@
     FileStates fileStates() const { return m_fileStates; }
     void setFileStates(FileStates sp);
 
-    bool haveChangesToCommit() const {
-        return !m_fileStates.added().empty() ||
-               !m_fileStates.removed().empty() ||
-               !m_fileStates.modified().empty();
-    }
+    bool haveChangesToCommit() const;
+    bool haveSelection() const;
 
-    QStringList getSelectedCommittableFiles();
-    QStringList getSelectedAddableFiles();
-    QStringList getSelectedRemoveableFiles();
+    QStringList getAllSelectedFiles() const;
+    QStringList getSelectedCommittableFiles() const;
+    QStringList getSelectedAddableFiles() const;
+    QStringList getSelectedRemovableFiles() const;
+
+signals:
+    void selectionChanged();
 
 public slots:
     void clearSelections();
 
+private slots:
+    void itemSelectionChanged();
+
 private:
     QString m_localPath;
     QLabel *m_localPathLabel;
@@ -67,9 +71,9 @@
     QMap<FileStates::State, QListWidget *> m_stateListMap;
 
     QFileInfo *m_dateReference;
+    QStringList m_selectedFiles;
 
     void updateWidgets();
-    void highlightFile(QListWidget *, int);
 };
 
 #endif