73 |
73 |
74 self.menuactions = [] |
74 self.menuactions = [] |
75 self.lfActions = [] |
75 self.lfActions = [] |
76 self.menu = QMenu() |
76 self.menu = QMenu() |
77 if not mq: |
77 if not mq: |
78 self.menuactions.append(self.menu.addAction( |
78 self.__commitAct = self.menu.addAction( |
79 self.tr("Commit changes to repository..."), self.__commit)) |
79 self.tr("Commit changes to repository..."), self.__commit) |
|
80 self.menuactions.append(self.__commitAct) |
80 self.menuactions.append(self.menu.addAction( |
81 self.menuactions.append(self.menu.addAction( |
81 self.tr("Select all for commit"), self.__commitSelectAll)) |
82 self.tr("Select all for commit"), self.__commitSelectAll)) |
82 self.menuactions.append(self.menu.addAction( |
83 self.menuactions.append(self.menu.addAction( |
83 self.tr("Deselect all from commit"), |
84 self.tr("Deselect all from commit"), |
84 self.__commitDeselectAll)) |
85 self.__commitDeselectAll)) |
85 self.menu.addSeparator() |
86 self.menu.addSeparator() |
86 self.menuactions.append(self.menu.addAction( |
87 self.__addAct = self.menu.addAction( |
87 self.tr("Add to repository"), self.__add)) |
88 self.tr("Add to repository"), self.__add) |
|
89 self.menuactions.append(self.__addAct) |
88 if self.vcs.version >= (2, 0): |
90 if self.vcs.version >= (2, 0): |
89 self.lfActions.append(self.menu.addAction( |
91 self.lfActions.append(self.menu.addAction( |
90 self.tr("Add as Large File"), |
92 self.tr("Add as Large File"), |
91 lambda: self.__lfAdd("large"))) |
93 lambda: self.__lfAdd("large"))) |
92 self.lfActions.append(self.menu.addAction( |
94 self.lfActions.append(self.menu.addAction( |
93 self.tr("Add as Normal File"), |
95 self.tr("Add as Normal File"), |
94 lambda: self.__lfAdd("normal"))) |
96 lambda: self.__lfAdd("normal"))) |
95 self.menuactions.append(self.menu.addAction( |
97 self.__diffAct = self.menu.addAction( |
96 self.tr("Show differences"), self.__diff)) |
98 self.tr("Show differences"), self.__diff) |
97 self.menuactions.append(self.menu.addAction( |
99 self.menuactions.append(self.__diffAct) |
98 self.tr("Show differences side-by-side"), self.__sbsDiff)) |
100 self.__sbsDiffAct = self.menu.addAction( |
99 self.menuactions.append(self.menu.addAction( |
101 self.tr("Show differences side-by-side"), self.__sbsDiff) |
100 self.tr("Remove from repository"), self.__forget)) |
102 self.menuactions.append(self.__sbsDiffAct) |
101 self.menuactions.append(self.menu.addAction( |
103 self.__revertAct = self.menu.addAction( |
102 self.tr("Revert changes"), self.__revert)) |
104 self.tr("Revert changes"), self.__revert) |
103 self.menuactions.append(self.menu.addAction( |
105 self.menuactions.append(self.__revertAct) |
104 self.tr("Restore missing"), self.__restoreMissing)) |
106 self.__forgetAct = self.menu.addAction( |
|
107 self.tr("Forget missing"), self.__forget) |
|
108 self.menuactions.append(self.__forgetAct) |
|
109 self.__restoreAct = self.menu.addAction( |
|
110 self.tr("Restore missing"), self.__restoreMissing) |
|
111 self.menuactions.append(self.__restoreAct) |
105 self.menu.addSeparator() |
112 self.menu.addSeparator() |
106 self.menuactions.append(self.menu.addAction( |
113 self.menuactions.append(self.menu.addAction( |
107 self.tr("Adjust column sizes"), self.__resizeColumns)) |
114 self.tr("Adjust column sizes"), self.__resizeColumns)) |
108 for act in self.menuactions: |
115 for act in self.menuactions: |
109 act.setEnabled(False) |
116 act.setEnabled(False) |
596 """ |
603 """ |
597 Protected slot to show the context menu of the status list. |
604 Protected slot to show the context menu of the status list. |
598 |
605 |
599 @param coord the position of the mouse pointer (QPoint) |
606 @param coord the position of the mouse pointer (QPoint) |
600 """ |
607 """ |
601 # TODO: set status of menu entries according to their conditions |
608 modified = len(self.__getModifiedItems()) |
|
609 unversioned = len(self.__getUnversionedItems()) |
|
610 missing = len(self.__getMissingItems()) |
|
611 commitable = len(self.__getCommitableItems()) |
|
612 |
|
613 self.__addAct.setEnabled(unversioned) |
|
614 self.__diffAct.setEnabled(modified) |
|
615 self.__sbsDiffAct.setEnabled(modified == 1) |
|
616 self.__revertAct.setEnabled(modified) |
|
617 self.__forgetAct.setEnabled(missing) |
|
618 self.__restoreAct.setEnabled(missing) |
|
619 self.__commitAct.setEnabled(commitable) |
|
620 |
602 if self.vcs.isExtensionActive("largefiles"): |
621 if self.vcs.isExtensionActive("largefiles"): |
603 enable = len(self.__getUnversionedItems()) > 0 |
622 enable = len(self.__getUnversionedItems()) > 0 |
604 else: |
623 else: |
605 enable = False |
624 enable = False |
606 for act in self.lfActions: |
625 for act in self.lfActions: |