def git_dag(model, args=None, settings=None): """Return a pre-populated git DAG widget.""" branch = model.currentbranch # disambiguate between branch names and filenames by using '--' branch_doubledash = branch and (branch + ' --') or '' ctx = dag.DAG(branch_doubledash, 1000) ctx.set_arguments(args) view = GitDAG(model, ctx, settings=settings) if ctx.ref: view.display() return view
def selection_changed(self): item = self.selected_item() if item is None or not item.is_commit(): return context = self.context oid = item.oid params = dag.DAG(oid, 2) repo = dag.RepoReader(context, params) commits = [] for c in repo.get(): commits.append(c) if commits: commits = commits[-1:] self.commits_selected.emit(commits)
def selection_changed(self): item = self.selected_item() if item is None or not item.is_commit(): return context = self.context oid = item.oid params = dag.DAG(oid, 2) repo = dag.RepoReader(context, params) commits = [] for c in repo.get(): commits.append(c) if commits: commits = commits[-1:] self.notifier.notify_observers(diff.COMMITS_SELECTED, commits)
def build_commits_menu(self, cmd, menu, chooser, prefix=''): ctx = dag.DAG('HEAD', 6) commits = dag.RepoReader(ctx) menu_commits = [] for idx, c in enumerate(commits): menu_commits.insert(0, c) if idx > 5: continue menu.clear() for c in menu_commits: menu.addAction(prefix + c.summary, cmds.run(cmd, c.sha1)) if len(commits) == 6: menu.addSeparator() menu.addAction(N_('More...'), chooser)
def setUp(self): helper.GitRepositoryTestCase.setUp(self) self.params = dag.DAG('HEAD', 1000) self.reader = dag.RepoReader(self.context, self.params)