415 itm = self.model().item(index) |
415 itm = self.model().item(index) |
416 if isinstance( |
416 if isinstance( |
417 itm, |
417 itm, |
418 (ProjectBrowserSimpleDirectoryItem, ProjectBrowserDirectoryItem), |
418 (ProjectBrowserSimpleDirectoryItem, ProjectBrowserDirectoryItem), |
419 ) and self.isExpanded(index): |
419 ) and self.isExpanded(index): |
|
420 self.collapse(index) |
|
421 index = self.indexAbove(index) |
|
422 self.layoutDisplay() |
|
423 self._connectExpandedCollapsed() |
|
424 |
|
425 def _collapseAllFiles(self): |
|
426 """ |
|
427 Protected slot to handle the 'Collapse all files' menu action. |
|
428 """ |
|
429 self._disconnectExpandedCollapsed() |
|
430 with EricOverrideCursor(): |
|
431 # step 1: find last valid index |
|
432 vindex = QModelIndex() |
|
433 index = self.model().index(0, 0) |
|
434 while index.isValid(): |
|
435 vindex = index |
|
436 index = self.indexBelow(index) |
|
437 |
|
438 # step 2: go up collapsing all directory items |
|
439 index = vindex |
|
440 while index.isValid(): |
|
441 itm = self.model().item(index) |
|
442 if isinstance(itm, ProjectBrowserFileItem) and self.isExpanded(index): |
420 self.collapse(index) |
443 self.collapse(index) |
421 index = self.indexAbove(index) |
444 index = self.indexAbove(index) |
422 self.layoutDisplay() |
445 self.layoutDisplay() |
423 self._connectExpandedCollapsed() |
446 self._connectExpandedCollapsed() |
424 |
447 |