Project/ProjectResourcesBrowser.py

changeset 6604
a73d553ef521
parent 6371
bc834bbc0251
child 6645
ad476851d7e0
equal deleted inserted replaced
6601:93a6141ecbf1 6604:a73d553ef521
89 self.tr('Compile resource'), 89 self.tr('Compile resource'),
90 self.__compileResource) 90 self.__compileResource)
91 self.menu.addAction( 91 self.menu.addAction(
92 self.tr('Compile all resources'), 92 self.tr('Compile all resources'),
93 self.__compileAllResources) 93 self.__compileAllResources)
94 self.menu.addSeparator()
95 self.menu.addAction(
96 self.tr('Configure rcc Compiler'),
97 self.__configureRccCompiler)
94 self.menu.addSeparator() 98 self.menu.addSeparator()
95 else: 99 else:
96 if self.hooks["compileResource"] is not None: 100 if self.hooks["compileResource"] is not None:
97 self.menu.addAction( 101 self.menu.addAction(
98 self.hooksMenuEntries.get( 102 self.hooksMenuEntries.get(
152 self.backMenu.addAction( 156 self.backMenu.addAction(
153 self.tr('Compile all resources'), 157 self.tr('Compile all resources'),
154 self.__compileAllResources) 158 self.__compileAllResources)
155 self.backMenu.addSeparator() 159 self.backMenu.addSeparator()
156 self.backMenu.addAction( 160 self.backMenu.addAction(
161 self.tr('Configure rcc Compiler'),
162 self.__configureRccCompiler)
163 self.backMenu.addSeparator()
164 self.backMenu.addAction(
157 self.tr('New resource...'), self.__newResource) 165 self.tr('New resource...'), self.__newResource)
158 else: 166 else:
159 if self.hooks["compileAllResources"] is not None: 167 if self.hooks["compileAllResources"] is not None:
160 self.backMenu.addAction( 168 self.backMenu.addAction(
161 self.hooksMenuEntries.get( 169 self.hooksMenuEntries.get(
189 "PySide", "PySideC", "PySide2", "PySideC2"]: 197 "PySide", "PySideC", "PySide2", "PySideC2"]:
190 act = self.multiMenu.addAction( 198 act = self.multiMenu.addAction(
191 self.tr('Compile resources'), 199 self.tr('Compile resources'),
192 self.__compileSelectedResources) 200 self.__compileSelectedResources)
193 self.multiMenu.addSeparator() 201 self.multiMenu.addSeparator()
202 self.multiMenu.addAction(
203 self.tr('Configure rcc Compiler'),
204 self.__configureRccCompiler)
205 self.multiMenu.addSeparator()
194 else: 206 else:
195 if self.hooks["compileSelectedResources"] is not None: 207 if self.hooks["compileSelectedResources"] is not None:
196 act = self.multiMenu.addAction( 208 act = self.multiMenu.addAction(
197 self.hooksMenuEntries.get( 209 self.hooksMenuEntries.get(
198 "compileSelectedResources", 210 "compileSelectedResources",
220 ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E6Plugin", 232 ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E6Plugin",
221 "PySide", "PySideC", "PySide2", "PySideC2"]: 233 "PySide", "PySideC", "PySide2", "PySideC2"]:
222 self.dirMenu.addAction( 234 self.dirMenu.addAction(
223 self.tr('Compile all resources'), 235 self.tr('Compile all resources'),
224 self.__compileAllResources) 236 self.__compileAllResources)
237 self.dirMenu.addSeparator()
238 self.dirMenu.addAction(
239 self.tr('Configure rcc Compiler'),
240 self.__configureRccCompiler)
225 self.dirMenu.addSeparator() 241 self.dirMenu.addSeparator()
226 else: 242 else:
227 if self.hooks["compileAllResources"] is not None: 243 if self.hooks["compileAllResources"] is not None:
228 self.dirMenu.addAction( 244 self.dirMenu.addAction(
229 self.hooksMenuEntries.get( 245 self.hooksMenuEntries.get(
261 ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E6Plugin", 277 ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E6Plugin",
262 "PySide", "PySideC", "PySide2", "PySideC2"]: 278 "PySide", "PySideC", "PySide2", "PySideC2"]:
263 self.dirMultiMenu.addAction( 279 self.dirMultiMenu.addAction(
264 self.tr('Compile all resources'), 280 self.tr('Compile all resources'),
265 self.__compileAllResources) 281 self.__compileAllResources)
282 self.dirMultiMenu.addSeparator()
283 self.dirMultiMenu.addAction(
284 self.tr('Configure rcc Compiler'),
285 self.__configureRccCompiler)
266 self.dirMultiMenu.addSeparator() 286 self.dirMultiMenu.addSeparator()
267 else: 287 else:
268 if self.hooks["compileAllResources"] is not None: 288 if self.hooks["compileAllResources"] is not None:
269 self.dirMultiMenu.addAction( 289 self.dirMultiMenu.addAction(
270 self.hooksMenuEntries.get( 290 self.hooksMenuEntries.get(
665 args.append("-py2") 685 args.append("-py2")
666 else: 686 else:
667 args.append("-py3") 687 args.append("-py3")
668 else: 688 else:
669 return None 689 return None
690 defaultParameters = self.project.getDefaultRccCompilerParameters()
691 rccParameters = self.project.pdata["RCCPARAMS"]
692 if rccParameters["CompressionThreshold"] != \
693 defaultParameters["CompressionThreshold"]:
694 args.append("-threshold")
695 args.append(str(rccParameters["CompressionThreshold"]))
696 if rccParameters["CompressLevel"] != \
697 defaultParameters["CompressLevel"]:
698 args.append("-compress")
699 args.append(str(rccParameters["CompressLevel"]))
700 if rccParameters["CompressionDisable"] != \
701 defaultParameters["CompressionDisable"]:
702 args.append("-no-compress")
703 if rccParameters["PathPrefix"] != \
704 defaultParameters["PathPrefix"]:
705 args.append("-root")
706 args.append(rccParameters["PathPrefix"])
670 elif self.project.getProjectLanguage() == "Ruby": 707 elif self.project.getProjectLanguage() == "Ruby":
671 if self.project.getProjectType() == "Qt4": 708 if self.project.getProjectType() == "Qt4":
672 self.rccCompiler = 'rbrcc' 709 self.rccCompiler = 'rbrcc'
673 if Utilities.isWindowsPlatform(): 710 if Utilities.isWindowsPlatform():
674 self.rccCompiler += '.exe' 711 self.rccCompiler += '.exe'
905 """ 942 """
906 Public slot used to handle the preferencesChanged signal. 943 Public slot used to handle the preferencesChanged signal.
907 """ 944 """
908 ProjectBaseBrowser.handlePreferencesChanged(self) 945 ProjectBaseBrowser.handlePreferencesChanged(self)
909 946
947 def __configureRccCompiler(self):
948 """
949 Private slot to configure some non-common rcc compiler options.
950 """
951 from .RccCompilerOptionsDialog import RccCompilerOptionsDialog
952
953 params = self.project.pdata["RCCPARAMS"]
954
955 dlg = RccCompilerOptionsDialog(params)
956 if dlg.exec_() == QDialog.Accepted:
957 threshold, compression, noCompression, root = dlg.getData()
958 if threshold != params["CompressionThreshold"]:
959 params["CompressionThreshold"] = threshold
960 self.project.setDirty(True)
961 if compression != params["CompressLevel"]:
962 params["CompressLevel"] = compression
963 self.project.setDirty(True)
964 if noCompression != params["CompressionDisable"]:
965 params["CompressionDisable"] = noCompression
966 self.project.setDirty(True)
967 if root != params["PathPrefix"]:
968 params["PathPrefix"] = root
969 self.project.setDirty(True)
970
910 ########################################################################### 971 ###########################################################################
911 ## Support for hooks below 972 ## Support for hooks below
912 ########################################################################### 973 ###########################################################################
913 974
914 def _initHookMethods(self): 975 def _initHookMethods(self):

eric ide

mercurial