From 0d5a1c6517709e1232182e6e2a0cf1dbcadd2df3 Mon Sep 17 00:00:00 2001
From: Allanis <allanis@saracraft.net>
Date: Sat, 13 Apr 2013 19:56:48 +0100
Subject: [PATCH] [Add] resedit: remove/add hyperspace paths.

---
 utils/resedit/data.py   |   7 +++++++
 utils/resedit/data.pyc  | Bin 2323 -> 2582 bytes
 utils/resedit/space.py  |  29 ++++++++++++++++++++++++++++-
 utils/resedit/space.pyc | Bin 11155 -> 12193 bytes
 4 files changed, 35 insertions(+), 1 deletion(-)

diff --git a/utils/resedit/data.py b/utils/resedit/data.py
index a459bf2..c3ff4a3 100644
--- a/utils/resedit/data.py
+++ b/utils/resedit/data.py
@@ -1,6 +1,13 @@
 #!/usr/bin/env python
 
 from xml.dom import minidom
+import sets
+
+def uniq(alist): # Fastest order preserving.
+  s = sets.Set(alist)
+  del alist[:]
+  for a in s:
+    alist.append(a)
 
 def load(xmlfile, tag, has_name=True, do_array=None):
   dom = minidom.parse(xmlfile)
diff --git a/utils/resedit/data.pyc b/utils/resedit/data.pyc
index 83294c226588636a4ea3dfadef10b46672ae1e67..fd1240a2b8864358cf48fc442576f2f5a549170d 100644
GIT binary patch
delta 556
zcmXv~Jxc>Y5S`h(TrM%e_=O*_Q53F_fPzgLMFkNg;6@Mv7BP3oCAs)<tEeQTP=CRK
zSXzjc5X8<O;BOJzR8~5(>T>gL-kY7bv#W>iM!Qx&o9;h_J2m)Q7X4Q#;!OgdK7=Mf
zgit|1<^q}mDgt~9ZU8D41U8Gl4L77a|1@D}l1pXJA+PY8mWPz7BtaCmLjR~6m1->U
zsT}JR@iKt|s3Wuit`RyWS-QwW8)0LA1UiB%bwa^)Jeh($8m(;HOCB33o1Fp`D`w?D
zDW0Kvd>pj=-wg@oxn>wE#S_E^tNP7do#fuLR(QfKu}c6rh&E>NrSXZW307IuJzN};
zDavG;z??1z^n+MWWQb4e4{?={e7=sXdvvv9pJV2=V;2OGXQ#I{&TXRvl1=3pfq9&R
zDve$}l#{GZG32?#Ru@sz+|6uZp%GlloPJEs;GBL>-eN&-yTzi%V;e7ODELQ_Bo2~q
kD*5@1$L{G_AQxDgXILTdfaYJ*U+!>*9deivDQ9r@2g$Zyu>b%7

delta 342
zcmbOxGFhme`7<xq$+pbEWCkc;2GR~dTx<j+Qh<n&A%}q>myscgk%2Lli6MoBA%%&d
zg^3}Gg#pTC26I_KQo$OmKy8`-fk1;1$SPq661kaqnJM|X$t*xN9}u$vu`>`C%QJ4S
zX1vD8DG1^KF~j85OooC%Oh8r;$Q@uKf><WcVRmK(nJYT^33C;92}plpK|yL>%H(90
z8H|jR|FD!XvTiPB)nfv37O}6_1{tU!0wjWjKm<RK0J|h9u{gCPF+E5aBnp-nom|5q
z%g8x-7Kb9E+~hqRt&HlEoj9#@{4_wefHhU*=I8;P9|Ytxlz{vYQdF86qy}UJ$%6>X
P$s0K%IY1HuO#Dg!ROCK{

diff --git a/utils/resedit/space.py b/utils/resedit/space.py
index 4eead70..159cd7c 100644
--- a/utils/resedit/space.py
+++ b/utils/resedit/space.py
@@ -51,7 +51,9 @@ class space:
         "butSave":["clicked",self.saveSystems],
         "butZoomIn":["clicked", self.__space_zoomin],
         "butZoomOut":["clicked", self.__space_zoomout],
-        "butReset":["clicked", self.__space_reset]
+        "butReset":["clicked", self.__space_reset],
+        "butAddJump":["clicked", self.__jump_add],
+        "butRmJump":["clicked", self.__jump_rm]
     }
     for key, val in hooks.items():
       self.__swidget(key).connect(val[0], val[1])
@@ -336,6 +338,31 @@ class space:
       layout = area.create_pango_layout(sys_name)
       area.window.draw_layout(gc, dx+r/2+2, dy-r/2, layout)
 
+  def __jump_add(self, wgt=None, event=None):
+    if self.space_sel in self.systems.keys() and self.cur_system in self.systems.keys():
+      self.systems[self.cur_system]["jumps"].append(self.space_sel)
+      self.systems[self.space_sel]["jumps"].append(self.cur_system)
+      data.uniq(self.systems[self.cur_system]["jumps"])
+      data.uniq(self.systems[self.space_sel]["jumps"])
+
+      self.__update()
+      self.__space_draw()
+
+  def __jump_rm(self, wgt=None, event=None):
+    if self.space_sel in self.systems.keys() and self.cur_system in self.systems.keys():
+      i = 0
+      for e in self.systems[self.cur_system]["jumps"]:
+        if e == self.space_sel:
+          self.systems[self.cur_system]["jumps"].pop(i)
+        i = i + 1
+      i = 0
+      for e in self.systems[self.space_sel]["jumps"]:
+        if e == self.cur_system:
+          self.systems[self.space_sel]["jumps"].pop(i)
+        i = i + 1
+      self.__update()
+      self.__space_draw()
+
   def debug(self):
     print "SYSTEMS LOADED:"
     print self.systems
diff --git a/utils/resedit/space.pyc b/utils/resedit/space.pyc
index 04156e656545c594022b9f4d99a5f1ffc139d424..b20c49fb6c6252d2a303b9fb86198059554e56d6 100644
GIT binary patch
delta 2985
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
Nw6D2<{;U17{{SvN9M%8;

delta 2050
zcmai!Uu@G=6vxkPw|2j-Yqz!=ZO1m)zy1bnfCg}&gw6$!jfuZ9hjUoF{tC32`$K;l
zUDBox;{^;M%SAzh#Kjn1^uaW~s4+emA52X2fj7nYU}EBf4<<hFpq}sjbsZWL+wSu_
z=iGbl{ho90ZyQND<#PVs<oWUak6ed^_(8_SbM7FS_{nt<(%I1Hs-S5vnI5`IG~Hy6
zlG#XC9W?E$PX0!84BLr*6%TAqYgTS`O)^`Q8zM8HR%<0Ap@%AQ$4tF=UEXtd3Ag;*
zy;Lp<DjcDrpqz)+h(^y3(u{*j{Bu%~DA!0u2d(k2mx@kkiQwU-$eM%1(mk58cv2Ht
zK1||-q@M~etITFz><pFal;fvd3z@A{tfPy9IJZ<!g}qcPb9OVL5wnRRqvy9%$+eYG
ztf!)@njn_i#njTT_J&-g+OXs%>>q;kQiDotB(qKl=FQwN1V3_ZRBRw?8+KNH7{2MJ
zGFP<b<d`b8ni;7oKr)w#s-k4FOg7p#H)+AzC5?(2<+dvo9hB?bG`eU6!Z@^}X6>w5
z-87<vX;kLE@(E%49$OqQ$DyDK^*$a7sZgICvgL9o`DFT0y{PJo;f(5_RLA_}K+WH!
z{M}079y_I#oC&>6PIx|);l?E~D6co(sf>B=JGA4(pZa#EQ~u@K5Cd|<zamnVaPv8b
zYm7&Xak&!MCwk@mz!RgV5by(gfqe|CfsxNxNh?#Zj2I#sV?3L;64t`yjPWFU#sT0E
z@RaNb_C<$b9tM2C5#VXyxSR<N>`$<1IT>a)ZM*=dp0SdeTh16*-3S0@fl1&+c{DmI
z9|gVQQpFwmUX*7L?O<g2kL;Waa0T2na2}WilE5oK3V4;Ft6ggKUEHj%)&Nx`!mllu
znK{)CC3taRk&BhHZO59S+qeuUwFzkSy4g=A^XSY?>Dcym7xpmt0+Df$p}Sxypa;gh
z{B&D{n~(A$VZZoT4urpOshnl`TlkPTC}WX6|0?D#GAz`$DC5z%yc_Y0&*TS@tcc0B
z=!*DS-iRg!`gmNg!*u&_VI2i<4Ro~J-hEzb?Md-%CENa!5dCtjqrHq&!vt!nS=<FZ
z#IT@wcG<EP=C_9J3xX3yr&4os3+a@V<r&W)!?PJrTiKP2QERQbF{+u_c}wY1Q{~Sc
ztw(U})KF?RZ|gqI5n}?tK6(o*)xUXI*MRCZKF~QN64LBk6%Q&8J7-Z=d`DloR*br1
zc`IdQly2h&a-r170l3=6F^1)3j7*+A`~1ZI<mq@~%-GU^F4{t%=D&qt;9Woht+&88
zfH#5Lz#aK$#|80+Ozm8cDh2;O9Zb5WZpE4Ipzukvd-?w+9_k5*P~}w5btf18p#Ny&
zV@D}FW3i~ZRjO#!61DF*HaaJhu_=8W=GMD^lU?-^n3q#ml5^SljC~$i`7rkE$X4^G
zkftjAXQ7sZ2hs)mv1+`9<#2BK)qL_|+L)ASy|=l5Wc4E4h4qfSt#62^93FT{dIrDZ
z)BJ9*O|;2h28U0a!vs|V-Xmi-a0$2q;NO6;3m5`U04IS#U=N^<?n}9U?@9T|kmq1O
s$6OB0t<_b(hc$N~ruBQ>n$Pd@*K0eqFh5=XVV!4IU)-4dbLhRl0cQAjNdN!<