src/eric7/Project/MakePropertiesDialog.py

branch
eric7
changeset 9221
bf71ee032bb4
parent 9209
b99e7fd55fd3
child 9413
80c06d472826
equal deleted inserted replaced
9220:e9e7eca7efee 9221:bf71ee032bb4
16 16
17 class MakePropertiesDialog(QDialog, Ui_MakePropertiesDialog): 17 class MakePropertiesDialog(QDialog, Ui_MakePropertiesDialog):
18 """ 18 """
19 Class implementing a dialog to enter the properties for 'make'. 19 Class implementing a dialog to enter the properties for 'make'.
20 """ 20 """
21
21 def __init__(self, project, new, parent=None): 22 def __init__(self, project, new, parent=None):
22 """ 23 """
23 Constructor 24 Constructor
24 25
25 @param project reference to the project object 26 @param project reference to the project object
26 @type Project 27 @type Project
27 @param new flag indicating the generation of a new project 28 @param new flag indicating the generation of a new project
28 @type bool 29 @type bool
29 @param parent reference to the parent widget of this dialog 30 @param parent reference to the parent widget of this dialog
30 @type QWidget 31 @type QWidget
31 """ 32 """
32 super().__init__(parent) 33 super().__init__(parent)
33 self.setupUi(self) 34 self.setupUi(self)
34 35
35 self.__project = project 36 self.__project = project
36 37
37 self.makePicker.setMode(EricPathPickerModes.OPEN_FILE_MODE) 38 self.makePicker.setMode(EricPathPickerModes.OPEN_FILE_MODE)
38 self.makePicker.setFilters(self.tr("All Files (*)")) 39 self.makePicker.setFilters(self.tr("All Files (*)"))
39 40
40 self.makefilePicker.setMode(EricPathPickerModes.OPEN_FILE_MODE) 41 self.makefilePicker.setMode(EricPathPickerModes.OPEN_FILE_MODE)
41 self.makefilePicker.setDefaultDirectory(self.__project.ppath) 42 self.makefilePicker.setDefaultDirectory(self.__project.ppath)
42 self.makefilePicker.setFilters(self.tr( 43 self.makefilePicker.setFilters(
43 "Makefiles (*makefile Makefile *.mak);;All Files (*)")) 44 self.tr("Makefiles (*makefile Makefile *.mak);;All Files (*)")
44 45 )
46
45 self.makeTargetEdit.textChanged.connect(self.__updateOkButton) 47 self.makeTargetEdit.textChanged.connect(self.__updateOkButton)
46 48
47 self.initDialog() 49 self.initDialog()
48 50
49 msh = self.minimumSizeHint() 51 msh = self.minimumSizeHint()
50 self.resize(max(self.width(), msh.width()), msh.height()) 52 self.resize(max(self.width(), msh.width()), msh.height())
51 53
52 def initDialog(self): 54 def initDialog(self):
53 """ 55 """
54 Public method to initialize the dialog's data. 56 Public method to initialize the dialog's data.
55 """ 57 """
56 makeData = self.__project.pdata["MAKEPARAMS"] 58 makeData = self.__project.pdata["MAKEPARAMS"]
57 59
58 if makeData["MakeExecutable"]: 60 if makeData["MakeExecutable"]:
59 self.makePicker.setText(makeData["MakeExecutable"]) 61 self.makePicker.setText(makeData["MakeExecutable"])
60 else: 62 else:
61 self.makePicker.setText(self.__project.DefaultMake) 63 self.makePicker.setText(self.__project.DefaultMake)
62 if makeData["MakeFile"]: 64 if makeData["MakeFile"]:
64 else: 66 else:
65 self.makefilePicker.setText(self.__project.DefaultMakefile) 67 self.makefilePicker.setText(self.__project.DefaultMakefile)
66 self.makeTargetEdit.setText(makeData["MakeTarget"]) 68 self.makeTargetEdit.setText(makeData["MakeTarget"])
67 self.makeParametersEdit.setText(makeData["MakeParameters"]) 69 self.makeParametersEdit.setText(makeData["MakeParameters"])
68 self.testOnlyCheckBox.setChecked(makeData["MakeTestOnly"]) 70 self.testOnlyCheckBox.setChecked(makeData["MakeTestOnly"])
69 71
70 self.__updateOkButton() 72 self.__updateOkButton()
71 73
72 def __updateOkButton(self): 74 def __updateOkButton(self):
73 """ 75 """
74 Private slot to update the enabled state of the OK button. 76 Private slot to update the enabled state of the OK button.
75 """ 77 """
76 self.buttonBox.button( 78 self.buttonBox.button(QDialogButtonBox.StandardButton.Ok).setEnabled(
77 QDialogButtonBox.StandardButton.Ok).setEnabled(bool( 79 bool(self.makeTargetEdit.text())
78 self.makeTargetEdit.text())) 80 )
79 81
80 def storeData(self): 82 def storeData(self):
81 """ 83 """
82 Public method to store the entered/modified data. 84 Public method to store the entered/modified data.
83 """ 85 """
84 makeData = self.__project.pdata["MAKEPARAMS"] 86 makeData = self.__project.pdata["MAKEPARAMS"]
85 87
86 makeExe = self.makePicker.text() 88 makeExe = self.makePicker.text()
87 if makeExe == self.__project.DefaultMake: 89 if makeExe == self.__project.DefaultMake:
88 makeExe = "" 90 makeExe = ""
89 makeData["MakeExecutable"] = makeExe 91 makeData["MakeExecutable"] = makeExe
90 92
91 makefile = self.__project.getRelativePath(self.makefilePicker.text()) 93 makefile = self.__project.getRelativePath(self.makefilePicker.text())
92 if makefile == self.__project.DefaultMakefile: 94 if makefile == self.__project.DefaultMakefile:
93 makefile = "" 95 makefile = ""
94 makeData["MakeFile"] = makefile 96 makeData["MakeFile"] = makefile
95 97
96 makeData["MakeTarget"] = self.makeTargetEdit.text() 98 makeData["MakeTarget"] = self.makeTargetEdit.text()
97 makeData["MakeParameters"] = self.makeParametersEdit.text() 99 makeData["MakeParameters"] = self.makeParametersEdit.text()
98 makeData["MakeTestOnly"] = self.testOnlyCheckBox.isChecked() 100 makeData["MakeTestOnly"] = self.testOnlyCheckBox.isChecked()

eric ide

mercurial