38 AuthorColumn = 3 |
38 AuthorColumn = 3 |
39 DateColumn = 4 |
39 DateColumn = 4 |
40 MessageColumn = 5 |
40 MessageColumn = 5 |
41 TagsColumn = 6 |
41 TagsColumn = 6 |
42 |
42 |
43 def __init__(self, vcs, mode = "log", parent = None): |
43 def __init__(self, vcs, mode = "log", bundle = None, parent = None): |
44 """ |
44 """ |
45 Constructor |
45 Constructor |
46 |
46 |
47 @param vcs reference to the vcs object |
47 @param vcs reference to the vcs object |
48 @param mode mode of the dialog (string; one of log, incoming, outgoing) |
48 @param mode mode of the dialog (string; one of log, incoming, outgoing) |
|
49 @param bundle name of a bundle file (string) |
49 @param parent parent widget (QWidget) |
50 @param parent parent widget (QWidget) |
50 """ |
51 """ |
51 QDialog.__init__(self, parent) |
52 QDialog.__init__(self, parent) |
52 self.setupUi(self) |
53 self.setupUi(self) |
53 |
54 |
60 self.vcs = vcs |
61 self.vcs = vcs |
61 if mode in ("log", "incoming", "outgoing"): |
62 if mode in ("log", "incoming", "outgoing"): |
62 self.commandMode = mode |
63 self.commandMode = mode |
63 else: |
64 else: |
64 self.commandMode = "log" |
65 self.commandMode = "log" |
|
66 self.bundle = bundle |
65 |
67 |
66 self.__maxDate = QDate() |
68 self.__maxDate = QDate() |
67 self.__minDate = QDate() |
69 self.__minDate = QDate() |
68 self.__filterLogsEnabled = True |
70 self.__filterLogsEnabled = True |
69 |
71 |
290 parents = [-1] |
292 parents = [-1] |
291 |
293 |
292 process = QProcess() |
294 process = QProcess() |
293 args = [] |
295 args = [] |
294 args.append("parents") |
296 args.append("parents") |
295 if self.commandMode == "incoming" and self.vcs.bundleFile: |
297 if self.commandMode == "incoming": |
296 args.append("--repository") |
298 if self.bundle: |
297 args.append(self.vcs.bundleFile) |
299 args.append("--repository") |
|
300 args.append(self.bundle) |
|
301 elif self.vcs.bundleFile: |
|
302 args.append("--repository") |
|
303 args.append(self.vcs.bundleFile) |
298 args.append("--template") |
304 args.append("--template") |
299 args.append("{rev}\n") |
305 args.append("{rev}\n") |
300 args.append("-r") |
306 args.append("-r") |
301 args.append(rev) |
307 args.append(rev) |
302 if not self.projectMode: |
308 if not self.projectMode: |
451 if self.commandMode == "log": |
457 if self.commandMode == "log": |
452 args.append('--copies') |
458 args.append('--copies') |
453 args.append('--style') |
459 args.append('--style') |
454 args.append(os.path.join(os.path.dirname(__file__), "styles", "logBrowser.style")) |
460 args.append(os.path.join(os.path.dirname(__file__), "styles", "logBrowser.style")) |
455 if self.commandMode == "incoming": |
461 if self.commandMode == "incoming": |
456 project = e5App().getObject("Project") |
462 if self.bundle: |
457 self.vcs.bundleFile = os.path.join( |
463 args.append(self.bundle) |
458 project.getProjectManagementDir(), "hg-bundle.hg") |
464 else: |
459 args.append('--bundle') |
465 project = e5App().getObject("Project") |
460 args.append(self.vcs.bundleFile) |
466 self.vcs.bundleFile = os.path.join( |
|
467 project.getProjectManagementDir(), "hg-bundle.hg") |
|
468 args.append('--bundle') |
|
469 args.append(self.vcs.bundleFile) |
461 if not self.projectMode: |
470 if not self.projectMode: |
462 args.append(self.filename) |
471 args.append(self.filename) |
463 |
472 |
464 self.process.setWorkingDirectory(self.repodir) |
473 self.process.setWorkingDirectory(self.repodir) |
465 |
474 |
686 if self.diff: |
695 if self.diff: |
687 self.diff.close() |
696 self.diff.close() |
688 del self.diff |
697 del self.diff |
689 self.diff = HgDiffDialog(self.vcs) |
698 self.diff = HgDiffDialog(self.vcs) |
690 self.diff.show() |
699 self.diff.show() |
691 self.diff.start(self.filename, [rev1, rev2]) |
700 self.diff.start(self.filename, [rev1, rev2], self.bundle) |
692 |
701 |
693 def on_buttonBox_clicked(self, button): |
702 def on_buttonBox_clicked(self, button): |
694 """ |
703 """ |
695 Private slot called by a button of the button box clicked. |
704 Private slot called by a button of the button box clicked. |
696 |
705 |