def path_from_index(self, index): """ Reimplemented. Finds part of a path given the index of the last part required. """ data_list = QStringList() while index.isValid(): data_list.prepend(self.model().data(index).toString()) index = index.parent() ret = data_list.join("/") print "path from index: %s" % (data_list.join(" :: ")) return ret
def __qtReorderFilter(filter, selectedFilter = None): """ Private function to reorder the file filter to cope with a KDE issue introduced by distributors usage of KDE file dialogs. @param filter Qt file filter (QString or string) @param selectedFilter this is set to the selected filter (QString or string) @return the rearranged Qt file filter (QString) """ if selectedFilter is not None and not Globals.isMacPlatform(): fileFilters = QStringList(filter.split(';;')) ## fileFilters.removeAll(selectedFilter) fileFilters.prepend(selectedFilter) return fileFilters.join(";;") else: return filter
def __convertFilter(filter, selectedFilter = None): """ Private function to convert a Qt file filter to a KDE file filter. @param filter Qt file filter (QString or string) @param selectedFilter this is set to the selected filter @return the corresponding KDE file filter (QString) """ rx = QRegExp("^[^(]*\(([^)]*)\).*$") fileFilters = filter.split(';;') newfilter = QStringList() for fileFilter in fileFilters: sf = selectedFilter and selectedFilter.compare(fileFilter) == 0 namefilter = QString(fileFilter).replace(rx, "\\1") fileFilter = QString(fileFilter).replace('/', '\\/') if sf: newfilter.prepend("%s|%s" % (namefilter, fileFilter)) else: newfilter.append("%s|%s" % (namefilter, fileFilter)) return newfilter.join('\n')