9 |
9 |
10 import os |
10 import os |
11 import re |
11 import re |
12 import contextlib |
12 import contextlib |
13 |
13 |
14 from PyQt5.QtCore import QDir, QModelIndex, pyqtSignal, QFileSystemWatcher, Qt |
14 from PyQt6.QtCore import QDir, QModelIndex, pyqtSignal, QFileSystemWatcher, Qt |
15 from PyQt5.QtGui import QColor |
15 from PyQt6.QtGui import QColor |
16 |
16 |
17 from UI.BrowserModel import ( |
17 from UI.BrowserModel import ( |
18 BrowserModel, BrowserItem, BrowserDirectoryItem, BrowserFileItem |
18 BrowserModel, BrowserItem, BrowserDirectoryItem, BrowserFileItem |
19 ) |
19 ) |
20 |
20 |
295 @return requested data |
295 @return requested data |
296 """ |
296 """ |
297 if not index.isValid(): |
297 if not index.isValid(): |
298 return None |
298 return None |
299 |
299 |
300 if role == Qt.ItemDataRole.TextColorRole: |
300 if role == Qt.ItemDataRole.ForegroundRole: |
301 if index.column() == 0: |
301 if index.column() == 0: |
302 try: |
302 try: |
303 return index.internalPointer().getTextColor() |
303 return index.internalPointer().getTextColor() |
304 except AttributeError: |
304 except AttributeError: |
305 return None |
305 return None |
306 elif role == Qt.ItemDataRole.BackgroundColorRole: |
306 elif role == Qt.ItemDataRole.BackgroundRole: |
307 try: |
307 try: |
308 col = self.itemBackgroundColors[ |
308 col = self.itemBackgroundColors[ |
309 index.internalPointer().vcsState] |
309 index.internalPointer().vcsState] |
310 if col.isValid(): |
310 if col.isValid(): |
311 return col |
311 return col |
344 self._addWatchedItem(parentItem) |
344 self._addWatchedItem(parentItem) |
345 |
345 |
346 qdir = QDir(parentItem.dirName()) |
346 qdir = QDir(parentItem.dirName()) |
347 |
347 |
348 fileFilter = ( |
348 fileFilter = ( |
349 QDir.Filters( |
349 ( |
350 QDir.Filter.AllEntries | |
350 QDir.Filter.AllEntries | |
351 QDir.Filter.Hidden | |
351 QDir.Filter.Hidden | |
352 QDir.Filter.NoDotAndDotDot |
352 QDir.Filter.NoDotAndDotDot |
353 ) |
353 ) |
354 if Preferences.getProject("BrowsersListHiddenFiles") else |
354 if Preferences.getProject("BrowsersListHiddenFiles") else |
355 QDir.Filters(QDir.Filter.AllEntries | QDir.Filter.NoDotAndDotDot) |
355 QDir.Filter.AllEntries | QDir.Filter.NoDotAndDotDot |
356 ) |
356 ) |
357 entryInfoList = qdir.entryInfoList(fileFilter) |
357 entryInfoList = qdir.entryInfoList(fileFilter) |
358 |
358 |
359 if len(entryInfoList) > 0: |
359 if len(entryInfoList) > 0: |
360 if repopulate: |
360 if repopulate: |
688 if path not in self.watchedItems: |
688 if path not in self.watchedItems: |
689 # just ignore the situation we don't have a reference to the item |
689 # just ignore the situation we don't have a reference to the item |
690 return |
690 return |
691 |
691 |
692 fileFilter = ( |
692 fileFilter = ( |
693 QDir.Filters( |
693 ( |
694 QDir.Filter.AllEntries | |
694 QDir.Filter.AllEntries | |
695 QDir.Filter.Hidden | |
695 QDir.Filter.Hidden | |
696 QDir.Filter.NoDotAndDotDot |
696 QDir.Filter.NoDotAndDotDot |
697 ) |
697 ) |
698 if Preferences.getProject("BrowsersListHiddenFiles") else |
698 if Preferences.getProject("BrowsersListHiddenFiles") else |
699 QDir.Filters(QDir.Filter.AllEntries | QDir.Filter.NoDotAndDotDot) |
699 QDir.Filter.AllEntries | QDir.Filter.NoDotAndDotDot |
700 ) |
700 ) |
701 |
701 |
702 for itm in self.watchedItems[path]: |
702 for itm in self.watchedItems[path]: |
703 oldCnt = itm.childCount() |
703 oldCnt = itm.childCount() |
704 |
704 |