comparison hgtabwidget.cpp @ 204:d256cc418fa3

* Fix failure to enable Add button when a "Removed" file was selected
author Chris Cannam
date Tue, 04 Jan 2011 15:22:07 +0000
parents f16fe0db11f3
children e67bd8abc3e3
comparison
equal deleted inserted replaced
203:c77c4d00a4fe 204:d256cc418fa3
113 !m_fileStatusWidget->getAllUnresolvedFiles().empty(); 113 !m_fileStatusWidget->getAllUnresolvedFiles().empty();
114 } 114 }
115 115
116 bool HgTabWidget::canAdd() const 116 bool HgTabWidget::canAdd() const
117 { 117 {
118 if (m_fileStatusWidget->getSelectedAddableFiles().empty()) return false; 118 QStringList addable = m_fileStatusWidget->getSelectedAddableFiles();
119 if (!m_fileStatusWidget->getSelectedCommittableFiles().empty()) return false; 119 if (addable.empty()) return false;
120 if (!m_fileStatusWidget->getSelectedRemovableFiles().empty()) return false; 120
121 return true; 121 QStringList removable = m_fileStatusWidget->getSelectedRemovableFiles();
122 if (!removable.empty()) return false;
123
124 QStringList committable = m_fileStatusWidget->getSelectedCommittableFiles();
125 // "Removed" files are both committable and addable; don't return
126 // a false positive if the selection only contains these
127 if (committable == addable || committable.empty()) return true;
128 return false;
122 } 129 }
123 130
124 bool HgTabWidget::canRemove() const 131 bool HgTabWidget::canRemove() const
125 { 132 {
126 if (m_fileStatusWidget->getSelectedRemovableFiles().empty()) return false; 133 if (m_fileStatusWidget->getSelectedRemovableFiles().empty()) return false;