Tue, 28 Aug 2012 17:15:21 +0200
Implemented the required command actions for supporting development of Pyramid projects.
2
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
1 | # -*- coding: utf-8 -*- |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
2 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
3 | # Copyright (c) 2012 Detlev Offenbach <detlev@die-offenbachs.de> |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
4 | # |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
5 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
6 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
7 | Module implementing the Pyramid project support. |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
8 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
9 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
10 | import os |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
11 | import configparser |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
12 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
13 | from PyQt4.QtCore import QObject, QFileInfo, QProcess, QTimer, QUrl |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
14 | from PyQt4.QtGui import QMenu, QDialog, QInputDialog, QDesktopServices |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
15 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
16 | from E5Gui.E5Application import e5App |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
17 | from E5Gui import E5MessageBox, E5FileDialog |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
18 | from E5Gui.E5Action import E5Action |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
19 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
20 | from .FormSelectionDialog import FormSelectionDialog |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
21 | from .CreateParametersDialog import CreateParametersDialog |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
22 | from .PyramidDialog import PyramidDialog |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
23 | from .DistributionTypeSelectionDialog import DistributionTypeSelectionDialog |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
24 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
25 | import Utilities |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
26 | from Globals import isWindowsPlatform |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
27 | import UI.PixmapCache |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
28 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
29 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
30 | class PyramidNoProjectSelectedException(Exception): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
31 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
32 | Exception thrown to signal, that there is no current Pyramid project. |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
33 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
34 | pass |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
35 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
36 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
37 | class Project(QObject): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
38 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
39 | Class implementing the Pyramid project support. |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
40 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
41 | def __init__(self, plugin, parent = None): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
42 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
43 | Constructor |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
44 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
45 | @param plugin reference to the plugin object |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
46 | @param parent parent (QObject) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
47 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
48 | super().__init__(parent) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
49 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
50 | self.__plugin = plugin |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
51 | self.__ui = parent |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
52 | self.__e5project = e5App().getObject("Project") |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
53 | self.__hooksInstalled = False |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
54 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
55 | self.__mainMenu = None |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
56 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
57 | self.__serverProc = None |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
58 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
59 | def initActions(self): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
60 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
61 | Public method to define the Pyramid actions. |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
62 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
63 | self.actions = [] |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
64 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
65 | self.selectProjectAct = E5Action(self.trUtf8('Current Pyramid Project'), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
66 | "", |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
67 | 0, 0, |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
68 | self,'pyramid_current_project') |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
69 | self.selectProjectAct.setStatusTip(self.trUtf8( |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
70 | 'Selects the current Pyramid project')) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
71 | self.selectProjectAct.setWhatsThis(self.trUtf8( |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
72 | """<b>Current Pyramid Project</b>""" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
73 | """<p>Selects the Pyramid project. Used for multi-project """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
74 | """Pyramid projects to switch between the projects.</p>""" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
75 | )) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
76 | self.selectProjectAct.triggered[()].connect(self.__selectProject) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
77 | self.actions.append(self.selectProjectAct) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
78 | self.__setCurrentProject(None) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
79 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
80 | ############################### |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
81 | ## create actions below ## |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
82 | ############################### |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
83 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
84 | self.createProjectAct = E5Action(self.trUtf8('Create Pyramid Project'), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
85 | self.trUtf8('Create Pyramid &Project'), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
86 | 0, 0, |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
87 | self,'pyramid_create_project') |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
88 | self.createProjectAct.setStatusTip(self.trUtf8( |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
89 | 'Creates a new Pyramid project')) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
90 | self.createProjectAct.setWhatsThis(self.trUtf8( |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
91 | """<b>Create Pyramid Project</b>""" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
92 | """<p>Creates a new Pyramid project using "pcreate".</p>""" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
93 | )) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
94 | self.createProjectAct.triggered[()].connect(self.__createProject) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
95 | self.actions.append(self.createProjectAct) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
96 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
97 | ############################## |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
98 | ## run actions below ## |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
99 | ############################## |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
100 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
101 | self.runServerAct = E5Action(self.trUtf8('Run Server'), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
102 | self.trUtf8('Run &Server'), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
103 | 0, 0, |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
104 | self,'pyramid_run_server') |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
105 | self.runServerAct.setStatusTip(self.trUtf8( |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
106 | 'Starts the Pyramid Web server')) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
107 | self.runServerAct.setWhatsThis(self.trUtf8( |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
108 | """<b>Run Server</b>""" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
109 | """<p>Starts the Pyramid Web server using""" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
110 | """ "pserve --reload development.ini".</p>""" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
111 | )) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
112 | self.runServerAct.triggered[()].connect(self.__runServer) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
113 | self.actions.append(self.runServerAct) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
114 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
115 | self.runLoggingServerAct = E5Action(self.trUtf8('Run Server with Logging'), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
116 | self.trUtf8('Run Server with &Logging'), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
117 | 0, 0, |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
118 | self,'pyramid_run_logging_server') |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
119 | self.runLoggingServerAct.setStatusTip(self.trUtf8( |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
120 | 'Starts the Pyramid Web server with logging')) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
121 | self.runLoggingServerAct.setWhatsThis(self.trUtf8( |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
122 | """<b>Run Server with Logging</b>""" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
123 | """<p>Starts the Pyramid Web server with logging using""" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
124 | """ "pserve --log-file=server.log --reload development.ini".</p>""" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
125 | )) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
126 | self.runLoggingServerAct.triggered[()].connect(self.__runLoggingServer) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
127 | self.actions.append(self.runLoggingServerAct) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
128 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
129 | self.runBrowserAct = E5Action(self.trUtf8('Run Web-Browser'), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
130 | self.trUtf8('Run &Web-Browser'), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
131 | 0, 0, |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
132 | self,'pyramid_run_browser') |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
133 | self.runBrowserAct.setStatusTip(self.trUtf8( |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
134 | 'Starts the default Web-Browser with the URL of the Pyramid Web server')) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
135 | self.runBrowserAct.setWhatsThis(self.trUtf8( |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
136 | """<b>Run Web-Browser</b>""" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
137 | """<p>Starts the default Web-Browser with the URL of the """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
138 | """Pyramid Web server.</p>""" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
139 | )) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
140 | self.runBrowserAct.triggered[()].connect(self.__runBrowser) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
141 | self.actions.append(self.runBrowserAct) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
142 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
143 | self.runPythonShellAct = E5Action(self.trUtf8('Start Pyramid Python Console'), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
144 | self.trUtf8('Start Pyramid &Python Console'), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
145 | 0, 0, |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
146 | self,'pyramid_python_console') |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
147 | self.runPythonShellAct.setStatusTip(self.trUtf8( |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
148 | 'Starts an interactive Python interpreter')) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
149 | self.runPythonShellAct.setWhatsThis(self.trUtf8( |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
150 | """<b>Start Pyramid Python Console</b>""" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
151 | """<p>Starts an interactive Python interpreter.</p>""" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
152 | )) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
153 | self.runPythonShellAct.triggered[()].connect(self.__runPythonShell) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
154 | self.actions.append(self.runPythonShellAct) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
155 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
156 | ############################## |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
157 | ## setup actions below ## |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
158 | ############################## |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
159 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
160 | self.setupDevelopAct = E5Action(self.trUtf8('Setup Development Environment'), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
161 | self.trUtf8('Setup &Development Environment'), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
162 | 0, 0, |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
163 | self,'pyramid_setup_development') |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
164 | self.setupDevelopAct.setStatusTip(self.trUtf8( |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
165 | 'Setup the Pyramid project in development mode')) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
166 | self.setupDevelopAct.setWhatsThis(self.trUtf8( |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
167 | """<b>Setup Development Environment</b>""" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
168 | """<p>Setup the Pyramid project in development mode using""" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
169 | """ "python setup.py develop".</p>""" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
170 | )) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
171 | self.setupDevelopAct.triggered[()].connect(self.__setupDevelop) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
172 | self.actions.append(self.setupDevelopAct) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
173 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
174 | ################################## |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
175 | ## distribution actions below ## |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
176 | ################################## |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
177 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
178 | self.buildDistroAct = E5Action(self.trUtf8('Build Distribution'), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
179 | self.trUtf8('Build &Distribution'), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
180 | 0, 0, |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
181 | self,'pyramid_build_distribution') |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
182 | self.buildDistroAct.setStatusTip(self.trUtf8( |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
183 | 'Builds a distribution file for the Pyramid project')) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
184 | self.buildDistroAct.setWhatsThis(self.trUtf8( |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
185 | """<b>Build Distribution</b>""" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
186 | """<p>Builds a distribution file for the Pyramid project using""" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
187 | """ "python setup.py sdist".</p>""" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
188 | )) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
189 | self.buildDistroAct.triggered[()].connect(self.__buildDistribution) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
190 | self.actions.append(self.buildDistroAct) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
191 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
192 | ################################## |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
193 | ## documentation action below ## |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
194 | ################################## |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
195 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
196 | self.documentationAct = E5Action(self.trUtf8('Documentation'), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
197 | self.trUtf8('D&ocumentation'), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
198 | 0, 0, |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
199 | self,'pyramid_documentation') |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
200 | self.documentationAct.setStatusTip(self.trUtf8( |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
201 | 'Shows the help viewer with the Pyramid documentation')) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
202 | self.documentationAct.setWhatsThis(self.trUtf8( |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
203 | """<b>Documentation</b>""" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
204 | """<p>Shows the help viewer with the Pyramid documentation.</p>""" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
205 | )) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
206 | self.documentationAct.triggered[()].connect(self.__showDocumentation) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
207 | self.actions.append(self.documentationAct) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
208 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
209 | ############################## |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
210 | ## about action below ## |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
211 | ############################## |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
212 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
213 | self.aboutPyramidAct = E5Action(self.trUtf8('About Pyramid'), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
214 | self.trUtf8('About P&yramid'), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
215 | 0, 0, |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
216 | self,'pyramid_about') |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
217 | self.aboutPyramidAct.setStatusTip(self.trUtf8( |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
218 | 'Shows some information about Pyramid')) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
219 | self.aboutPyramidAct.setWhatsThis(self.trUtf8( |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
220 | """<b>About Pyramid</b>""" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
221 | """<p>Shows some information about Pyramid.</p>""" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
222 | )) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
223 | self.aboutPyramidAct.triggered[()].connect(self.__pyramidInfo) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
224 | self.actions.append(self.aboutPyramidAct) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
225 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
226 | def initMenu(self): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
227 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
228 | Public slot to initialize the Pyramid menu. |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
229 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
230 | @return the menu generated (QMenu) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
231 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
232 | menu = QMenu(self.trUtf8('P&yramid'), self.__ui) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
233 | menu.setTearOffEnabled(True) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
234 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
235 | menu.addAction(self.selectProjectAct) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
236 | menu.addSeparator() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
237 | menu.addAction(self.runServerAct) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
238 | menu.addAction(self.runLoggingServerAct) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
239 | menu.addAction(self.runBrowserAct) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
240 | menu.addSeparator() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
241 | menu.addAction(self.createProjectAct) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
242 | menu.addSeparator() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
243 | menu.addAction(self.setupDevelopAct) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
244 | menu.addSeparator() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
245 | menu.addAction(self.runPythonShellAct) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
246 | menu.addSeparator() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
247 | menu.addAction(self.buildDistroAct) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
248 | menu.addSeparator() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
249 | menu.addAction(self.documentationAct) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
250 | menu.addSeparator() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
251 | menu.addAction(self.aboutPyramidAct) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
252 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
253 | self.__mainMenu = menu |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
254 | return menu |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
255 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
256 | def projectOpenedHooks(self): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
257 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
258 | Public method to add our hook methods. |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
259 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
260 | if self.__e5project.getProjectType() == "Pyramid": |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
261 | self.__formsBrowser = \ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
262 | e5App().getObject("ProjectBrowser").getProjectBrowser("forms") |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
263 | self.__formsBrowser.addHookMethodAndMenuEntry("newForm", |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
264 | self.newForm, self.trUtf8("New template...")) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
265 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
266 | ## self.__e5project.projectLanguageAddedByCode.connect( |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
267 | ## self.__projectLanguageAdded) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
268 | ## self.__translationsBrowser = \ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
269 | ## e5App().getObject("ProjectBrowser").getProjectBrowser("translations") |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
270 | ## self.__translationsBrowser.addHookMethodAndMenuEntry("extractMessages", |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
271 | ## self.extractMessages, self.trUtf8("Extract messages")) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
272 | ## self.__translationsBrowser.addHookMethodAndMenuEntry("releaseAll", |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
273 | ## self.compileCatalogs, self.trUtf8("Compile all catalogs")) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
274 | ## self.__translationsBrowser.addHookMethodAndMenuEntry("releaseSelected", |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
275 | ## self.compileSelectedCatalogs, |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
276 | ## self.trUtf8("Compile selected catalogs")) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
277 | ## self.__translationsBrowser.addHookMethodAndMenuEntry("generateAll", |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
278 | ## self.updateCatalogs, self.trUtf8("Update all catalogs")) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
279 | ## self.__translationsBrowser.addHookMethodAndMenuEntry("generateSelected", |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
280 | ## self.updateSelectedCatalogs, self.trUtf8("Update selected catalogs")) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
281 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
282 | self.__hooksInstalled = True |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
283 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
284 | def projectClosedHooks(self): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
285 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
286 | Public method to remove our hook methods. |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
287 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
288 | if self.__hooksInstalled: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
289 | self.__formsBrowser.removeHookMethod("newForm") |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
290 | self.__formsBrowser = None |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
291 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
292 | ## self.__e5project.projectLanguageAddedByCode.disconnect( |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
293 | ## self.__projectLanguageAdded) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
294 | ## self.__translationsBrowser.removeHookMethod("extractMessages") |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
295 | ## self.__translationsBrowser.removeHookMethod("releaseAll") |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
296 | ## self.__translationsBrowser.removeHookMethod("releaseSelected") |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
297 | ## self.__translationsBrowser.removeHookMethod("generateAll") |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
298 | ## self.__translationsBrowser.removeHookMethod("generateSelected") |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
299 | ## self.__translationsBrowser = None |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
300 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
301 | self.__hooksInstalled = False |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
302 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
303 | def newForm(self, path): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
304 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
305 | Public method to create a new form. |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
306 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
307 | @param path full directory path for the new form file (string) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
308 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
309 | dlg = FormSelectionDialog() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
310 | if dlg.exec_() == QDialog.Accepted: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
311 | template = dlg.getTemplateText() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
312 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
313 | filter = self.trUtf8( |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
314 | "Chameleon Templates (*.pt);;" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
315 | "Chameleon Text Templates (*.txt);;" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
316 | "Mako Templates (*.mako);;" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
317 | "Mako Templates (*.mak);;" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
318 | "HTML Files (*.html);;" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
319 | "HTML Files (*.htm);;" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
320 | "All Files (*)") |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
321 | fname, selectedFilter = E5FileDialog.getSaveFileNameAndFilter( |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
322 | self.__ui, |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
323 | self.trUtf8("New Form"), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
324 | path, |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
325 | filter, |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
326 | None, |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
327 | E5FileDialog.Options(E5FileDialog.DontConfirmOverwrite)) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
328 | if fname: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
329 | ext = QFileInfo(fname).suffix() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
330 | if not ext: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
331 | ex = selectedFilter.split("(*")[1].split(")")[0] |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
332 | if ex: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
333 | fname += ex |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
334 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
335 | if os.path.exists(fname): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
336 | res = E5MessageBox.yesNo(self.__ui, |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
337 | self.trUtf8("New Form"), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
338 | self.trUtf8("""The file already exists! Overwrite it?"""), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
339 | icon = E5MessageBox.Warning) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
340 | if not res: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
341 | # user selected to not overwrite |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
342 | return |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
343 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
344 | try: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
345 | f = open(fname, "w", encoding="utf-8") |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
346 | f.write(template) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
347 | f.close() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
348 | except IOError as e: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
349 | E5MessageBox.critical(self, |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
350 | self.trUtf8("New Form"), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
351 | self.trUtf8("<p>The new form file <b>{0}</b> could not be" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
352 | " created.<br/>" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
353 | "Problem: {1}</p>").format(fname, e)) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
354 | return |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
355 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
356 | self.__e5project.appendFile(fname) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
357 | self.__formsBrowser.sourceFile.emit(fname) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
358 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
359 | ################################################################## |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
360 | ## methods below implement general functionality |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
361 | ################################################################## |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
362 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
363 | def projectClosed(self): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
364 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
365 | Public method to handle the closing of a project. |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
366 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
367 | if self.__serverProc is not None: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
368 | self.__serverProcFinished() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
369 | self.__setCurrentProject(None) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
370 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
371 | def __getVirtualEnvironment(self): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
372 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
373 | Private method to get the path of the virtual environment. |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
374 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
375 | @return path of the virtual environment (string) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
376 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
377 | language = self.__e5project.getProjectLanguage() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
378 | if language == "Python3": |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
379 | virtEnv = self.__plugin.getPreferences("VirtualEnvironmentPy3") |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
380 | elif language == "Python2": |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
381 | virtEnv = self.__plugin.getPreferences("VirtualEnvironmentPy2") |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
382 | else: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
383 | virtEnv = "" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
384 | if virtEnv and not os.path.exists(virtEnv): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
385 | virtEnv = "" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
386 | return virtEnv |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
387 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
388 | def getPyramidCommand(self, cmd): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
389 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
390 | Public method to build a Pyramid command. |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
391 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
392 | @param cmd command (string) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
393 | @return full pyramid command (string) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
394 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
395 | virtualEnv = self.__getVirtualEnvironment() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
396 | if virtualEnv: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
397 | if isWindowsPlatform(): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
398 | cmd = os.path.join(virtualEnv, "Scripts", cmd) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
399 | else: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
400 | cmd = os.path.join(virtualEnv, "bin", cmd) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
401 | return cmd |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
402 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
403 | def getPythonCommand(self): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
404 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
405 | Public method to build the Python command. |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
406 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
407 | @return python command (string) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
408 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
409 | python = "python" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
410 | if isWindowsPlatform(): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
411 | python += ".exe" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
412 | virtualEnv = self.__getVirtualEnvironment() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
413 | if virtualEnv: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
414 | if isWindowsPlatform(): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
415 | python = os.path.join(virtualEnv, "Scripts", python) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
416 | else: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
417 | python = os.path.join(virtualEnv, "bin", python) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
418 | return python |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
419 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
420 | def __pyramidInfo(self): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
421 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
422 | Private slot to show some info about Pyramid. |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
423 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
424 | url = "http://www.pylonsproject.org/projects/pyramid/about" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
425 | msgBox = E5MessageBox.E5MessageBox(E5MessageBox.Question, |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
426 | self.trUtf8("About Pyramid"), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
427 | self.trUtf8( |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
428 | "<p>Pyramid is a high-level Python Web framework that encourages rapid " |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
429 | "development and clean, pragmatic design.</p>" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
430 | "<p>URL: <a href=\"{0}\">{0}</a></p>" |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
431 | ).format(url), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
432 | modal=True, |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
433 | buttons=E5MessageBox.Ok) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
434 | msgBox.setIconPixmap(UI.PixmapCache.getPixmap( |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
435 | os.path.join("ProjectPyramid", "icons", "pyramid64.png"))) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
436 | msgBox.exec_() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
437 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
438 | def isSpawningConsole(self, consoleCmd): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
439 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
440 | Public method to check, if the given console is a spawning console. |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
441 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
442 | @param consoleCmd console command (string) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
443 | @return tuple of two entries giving an indication, if the console |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
444 | is spawning (boolean) and the (possibly) cleaned console command |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
445 | (string) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
446 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
447 | if consoleCmd and consoleCmd[0] == '@': |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
448 | return (True, consoleCmd[1:]) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
449 | else: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
450 | return (False, consoleCmd) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
451 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
452 | ################################################################## |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
453 | ## slots below implement creation functions |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
454 | ################################################################## |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
455 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
456 | def __createProject(self): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
457 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
458 | Private slot to create a new Pyramid project. |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
459 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
460 | dlg = CreateParametersDialog(self) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
461 | if dlg.exec_() == QDialog.Accepted: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
462 | scaffold, project, overwrite, simulate = dlg.getData() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
463 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
464 | cmd = self.getPyramidCommand("pcreate") |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
465 | args = [] |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
466 | if overwrite: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
467 | args.append("--overwrite") |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
468 | else: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
469 | args.append("--interactive") |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
470 | if simulate: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
471 | args.append("--simulate") |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
472 | args.append("--scaffold={0}".format(scaffold)) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
473 | args.append(project) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
474 | dlg = PyramidDialog(self.trUtf8("Create Pyramid Project"), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
475 | linewrap=False, parent=self.__ui) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
476 | if dlg.startProcess(cmd, args, self.__e5project.getProjectPath()): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
477 | dlg.exec_() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
478 | if dlg.normalExit() and not simulate: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
479 | # search for files created by pcreate and add them to the project |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
480 | projectPath = os.path.join(self.__e5project.getProjectPath(), project) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
481 | for entry in os.walk(projectPath): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
482 | for fileName in entry[2]: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
483 | fullName = os.path.join(entry[0], fileName) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
484 | self.__e5project.appendFile(fullName) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
485 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
486 | # create the base directory for translations |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
487 | i18nPath = os.path.join(projectPath, project.lower(), "i18n") |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
488 | if not os.path.exists(i18nPath): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
489 | os.makedirs(i18nPath) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
490 | self.__e5project.setDirty(True) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
491 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
492 | self.__setCurrentProject(project) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
493 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
494 | ################################################################## |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
495 | ## methods below implement site related functions |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
496 | ################################################################## |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
497 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
498 | def __findProjects(self): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
499 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
500 | Private method to determine the relative path of all Pyramid |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
501 | projects (= top level dirs). |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
502 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
503 | @return list of projects (list of string) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
504 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
505 | projects = [] |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
506 | ppath = self.__e5project.getProjectPath() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
507 | for entry in os.listdir(ppath): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
508 | if entry[0] not in "._" and \ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
509 | os.path.isdir(os.path.join(ppath, entry)): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
510 | projects.append(entry) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
511 | return projects |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
512 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
513 | def __selectProject(self): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
514 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
515 | Private method to select a Pyramid project to work with. |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
516 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
517 | @return selected project (string) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
518 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
519 | projects = self.__findProjects() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
520 | if len(projects) == 0: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
521 | project = None |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
522 | elif len(projects) == 1: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
523 | project = projects[0] |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
524 | else: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
525 | if self.__currentProject is not None: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
526 | try: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
527 | cur = projects.index(self.__currentProject) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
528 | except ValueError: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
529 | cur = 0 |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
530 | else: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
531 | cur = 0 |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
532 | project, ok = QInputDialog.getItem( |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
533 | self.__ui, |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
534 | self.trUtf8("Select Pyramid Project"), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
535 | self.trUtf8("Select the Pyramid project to work with."), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
536 | projects, |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
537 | cur, False) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
538 | if not ok: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
539 | projects = None |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
540 | self.__setCurrentProject(project) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
541 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
542 | def __projectPath(self): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
543 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
544 | Private method to calculate the full path of the Pyramid project. |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
545 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
546 | @exception PyramidNoProjectSelectedException raised, if no project is selected |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
547 | @return path of the project (string) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
548 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
549 | if self.__currentProject is None: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
550 | self.__selectProject() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
551 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
552 | if self.__currentProject is None: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
553 | raise PyramidNoProjectSelectedException |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
554 | else: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
555 | return os.path.join(self.__e5project.getProjectPath(), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
556 | self.__currentProject) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
557 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
558 | def __setCurrentProject(self, project): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
559 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
560 | Private slot to set the current project. |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
561 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
562 | @param project name of the project (string) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
563 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
564 | if project is not None and len(project) == 0: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
565 | self.__currentProject = None |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
566 | else: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
567 | self.__currentProject = project |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
568 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
569 | if self.__currentProject is None: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
570 | curProject = self.trUtf8("None") |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
571 | else: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
572 | curProject = self.__currentProject |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
573 | self.selectProjectAct.setText( |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
574 | self.trUtf8('&Current Pyramid Project ({0})').format(curProject)) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
575 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
576 | if self.__currentProject is None: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
577 | self.__e5project.pdata["TRANSLATIONPATTERN"] = [] |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
578 | else: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
579 | # TODO: adjust this to the Pyramid docu |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
580 | self.__e5project.pdata["TRANSLATIONPATTERN"] = [ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
581 | os.path.join(project, project.lower(), "i18n", "%language%", |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
582 | "LC_MESSAGES", "%s.po" % project.lower()) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
583 | ] |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
584 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
585 | def __project(self): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
586 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
587 | Private method to get the name of the current Pyramid project. |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
588 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
589 | @exception PyramidNoProjectSelectedException raised, if no project is selected |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
590 | @return name of the project (string) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
591 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
592 | if self.__currentProject is None: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
593 | self.__selectProject() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
594 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
595 | if self.__currentProject is None: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
596 | raise PyramidNoProjectSelectedException |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
597 | else: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
598 | return self.__currentProject |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
599 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
600 | ################################################################## |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
601 | ## slots below implement run functions |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
602 | ################################################################## |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
603 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
604 | def __runServer(self, logging = False): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
605 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
606 | Private slot to start the Pyramid Web server. |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
607 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
608 | @param logging flag indicating to enable logging (boolean) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
609 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
610 | consoleCmd = self.isSpawningConsole( |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
611 | self.__plugin.getPreferences("ConsoleCommand"))[1] |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
612 | if consoleCmd: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
613 | try: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
614 | projectPath = self.__projectPath() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
615 | except PyramidNoProjectSelectedException: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
616 | E5MessageBox.warning(self.__ui, |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
617 | self.trUtf8('Run Server'), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
618 | self.trUtf8('No current Pyramid project selected or no Pyramid ' |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
619 | 'project created yet. Aborting...')) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
620 | return |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
621 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
622 | args = Utilities.parseOptionString(consoleCmd) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
623 | args[0] = Utilities.getExecutablePath(args[0]) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
624 | args.append(self.getPyramidCommand("pserve")) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
625 | if logging: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
626 | args.append("--log-file=server.log") |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
627 | args.append("--reload") |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
628 | args.append(os.path.join(projectPath, "development.ini")) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
629 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
630 | if isWindowsPlatform(): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
631 | serverProcStarted, pid = \ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
632 | QProcess.startDetached(args[0], args[1:], projectPath) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
633 | else: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
634 | if self.__serverProc is not None: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
635 | self.__serverProcFinished() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
636 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
637 | self.__serverProc = QProcess() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
638 | self.__serverProc.finished.connect(self.__serverProcFinished) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
639 | self.__serverProc.setWorkingDirectory(projectPath) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
640 | self.__serverProc.start(args[0], args[1:]) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
641 | serverProcStarted = self.__serverProc.waitForStarted() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
642 | if not serverProcStarted: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
643 | E5MessageBox.critical(self.__ui, |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
644 | self.trUtf8('Process Generation Error'), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
645 | self.trUtf8('The Pyramid server could not be started.')) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
646 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
647 | def __runLoggingServer(self): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
648 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
649 | Private slot to start the Pyramid Web server with logging. |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
650 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
651 | self.__runServer(True) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
652 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
653 | def __serverProcFinished(self): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
654 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
655 | Private slot connected to the finished signal. |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
656 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
657 | if self.__serverProc is not None and \ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
658 | self.__serverProc.state() != QProcess.NotRunning: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
659 | self.__serverProc.terminate() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
660 | QTimer.singleShot(2000, self.__serverProc.kill) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
661 | self.__serverProc.waitForFinished(3000) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
662 | self.__serverProc = None |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
663 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
664 | def __runBrowser(self): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
665 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
666 | Private slot to start the default web browser with the server URL. |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
667 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
668 | try: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
669 | projectPath = self.__projectPath() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
670 | except PyramidNoProjectSelectedException: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
671 | E5MessageBox.warning(self.__ui, |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
672 | self.trUtf8('Run Web-Browser'), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
673 | self.trUtf8('No current Pyramid project selected or no Pyramid project' |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
674 | ' created yet. Aborting...')) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
675 | return |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
676 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
677 | config = configparser.ConfigParser() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
678 | config.read(os.path.join(projectPath, "development.ini")) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
679 | port = config.get("server:main", "port", fallback="6543") |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
680 | url = QUrl("http://localhost:{0}".format(port)) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
681 | res = QDesktopServices.openUrl(url) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
682 | if not res: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
683 | E5MessageBox.critical(self.__ui, |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
684 | self.trUtf8('Run Web-Browser'), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
685 | self.trUtf8('Could not start the web-browser for the URL "{0}".')\ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
686 | .format(url.toString())) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
687 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
688 | def __runPythonShell(self): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
689 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
690 | Private slot to start a Python console for a Pyramid project. |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
691 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
692 | consoleCmd = self.isSpawningConsole( |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
693 | self.__plugin.getPreferences("ConsoleCommand"))[1] |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
694 | if consoleCmd: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
695 | try: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
696 | projectPath = self.__projectPath() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
697 | except PyramidNoProjectSelectedException: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
698 | E5MessageBox.warning(self.__ui, |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
699 | self.trUtf8('Start Pyramid Python Console'), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
700 | self.trUtf8('No current Pyramid project selected or no Pyramid ' |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
701 | 'project created yet. Aborting...')) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
702 | return |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
703 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
704 | args = Utilities.parseOptionString(consoleCmd) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
705 | args[0] = Utilities.getExecutablePath(args[0]) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
706 | args.append(self.getPyramidCommand("pshell")) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
707 | language = self.__e5project.getProjectLanguage() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
708 | if language == "Python2": |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
709 | consoleType = self.__plugin.getPreferences("Python2ConsoleType") |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
710 | else: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
711 | consoleType = self.__plugin.getPreferences("Python3ConsoleType") |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
712 | args.append("--python-shell={0}".format(consoleType)) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
713 | args.append(os.path.join(projectPath, "development.ini")) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
714 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
715 | started, pid = QProcess.startDetached(args[0], args[1:], projectPath) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
716 | if not started: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
717 | E5MessageBox.critical(self.__ui, |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
718 | self.trUtf8('Process Generation Error'), |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
719 | self.trUtf8('The Pyramid Shell process could not be started.')) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
720 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
721 | ################################################################## |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
722 | ## slots below implement setup functions |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
723 | ################################################################## |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
724 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
725 | def __setupDevelop(self): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
726 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
727 | Private slot to set up the development environment for the current project. |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
728 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
729 | title = self.trUtf8("Setup Development Environment") |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
730 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
731 | cmd = self.getPythonCommand() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
732 | args = [] |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
733 | args.append("setup.py") |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
734 | args.append("develop") |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
735 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
736 | try: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
737 | wd = self.__projectPath() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
738 | except PyramidNoProjectSelectedException: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
739 | E5MessageBox.warning(self.__ui, |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
740 | title, |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
741 | self.trUtf8('No current Pyramid project selected or no Pyramid project' |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
742 | ' created yet. Aborting...')) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
743 | return |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
744 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
745 | dia = PyramidDialog(title, |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
746 | msgSuccess = \ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
747 | self.trUtf8("Pyramid development environment setup successfully.")) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
748 | res = dia.startProcess(cmd, args, wd) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
749 | if res: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
750 | dia.exec_() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
751 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
752 | ################################################################## |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
753 | ## slots below implement distribution functions |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
754 | ################################################################## |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
755 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
756 | def __buildDistribution(self): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
757 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
758 | Private slot to build a distribution file for the current Pyramid project. |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
759 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
760 | title = self.trUtf8("Build Distribution File") |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
761 | try: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
762 | projectPath = self.__projectPath() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
763 | except PyramidNoProjectSelectedException: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
764 | E5MessageBox.warning(self.__ui, |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
765 | title, |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
766 | self.trUtf8('No current Pyramid project selected or no Pyramid project' |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
767 | ' created yet. Aborting...')) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
768 | return |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
769 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
770 | dlg = DistributionTypeSelectionDialog(self, projectPath, self.__ui) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
771 | if dlg.exec_() == QDialog.Accepted: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
772 | formats = dlg.getFormats() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
773 | cmd = self.getPythonCommand() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
774 | args = [] |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
775 | args.append("setup.py") |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
776 | args.append("sdist") |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
777 | if formats: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
778 | args.append("--formats={0}".format(','.join(formats))) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
779 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
780 | dia = PyramidDialog(title, |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
781 | msgSuccess = \ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
782 | self.trUtf8("Python distribution file built successfully.")) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
783 | res = dia.startProcess(cmd, args, projectPath) |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
784 | if res: |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
785 | dia.exec_() |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
786 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
787 | ################################################################## |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
788 | ## slots below implement documentation functions |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
789 | ################################################################## |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
790 | |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
791 | def __showDocumentation(self): |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
792 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
793 | Private slot to show the helpviewer with the Pylons documentation. |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
794 | """ |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
795 | page = self.__plugin.getPreferences("PyramidDocUrl") |
e691c51ab655
Implemented the required command actions for supporting development of Pyramid projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
796 | self.__ui.launchHelpViewer(page) |