diff --git a/.gitignore b/.gitignore
index 08d6a38..bb87919 100644
--- a/.gitignore
+++ b/.gitignore
@@ -30,8 +30,9 @@
*core
screenshots/*.png
*VERSION
+utils/resedit/*.xml
# Windows Crap
win32/Lephisto/*
win32/Pack/*
-win32/Makefile
\ No newline at end of file
+win32/Makefile
diff --git a/utils/resedit/space.glade b/utils/resedit/space.glade
index a990eeb..d05f1dd 100644
--- a/utils/resedit/space.glade
+++ b/utils/resedit/space.glade
@@ -121,7 +121,7 @@
True
True
GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK
- 0 0 100 1 10 10
+ 0 0 1000 1 10 10
120
@@ -148,7 +148,7 @@
True
True
GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK
- 0 0 100 1 10 10
+ 0 0 1000 1 10 10
120
@@ -175,7 +175,7 @@
True
True
GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK
- 0 0 100 1 10 10
+ 0 0 1000 1 10 10
120
diff --git a/utils/resedit/space.py b/utils/resedit/space.py
index 203527f..0ffc091 100644
--- a/utils/resedit/space.py
+++ b/utils/resedit/space.py
@@ -65,6 +65,7 @@ class space:
# Display the window and such.
self.__swidget("winSystems").show_all()
+ self.cur_system = ""
# ---------------- PLANETS --------------------
@@ -79,22 +80,20 @@ class space:
return self.swtree.get_widget(wgtname)
- def __update(self, wgt=None, foo=None, bar=None):
+ def __update(self, wgt=None, index=None, iter=None):
"""
Update the window
"""
- # Important thingies.
- tree = self.__swidget("treSystems")
- model = tree.get_model()
+
+ # Store the current values.
+ self.__store();
- # Get system.
- sel = model.iter_nth_child(None, foo[0])
- sys_name = model.get_value( sel, 0 )
- system = self.systems[sys_name]
+ self.cur_system = self.__curSystem()
+ system = self.systems[self.cur_system]
# Load it all.
dic = {
- "inpName":sys_name,
+ "inpName":self.cur_system,
"spiInterference":system["general"]["interference"],
"spiAsteroids":system["general"]["asteroids"],
"spiStars":system["general"]["stars"],
@@ -118,6 +117,44 @@ class space:
col.add_attribute(cell, 'text', 0)
wgt.set_model(jumps)
+ def __store(self):
+ sys_name = self.__swidget("inpName").get_text()
+
+ # Renamed the current system.
+ if sys_name != self.cur_system:
+ self.systems[sys_name] = self.systems[self.cur_systems] # Copy it over.
+ del self.systems[self.cur_system] # Get rid of the old one.
+ self.cur_system = sys_name # Now use self.cur_system again.
+
+ try:
+ system = self.systems[self.cur_system]
+ except:
+ return # No system selected yet.
+
+ # Start to load all the input stuff.
+ # General crap.
+ self.__sinpStore(system, "spiStars", "general", "stars")
+ self.__sinpStore(system, "spiInterference", "general", "interference")
+ self.__sinpStore(system, "spiAsteroids", "general", "asteroids")
+
+ def __sinpStore(self, system, wgt, tag, minortag=None):
+ text = self.__swidget(wgt).get_text()
+ if minortag==None:
+ system[tag] = text
+ else:
+ system[tag][minortag] = text
+
+ def __curSystem(self):
+ # Important thingies.
+ tree = self.__swidget("treSystems")
+ model = tree.get_model()
+ iter = tree.get_selection().get_selected()[1]
+ p = model.iter_parent(iter)
+ if p == None:
+ return model.get_value(iter, 0)
+ else:
+ return model.get_value(p, 0)
+
def __done(self, widget=None, data=None):
"""
Window is done
diff --git a/utils/resedit/space.pyc b/utils/resedit/space.pyc
index f37563a..d996ec3 100644
Binary files a/utils/resedit/space.pyc and b/utils/resedit/space.pyc differ