Пример #1
0
 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
Пример #2
0
 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)
Пример #3
0
 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
Пример #4
0
 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))
Пример #5
0
 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)
Пример #6
0
 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])
Пример #7
0
 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)
Пример #8
0
 def selected_commit(self):
     selected_row = model_item(self.graph_table.currentIndex())
     return selected_row.log_entry if selected_row else None
Пример #9
0
 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)
Пример #10
0
 def current_item_changed(self, index, old_index):
     self.parent().current_item_changed.emit(model_item(index))
Пример #11
0
 def selected_files(self):
     return tuple(model_item(index) for index in
         self.file_list.selectionModel().selectedRows())
Пример #12
0
 def parent(self, index):
     if not index.isValid():
         return QModelIndex()
     return self.item_index(model_item(index).parent)
Пример #13
0
 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
Пример #14
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))
Пример #15
0
 def selected_directory(self):
     return model_item(self.directory_tree.currentIndex())