Mon, 01 Feb 2021 14:49:12 +0100
Made some more JSON file related changes and exported some dark styles in the new file format.
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
1 | # -*- coding: utf-8 -*- |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
2 | |
7923
91e843545d9a
Updated copyright for 2021.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7836
diff
changeset
|
3 | # Copyright (c) 2005 - 2021 Detlev Offenbach <detlev@die-offenbachs.de> |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
4 | # |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
5 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
6 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
7 | Module implementing the base class of the VCS project helper. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
8 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
9 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
10 | import os |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
11 | import shutil |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
12 | import copy |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
13 | |
5669
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
14 | from PyQt5.QtCore import pyqtSlot, QDir, QFileInfo, QObject, QCoreApplication |
4079
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
15 | from PyQt5.QtWidgets import QDialog, QInputDialog, QToolBar |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
16 | |
55
b5c84934de9c
Renamed E4Gui to E5Gui.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
53
diff
changeset
|
17 | from E5Gui.E5Action import E5Action |
536
6d8d39753c82
Started replaceing QMessageBox methods with own methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
486
diff
changeset
|
18 | from E5Gui import E5MessageBox |
537
72b32daeb8d6
Continued replacing QMessageBox methods with own methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
536
diff
changeset
|
19 | from E5Gui.E5Application import e5App |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
20 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
21 | import Preferences |
4079
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
22 | import UI.PixmapCache |
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
23 | import UI.Config |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
24 | |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
25 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
26 | class VcsProjectHelper(QObject): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
27 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
28 | Class implementing the base class of the VCS project helper. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
29 | """ |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
30 | def __init__(self, vcsObject, projectObject, parent=None, name=None): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
31 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
32 | Constructor |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
33 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
34 | @param vcsObject reference to the vcs object |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
35 | @param projectObject reference to the project object |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
36 | @param parent parent widget (QWidget) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
37 | @param name name of this object (string) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
38 | """ |
2525
8b507a9a2d40
Script changes: Future import added, super calls modified and unicode behavior for str.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents:
2409
diff
changeset
|
39 | super(VcsProjectHelper, self).__init__(parent) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
40 | if name: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
41 | self.setObjectName(name) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
42 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
43 | self.vcs = vcsObject |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
44 | self.project = projectObject |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
45 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
46 | self.actions = [] |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
47 | |
1881
bab54b00f79a
Fixed an issue introduced by the VCS changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
48 | self.vcsAddAct = None |
bab54b00f79a
Fixed an issue introduced by the VCS changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
49 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
50 | self.initActions() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
51 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
52 | def setObjects(self, vcsObject, projectObject): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
53 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
54 | Public method to set references to the vcs and project objects. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
55 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
56 | @param vcsObject reference to the vcs object |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
57 | @param projectObject reference to the project object |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
58 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
59 | self.vcs = vcsObject |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
60 | self.project = projectObject |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
61 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
62 | def initActions(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
63 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
64 | Public method to generate the action objects. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
65 | """ |
3031
ed2eaa573ca5
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3020
diff
changeset
|
66 | self.vcsNewAct = E5Action( |
5669
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
67 | QCoreApplication.translate( |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
68 | "VcsProjectHelper", 'New from repository'), |
7533
88261c96484b
Removed the '.png' extension from all call to get an icon or a pixmap from the PixmapCache because this is not needed anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
69 | UI.PixmapCache.getIcon("vcsCheckout"), |
5669
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
70 | QCoreApplication.translate( |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
71 | "VcsProjectHelper", '&New from repository...'), |
3031
ed2eaa573ca5
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3020
diff
changeset
|
72 | 0, 0, self, 'vcs_new') |
5669
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
73 | self.vcsNewAct.setStatusTip(QCoreApplication.translate( |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
74 | "VcsProjectHelper", |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
75 | 'Create a new project from the VCS repository' |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
76 | )) |
5669
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
77 | self.vcsNewAct.setWhatsThis(QCoreApplication.translate( |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
78 | "VcsProjectHelper", |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
79 | """<b>New from repository</b>""" |
3013
fe886b7f8f40
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2409
diff
changeset
|
80 | """<p>This creates a new local project from the VCS""" |
fe886b7f8f40
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2409
diff
changeset
|
81 | """ repository.</p>""" |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
82 | )) |
3345
071afe8be2a1
Changed signal/slot usage to not use constructs like 'triggered[()].connect(...)' anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3302
diff
changeset
|
83 | self.vcsNewAct.triggered.connect(self._vcsCheckout) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
84 | self.actions.append(self.vcsNewAct) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
85 | |
3013
fe886b7f8f40
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2409
diff
changeset
|
86 | self.vcsExportAct = E5Action( |
5669
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
87 | QCoreApplication.translate( |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
88 | "VcsProjectHelper", 'Export from repository'), |
7533
88261c96484b
Removed the '.png' extension from all call to get an icon or a pixmap from the PixmapCache because this is not needed anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
89 | UI.PixmapCache.getIcon("vcsExport"), |
5669
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
90 | QCoreApplication.translate( |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
91 | "VcsProjectHelper", '&Export from repository...'), |
3013
fe886b7f8f40
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2409
diff
changeset
|
92 | 0, 0, self, 'vcs_export') |
5669
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
93 | self.vcsExportAct.setStatusTip(QCoreApplication.translate( |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
94 | "VcsProjectHelper", |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
95 | 'Export a project from the repository' |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
96 | )) |
5669
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
97 | self.vcsExportAct.setWhatsThis(QCoreApplication.translate( |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
98 | "VcsProjectHelper", |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
99 | """<b>Export from repository</b>""" |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
100 | """<p>This exports a project from the repository.</p>""" |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
101 | )) |
3345
071afe8be2a1
Changed signal/slot usage to not use constructs like 'triggered[()].connect(...)' anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3302
diff
changeset
|
102 | self.vcsExportAct.triggered.connect(self._vcsExport) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
103 | self.actions.append(self.vcsExportAct) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
104 | |
3031
ed2eaa573ca5
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3020
diff
changeset
|
105 | self.vcsAddAct = E5Action( |
5669
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
106 | QCoreApplication.translate( |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
107 | "VcsProjectHelper", 'Add to repository'), |
7533
88261c96484b
Removed the '.png' extension from all call to get an icon or a pixmap from the PixmapCache because this is not needed anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
108 | UI.PixmapCache.getIcon("vcsCommit"), |
5669
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
109 | QCoreApplication.translate( |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
110 | "VcsProjectHelper", '&Add to repository...'), |
3031
ed2eaa573ca5
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3020
diff
changeset
|
111 | 0, 0, self, 'vcs_add') |
5669
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
112 | self.vcsAddAct.setStatusTip(QCoreApplication.translate( |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
113 | "VcsProjectHelper", |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
114 | 'Add the local project to the VCS repository' |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
115 | )) |
5669
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
116 | self.vcsAddAct.setWhatsThis(QCoreApplication.translate( |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
117 | "VcsProjectHelper", |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
118 | """<b>Add to repository</b>""" |
3013
fe886b7f8f40
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2409
diff
changeset
|
119 | """<p>This adds (imports) the local project to the VCS""" |
fe886b7f8f40
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2409
diff
changeset
|
120 | """ repository.</p>""" |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
121 | )) |
3345
071afe8be2a1
Changed signal/slot usage to not use constructs like 'triggered[()].connect(...)' anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3302
diff
changeset
|
122 | self.vcsAddAct.triggered.connect(self._vcsImport) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
123 | self.actions.append(self.vcsAddAct) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
124 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
125 | def initMenu(self, menu): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
126 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
127 | Public method to generate the VCS menu. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
128 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
129 | @param menu reference to the menu to be populated (QMenu) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
130 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
131 | menu.clear() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
132 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
133 | menu.addAction(self.vcsNewAct) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
134 | menu.addAction(self.vcsExportAct) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
135 | menu.addSeparator() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
136 | menu.addAction(self.vcsAddAct) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
137 | menu.addSeparator() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
138 | |
4079
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
139 | def initToolbar(self, ui, toolbarManager): |
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
140 | """ |
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
141 | Public slot to initialize the VCS toolbar. |
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
142 | |
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
143 | @param ui reference to the main window (UserInterface) |
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
144 | @param toolbarManager reference to a toolbar manager object |
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
145 | (E5ToolBarManager) |
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
146 | @return the toolbar generated (QToolBar) |
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
147 | """ |
6891
93f82da09f22
Fixed some code style issues detected by the new 'return' checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6645
diff
changeset
|
148 | return None # __IGNORE_WARNING_M831__ |
4079
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
149 | |
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
150 | def initBasicToolbar(self, ui, toolbarManager): |
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
151 | """ |
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
152 | Public slot to initialize the basic VCS toolbar. |
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
153 | |
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
154 | @param ui reference to the main window (UserInterface) |
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
155 | @param toolbarManager reference to a toolbar manager object |
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
156 | (E5ToolBarManager) |
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
157 | @return the toolbar generated (QToolBar) |
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
158 | """ |
5669
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
159 | tb = QToolBar(QCoreApplication.translate("VcsProjectHelper", "VCS"), |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
160 | ui) |
4079
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
161 | tb.setIconSize(UI.Config.ToolBarIconSize) |
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
162 | tb.setObjectName("VersionControlToolbar") |
5669
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
163 | tb.setToolTip(QCoreApplication.translate("VcsProjectHelper", 'VCS')) |
4079
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
164 | |
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
165 | tb.addAction(self.vcsNewAct) |
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
166 | tb.addAction(self.vcsExportAct) |
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
167 | tb.addSeparator() |
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
168 | tb.addAction(self.vcsAddAct) |
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
169 | |
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
170 | toolbarManager.addToolBar(tb, tb.windowTitle()) |
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
171 | |
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
172 | return tb |
a3319822d303
Added possibility for plug-ins to have toolbars.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
173 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
174 | def showMenu(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
175 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
176 | Public slot called before the vcs menu is shown. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
177 | """ |
1881
bab54b00f79a
Fixed an issue introduced by the VCS changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
178 | if self.vcsAddAct: |
6556
8aa72eaa2d70
VCS.ProjectHelper: fixed a strange issue caused by self.project being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6489
diff
changeset
|
179 | self.vcsAddAct.setEnabled(self.project and self.project.isOpen()) |
3345
071afe8be2a1
Changed signal/slot usage to not use constructs like 'triggered[()].connect(...)' anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3302
diff
changeset
|
180 | |
071afe8be2a1
Changed signal/slot usage to not use constructs like 'triggered[()].connect(...)' anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3302
diff
changeset
|
181 | @pyqtSlot() |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
182 | def _vcsCheckout(self, export=False): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
183 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
184 | Protected slot used to create a local project from the repository. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
185 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
186 | @param export flag indicating whether an export or a checkout |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
187 | should be performed |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
188 | """ |
6556
8aa72eaa2d70
VCS.ProjectHelper: fixed a strange issue caused by self.project being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6489
diff
changeset
|
189 | if not self.project or not self.project.checkDirty(): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
190 | return |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
191 | |
7259
7c017076c12e
Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7229
diff
changeset
|
192 | vcsSystemsDict = e5App().getObject( |
7c017076c12e
Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7229
diff
changeset
|
193 | "PluginManager").getPluginDisplayStrings("version_control") |
1012
e3c069f40a4a
Fixed an issue in the generic VCS project helper.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
945
diff
changeset
|
194 | if not vcsSystemsDict: |
e3c069f40a4a
Fixed an issue in the generic VCS project helper.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
945
diff
changeset
|
195 | # no version control system found |
e3c069f40a4a
Fixed an issue in the generic VCS project helper.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
945
diff
changeset
|
196 | return |
e3c069f40a4a
Fixed an issue in the generic VCS project helper.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
945
diff
changeset
|
197 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
198 | vcsSystemsDisplay = [] |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
199 | keys = sorted(vcsSystemsDict.keys()) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
200 | for key in keys: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
201 | vcsSystemsDisplay.append(vcsSystemsDict[key]) |
564
b3d966393ba9
Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
543
diff
changeset
|
202 | vcsSelected, ok = QInputDialog.getItem( |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
203 | None, |
5669
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
204 | QCoreApplication.translate("VcsProjectHelper", "New Project"), |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
205 | QCoreApplication.translate( |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
206 | "VcsProjectHelper", |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
207 | "Select version control system for the project"), |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
208 | vcsSystemsDisplay, |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
209 | 0, False) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
210 | if not ok: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
211 | return |
6188
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
212 | |
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
213 | selectedVcsSystem = None |
12
1d8dd9706f46
First commit after changing to Python 3.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
0
diff
changeset
|
214 | for vcsSystem, vcsSystemDisplay in list(vcsSystemsDict.items()): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
215 | if vcsSystemDisplay == vcsSelected: |
6188
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
216 | selectedVcsSystem = vcsSystem |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
217 | break |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
218 | |
1941
aedf18497117
Fixed an issue creating a new project via the VCS.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1881
diff
changeset
|
219 | if not self.project.closeProject(): |
aedf18497117
Fixed an issue creating a new project via the VCS.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1881
diff
changeset
|
220 | return |
aedf18497117
Fixed an issue creating a new project via the VCS.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1881
diff
changeset
|
221 | |
6188
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
222 | vcs = self.project.initVCS(selectedVcsSystem) |
6158
9765e0c375d0
Fixed an issue causing eric to crash when creating a new project from a repository (i.e. cloning or exporting).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6048
diff
changeset
|
223 | if vcs is not None: |
9765e0c375d0
Fixed an issue causing eric to crash when creating a new project from a repository (i.e. cloning or exporting).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6048
diff
changeset
|
224 | vcsdlg = vcs.vcsNewProjectOptionsDialog() |
7759
51aa6c6b66f7
Changed calls to exec_() into exec() (remainder of Python2 elimination).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7533
diff
changeset
|
225 | if vcsdlg.exec() == QDialog.Accepted: |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
226 | projectdir, vcsDataDict = vcsdlg.getData() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
227 | # edit VCS command options |
6158
9765e0c375d0
Fixed an issue causing eric to crash when creating a new project from a repository (i.e. cloning or exporting).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6048
diff
changeset
|
228 | if vcs.vcsSupportCommandOptions(): |
3302
e92f0dd51979
Removed the Mercurial support for a command options dialog and added useable global options to the Mercurial config page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3190
diff
changeset
|
229 | vcores = E5MessageBox.yesNo( |
e92f0dd51979
Removed the Mercurial support for a command options dialog and added useable global options to the Mercurial config page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3190
diff
changeset
|
230 | self.parent(), |
5669
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
231 | QCoreApplication.translate( |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
232 | "VcsProjectHelper", "New Project"), |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
233 | QCoreApplication.translate( |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
234 | "VcsProjectHelper", |
3302
e92f0dd51979
Removed the Mercurial support for a command options dialog and added useable global options to the Mercurial config page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3190
diff
changeset
|
235 | """Would you like to edit the VCS command""" |
e92f0dd51979
Removed the Mercurial support for a command options dialog and added useable global options to the Mercurial config page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3190
diff
changeset
|
236 | """ options?""")) |
e92f0dd51979
Removed the Mercurial support for a command options dialog and added useable global options to the Mercurial config page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3190
diff
changeset
|
237 | else: |
e92f0dd51979
Removed the Mercurial support for a command options dialog and added useable global options to the Mercurial config page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3190
diff
changeset
|
238 | vcores = False |
543
a558e3cb7b5a
Continued replacing QMessageBox methods with own methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
538
diff
changeset
|
239 | if vcores: |
3034
7ce719013078
Fixed various coding style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3031
diff
changeset
|
240 | from .CommandOptionsDialog import VcsCommandOptionsDialog |
6489
577c644ab6f3
VCS.ProjectHelper: fixed an issue using the wrong variable.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6188
diff
changeset
|
241 | codlg = VcsCommandOptionsDialog(vcs) |
7759
51aa6c6b66f7
Changed calls to exec_() into exec() (remainder of Python2 elimination).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7533
diff
changeset
|
242 | if codlg.exec() == QDialog.Accepted: |
6158
9765e0c375d0
Fixed an issue causing eric to crash when creating a new project from a repository (i.e. cloning or exporting).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6048
diff
changeset
|
243 | vcs.vcsSetOptions(codlg.getOptions()) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
244 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
245 | # create the project directory if it doesn't exist already |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
246 | if not os.path.isdir(projectdir): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
247 | try: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
248 | os.makedirs(projectdir) |
7836
2f0d208b8137
Changed code to not use the OSError aliases (IOError, EnvironmentError, socket.error and select.error) anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7781
diff
changeset
|
249 | except OSError: |
3020
542e97d4ecb3
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3013
diff
changeset
|
250 | E5MessageBox.critical( |
542e97d4ecb3
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3013
diff
changeset
|
251 | self.parent(), |
5669
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
252 | QCoreApplication.translate( |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
253 | "VcsProjectHelper", |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
254 | "Create project directory"), |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
255 | QCoreApplication.translate( |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
256 | "VcsProjectHelper", |
3013
fe886b7f8f40
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2409
diff
changeset
|
257 | "<p>The project directory <b>{0}</b> could not" |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
258 | " be created.</p>").format(projectdir)) |
6558
db48660ca7c0
VCS.ProjectHelper, Project.Project: fix the handling when a VCS clone or export operation fails.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6556
diff
changeset
|
259 | self.project.resetVCS() |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
260 | return |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
261 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
262 | # create the project from the VCS |
6158
9765e0c375d0
Fixed an issue causing eric to crash when creating a new project from a repository (i.e. cloning or exporting).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6048
diff
changeset
|
263 | vcs.vcsSetDataFromDict(vcsDataDict) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
264 | if export: |
6158
9765e0c375d0
Fixed an issue causing eric to crash when creating a new project from a repository (i.e. cloning or exporting).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6048
diff
changeset
|
265 | ok = vcs.vcsExport(vcsDataDict, projectdir) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
266 | else: |
6168
e9d3ea144b0b
Fixed a code style issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6158
diff
changeset
|
267 | ok = vcs.vcsCheckout(vcsDataDict, projectdir, False) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
268 | if ok: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
269 | projectdir = os.path.normpath(projectdir) |
8047
b5594178c7fa
Made some more JSON file related changes and exported some dark styles in the new file format.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7941
diff
changeset
|
270 | filters = ["*.epj", "*.e4p"] |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
271 | d = QDir(projectdir) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
272 | plist = d.entryInfoList(filters) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
273 | if len(plist): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
274 | if len(plist) == 1: |
3013
fe886b7f8f40
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2409
diff
changeset
|
275 | self.project.openProject( |
fe886b7f8f40
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2409
diff
changeset
|
276 | plist[0].absoluteFilePath()) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
277 | else: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
278 | pfilenamelist = d.entryList(filters) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
279 | pfilename, ok = QInputDialog.getItem( |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
280 | None, |
5669
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
281 | QCoreApplication.translate( |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
282 | "VcsProjectHelper", |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
283 | "New project from repository"), |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
284 | QCoreApplication.translate( |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
285 | "VcsProjectHelper", |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
286 | "Select a project file to open."), |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
287 | pfilenamelist, 0, False) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
288 | if ok: |
564
b3d966393ba9
Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
543
diff
changeset
|
289 | self.project.openProject( |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
290 | QFileInfo(d, pfilename).absoluteFilePath()) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
291 | if export: |
5099
175b36822cc9
Continued cleaning up some code related to the Project class and data structures.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
292 | self.project.pdata["VCS"] = 'None' |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
293 | self.project.vcs = self.project.initVCS() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
294 | self.project.setDirty(True) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
295 | self.project.saveProject() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
296 | else: |
3020
542e97d4ecb3
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3013
diff
changeset
|
297 | res = E5MessageBox.yesNo( |
542e97d4ecb3
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3013
diff
changeset
|
298 | self.parent(), |
5669
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
299 | QCoreApplication.translate( |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
300 | "VcsProjectHelper", |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
301 | "New project from repository"), |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
302 | QCoreApplication.translate( |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
303 | "VcsProjectHelper", |
3013
fe886b7f8f40
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2409
diff
changeset
|
304 | "The project retrieved from the repository" |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
305 | " does not contain an eric project file" |
8047
b5594178c7fa
Made some more JSON file related changes and exported some dark styles in the new file format.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7941
diff
changeset
|
306 | " (*.epj). Create it?"), |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
307 | yesDefault=True) |
543
a558e3cb7b5a
Continued replacing QMessageBox methods with own methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
538
diff
changeset
|
308 | if res: |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
309 | self.project.ppath = projectdir |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
310 | self.project.opened = True |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
311 | |
7259
7c017076c12e
Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7229
diff
changeset
|
312 | from Project.PropertiesDialog import ( |
3013
fe886b7f8f40
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2409
diff
changeset
|
313 | PropertiesDialog |
7259
7c017076c12e
Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7229
diff
changeset
|
314 | ) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
315 | dlg = PropertiesDialog(self.project, False) |
7759
51aa6c6b66f7
Changed calls to exec_() into exec() (remainder of Python2 elimination).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7533
diff
changeset
|
316 | if dlg.exec() == QDialog.Accepted: |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
317 | dlg.storeData() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
318 | self.project.initFileTypes() |
6188
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
319 | self.project.pdata["VCS"] = selectedVcsSystem |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
320 | self.project.setDirty(True) |
6158
9765e0c375d0
Fixed an issue causing eric to crash when creating a new project from a repository (i.e. cloning or exporting).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6048
diff
changeset
|
321 | if self.project.pdata["MAINSCRIPT"]: |
3013
fe886b7f8f40
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2409
diff
changeset
|
322 | ms = os.path.join( |
fe886b7f8f40
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2409
diff
changeset
|
323 | self.project.ppath, |
5099
175b36822cc9
Continued cleaning up some code related to the Project class and data structures.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
324 | self.project.pdata["MAINSCRIPT"]) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
325 | if os.path.exists(ms): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
326 | self.project.appendFile(ms) |
6158
9765e0c375d0
Fixed an issue causing eric to crash when creating a new project from a repository (i.e. cloning or exporting).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6048
diff
changeset
|
327 | else: |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
328 | ms = "" |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
329 | self.project.newProjectAddFiles(ms) |
3164
a027fc190f82
Fixed a bug creating a project from a repository and implemented a bugfix method for an issue in QsciScintilla.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
330 | self.project.createProjectManagementDir() |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
331 | self.project.saveProject() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
332 | self.project.openProject(self.project.pfile) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
333 | if not export: |
3013
fe886b7f8f40
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2409
diff
changeset
|
334 | res = E5MessageBox.yesNo( |
fe886b7f8f40
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2409
diff
changeset
|
335 | self.parent(), |
5669
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
336 | QCoreApplication.translate( |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
337 | "VcsProjectHelper", |
3013
fe886b7f8f40
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2409
diff
changeset
|
338 | "New project from repository"), |
5669
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
339 | QCoreApplication.translate( |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
340 | "VcsProjectHelper", |
3013
fe886b7f8f40
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2409
diff
changeset
|
341 | "Shall the project file be added" |
fe886b7f8f40
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2409
diff
changeset
|
342 | " to the repository?"), |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
343 | yesDefault=True) |
543
a558e3cb7b5a
Continued replacing QMessageBox methods with own methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
538
diff
changeset
|
344 | if res: |
3013
fe886b7f8f40
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2409
diff
changeset
|
345 | self.project.vcs.vcsAdd( |
fe886b7f8f40
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2409
diff
changeset
|
346 | self.project.pfile) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
347 | else: |
3013
fe886b7f8f40
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2409
diff
changeset
|
348 | E5MessageBox.critical( |
fe886b7f8f40
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2409
diff
changeset
|
349 | self.parent(), |
5669
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
350 | QCoreApplication.translate( |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
351 | "VcsProjectHelper", "New project from repository"), |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
352 | QCoreApplication.translate( |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
353 | "VcsProjectHelper", |
3013
fe886b7f8f40
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2409
diff
changeset
|
354 | """The project could not be retrieved from""" |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
355 | """ the repository.""")) |
6558
db48660ca7c0
VCS.ProjectHelper, Project.Project: fix the handling when a VCS clone or export operation fails.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6556
diff
changeset
|
356 | self.project.resetVCS() |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
357 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
358 | def _vcsExport(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
359 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
360 | Protected slot used to export a project from the repository. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
361 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
362 | self._vcsCheckout(True) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
363 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
364 | def _vcsImport(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
365 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
366 | Protected slot used to import the local project into the repository. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
367 | |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
368 | <b>NOTE</b>: |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
369 | This does not necessarily make the local project a vcs controlled |
3013
fe886b7f8f40
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2409
diff
changeset
|
370 | project. You may have to checkout the project from the repository |
fe886b7f8f40
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2409
diff
changeset
|
371 | in order to accomplish that. |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
372 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
373 | def revertChanges(): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
374 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
375 | Local function to revert the changes made to the project object. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
376 | """ |
5099
175b36822cc9
Continued cleaning up some code related to the Project class and data structures.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
377 | self.project.pdata["VCS"] = pdata_vcs |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
378 | self.project.pdata["VCSOPTIONS"] = copy.deepcopy(pdata_vcsoptions) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
379 | self.project.pdata["VCSOTHERDATA"] = copy.deepcopy(pdata_vcsother) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
380 | self.project.vcs = vcs |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
381 | self.project.vcsProjectHelper = vcsHelper |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
382 | self.project.vcsBasicHelper = vcs is None |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
383 | self.initMenu(self.project.vcsMenu) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
384 | self.project.setDirty(True) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
385 | self.project.saveProject() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
386 | |
5099
175b36822cc9
Continued cleaning up some code related to the Project class and data structures.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
387 | pdata_vcs = self.project.pdata["VCS"] |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
388 | pdata_vcsoptions = copy.deepcopy(self.project.pdata["VCSOPTIONS"]) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
389 | pdata_vcsother = copy.deepcopy(self.project.pdata["VCSOTHERDATA"]) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
390 | vcs = self.project.vcs |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
391 | vcsHelper = self.project.vcsProjectHelper |
7259
7c017076c12e
Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7229
diff
changeset
|
392 | vcsSystemsDict = e5App().getObject( |
7c017076c12e
Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7229
diff
changeset
|
393 | "PluginManager").getPluginDisplayStrings("version_control") |
1012
e3c069f40a4a
Fixed an issue in the generic VCS project helper.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
945
diff
changeset
|
394 | if not vcsSystemsDict: |
e3c069f40a4a
Fixed an issue in the generic VCS project helper.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
945
diff
changeset
|
395 | # no version control system found |
e3c069f40a4a
Fixed an issue in the generic VCS project helper.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
945
diff
changeset
|
396 | return |
e3c069f40a4a
Fixed an issue in the generic VCS project helper.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
945
diff
changeset
|
397 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
398 | vcsSystemsDisplay = [] |
12
1d8dd9706f46
First commit after changing to Python 3.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
0
diff
changeset
|
399 | keys = sorted(list(vcsSystemsDict.keys())) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
400 | for key in keys: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
401 | vcsSystemsDisplay.append(vcsSystemsDict[key]) |
564
b3d966393ba9
Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
543
diff
changeset
|
402 | vcsSelected, ok = QInputDialog.getItem( |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
403 | None, |
5669
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
404 | QCoreApplication.translate("VcsProjectHelper", "Import Project"), |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
405 | QCoreApplication.translate( |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
406 | "VcsProjectHelper", |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
407 | "Select version control system for the project"), |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
408 | vcsSystemsDisplay, |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
409 | 0, False) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
410 | if not ok: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
411 | return |
6188
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
412 | |
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
413 | selectedVcsSystem = None |
12
1d8dd9706f46
First commit after changing to Python 3.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
0
diff
changeset
|
414 | for vcsSystem, vcsSystemDisplay in list(vcsSystemsDict.items()): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
415 | if vcsSystemDisplay == vcsSelected: |
6188
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
416 | selectedVcsSystem = vcsSystem |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
417 | break |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
418 | |
6188
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
419 | if selectedVcsSystem is not None: |
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
420 | self.project.pdata["VCS"] = selectedVcsSystem |
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
421 | self.project.vcs = self.project.initVCS(selectedVcsSystem) |
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
422 | if self.project.vcs is not None: |
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
423 | vcsdlg = self.project.vcs.vcsOptionsDialog( |
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
424 | self.project, self.project.name, 1) |
7759
51aa6c6b66f7
Changed calls to exec_() into exec() (remainder of Python2 elimination).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7533
diff
changeset
|
425 | if vcsdlg.exec() == QDialog.Accepted: |
6188
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
426 | vcsDataDict = vcsdlg.getData() |
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
427 | # edit VCS command options |
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
428 | if self.project.vcs.vcsSupportCommandOptions(): |
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
429 | vcores = E5MessageBox.yesNo( |
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
430 | self.parent(), |
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
431 | QCoreApplication.translate( |
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
432 | "VcsProjectHelper", "Import Project"), |
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
433 | QCoreApplication.translate( |
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
434 | "VcsProjectHelper", |
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
435 | """Would you like to edit the VCS command""" |
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
436 | """ options?""")) |
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
437 | else: |
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
438 | vcores = False |
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
439 | if vcores: |
7259
7c017076c12e
Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7229
diff
changeset
|
440 | from .CommandOptionsDialog import ( |
6188
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
441 | VcsCommandOptionsDialog |
7259
7c017076c12e
Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7229
diff
changeset
|
442 | ) |
6188
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
443 | codlg = VcsCommandOptionsDialog(self.project.vcs) |
7759
51aa6c6b66f7
Changed calls to exec_() into exec() (remainder of Python2 elimination).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7533
diff
changeset
|
444 | if codlg.exec() == QDialog.Accepted: |
6188
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
445 | self.project.vcs.vcsSetOptions(codlg.getOptions()) |
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
446 | self.project.setDirty(True) |
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
447 | self.project.vcs.vcsSetDataFromDict(vcsDataDict) |
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
448 | self.project.saveProject() |
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
449 | isVcsControlled = self.project.vcs.vcsImport( |
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
450 | vcsDataDict, self.project.ppath)[0] |
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
451 | if isVcsControlled: |
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
452 | # reopen the project |
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
453 | self.project.openProject(self.project.pfile) |
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
454 | else: |
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
455 | # revert the changes to the local project |
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
456 | # because the project dir is not a VCS directory |
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
457 | revertChanges() |
3302
e92f0dd51979
Removed the Mercurial support for a command options dialog and added useable global options to the Mercurial config page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3190
diff
changeset
|
458 | else: |
6188
5a6ae3be31e6
Fixed some loop related coding issues detected by the extended code style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6168
diff
changeset
|
459 | # revert the changes because user cancelled |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
460 | revertChanges() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
461 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
462 | def _vcsUpdate(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
463 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
464 | Protected slot used to update the local project from the repository. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
465 | """ |
7941
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
466 | if self.vcs is None: |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
467 | # just in case |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
468 | return |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
469 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
470 | shouldReopen = self.vcs.vcsUpdate(self.project.ppath) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
471 | if shouldReopen: |
3020
542e97d4ecb3
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3013
diff
changeset
|
472 | res = E5MessageBox.yesNo( |
542e97d4ecb3
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3013
diff
changeset
|
473 | self.parent(), |
5669
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
474 | QCoreApplication.translate("VcsProjectHelper", "Update"), |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
475 | QCoreApplication.translate( |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
476 | "VcsProjectHelper", |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
477 | """The project should be reread. Do this now?"""), |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
478 | yesDefault=True) |
543
a558e3cb7b5a
Continued replacing QMessageBox methods with own methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
538
diff
changeset
|
479 | if res: |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
480 | self.project.reopenProject() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
481 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
482 | def _vcsCommit(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
483 | """ |
3013
fe886b7f8f40
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2409
diff
changeset
|
484 | Protected slot used to commit changes to the local project to the |
fe886b7f8f40
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2409
diff
changeset
|
485 | repository. |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
486 | """ |
7941
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
487 | if self.vcs is None: |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
488 | # just in case |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
489 | return |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
490 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
491 | if Preferences.getVCS("AutoSaveProject"): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
492 | self.project.saveProject() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
493 | if Preferences.getVCS("AutoSaveFiles"): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
494 | self.project.saveAllScripts() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
495 | self.vcs.vcsCommit(self.project.ppath, '') |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
496 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
497 | def _vcsRemove(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
498 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
499 | Protected slot used to remove the local project from the repository. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
500 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
501 | Depending on the parameters set in the vcs object the project |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
502 | may be removed from the local disk as well. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
503 | """ |
7941
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
504 | if self.vcs is None: |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
505 | # just in case |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
506 | return |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
507 | |
3020
542e97d4ecb3
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3013
diff
changeset
|
508 | res = E5MessageBox.yesNo( |
542e97d4ecb3
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3013
diff
changeset
|
509 | self.parent(), |
5669
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
510 | QCoreApplication.translate( |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
511 | "VcsProjectHelper", |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
512 | "Remove project from repository"), |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
513 | QCoreApplication.translate( |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
514 | "VcsProjectHelper", |
3031
ed2eaa573ca5
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3020
diff
changeset
|
515 | "Dou you really want to remove this project from" |
543
a558e3cb7b5a
Continued replacing QMessageBox methods with own methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
538
diff
changeset
|
516 | " the repository (and disk)?")) |
a558e3cb7b5a
Continued replacing QMessageBox methods with own methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
538
diff
changeset
|
517 | if res: |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
518 | self.vcs.vcsRemove(self.project.ppath, True) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
519 | self._vcsCommit() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
520 | if not os.path.exists(self.project.pfile): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
521 | ppath = self.project.ppath |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
522 | self.setDirty(False) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
523 | self.project.closeProject() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
524 | shutil.rmtree(ppath, True) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
525 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
526 | def _vcsCommandOptions(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
527 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
528 | Protected slot to edit the VCS command options. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
529 | """ |
7941
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
530 | if self.vcs is None: |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
531 | # just in case |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
532 | return |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
533 | |
3302
e92f0dd51979
Removed the Mercurial support for a command options dialog and added useable global options to the Mercurial config page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3190
diff
changeset
|
534 | if self.vcs.vcsSupportCommandOptions(): |
e92f0dd51979
Removed the Mercurial support for a command options dialog and added useable global options to the Mercurial config page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3190
diff
changeset
|
535 | from .CommandOptionsDialog import VcsCommandOptionsDialog |
e92f0dd51979
Removed the Mercurial support for a command options dialog and added useable global options to the Mercurial config page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3190
diff
changeset
|
536 | codlg = VcsCommandOptionsDialog(self.vcs) |
7759
51aa6c6b66f7
Changed calls to exec_() into exec() (remainder of Python2 elimination).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7533
diff
changeset
|
537 | if codlg.exec() == QDialog.Accepted: |
3302
e92f0dd51979
Removed the Mercurial support for a command options dialog and added useable global options to the Mercurial config page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3190
diff
changeset
|
538 | self.vcs.vcsSetOptions(codlg.getOptions()) |
e92f0dd51979
Removed the Mercurial support for a command options dialog and added useable global options to the Mercurial config page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3190
diff
changeset
|
539 | self.project.setDirty(True) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
540 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
541 | def _vcsLog(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
542 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
543 | Protected slot used to show the log of the local project. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
544 | """ |
5452
9f89364d9ffd
Removed the VCS log dialogs in favour of the log browser dialogs.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5389
diff
changeset
|
545 | # kept for backward compatibility for plug-ins |
9f89364d9ffd
Removed the VCS log dialogs in favour of the log browser dialogs.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5389
diff
changeset
|
546 | self._vcsLogBrowser() |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
547 | |
3349
2a034a7f1f54
Made the status LED (right lower corner) clickable (depending on overall VCS status it will show the log browser or the status dialog).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3345
diff
changeset
|
548 | def _vcsLogBrowser(self): |
2a034a7f1f54
Made the status LED (right lower corner) clickable (depending on overall VCS status it will show the log browser or the status dialog).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3345
diff
changeset
|
549 | """ |
2a034a7f1f54
Made the status LED (right lower corner) clickable (depending on overall VCS status it will show the log browser or the status dialog).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3345
diff
changeset
|
550 | Protected slot used to show the log of the local project with a |
2a034a7f1f54
Made the status LED (right lower corner) clickable (depending on overall VCS status it will show the log browser or the status dialog).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3345
diff
changeset
|
551 | log browser dialog. |
2a034a7f1f54
Made the status LED (right lower corner) clickable (depending on overall VCS status it will show the log browser or the status dialog).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3345
diff
changeset
|
552 | """ |
7941
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
553 | if self.vcs is None: |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
554 | # just in case |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
555 | return |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
556 | |
3349
2a034a7f1f54
Made the status LED (right lower corner) clickable (depending on overall VCS status it will show the log browser or the status dialog).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3345
diff
changeset
|
557 | self.vcs.vcsLogBrowser(self.project.ppath) |
2a034a7f1f54
Made the status LED (right lower corner) clickable (depending on overall VCS status it will show the log browser or the status dialog).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3345
diff
changeset
|
558 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
559 | def _vcsDiff(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
560 | """ |
3013
fe886b7f8f40
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2409
diff
changeset
|
561 | Protected slot used to show the difference of the local project to |
fe886b7f8f40
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2409
diff
changeset
|
562 | the repository. |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
563 | """ |
7941
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
564 | if self.vcs is None: |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
565 | # just in case |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
566 | return |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
567 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
568 | self.vcs.vcsDiff(self.project.ppath) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
569 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
570 | def _vcsStatus(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
571 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
572 | Protected slot used to show the status of the local project. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
573 | """ |
7941
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
574 | if self.vcs is None: |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
575 | # just in case |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
576 | return |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
577 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
578 | self.vcs.vcsStatus(self.project.ppath) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
579 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
580 | def _vcsTag(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
581 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
582 | Protected slot used to tag the local project in the repository. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
583 | """ |
7941
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
584 | if self.vcs is None: |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
585 | # just in case |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
586 | return |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
587 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
588 | self.vcs.vcsTag(self.project.ppath) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
589 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
590 | def _vcsRevert(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
591 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
592 | Protected slot used to revert changes made to the local project. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
593 | """ |
7941
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
594 | if self.vcs is None: |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
595 | # just in case |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
596 | return |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
597 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
598 | self.vcs.vcsRevert(self.project.ppath) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
599 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
600 | def _vcsSwitch(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
601 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
602 | Protected slot used to switch the local project to another tag/branch. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
603 | """ |
7941
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
604 | if self.vcs is None: |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
605 | # just in case |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
606 | return |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
607 | |
1083
dc680a0ce221
Extended the code logic for the switch command of the various version control interfaces.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1012
diff
changeset
|
608 | shouldReopen = self.vcs.vcsSwitch(self.project.ppath) |
dc680a0ce221
Extended the code logic for the switch command of the various version control interfaces.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1012
diff
changeset
|
609 | if shouldReopen: |
3020
542e97d4ecb3
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3013
diff
changeset
|
610 | res = E5MessageBox.yesNo( |
542e97d4ecb3
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3013
diff
changeset
|
611 | self.parent(), |
5669
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
612 | QCoreApplication.translate("VcsProjectHelper", "Switch"), |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
613 | QCoreApplication.translate( |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
614 | "VcsProjectHelper", |
63295be38bc6
Fixed a translations related issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5452
diff
changeset
|
615 | """The project should be reread. Do this now?"""), |
1083
dc680a0ce221
Extended the code logic for the switch command of the various version control interfaces.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1012
diff
changeset
|
616 | yesDefault=True) |
dc680a0ce221
Extended the code logic for the switch command of the various version control interfaces.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1012
diff
changeset
|
617 | if res: |
dc680a0ce221
Extended the code logic for the switch command of the various version control interfaces.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1012
diff
changeset
|
618 | self.project.reopenProject() |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
619 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
620 | def _vcsMerge(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
621 | """ |
3013
fe886b7f8f40
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2409
diff
changeset
|
622 | Protected slot used to merge changes of a tag/revision into the local |
fe886b7f8f40
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2409
diff
changeset
|
623 | project. |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
624 | """ |
7941
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
625 | if self.vcs is None: |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
626 | # just in case |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
627 | return |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
628 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
629 | self.vcs.vcsMerge(self.project.ppath) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
630 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
631 | def _vcsCleanup(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
632 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
633 | Protected slot used to cleanup the local project. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
634 | """ |
7941
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
635 | if self.vcs is None: |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
636 | # just in case |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
637 | return |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
638 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
639 | self.vcs.vcsCleanup(self.project.ppath) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
640 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
641 | def _vcsCommand(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
642 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
643 | Protected slot used to execute an arbitrary vcs command. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
644 | """ |
7941
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
645 | if self.vcs is None: |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
646 | # just in case |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
647 | return |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
648 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
649 | self.vcs.vcsCommandLine(self.project.ppath) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
650 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
651 | def _vcsInfoDisplay(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
652 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
653 | Protected slot called to show some vcs information. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
654 | """ |
7941
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
655 | if self.vcs is None: |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
656 | # just in case |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
657 | return |
cf988a30ba47
VCS/ProjectHelper: added some code to cope against vcs being None.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
658 | |
2409
df3820f08247
Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2302
diff
changeset
|
659 | from .RepositoryInfoDialog import VcsRepositoryInfoDialog |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
660 | info = self.vcs.vcsRepositoryInfos(self.project.ppath) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
661 | dlg = VcsRepositoryInfoDialog(None, info) |
7759
51aa6c6b66f7
Changed calls to exec_() into exec() (remainder of Python2 elimination).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7533
diff
changeset
|
662 | dlg.exec() |