[Change] Some interface improvement.
This commit is contained in:
parent
0d5a1c6517
commit
f14246c578
@ -46,7 +46,7 @@ class space:
|
|||||||
# Hook events and stuff.
|
# Hook events and stuff.
|
||||||
hooks = {
|
hooks = {
|
||||||
"winSystems":["destroy",self.__done],
|
"winSystems":["destroy",self.__done],
|
||||||
"treSystems":["row-activated", self.__update],
|
"treSystems":["button-release-event", self.__update],
|
||||||
"butDone":["clicked", self.__done],
|
"butDone":["clicked", self.__done],
|
||||||
"butSave":["clicked",self.saveSystems],
|
"butSave":["clicked",self.saveSystems],
|
||||||
"butZoomIn":["clicked", self.__space_zoomin],
|
"butZoomIn":["clicked", self.__space_zoomin],
|
||||||
@ -112,6 +112,8 @@ class space:
|
|||||||
self.__store();
|
self.__store();
|
||||||
|
|
||||||
self.cur_system = self.__curSystem()
|
self.cur_system = self.__curSystem()
|
||||||
|
if self.cur_system == "":
|
||||||
|
return
|
||||||
system = self.systems[self.cur_system]
|
system = self.systems[self.cur_system]
|
||||||
|
|
||||||
# Load it all.
|
# Load it all.
|
||||||
@ -144,6 +146,8 @@ class space:
|
|||||||
|
|
||||||
def __store(self):
|
def __store(self):
|
||||||
sys_name = self.__swidget("inpName").get_text()
|
sys_name = self.__swidget("inpName").get_text()
|
||||||
|
if sys_name == "":
|
||||||
|
return
|
||||||
|
|
||||||
# Renamed the current system.
|
# Renamed the current system.
|
||||||
if sys_name != self.cur_system:
|
if sys_name != self.cur_system:
|
||||||
@ -195,7 +199,7 @@ class space:
|
|||||||
iter = tree.get_selection().get_selected()[1]
|
iter = tree.get_selection().get_selected()[1]
|
||||||
p = model.iter_parent(iter)
|
p = model.iter_parent(iter)
|
||||||
except:
|
except:
|
||||||
return None
|
return ""
|
||||||
if p == None:
|
if p == None:
|
||||||
return model.get_value(iter, 0)
|
return model.get_value(iter, 0)
|
||||||
else:
|
else:
|
||||||
@ -213,36 +217,49 @@ class space:
|
|||||||
self.__space_draw()
|
self.__space_draw()
|
||||||
|
|
||||||
def __space_down(self, wgt, event):
|
def __space_down(self, wgt, event):
|
||||||
if event.button == 1:
|
x = event.x
|
||||||
x = event.x
|
y = event.y
|
||||||
y = event.y
|
|
||||||
|
|
||||||
wx, wy, ww, wh = self.__swidget("draSpace").get_allocation()
|
wx, wy, ww, wh = self.__swidget("draSpace").get_allocation()
|
||||||
mx = x - (self.x*self.zoom + ww/2)
|
|
||||||
my = y - (self.y*self.zoom + wh/2)
|
|
||||||
|
|
||||||
# Modify the current position.
|
mx = x - (self.x*self.zoom + ww/2)
|
||||||
if self.__swidget("butReposition").get_active() and self.cur_system != "":
|
my = y - (self.y*self.zoom + wh/2)
|
||||||
system = self.systems[self.cur_system]
|
|
||||||
system["pos"]["x"] = str(int(mx))
|
|
||||||
system["pos"]["y"] = str(int(-my))
|
|
||||||
|
|
||||||
self.__space_draw()
|
# Modify the current position.
|
||||||
|
if event.button == 1 and self.__swidget("butReposition").get_active() and self.cur_system != "":
|
||||||
|
|
||||||
self.__swidget("butReposition").set_active(False)
|
system = self.systems[self.cur_system]
|
||||||
else:
|
system["pos"]["x"] = str(int(mx))
|
||||||
r = 15
|
system["pos"]["y"] = str(int(-my))
|
||||||
for name, sys in self.systems.items():
|
|
||||||
sx = int(sys["pos"]["x"])
|
|
||||||
sy = -int(sys["pos"]["y"])
|
|
||||||
|
|
||||||
if abs(sx-mx) < r and abs(sy-my) < r:
|
self.__space_draw()
|
||||||
self.space_sel = name
|
|
||||||
self.__space_draw()
|
self.__swidget("butReposition").set_active(False)
|
||||||
break
|
|
||||||
|
# See if a system is in "click" range.
|
||||||
|
r = 15
|
||||||
|
for name, sys in self.systems.items():
|
||||||
|
sx = int(sys["pos"]["x"])
|
||||||
|
sy = -int(sys["pos"]["y"])
|
||||||
|
|
||||||
|
if abs(sx-mx) < r and abs(sy-my) < r:
|
||||||
|
if event.button == 1 and event.type == gtk.gdk._2BUTTON_PRESS:
|
||||||
|
tree = self.__swidget("treSystems")
|
||||||
|
i = 0
|
||||||
|
for row in tree.get_model():
|
||||||
|
if row[0] == name:
|
||||||
|
tree.set_cursor(i)
|
||||||
|
self.__update()
|
||||||
|
break
|
||||||
|
i = i + 1
|
||||||
|
elif event.button == 1:
|
||||||
|
self.space_sel = name
|
||||||
|
self.__space_draw()
|
||||||
|
break
|
||||||
|
|
||||||
|
self.lx = x
|
||||||
|
self.ly = y
|
||||||
|
|
||||||
self.lx = x
|
|
||||||
self.ly = y
|
|
||||||
return True
|
return True
|
||||||
|
|
||||||
def __space_drag(self, wgt, event):
|
def __space_drag(self, wgt, event):
|
||||||
|
Binary file not shown.
Loading…
Reference in New Issue
Block a user