17 """ |
17 """ |
18 Class implementing a dialog for entering the create parameters. |
18 Class implementing a dialog for entering the create parameters. |
19 """ |
19 """ |
20 PyramidStarterGH = "gh:Pylons/pyramid-cookiecutter-starter" |
20 PyramidStarterGH = "gh:Pylons/pyramid-cookiecutter-starter" |
21 PyramidStarter = "pyramid-cookiecutter-starter" |
21 PyramidStarter = "pyramid-cookiecutter-starter" |
|
22 PyramidStarterZip = "pyramid-cookiecutter-starter.zip" |
22 |
23 |
23 def __init__(self, parent=None): |
24 def __init__(self, parent=None): |
24 """ |
25 """ |
25 Constructor |
26 Constructor |
26 |
27 |
36 |
37 |
37 self.templateCombo.addItems([ |
38 self.templateCombo.addItems([ |
38 "", |
39 "", |
39 CreateParametersDialog.PyramidStarter, |
40 CreateParametersDialog.PyramidStarter, |
40 CreateParametersDialog.PyramidStarterGH, |
41 CreateParametersDialog.PyramidStarterGH, |
|
42 CreateParametersDialog.PyramidStarterZip, |
41 ]) |
43 ]) |
42 |
44 |
43 self.templateLanguageCombo.addItem("Jinja2", "jinja") |
45 self.templateLanguageCombo.addItem("Jinja2", "jinja") |
44 self.templateLanguageCombo.addItem("Chameleon", "chameleon") |
46 self.templateLanguageCombo.addItem("Chameleon", "chameleon") |
45 self.templateLanguageCombo.addItem("Mako", "mako") |
47 self.templateLanguageCombo.addItem("Mako", "mako") |
70 template = self.templateCombo.currentText() |
72 template = self.templateCombo.currentText() |
71 |
73 |
72 self.__okButton.setEnabled(bool(template)) |
74 self.__okButton.setEnabled(bool(template)) |
73 |
75 |
74 self.starterGroupBox.setEnabled( |
76 self.starterGroupBox.setEnabled( |
75 template in ( |
77 CreateParametersDialog.PyramidStarter in template) |
76 CreateParametersDialog.PyramidStarter, |
|
77 CreateParametersDialog.PyramidStarterGH, |
|
78 ) |
|
79 ) |
|
80 |
78 |
81 self.versionEdit.setEnabled( |
79 self.versionEdit.setEnabled( |
82 template == CreateParametersDialog.PyramidStarterGH) |
80 template == CreateParametersDialog.PyramidStarterGH) |
83 |
81 |
84 def getData(self): |
82 def getData(self): |
93 template = self.templateCombo.currentText() |
91 template = self.templateCombo.currentText() |
94 |
92 |
95 contextData = ( |
93 contextData = ( |
96 { |
94 { |
97 "project_name": self.projectEdit.text(), |
95 "project_name": self.projectEdit.text(), |
98 "repo_name": "_".join(self.projectEdit.text().split()).lower(), |
96 "repo_name": ( |
|
97 self.projectEdit.text().lower().strip().replace(' ', '_') |
|
98 .replace(':', '_').replace('-', '_').replace('!', '_')), |
99 "template_language": self.templateLanguageCombo.currentData(), |
99 "template_language": self.templateLanguageCombo.currentData(), |
100 "backend": self.backendCombo.currentData(), |
100 "backend": self.backendCombo.currentData(), |
101 } |
101 } |
102 if template in ( |
102 if CreateParametersDialog.PyramidStarter in template else |
103 CreateParametersDialog.PyramidStarter, |
|
104 CreateParametersDialog.PyramidStarterGH, |
|
105 ) else |
|
106 {} |
103 {} |
107 ) |
104 ) |
108 |
105 |
109 version = ( |
106 version = ( |
110 self.versionEdit.text() |
107 self.versionEdit.text() |