def data(self, index, role): if not index.isValid(): return None item = model_item(index) if role == Qt.DisplayRole: return self.column_getters[index.column()](item) if role == Qt.CheckStateRole: if index.column() > 0: return None item = model_item(index) return Qt.Checked if item in self.checked_branches else Qt.Unchecked
def data(self, index, role): if role == Qt.CheckStateRole: if index.column() > 0: return None item = model_item(index) return Qt.Checked if item in self.included_files else Qt.Unchecked return super(LocalChangesModel, self).data(index, role)
def setData(self, index, value, role): if role != Qt.CheckStateRole or index.column() > 0: return False item = model_item(index) if item in self.included_files: self.included_files.remove(item) else: self.included_files.add(item) self.dataChanged.emit(index, index) return True
def data(self, index, role): if not index.isValid(): return None if index.row() >= self.rowCount(None): return None if index.column() >= self.columnCount(None): return None if role != Qt.DisplayRole: return None return self.column_getters[index.column()](model_item(index))
def data(self, index, role): if not index.isValid(): return None item = model_item(index) if role == Qt.DisplayRole: return self.column_getters[index.column()](item) if role == Qt.DecorationRole: if index.column() > 0: return None return apply_status_to_icon(self.icon_provider[item.os_path], item.index_status, item.work_tree_status)
def index(self, row, column, parent): if column >= 1: return QModelIndex() if not parent.isValid(): if row >= len(self.workspace.repos): return QModelIndex() return self.createIndex(row, column, self.workspace.repos[row]) parent_dir = model_item(parent) if row >= len(parent_dir.dirs): return QModelIndex() return self.createIndex(row, column, parent_dir.dirs[row])
def data(self, index, role): if not index.isValid(): return None item = model_item(index) if role == Qt.DisplayRole: if isinstance(item, Repo): return item.os_path return item.name or item.os_path if role == Qt.DecorationRole: if index.column() > 0: return None return QApplication.style().standardIcon(QStyle.SP_DirIcon)
def selected_commit(self): selected_row = model_item(self.graph_table.currentIndex()) return selected_row.log_entry if selected_row else None
def gained_focus(self, old, now): self.parent().current_item_changed.emit(model_item( self.file_list.currentIndex())) self.parent().item_selection_changed.emit(self.selected_files)
def current_item_changed(self, index, old_index): self.parent().current_item_changed.emit(model_item(index))
def selected_files(self): return tuple(model_item(index) for index in self.file_list.selectionModel().selectedRows())
def parent(self, index): if not index.isValid(): return QModelIndex() return self.item_index(model_item(index).parent)
def rowCount(self, parent): if not parent.isValid(): return len(self.workspace.repos) parent_dir = model_item(parent) return len(parent_dir.dirs) if parent_dir else 0
def dir_selected(self, index, old_index): slave_view = self.parent().file_view if slave_view: directory = model_item(index) slave_view.directory = directory self._emit_selection_signals(model_item(index))
def selected_directory(self): return model_item(self.directory_tree.currentIndex())