def on_show_log(self, widget, *args): if widget.get_label() == self.get_widget("cur_log").get_label(): path = self.paths else: path = [] path.append(self.git.get_repository()) helper.launch_ui_window("log", path)
def diff_previous_revision(self, widget, data=None): prev = self.caller.previous_revision(self.revisions[0]) helper.launch_ui_window("diff", [ "%s@%s" % (self.path, S(prev)), "%s@%s" % (self.path, S(self.revisions[0])), "--vcs=%s" % self.caller.get_vcs_name() ])
def compare_working_copy(self, widget, data=None): path_older = self.path if self.vcs_name == rabbitvcs.vcs.VCS_SVN: path_older = self.vcs.svn().get_repo_url(self.path) helper.launch_ui_window("diff", [ "-s", "%s@%s" % (path_older, S(self.revisions[0])), self.path, "--vcs=%s" % self.caller.get_vcs_name() ])
def diff_revisions(self, widget, data=None): rev1 = self.revisions[0] rev2 = self.revisions[-1] if self.caller.compare_revision_order(rev1, rev2) > 0: rev1, rev2 = rev2, rev1 helper.launch_ui_window("diff", [ "%s@%s" % (self.path, S(rev1)), "%s@%s" % (self.path, S(rev2)), "--vcs=%s" % self.caller.get_vcs_name() ])
def on_more_actions_view_unified_diff(self): url1 = self.first_urls.get_active_text() rev1 = self.get_first_revision() rev2 = self.get_second_revision() url2 = self.second_urls.get_active_text() helper.launch_ui_window("diff", [ "%s@%s" % (url1, helper.to_text(rev1)), "%s@%s" % (url2, helper.to_text(rev2)), "--vcs=%s" % self.get_vcs_name() ])
def open_second(self, widget, data=None): path = self.caller.changes_table.get_row( self.caller.selected_rows[0])[0] if path == ".": path = "" url = helper.url_join(self.caller.second_urls.get_active_text(), path) rev = self.caller.get_second_revision() helper.launch_ui_window("open", [ "--vcs=%s" % self.caller.get_vcs_name(), url, "-r%s" % helper.to_text(rev) ])
def open_second(self, widget, data=None): path = self.caller.changes_table.get_row(self.caller.selected_rows[0])[0] if path == ".": path = "" url = helper.url_join(self.caller.second_urls.get_active_text(), path) rev = self.caller.get_second_revision() helper.launch_ui_window("open", [ "--vcs=%s" % self.caller.get_vcs_name(), url, "-r%s" % helper.to_text(rev) ])
def on_show_log(self, widget, *args): path = [] if widget.get_label() == self.get_widget("cur_log").get_label(): path.append(self.paths[0]) else: path_to_check = S(self.paths[0]) while path_to_check != "/" and path_to_check != "": if os.path.isdir(os.path.join(path_to_check, ".svn")): path.append(path_to_check) break path_to_check = os.path.split(path_to_check)[0] helper.launch_ui_window("log", path)
def compare_revisions(self, widget, data=None): rev1 = self.revisions[0] rev2 = self.revisions[-1] if self.caller.compare_revision_order(rev1, rev2) > 0: rev1, rev2 = rev2, rev1 path_older = self.path if self.vcs_name == rabbitvcs.vcs.VCS_SVN: path_older = self.vcs.svn().get_repo_url(self.path) helper.launch_ui_window("diff", [ "-s", "%s@%s" % (path_older, S(rev1)), "%s@%s" % (self.path, S(rev2)), "--vcs=%s" % self.caller.get_vcs_name() ])
def view_selected_diff(self, sidebyside=False): for row in self.selected_rows: url1 = self.changes_table.get_row(row)[0] url2 = url1 if url1 == ".": url1 = "" url2 = "" url1 = helper.url_join(self.first_urls.get_active_text(), url1) url2 = helper.url_join(self.second_urls.get_active_text(), url2) rev1 = self.get_first_revision() rev2 = self.get_second_revision() helper.launch_ui_window("diff", [ "%s@%s" % (url1, helper.to_text(rev1)), "%s@%s" % (url2, helper.to_text(rev2)), "%s" % (sidebyside and "-s" or ""), "--vcs=%s" % self.get_vcs_name() ])
def compare(self, widget, data=None): for row in self.caller.selected_rows: url1 = self.caller.changes_table.get_row(row)[0] url2 = url1 if url1 == ".": url1 = "" url2 = "" url1 = helper.url_join(self.caller.first_urls.get_active_text(), url1) url2 = helper.url_join(self.caller.second_urls.get_active_text(), url2) rev1 = self.caller.get_first_revision() rev2 = self.caller.get_second_revision() helper.launch_ui_window("diff", [ "%s@%s" % (url1, helper.to_text(rev1)), "%s@%s" % (url2, helper.to_text(rev2)), "-s", "--vcs=%s" % self.caller.get_vcs_name() ])
def delete_items(self, widget, data=None): paths = self.files_table.get_selected_row_items(1) if len(paths) > 0: proc = helper.launch_ui_window("delete", paths) self.rescan_after_process_exit(proc, paths)
def on_files_table_row_activated(self, treeview, event, col): paths = self.files_table.get_selected_row_items(1) pathrev1 = helper.create_path_revision_string(paths[0], "base") pathrev2 = helper.create_path_revision_string(paths[0], "working") proc = helper.launch_ui_window("diff", ["-s", pathrev1, pathrev2]) self.rescan_after_process_exit(proc, paths)
def diff_working_copy(self, widget, data=None): helper.launch_ui_window("diff", [ "%s@%s" % (self.path, S(self.revisions[0])), "--vcs=%s" % self.caller.get_vcs_name() ])
def view_revision(self, widget, data=None): helper.launch_ui_window("annotate", [ self.path, "--vcs=%s" % self.caller.get_vcs_name(), "-r", self.revisions[0] ])
def annotate(self, data=None, user_data=None): urlrev = self.paths[0] revision = self.__get_browser_revision() if revision.kind == "number": urlrev += "@" + revision.value helper.launch_ui_window("annotate", [urlrev])
def export(self, data=None, user_data=None): args = [self.paths[0]] revision = self.__get_browser_revision() if revision.kind == "number": args = ["-r", revision.value] + args helper.launch_ui_window("export", args)
def delete_items(self, widget, event): paths = self.files_table.get_selected_row_items(1) if len(paths) > 0: proc = helper.launch_ui_window("delete", paths) self.rescan_after_process_exit(proc, paths)
def conflict_filter(self, data): if str(data).startswith("ERROR:"): path = data[27:] helper.launch_ui_window("editconflicts", [path], block=True)
def edit_conflict(self, data): helper.launch_ui_window("editconflicts", [data["path"]], block=True)
def update(self, data1=None, data2=None): proc = helper.launch_ui_window( "update", self.paths ) self.caller.rescan_after_process_exit(proc, self.paths)
def show_log(self, data=None, user_data=None): helper.launch_ui_window("log", ["--vcs=%s" % self.guess, self.paths[0]])
def update(self, data1=None, data2=None): proc = helper.launch_ui_window("update", self.paths) self.caller.rescan_after_process_exit(proc, self.paths)
def annotate(self, data=None, user_data=None): urlrev = self.paths[0] revision = self.__get_browser_revision() if revision.kind == "number": urlrev += "@" + revision.value helper.launch_ui_window("annotate", ["--vcs=%s" % self.guess, urlrev])