2275 |
2275 |
2276 #------------------------------------------------------------------------------- |
2276 #------------------------------------------------------------------------------- |
2277 # Add Project Elements Functions |
2277 # Add Project Elements Functions |
2278 #------------------------------------------------------------------------------- |
2278 #------------------------------------------------------------------------------- |
2279 |
2279 |
|
2280 def OnAddNewProject(self, event): |
|
2281 # Asks user to create main program after creating new project |
|
2282 AddProgramDialog = self.GenerateAddPouFunction('program', True) |
|
2283 # Checks that user created main program |
|
2284 if AddProgramDialog(event): |
|
2285 self.Controler.SetProjectDefaultConfiguration() |
|
2286 |
2280 def OnAddDataTypeMenu(self, event): |
2287 def OnAddDataTypeMenu(self, event): |
2281 tagname = self.Controler.ProjectAddDataType() |
2288 tagname = self.Controler.ProjectAddDataType() |
2282 if tagname is not None: |
2289 if tagname is not None: |
2283 self._Refresh(TITLE, FILEMENU, EDITMENU, PROJECTTREE) |
2290 self._Refresh(TITLE, FILEMENU, EDITMENU, PROJECTTREE) |
2284 self.EditProjectElement(ITEM_DATATYPE, tagname) |
2291 self.EditProjectElement(ITEM_DATATYPE, tagname) |
2285 |
2292 |
2286 def GenerateAddPouFunction(self, pou_type): |
2293 def GenerateAddPouFunction(self, pou_type, type_readonly = False): |
2287 def OnAddPouMenu(event): |
2294 def OnAddPouMenu(event): |
2288 dialog = PouDialog(self, pou_type) |
2295 dialog = PouDialog(self, pou_type, type_readonly) |
2289 dialog.SetPouNames(self.Controler.GetProjectPouNames()) |
2296 dialog.SetPouNames(self.Controler.GetProjectPouNames()) |
2290 dialog.SetPouElementNames(self.Controler.GetProjectPouVariableNames()) |
2297 dialog.SetPouElementNames(self.Controler.GetProjectPouVariableNames()) |
2291 dialog.SetValues({"pouName": self.Controler.GenerateNewName(None, None, "%s%%d" % pou_type)}) |
2298 dialog.SetValues({"pouName": self.Controler.GenerateNewName(None, None, "%s%%d" % pou_type)}) |
|
2299 pou_created = False |
2292 if dialog.ShowModal() == wx.ID_OK: |
2300 if dialog.ShowModal() == wx.ID_OK: |
2293 values = dialog.GetValues() |
2301 values = dialog.GetValues() |
2294 tagname = self.Controler.ProjectAddPou(values["pouName"], values["pouType"], values["language"]) |
2302 tagname = self.Controler.ProjectAddPou(values["pouName"], values["pouType"], values["language"]) |
2295 if tagname is not None: |
2303 if tagname is not None: |
2296 self._Refresh(TITLE, FILEMENU, EDITMENU, PROJECTTREE, LIBRARYTREE) |
2304 self._Refresh(TITLE, FILEMENU, EDITMENU, PROJECTTREE, LIBRARYTREE) |
2297 self.EditProjectElement(ITEM_POU, tagname) |
2305 self.EditProjectElement(ITEM_POU, tagname) |
|
2306 dialog.Destroy() |
|
2307 pou_created = True |
2298 dialog.Destroy() |
2308 dialog.Destroy() |
|
2309 return pou_created |
2299 return OnAddPouMenu |
2310 return OnAddPouMenu |
2300 |
2311 |
2301 def GenerateAddTransitionFunction(self, pou_name): |
2312 def GenerateAddTransitionFunction(self, pou_name): |
2302 def OnAddTransitionMenu(event): |
2313 def OnAddTransitionMenu(event): |
2303 dialog = PouTransitionDialog(self) |
2314 dialog = PouTransitionDialog(self) |