diff options
| author | Tannin <devnull@localhost> | 2014-02-18 19:08:12 +0100 |
|---|---|---|
| committer | Tannin <devnull@localhost> | 2014-02-18 19:08:12 +0100 |
| commit | bed3c08a6dd59332edff8f67c4423e56b39a9a09 (patch) | |
| tree | 119c06d0e0df0e7ea9bc42e51aaf3c055ca288c0 /src/mainwindow.cpp | |
| parent | f9eba9dc15ec655cc16efbb1ddccac3a562741d5 (diff) | |
- bugfix: on-demand loading of data tree broke filtering on conflicting files
Diffstat (limited to 'src/mainwindow.cpp')
| -rw-r--r-- | src/mainwindow.cpp | 25 |
1 files changed, 14 insertions, 11 deletions
diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp index 556c33f3..4c66ccce 100644 --- a/src/mainwindow.cpp +++ b/src/mainwindow.cpp @@ -1558,18 +1558,21 @@ void MainWindow::updateTo(QTreeWidgetItem *subTree, const std::wstring &director columns.append(""); if (!(*current)->isEmpty()) { QTreeWidgetItem *directoryChild = new QTreeWidgetItem(columns); - QTreeWidgetItem *onDemandLoad = new QTreeWidgetItem(QStringList()); - onDemandLoad->setData(0, Qt::UserRole + 0, "__loaded_on_demand__"); - onDemandLoad->setData(0, Qt::UserRole + 1, ToQString(temp.str())); - onDemandLoad->setData(0, Qt::UserRole + 2, conflictsOnly); - directoryChild->addChild(onDemandLoad); - subTree->addChild(directoryChild); -/* updateTo(directoryChild, temp.str(), **current, conflictsOnly); - if (directoryChild->childCount() != 0) { - subTree->addChild(directoryChild); + if (conflictsOnly) { + updateTo(directoryChild, temp.str(), **current, conflictsOnly); + if (directoryChild->childCount() != 0) { + subTree->addChild(directoryChild); + } else { + delete directoryChild; + } } else { - delete directoryChild; - }*/ + QTreeWidgetItem *onDemandLoad = new QTreeWidgetItem(QStringList()); + onDemandLoad->setData(0, Qt::UserRole + 0, "__loaded_on_demand__"); + onDemandLoad->setData(0, Qt::UserRole + 1, ToQString(temp.str())); + onDemandLoad->setData(0, Qt::UserRole + 2, conflictsOnly); + directoryChild->addChild(onDemandLoad); + subTree->addChild(directoryChild); + } } } } |
