580 """ |
580 """ |
581 fn, selectedFilter = E5FileDialog.getSaveFileNameAndFilter( |
581 fn, selectedFilter = E5FileDialog.getSaveFileNameAndFilter( |
582 self, |
582 self, |
583 self.tr("Export Templates"), |
583 self.tr("Export Templates"), |
584 "", |
584 "", |
585 self.tr("Templates Files (*.ecj);;" |
585 self.tr("Templates Files (*.ecj)" |
586 "XML Templates Files (*.e4c);;" |
|
587 "All Files (*)"), |
586 "All Files (*)"), |
588 "", |
587 "", |
589 E5FileDialog.DontConfirmOverwrite) |
588 E5FileDialog.DontConfirmOverwrite) |
590 |
589 |
591 if fn: |
590 if fn: |
976 @rtype bool |
975 @rtype bool |
977 """ |
976 """ |
978 if filename is None: |
977 if filename is None: |
979 filename = os.path.join( |
978 filename = os.path.join( |
980 Utilities.getConfigDir(), "eric7templates.ecj") |
979 Utilities.getConfigDir(), "eric7templates.ecj") |
981 if filename.endswith(".ecj"): |
980 |
982 # new JSON based file |
981 return self.__templatesFile.writeFile(filename) |
983 res = self.__templatesFile.writeFile(filename) |
|
984 else: |
|
985 # old XML based file |
|
986 f = QFile(filename) |
|
987 ok = f.open(QIODevice.OpenModeFlag.WriteOnly) |
|
988 if not ok: |
|
989 E5MessageBox.critical( |
|
990 self, |
|
991 self.tr("Save Templates"), |
|
992 self.tr( |
|
993 "<p>The templates file <b>{0}</b> could not be" |
|
994 " written.</p>") |
|
995 .format(filename)) |
|
996 res = False |
|
997 else: |
|
998 from E5XML.TemplatesWriter import TemplatesWriter |
|
999 TemplatesWriter(f, self).writeXML() |
|
1000 f.close() |
|
1001 res = True |
|
1002 |
|
1003 return res |
|
1004 |
982 |
1005 def readTemplates(self, filename=None): |
983 def readTemplates(self, filename=None): |
1006 """ |
984 """ |
1007 Public method to read in the templates file (.e4c). |
985 Public method to read in the templates file (.e4c). |
1008 |
986 |
1023 if filename.endswith(".ecj"): |
1001 if filename.endswith(".ecj"): |
1024 self.__templatesFile.readFile(filename) |
1002 self.__templatesFile.readFile(filename) |
1025 else: |
1003 else: |
1026 f = QFile(filename) |
1004 f = QFile(filename) |
1027 if f.open(QIODevice.OpenModeFlag.ReadOnly): |
1005 if f.open(QIODevice.OpenModeFlag.ReadOnly): |
1028 from E5XML.TemplatesReader import TemplatesReader |
1006 from EricXML.TemplatesReader import TemplatesReader |
1029 reader = TemplatesReader(f, viewer=self) |
1007 reader = TemplatesReader(f, viewer=self) |
1030 reader.readXML() |
1008 reader.readXML() |
1031 f.close() |
1009 f.close() |
1032 else: |
1010 else: |
1033 E5MessageBox.critical( |
1011 E5MessageBox.critical( |