225 self.__lexerAssociationCallbacks = {} |
225 self.__lexerAssociationCallbacks = {} |
226 self.__binaryTranslationsCallbacks = {} |
226 self.__binaryTranslationsCallbacks = {} |
227 |
227 |
228 self.__projectTypes["Qt4"] = self.trUtf8("Qt GUI") |
228 self.__projectTypes["Qt4"] = self.trUtf8("Qt GUI") |
229 self.__projectTypes["Qt4C"] = self.trUtf8("Qt Console") |
229 self.__projectTypes["Qt4C"] = self.trUtf8("Qt Console") |
230 # TODO: add PyQt5 |
230 self.__projectTypes["PyQt5"] = self.trUtf8("PyQt5 GUI") |
|
231 self.__projectTypes["PyQt5C"] = self.trUtf8("PyQt5 Console") |
231 self.__projectTypes["E4Plugin"] = self.trUtf8("Eric Plugin") |
232 self.__projectTypes["E4Plugin"] = self.trUtf8("Eric Plugin") |
232 self.__projectTypes["Console"] = self.trUtf8("Console") |
233 self.__projectTypes["Console"] = self.trUtf8("Console") |
233 self.__projectTypes["Other"] = self.trUtf8("Other") |
234 self.__projectTypes["Other"] = self.trUtf8("Other") |
234 |
235 |
235 self.__projectProgLanguages = { |
236 self.__projectProgLanguages = { |
236 # TODO: add PyQt5 |
237 "Python2": ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin", "Console", "Other"], |
237 "Python2": ["Qt4", "Qt4C", "E4Plugin", "Console", "Other"], |
238 "Python3": ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin", "Console", "Other"], |
238 "Python3": ["Qt4", "Qt4C", "E4Plugin", "Console", "Other"], |
|
239 "Ruby": ["Qt4", "Qt4C", "Console", "Other"], |
239 "Ruby": ["Qt4", "Qt4C", "Console", "Other"], |
240 } |
240 } |
241 |
241 |
242 pyside2, pyside3 = Utilities.checkPyside() |
242 pyside2, pyside3 = Utilities.checkPyside() |
243 if pyside2 or pyside3: |
243 if pyside2 or pyside3: |
470 else: |
470 else: |
471 sourceKey = self.pdata["PROGLANGUAGE"][0] |
471 sourceKey = self.pdata["PROGLANGUAGE"][0] |
472 for ext in self.sourceExtensions[sourceKey]: |
472 for ext in self.sourceExtensions[sourceKey]: |
473 self.pdata["FILETYPES"]["*{0}".format(ext)] = "SOURCES" |
473 self.pdata["FILETYPES"]["*{0}".format(ext)] = "SOURCES" |
474 self.pdata["FILETYPES"]["*.idl"] = "INTERFACES" |
474 self.pdata["FILETYPES"]["*.idl"] = "INTERFACES" |
475 if self.pdata["PROJECTTYPE"][0] in ["Qt4", "E4Plugin", "PySide"]: |
475 if self.pdata["PROJECTTYPE"][0] in ["Qt4", "PyQt5", "E4Plugin", "PySide"]: |
476 # TODO: add PyQt5 |
|
477 self.pdata["FILETYPES"]["*.ui"] = "FORMS" |
476 self.pdata["FILETYPES"]["*.ui"] = "FORMS" |
478 self.pdata["FILETYPES"]["*.ui.h"] = "FORMS" |
477 self.pdata["FILETYPES"]["*.ui.h"] = "FORMS" |
479 if self.pdata["PROJECTTYPE"][0] in ["Qt4", "Qt4C", "E4Plugin", |
478 if self.pdata["PROJECTTYPE"][0] in ["Qt4", "Qt4C", "E4Plugin", |
|
479 "PyQt5", "PyQt5C", |
480 "PySide", "PySideC"]: |
480 "PySide", "PySideC"]: |
481 # TODO: add PyQt5 |
|
482 self.pdata["FILETYPES"]["*.qrc"] = "RESOURCES" |
481 self.pdata["FILETYPES"]["*.qrc"] = "RESOURCES" |
483 if self.pdata["PROJECTTYPE"][0] in ["Qt4", "Qt4C", "E4Plugin", |
482 if self.pdata["PROJECTTYPE"][0] in ["Qt4", "Qt4C", "E4Plugin", |
|
483 "PyQt5", "PyQt5C", |
484 "PySide", "PySideC"]: |
484 "PySide", "PySideC"]: |
485 # TODO: add PyQt5 |
|
486 self.pdata["FILETYPES"]["*.ts"] = "TRANSLATIONS" |
485 self.pdata["FILETYPES"]["*.ts"] = "TRANSLATIONS" |
487 self.pdata["FILETYPES"]["*.qm"] = "TRANSLATIONS" |
486 self.pdata["FILETYPES"]["*.qm"] = "TRANSLATIONS" |
488 try: |
487 try: |
489 if self.__fileTypeCallbacks[self.pdata["PROJECTTYPE"][0]] is not None: |
488 if self.__fileTypeCallbacks[self.pdata["PROJECTTYPE"][0]] is not None: |
490 ftypes = self.__fileTypeCallbacks[self.pdata["PROJECTTYPE"][0]]() |
489 ftypes = self.__fileTypeCallbacks[self.pdata["PROJECTTYPE"][0]]() |
496 def updateFileTypes(self): |
495 def updateFileTypes(self): |
497 """ |
496 """ |
498 Public method to update the filetype associations with new default values. |
497 Public method to update the filetype associations with new default values. |
499 """ |
498 """ |
500 if self.pdata["PROJECTTYPE"][0] in ["Qt4", "Qt4C", "E4Plugin", |
499 if self.pdata["PROJECTTYPE"][0] in ["Qt4", "Qt4C", "E4Plugin", |
|
500 "PyQt5", "PyQt5C", |
501 "PySide", "PySideC"]: |
501 "PySide", "PySideC"]: |
502 # TODO: add PyQt5 |
|
503 if "*.ts" not in self.pdata["FILETYPES"]: |
502 if "*.ts" not in self.pdata["FILETYPES"]: |
504 self.pdata["FILETYPES"]["*.ts"] = "TRANSLATIONS" |
503 self.pdata["FILETYPES"]["*.ts"] = "TRANSLATIONS" |
505 if "*.qm" not in self.pdata["FILETYPES"]: |
504 if "*.qm" not in self.pdata["FILETYPES"]: |
506 self.pdata["FILETYPES"]["*.qm"] = "TRANSLATIONS" |
505 self.pdata["FILETYPES"]["*.qm"] = "TRANSLATIONS" |
507 try: |
506 try: |
1138 from .AddLanguageDialog import AddLanguageDialog |
1137 from .AddLanguageDialog import AddLanguageDialog |
1139 dlg = AddLanguageDialog(self.parent()) |
1138 dlg = AddLanguageDialog(self.parent()) |
1140 if dlg.exec_() == QDialog.Accepted: |
1139 if dlg.exec_() == QDialog.Accepted: |
1141 lang = dlg.getSelectedLanguage() |
1140 lang = dlg.getSelectedLanguage() |
1142 if self.pdata["PROJECTTYPE"][0] in \ |
1141 if self.pdata["PROJECTTYPE"][0] in \ |
1143 ["Qt4", "Qt4C", "E4Plugin", "PySide", "PySideC"]: |
1142 ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin", "PySide", "PySideC"]: |
1144 # TODO: add PyQt5 |
|
1145 langFile = self.pdata["TRANSLATIONPATTERN"][0].replace("%language%", lang) |
1143 langFile = self.pdata["TRANSLATIONPATTERN"][0].replace("%language%", lang) |
1146 self.appendFile(langFile) |
1144 self.appendFile(langFile) |
1147 self.projectLanguageAddedByCode.emit(lang) |
1145 self.projectLanguageAddedByCode.emit(lang) |
1148 |
1146 |
1149 def __binaryTranslationFile(self, langFile): |
1147 def __binaryTranslationFile(self, langFile): |