Example #1
0
class OrLogsListView(QListView):
    def __init__(self, parent=None):
        super(OrLogsListView, self).__init__(parent)
        self.model = QFileSystemModel()
        self.model.sort(3, Qt.DescendingOrder)
        self.model.setFilter(QDir.Files)
        self.setModel(self.model)

    def mouseDoubleClickEvent(self, event):
        """method override"""
        QListView.mouseDoubleClickEvent(self, event)
        self.clicked()

    def getSelectedPath(self):
        """Return selected filename"""
        index = self.currentIndex()
        if index:
            return os.path.normpath(self.model.filePath(index))

    def clicked(self):
        fname = self.getSelectedPath()
        if fname:
            self.open(fname)

    def open(self, fname):
        QDesktopServices.openUrl(QUrl('file:///' + fname))

    def setup(self, wdir='.'):
        os.makedirs(wdir, exist_ok=True)
        self.model.setRootPath(wdir)
        self.setRootIndex(self.model.index(wdir))
Example #2
0
File: gui.py Project: cbig/gedagui
 def update_dirmodel(self, path):
     dirmodel = QFileSystemModel()
     dirmodel.setFilter(QDir.NoDotAndDotDot | QDir.AllEntries)
     filefilter = ["*.zip"]
     dirmodel.setNameFilters(filefilter)
     dirmodel.sort(0, Qt.AscendingOrder)
     self.file_treeView.setModel(dirmodel)
     self.file_treeView.header().setResizeMode(3)
     self.file_treeView.model().setRootPath(path)
     self.file_treeView.setRootIndex(self.file_treeView.model().index(path))