def onSave(self,event): mis=mission(self.id) mis.setLabel(self.edittxt.GetValue()) mis.setBeginDiag(self.beginDiag.GetValue().split("|")[0]) mis.setCurrentDiag(self.currentDiag.GetValue().split("|")[0]) mis.setEndingDiag(self.endingDiag.GetValue().split("|")[0]) mis.setNpc(self.beginNPC.GetValue().split(" | ")[0]) mis.setEndingNPC(self.endingNPC.GetValue().split(" | ")[0]) mis.setDepMission(self.depMission.GetValue().split(" | ")[0]) self.id=mis.saveToBDD() self.pc.showAllTemplate()
def __init__(self, parent, editTxt): self.editTxt = editTxt wx.MDIChildFrame.__init__(self, parent, -1, "Recherche de Mission", size=(500, 500), pos=(200, 300)) self.panel1 = wx.Panel(self, -1, style=wx.SUNKEN_BORDER, size=(500, 500)) self.parent = parent wx.StaticBox(self.panel1, -1, "Liste des Missions", pos=(0, 100), size=(440, 450)) self.listMission = wx.ListBox(self.panel1, 26, pos=(10, 120), size=(400, 350), style=wx.LB_SINGLE) self.Bind(wx.EVT_LISTBOX_DCLICK, self.onChooseMission, self.listMission) listOfMission = mission.getListOfMissions() for p in listOfMission: pn = mission(p) self.listMission.Insert(str(p) + " | " + pn.getLabel()[:40], 0) self.SetAutoLayout(True) self.Layout()
def onChooseMission(self, evt): tab = self.listMission.GetStringSelection().split(" | ") idItem = int(tab[0]) itemChoosed = mission(idItem) self.editTxt.SetValue(str(idItem) + " | " + itemChoosed.getLabel()[:40]) self.Destroy()
def onGenerateXml(self, e): ########## Dialogue################### docXml = xml.dom.minidom.Document() dialogsXml = docXml.createElement("dialogs") listOfDialogs = Dialog.getListOfDialog() for d in listOfDialogs: di = Dialog(d) dXml = di.getXml(docXml) dialogsXml.appendChild(dXml) docXml.appendChild(dialogsXml) fileHandle = open("./datas/dialogs.xml", 'w') fileHandle.write(docXml.toxml()) fileHandle.close() ########## Mission################### docXml = xml.dom.minidom.Document() missionsXml = docXml.createElement("missions") listOfMissions = mission.getListOfMissions() for m in listOfMissions: mi = mission(m) mXml = mi.getXml(docXml) missionsXml.appendChild(mXml) docXml.appendChild(missionsXml) fileHandle = open("./datas/missions.xml", 'w') fileHandle.write(docXml.toxml()) fileHandle.close() ########## Station ################### docXml = xml.dom.minidom.Document() stationXml = docXml.createElement("stations") listOfStation = station.getListOfStation() for s in listOfStation: st = station(s) sXml = st.getXml(docXml) stationXml.appendChild(sXml) docXml.appendChild(stationXml) fileHandle = open("./datas/stations.xml", 'w') fileHandle.write(docXml.toxml()) fileHandle.close() ########## PNJ ################### docXml = xml.dom.minidom.Document() pnjsXml = docXml.createElement("pnjs") listOfPnj = PNJ.getListOfPNJ() for p in listOfPnj: pn = PNJ(p) pXml = pn.getXml(docXml) pnjsXml.appendChild(pXml) docXml.appendChild(pnjsXml) fileHandle = open("./datas/pnjs.xml", 'w') fileHandle.write(docXml.toxml()) fileHandle.close() ########## Zone ################### docXml = xml.dom.minidom.Document() zoneXml = docXml.createElement("zones") listOfZone = Zone.getListOfZone() for z in listOfZone: zo = Zone(z) zXml = zo.getXml(docXml) zoneXml.appendChild(zXml) docXml.appendChild(zoneXml) fileHandle = open("./datas/zones.xml", 'w') fileHandle.write(docXml.toxml()) fileHandle.close() ##########Item Template############### docXml = xml.dom.minidom.Document() itemsXml = docXml.createElement("items") listOfItemTemplates = ShimstarItem.getListOfItemTemplates() for i in listOfItemTemplates: it = ShimstarItem(0, i) if it.getTypeItem() == C_ITEM_ENGINE: eng = engine(0, i) itXml = eng.getXml() elif it.getTypeItem() == C_ITEM_WEAPON: wea = Weapon(i, it.getSpecific()) itXml = wea.getXml() elif it.getTypeItem() == C_ITEM_MINING: min = miningItem(i, it.getSpecific()) itXml = min.getXml() elif it.getTypeItem() == C_ITEM_ENERGY: min = Reactor(0, i) itXml = min.getXml() elif it.getTypeItem() == C_ITEM_SHIELD: min = Shield(0,i) itXml = min.getXml() elif it.getTypeItem() == C_ITEM_SHIP: print "main::ship " + str(i) + "/" + str(it.getSpecific()) sh = Ship(0, i) itXml = sh.getXml() else: itXml = it.getXml(docXml) itemsXml.appendChild(itXml) docXml.appendChild(itemsXml) fileHandle = open("./datas/itemtemplates.xml", 'w') fileHandle.write(docXml.toxml()) fileHandle.close() #############Asteroid################## docXml = xml.dom.minidom.Document() astXml = docXml.createElement("asteroids") listOfAst = Asteroid.getListOfAsteroidTemplate() # ~ print listOfAst for ida in listOfAst: a = Asteroid(0, ida) aXml = a.getXmlTemplate(docXml) astXml.appendChild(aXml) docXml.appendChild(astXml) fileHandle = open("./datas/asteroids.xml", 'w') fileHandle.write(docXml.toxml()) fileHandle.close() #############WormHole################## docXml = xml.dom.minidom.Document() wormXml = docXml.createElement("wormholes") listOfWorm = wormhole.getListOfWormHoleTemplate() #~ print listOfAst for idW in listOfWorm: w = wormhole(0, idW) wXml = w.getXmlTemplate(docXml) wormXml.appendChild(wXml) docXml.appendChild(wormXml) fileHandle = open("./datas/wormholes.xml", 'w') fileHandle.write(docXml.toxml()) fileHandle.close() #############PnjTemplate################## docXml = xml.dom.minidom.Document() pnjXml = docXml.createElement("pnjtemplates") listOfP = PNJtemplate.getListOfPNJTemplate() #~ print listOfAst for idp in listOfP: p = PNJtemplate(idp) pXml = p.getXml(docXml) pnjXml.appendChild(pXml) docXml.appendChild(pnjXml) fileHandle = open("./datas/pnjtemplate.xml", 'w') fileHandle.write(docXml.toxml()) fileHandle.close() #############Skill################## docXml = xml.dom.minidom.Document() skillXml = docXml.createElement("skills") listOfSkill = Skill.getListOfSkills() #~ print listOfAst for ids in listOfSkill: s = Skill(ids) sXml = s.getXml(docXml) skillXml.appendChild(sXml) docXml.appendChild(skillXml) fileHandle = open("./datas/skills.xml", 'w') fileHandle.write(docXml.toxml()) fileHandle.close() #############Minerals################## docXml = xml.dom.minidom.Document() mineralXml = docXml.createElement("minerals") listOfMinerals = mineral.getListMineral() #~ print listOfAst for idm in listOfMinerals: s = mineral(0, idm) sXml = s.getXml(docXml) print sXml mineralXml.appendChild(sXml) docXml.appendChild(mineralXml) fileHandle = open("./datas/mineral.xml", 'w') fileHandle.write(docXml.toxml()) fileHandle.close()
def onDelete(self,event): mis=mission(self.id) mis.deleteFromBDD() self.pc.showAllTemplate() self.Destroy()
def __init__(self, parent,pc,id): wx.MDIChildFrame.__init__(self,parent, -1, "Mission",size=(1000,600),pos=(400,100)) self.parent=parent self.id=id self.pc=pc self.panel1 = wx.Panel(self,-1, style=wx.SUNKEN_BORDER,size=(1000,600)) if id>0: self.mission=mission(int(id)) self.edittxt= wx.TextCtrl(self.panel1, value=self.mission.getLabel(), pos=(15, 10), size=(340,-1)) self.beginTxt= wx.StaticText(self.panel1, label="Depend de la mission :", pos=(15,40)) idDepMission=self.mission.getDepMission() if idDepMission>0: depMission=mission(idDepMission) self.depMission= wx.TextCtrl(self, value=str(idDepMission) + "|" + depMission.getLabel(), pos=(115, 40), size=(200,-1)) else: self.depMission= wx.TextCtrl(self, value="0", pos=(115, 40), size=(200,-1)) self.changeDepMission=wx.Button(self.panel1, -1, "Changer", (330,35)) self.Bind(wx.EVT_BUTTON, self.onChangeDepMission, self.changeDepMission) wx.StaticBox(self.panel1, -1, 'Dialogues', (5, 130), size=(420, 110)) self.beginTxt= wx.StaticText(self.panel1, label="Dialogue de depart :", pos=(15,150)) idBeginDiag=self.mission.getBeginDiag() if idBeginDiag>0: beginDiag=Dialog(idBeginDiag) self.beginDiag= wx.TextCtrl(self, value=str(idBeginDiag) + "|" + beginDiag.getText().replace('\\2n','\n \n').replace('\\1n','\n'), pos=(115, 150), size=(200,-1)) else: self.beginDiag= wx.TextCtrl(self, value="", pos=(85, 150), size=(200,-1)) self.changeBegin=wx.Button(self.panel1, -1, "Changer", (330,145)) self.Bind(wx.EVT_BUTTON, self.onChangeBegin, self.changeBegin) self.currentTxt= wx.StaticText(self.panel1, label="Dialogue courant :", pos=(15,180)) idCurrentDiag=self.mission.getCurrentDiag() if idCurrentDiag>0: currentDiag=Dialog(idCurrentDiag) self.currentDiag= wx.TextCtrl(self, value=str(idCurrentDiag) + "|" + currentDiag.getText().replace('\\2n','\n \n').replace('\\1n','\n'), pos=(115, 180), size=(200,-1)) else: self.currentDiag= wx.TextCtrl(self, value="", pos=(85, 180), size=(200,-1)) self.changeCurrent=wx.Button(self.panel1, -1, "Changer", (330,175)) self.Bind(wx.EVT_BUTTON, self.onChangeCurrent, self.changeCurrent) self.EndTxt= wx.StaticText(self.panel1, label="Dialogue de fin :", pos=(15,210)) idEndDiag=self.mission.getEndingDiag() if idEndDiag>0: endingDiag=Dialog(idEndDiag) self.endingDiag= wx.TextCtrl(self, value=str(idEndDiag) + "|" + endingDiag.getText().replace('\\2n','\n \n').replace('\\1n','\n'), pos=(115, 210), size=(200,-1)) else: self.endingDiag= wx.TextCtrl(self, value="", pos=(85, 210), size=(200,-1)) self.changeEnd=wx.Button(self.panel1, -1, "Changer", (330,205)) self.Bind(wx.EVT_BUTTON, self.onChangeEnd, self.changeEnd) wx.StaticBox(self.panel1, -1, 'NPC', (5, 250), size=(420, 100)) self.EndTxt= wx.StaticText(self.panel1, label="NPC donnant :", pos=(15,270)) idBeginNPC=self.mission.getNPC() if idBeginNPC>0: beginNPC=PNJ(idBeginNPC) self.beginNPC= wx.TextCtrl(self, value=str(idBeginNPC) + " | " + beginNPC.getName().replace('\\2n','\n \n').replace('\\1n','\n'), pos=(115, 270), size=(200,-1)) else: self.beginNPC= wx.TextCtrl(self, value="", pos=(85, 270), size=(200,-1)) self.changeBeginNPC=wx.Button(self.panel1, -1, "Changer", (330,265)) self.Bind(wx.EVT_BUTTON, self.onChangeBeginNPC, self.changeBeginNPC) self.EndTxt= wx.StaticText(self.panel1, label="NPC de fin :", pos=(15,300)) idEndingNPC=self.mission.getEndingNPC() if idEndingNPC>0: endingNPC=PNJ(idEndingNPC) self.endingNPC= wx.TextCtrl(self, value=str(idEndingNPC) + " | " + endingNPC.getName().replace('\\2n','\n \n').replace('\\1n','\n'), pos=(115, 300), size=(200,-1)) else: self.endingNPC= wx.TextCtrl(self, value="", pos=(85, 300), size=(200,-1)) self.changeEndNPC=wx.Button(self.panel1, -1, "Changer", (330,295)) self.Bind(wx.EVT_BUTTON, self.onChangeEndNPC, self.changeEndNPC) wx.StaticBox(self.panel1, -1, 'Objectifs', (450, 20), size=(480, 350)) lt=Objectif.getListOfTypeObjectif() for o in self.mission.getObjectifs(): wx.StaticText(self.panel1, label="Type :", pos=(465,45)) self.cboxChoixType = wx.ComboBox(self.panel1, -1,choices=lt,pos=(540, 40),style=wx.CB_DROPDOWN|wx.CB_SORT) self.Bind(wx.EVT_COMBOBOX, self.onChooseTypeObjectif, self.cboxChoixType) self.cboxChoixType.SetValue(Objectif.getTypeObjectifById(o.getIdType())) self.onChooseTypeObjectif(None) else: self.edittxt= wx.TextCtrl(self.panel1, value="", pos=(15, 10), size=(340,-1)) wx.StaticBox(self.panel1, -1, 'Dialogues', (5, 130), size=(420, 110)) self.beginTxt= wx.StaticText(self.panel1, label="Dialogue de depart :", pos=(15,150)) self.beginDiag= wx.TextCtrl(self, value="", pos=(85, 150), size=(200,-1)) self.changeBegin=wx.Button(self.panel1, -1, "Changer", (330,145)) self.Bind(wx.EVT_BUTTON, self.onChangeBegin, self.changeBegin) self.currentTxt= wx.StaticText(self.panel1, label="Dialogue courant :", pos=(15,180)) self.currentDiag= wx.TextCtrl(self, value="", pos=(85, 180), size=(200,-1)) self.changeCurrent=wx.Button(self.panel1, -1, "Changer", (330,175)) self.Bind(wx.EVT_BUTTON, self.onChangeCurrent, self.changeCurrent) self.EndTxt= wx.StaticText(self.panel1, label="Dialogue de fin :", pos=(15,210)) self.endingDiag= wx.TextCtrl(self, value="", pos=(85, 210), size=(200,-1)) self.changeEnd=wx.Button(self.panel1, -1, "Changer", (330,205)) self.Bind(wx.EVT_BUTTON, self.onChangeEnd, self.changeEnd) wx.StaticBox(self.panel1, -1, 'NPC', (5, 250), size=(420, 100)) self.EndTxt= wx.StaticText(self.panel1, label="NPC donnant :", pos=(15,270)) self.beginNPC= wx.TextCtrl(self, value="", pos=(85, 270), size=(200,-1)) self.changeBeginNPC=wx.Button(self.panel1, -1, "Changer", (330,265)) self.Bind(wx.EVT_BUTTON, self.onChangeBeginNPC, self.changeBeginNPC) self.EndTxt= wx.StaticText(self.panel1, label="NPC de fin :", pos=(15,300)) self.endingNPC= wx.TextCtrl(self, value="", pos=(85, 300), size=(200,-1)) self.changeEndNPC=wx.Button(self.panel1, -1, "Changer", (330,295)) self.Bind(wx.EVT_BUTTON, self.onChangeEndNPC, self.changeEndNPC) self.depMission= wx.TextCtrl(self, value="0", pos=(115, 40), size=(200,-1)) self.changeDepMission=wx.Button(self.panel1, -1, "Changer", (330,35)) self.Bind(wx.EVT_BUTTON, self.onChangeDepMission, self.changeDepMission) self.save=wx.Button(self.panel1, -1, "Save", (50,450)) self.Bind(wx.EVT_BUTTON, self.onSave, self.save) self.delete=wx.Button(self.panel1, -1, "Delete", (130,450)) self.Bind(wx.EVT_BUTTON, self.onDelete, self.delete)