16 import sys |
16 import sys |
17 import os |
17 import os |
18 import copy |
18 import copy |
19 |
19 |
20 from PyQt5.QtCore import pyqtSlot, QDir, QProcess, QItemSelection |
20 from PyQt5.QtCore import pyqtSlot, QDir, QProcess, QItemSelection |
21 from PyQt5.QtWidgets import QDialog, QListWidgetItem, QFileDialog, \ |
21 from PyQt5.QtWidgets import ( |
22 QPushButton, QTreeView, QLineEdit, QFileSystemModel |
22 QDialog, QListWidgetItem, QFileDialog, QPushButton, QTreeView, QLineEdit, |
|
23 QFileSystemModel |
|
24 ) |
23 |
25 |
24 from E5Gui import E5FileDialog |
26 from E5Gui import E5FileDialog |
25 from E5Gui.E5Completers import E5FileCompleter, E5DirCompleter |
27 from E5Gui.E5Completers import E5FileCompleter, E5DirCompleter |
26 |
28 |
27 from .Ui_CxfreezeConfigDialog import Ui_CxfreezeConfigDialog |
29 from .Ui_CxfreezeConfigDialog import Ui_CxfreezeConfigDialog |
269 # 1. the program name |
271 # 1. the program name |
270 args.append(self.cxfreezeExecCombo.currentText()) |
272 args.append(self.cxfreezeExecCombo.currentText()) |
271 |
273 |
272 # 2. the commandline options |
274 # 2. the commandline options |
273 # 2.1 general options |
275 # 2.1 general options |
274 if self.parameters['targetDirectory'] != \ |
276 if ( |
275 self.defaults['targetDirectory']: |
277 self.parameters['targetDirectory'] != |
|
278 self.defaults['targetDirectory'] |
|
279 ): |
276 parms['targetDirectory'] = self.parameters['targetDirectory'] |
280 parms['targetDirectory'] = self.parameters['targetDirectory'] |
277 args.append('--target-dir={0}'.format( |
281 args.append('--target-dir={0}'.format( |
278 self.parameters['targetDirectory'])) |
282 self.parameters['targetDirectory'])) |
279 if self.parameters['targetName'] != self.defaults['targetName']: |
283 if self.parameters['targetName'] != self.defaults['targetName']: |
280 parms['targetName'] = self.parameters['targetName'][:] |
284 parms['targetName'] = self.parameters['targetName'][:] |
286 parms['initScript'] = self.parameters['initScript'][:] |
290 parms['initScript'] = self.parameters['initScript'][:] |
287 if self.parameters['initScript'] != '': |
291 if self.parameters['initScript'] != '': |
288 args.append('--init-script={0}'.format( |
292 args.append('--init-script={0}'.format( |
289 self.parameters['initScript'])) |
293 self.parameters['initScript'])) |
290 parms['applicationIcon'] = self.parameters['applicationIcon'][:] |
294 parms['applicationIcon'] = self.parameters['applicationIcon'][:] |
291 if self.parameters['applicationIcon'] != \ |
295 if ( |
292 self.defaults['applicationIcon']: |
296 self.parameters['applicationIcon'] != |
|
297 self.defaults['applicationIcon'] |
|
298 ): |
293 args.append('--icon={0}'.format( |
299 args.append('--icon={0}'.format( |
294 self.parameters['applicationIcon'])) |
300 self.parameters['applicationIcon'])) |
295 parms['script'] = self.parameters['script'][:] |
301 parms['script'] = self.parameters['script'][:] |
296 if self.parameters['keepPath'] != self.defaults['keepPath']: |
302 if self.parameters['keepPath'] != self.defaults['keepPath']: |
297 parms['keepPath'] = self.parameters['keepPath'] |
303 parms['keepPath'] = self.parameters['keepPath'] |
317 os.pathsep.join(self.parameters['includePath']))) |
323 os.pathsep.join(self.parameters['includePath']))) |
318 if self.parameters['replacePaths'] != self.defaults['replacePaths']: |
324 if self.parameters['replacePaths'] != self.defaults['replacePaths']: |
319 parms['replacePaths'] = self.parameters['replacePaths'][:] |
325 parms['replacePaths'] = self.parameters['replacePaths'][:] |
320 args.append('--replace-paths={0}'.format( |
326 args.append('--replace-paths={0}'.format( |
321 os.pathsep.join(self.parameters['replacePaths']))) |
327 os.pathsep.join(self.parameters['replacePaths']))) |
322 if self.parameters['includeModules'] != \ |
328 if ( |
323 self.defaults['includeModules']: |
329 self.parameters['includeModules'] != |
|
330 self.defaults['includeModules'] |
|
331 ): |
324 parms['includeModules'] = self.parameters['includeModules'][:] |
332 parms['includeModules'] = self.parameters['includeModules'][:] |
325 args.append('--include-modules={0}'.format( |
333 args.append('--include-modules={0}'.format( |
326 ','.join(self.parameters['includeModules']))) |
334 ','.join(self.parameters['includeModules']))) |
327 if self.parameters['excludeModules'] != \ |
335 if ( |
328 self.defaults['excludeModules']: |
336 self.parameters['excludeModules'] != |
|
337 self.defaults['excludeModules'] |
|
338 ): |
329 parms['excludeModules'] = self.parameters['excludeModules'][:] |
339 parms['excludeModules'] = self.parameters['excludeModules'][:] |
330 args.append('--exclude-modules={0}'.format( |
340 args.append('--exclude-modules={0}'.format( |
331 ','.join(self.parameters['excludeModules']))) |
341 ','.join(self.parameters['excludeModules']))) |
332 if self.parameters['extListFile'] != self.defaults['extListFile']: |
342 if self.parameters['extListFile'] != self.defaults['extListFile']: |
333 parms['extListFile'] = self.parameters['extListFile'] |
343 parms['extListFile'] = self.parameters['extListFile'] |
587 self.parameters['optimize'] = 1 |
597 self.parameters['optimize'] = 1 |
588 else: |
598 else: |
589 self.parameters['optimize'] = 2 |
599 self.parameters['optimize'] = 2 |
590 |
600 |
591 # get data of advanced tab |
601 # get data of advanced tab |
592 self.parameters['defaultPath'] = \ |
602 self.parameters['defaultPath'] = self.__splitIt( |
593 self.__splitIt(self.defaultPathEdit.text(), os.pathsep) |
603 self.defaultPathEdit.text(), os.pathsep) |
594 self.parameters['includePath'] = \ |
604 self.parameters['includePath'] = self.__splitIt( |
595 self.__splitIt(self.includePathEdit.text(), os.pathsep) |
605 self.includePathEdit.text(), os.pathsep) |
596 self.parameters['replacePaths'] = \ |
606 self.parameters['replacePaths'] = self.__splitIt( |
597 self.__splitIt(self.replacePathsEdit.text(), os.pathsep) |
607 self.replacePathsEdit.text(), os.pathsep) |
598 self.parameters['includeModules'] = \ |
608 self.parameters['includeModules'] = self.__splitIt( |
599 self.__splitIt(self.includeModulesEdit.text(), ',') |
609 self.includeModulesEdit.text(), ',') |
600 self.parameters['excludeModules'] = \ |
610 self.parameters['excludeModules'] = self.__splitIt( |
601 self.__splitIt(self.excludeModulesEdit.text(), ',') |
611 self.excludeModulesEdit.text(), ',') |
602 self.parameters['extListFile'] = self.extListFileEdit.text() |
612 self.parameters['extListFile'] = self.extListFileEdit.text() |
603 |
613 |
604 # get data of the additional files tab |
614 # get data of the additional files tab |
605 additionalFiles = [self.fileOrFolderList.item(x).text() |
615 additionalFiles = [self.fileOrFolderList.item(x).text() |
606 for x in range(self.fileOrFolderList.count())] |
616 for x in range(self.fileOrFolderList.count())] |