diff --git a/utils/resedit/space.py b/utils/resedit/space.py index a382860..916fc7c 100644 --- a/utils/resedit/space.py +++ b/utils/resedit/space.py @@ -103,7 +103,8 @@ class Space: # Hooks. hooks = { "butNew":["clicked", self.__pnew], - "trePlanets":["button-release-event", self.__pupdate] + "trePlanets":["button-release-event", self.__pupdate], + "comSystem":["changed", self.__pnewSys] } for key, val in hooks.items(): self.__pwidget(key).connect(val[0], val[1]) @@ -303,10 +304,11 @@ class Space: self.__sinpStore(system, "spiAsteroids", "general", "asteroids") def __pstore(self): - planet_name = self.__swidget("inpName").get_text() + planet_name = self.__pwidget("inpName").get_text() if planet_name == "": return + # Changed planet name. if planet_name != self.cur_planet: self.planets[planet_name] = self.planets[self.cur_planet] model = self.__pwidget("trePlanets").get_model() @@ -558,9 +560,9 @@ class Space: def __pnew(self, wgt=None, event=None): name = "new planet" gfx = { "space":"none.png" } - gen = { "class":"A", "services":0, "GFX":gfx } + gen = { "class":"A", "services":0 } pos = { "x":0, "y":0 } - new_planet = { "general":gen, "pos":pos } + new_planet = { "GFX":gfx, "general":gen, "pos":pos } self.planets[name] = new_planet self.__create_trePlanets() self.__selPlanet(name) @@ -575,6 +577,41 @@ class Space: break i = i+1 + def __selPlanet(self, planet): + i = 0 + tree = self.__pwidget("trePlanets") + for row in tree.get_model(): + if row[0] == planet: + tree.set_cursor(i) + self.__pupdate() + break + i = i + 1 + + def __pnewSys(self, wgt=None, event=None): + combo = self.__pwidget("comSystem") + sys = combo.get_active_text() + planet = self.cur_planet + + if planet == "": + return + + # Remove other existances of the planet.. + for name, system in self.systems.items(): + for pnt in system["planets"]: + if pnt == planet: + if name == sys: # No change. + return + system["planets"].remove(planet) + + # Append to new location. + self.systems[sys]["planets"].append(planet) + + # Recreate the tree. + self.__genPlanetTree() + self.__create_treSystems() + self.__supdate() + self.__pupdate() + def debug(self): print "SYSTEMS LOADED:" print diff --git a/utils/resedit/space.pyc b/utils/resedit/space.pyc index 91ca966..d3cd324 100644 Binary files a/utils/resedit/space.pyc and b/utils/resedit/space.pyc differ