From 740386f7a5742036ba507ee6e58e0889d14e0501 Mon Sep 17 00:00:00 2001 From: Allanis Date: Sat, 13 Apr 2013 21:23:32 +0100 Subject: [PATCH] [Add] Preliminary new system support. --- utils/resedit/space.py | 61 +++++++++++++++++++++++++--------------- utils/resedit/space.pyc | Bin 12518 -> 13456 bytes 2 files changed, 38 insertions(+), 23 deletions(-) diff --git a/utils/resedit/space.py b/utils/resedit/space.py index 01c9cb3..c0202c4 100644 --- a/utils/resedit/space.py +++ b/utils/resedit/space.py @@ -53,23 +53,13 @@ class space: "butZoomOut":["clicked", self.__space_zoomout], "butReset":["clicked", self.__space_reset], "butAddJump":["clicked", self.__jump_add], - "butRmJump":["clicked", self.__jump_rm] + "butRmJump":["clicked", self.__jump_rm], + "butNew":["clicked", self.__new] } for key, val in hooks.items(): self.__swidget(key).connect(val[0], val[1]) - - # Populate the tree. - self.tree_systems = gtk.TreeStore(str) - for system in self.systems: # Load the planets. - treenode = self.tree_systems.append(None, [system]) - for planet in self.systems[system]['planets']: - self.tree_systems.append(treenode, [planet]) - col = gtk.TreeViewColumn('Systems') - cell = gtk.CellRendererText() - self.__swidget("treSystems").append_column(col) - col.pack_start(cell, True) - col.add_attribute(cell, 'text', 0) - self.__swidget("treSystems").set_model(self.tree_systems) + + self.__create_treSystems() # Custom widget drawing area thingy. self.zoom = 1 @@ -95,6 +85,19 @@ class space: # --------------------------------------------- gtk.main() + def __create_treSystems(self): + # Populate the tree. + self.tree_systems = gtk.TreeStore(str) + for system in self.systems: # Load the planets. + treenode = self.tree_systems.append(None, [system]) + for planet in self.systems[system]['planets']: + self.tree_systems.append(treenode, [planet]) + col = gtk.TreeViewColumn('Systems') + cell = gtk.CellRendererText() + self.__swidget("treSystems").append_column(col) + col.pack_start(cell, True) + col.add_attribute(cell, 'text', 0) + self.__swidget("treSystems").set_model(self.tree_systems) def __swidget(self,wgtname): """ @@ -102,7 +105,6 @@ class space: """ return self.swtree.get_widget(wgtname) - def __update(self, wgt=None, index=None, iter=None): """ Update the window @@ -125,7 +127,7 @@ class space: "labPos":"%s,%s" % (system["pos"]["x"],system["pos"]["y"]) } for key, value in dic.items(): - self.__swidget(key).set_text(value) + self.__swidget(key).set_text(str(value)) # Load jumps. @@ -245,13 +247,7 @@ class space: 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 + self.__selfSys(name) elif event.button == 1: self.space_sel = name self.__space_draw() @@ -380,6 +376,25 @@ class space: self.__update() self.__space_draw() + def __new(self, wgt=None, event=None): + name = "untitled" + gen = { "asteroids":0, "interference":0, "stars":100 } + pos = { "x":0, "y":0 } + new_ssys = { "general":gen, "pos":pos, "jumps":[], "fleets":[], "planets":[] } + self.systems[name] = new_ssys + self.__create_treSystems() + self.__selSys(name) + + def __selSys(self, system): + i = 0 + tree = self.__swidget("treSystems") + for row in tree.get_model(): + if row[0] == system: + tree.set_cursor(i) + self.__update() + break + i = i+1 + def debug(self): print "SYSTEMS LOADED:" print self.systems diff --git a/utils/resedit/space.pyc b/utils/resedit/space.pyc index 43bb82014c12c5e4660183c0a59534d22d790a17..6bf1649f1800810621e49ae55cad3d135be87f7d 100644 GIT binary patch delta 3563 zcmaJ@TW?%f6<&L;o{Q(qjK^b-@3oy|h9*v2QYUE*tuJZPk~;1gr*0j)2iJ4rjN|Lf zapE*~2Z%vJmD-xkMSV#Ll(rHN2>F=+5(p4#3rGka8U#W@@Q^2d0IY8v&p4zN_MGqR zwa(saulwHrn0>Pt@cz3#eDKbX1CJ?Bo6^JTY$ZtBL{lLuG*^FhwC$y-2o*x|DJuLh zZ7Z6pr$R)SvFhX~ZF^|SsFL+U#;FjKX$dMAGDub@#AQN5l}x-SbgD`xg>0;n4ML`? zWJ<`UD%mI`>z$T8GE``iK?|ArY-V@JbKY>(ZF*r~1}}p$H$9}*KBP%V zi({!`E)y18AD2OLPe3670b4%W^igG@fgE0uqJ_rlAWg%2tftzixi-qsFt1j;mQ^UY zGFu3{@39(Wo7VeTDPgs_EZ&Xdro@Q$&%2ts3ULqd0phCS|*M#^W? zdMy0=Mkl~teR0%B!<;wq-5b*YtDIhubsv@#aeQ ztYceF$ z>Ax`nS1NKOXfVx78yCeLJ`V0Ual8>RFD>|~KnVOiyGA0uaddAUGc)Y4%;-#8H4S7w zX95S`ov+r;RcLapjV7^SkP5OP2N`4?T(;$A8rPUtd>=;qtD%h0rk|W>Eok+i3qIoX zyy@l8vXI(BPC?NaYgy%d7B-KWkpuiP6M%Nu?E}~wj>IHufS+T~H=>vQ=A#(>J^EBw z7MqZuOR+xvJ7Z{|feFj{L{wg2b~(*Jo+O8%ng2VKp`t3yRD;rIj6bPMx-;IU-qnNg zTTc$agatMcRg{$~3eZ+ilxJ52#0dd%m=nYp=B&NP{;PwnPEe;352xj) z>3rg#y14sFBCP^Xu{!1%{q5v2HLib^>>oW1h8TMsBiP9TS##U5;0@CR8;)>74Cjhv zC-1D3Y;ywq=K+&?u;D-p%r##G!~j!(i+~}0qaoKn%|pk_P$RbA; zrdy{V+~l+)^8&+u(wOjrd6hu~IAM+2{X*Z%{8jxyf7mk9=>`}RPXUG)vT(bkta(*G(`t49ndvf8 zm^c$dY7XCFMUbBne#+k6-?qk8@-LEmoL(_EDL){6ukA|ZXNn7%d$yCHg(Pu9zT%-0 zGr7q4Ob8<}w-U0H`zW6Z$kTtx8ZJ?<%x01+mdmD5=0zZ1jq|LvHvA^JP2g)9C67T9 zIn7+S=!|2!t>aK`kw<3D)}kaZG9rscx&Og@RIhb3sgwHa9UaZJ@JddL|BK5G=jTs5 z+SPG=x1(k1abE2pf2~J`FHB6FAG5~I)A_su`PG(OwihpP<8}Re7TY}yz^bg|0z4}r zHg_;`wbajd_Ni(8)y|xH4Y~4-u6W=se=Z-_>8_lL@1ET z0!n}!K$MO0$W^u9dUh!P1#@2`#NJg)D)Lj+!jvBZZUGwK27VWC8}L2A_w^Iqm-uvf zw|l2WGPI7U%Ul*~#o%81DD0?=UIVS}4t4vlffXwi}l<-IE&`MxD7q7{f?x{9hCKoFkgs za9`KWcOVXqDqk;K^K<4)`u$vQ{7cMm3->*Y-q#=JZmZnxtDhNEr=`lEkDMP@Y)%Zx zvkA;ZaD>0UTwF7cfc5FlW1kpd{%lzb>r1QFY@zV-u6g(w^<+)F`4Lu&=vOh?7v=}~ zKybgpJZTd8BjaqH$Sf@_>cf3K6%;!P9d9Z2uknCSYrd})`DVry?4<#`eEi~q4e%Y$ zM@44vFX(=%W1gRid@AvY8=?W6y@AO>)Dp*iqv!Aq4v4Eglpg2za% z1ZWX*G9yvPq$92`J4I*FE}&_2f=}p*UHfHmQJWRVkHI^(w69 zkXM*gb2F5Lo7rIT#omR7uUAjNFRn{QXZrUpy0|~_JqoS0TfXx;xgv?zKF3!g>6qQL z*3EZliCPoO7BBjEt1;Jca!Rs_lm*l6C0jb)+4N8r+PRibV}z73UtShiIkIeN-I&ukMRa23Fj z=qB(gMisys;4t7AU>Gn0I11l4R*^j~LdZkhl9 delta 2849 zcmah~ZERa-6+W*&bN!L)k9;}bO`6nBo3z=+)-(l{G@3#;n)Ies+N_=D+HSC$#EE^g zCd{6Hq|zj$qK;QEX>4T^NFafPkpE0f8ZgA9Nt?9&fgga_B(#YilO_Q_5JGUCa}#f? zK-j*I&pGdV&U?;#KJJ~uhZ&#yui?PZ&wu7SrCk3cJ*(#H?UZwVe!AtRl>p^h=oZmR zP~-;PQnV7HTtI~3gUvy@<)W3=12!bANx86Wi%_mri0HuvQ#Qm7*od%kW>1PJDtz0) za!lB!XK`UWDAy)NJIPu~b~LWJ7QAMFh`juq;ivLrm;R-{Um5yO{^#m7MLW|}Ra6Yo z9?{&@ak}E78voo>B`Sug>Y_bfZl$UljwkTfN{Kxesjb&(+2&0q*%54Fg>;m59v96R z8(XBBN0=xTIgC!KdT3P<>(;!qbDXMm){a4%$eEOwyV^@N-=_*yFI9c}3TkUwEpG*t z9LO=tfi*wj{0_KYYY|1hdyhEGhxtJ${wsD-wT0{iP8Pl!d@f3Lj%d%#G6{8GvuED} zD08TYs+V%?CKG)Jhs0sKW>D3jV!wDXK*hlW;tgX(;*oG%J9Ue#=nE3N(J<2cv%0! z9M|*V%jeFr26=njZWX!b8+Rqth&#s8F8=l_Q-xFqb8(e$8_Hnb=lKG2{B_5fXML~E zMt-NVdOF&xUe=eQcTb%lE{P)N7nM3BmFgod0$i5V3hsjo$VvRx54k)!`J8z}KNvgO z_L0ML&qgJCL9+dNJ2t8=HeQT%DBl7*Z!PLq<0sUp{!4sv?i>Ur;C{dZ40a1cC2yy3 zF;)r^gW<74#a^;Y<-GL}bJi4K8gN=a(KgckMUYmnF*>rxGR{nHg(T?A-Bt z^wWu;dQCr@_>E6&?P{z0A$3ZBqkF`x!G;YR2zXPU56@^;38mB7?efxY#m=w4q0OH6 z)w}wWo~r{+=AknSKp7{I567XhUh7Q{{g(L(93(DILuIkv#t#bO3_q3m#>c%86&sdm z(tu1^(JZrM&*xU1enG*b zPBLq2rEJD7ls2pxof+uwYL=3;jO4noVRJ`3KhW2UeiKpVTE&?|yPJ7wH)~G6JJ2z2 z?P3RBY-mPKYNb@R#+h|8cpj7m!1+n!X+M{sZUdYsbZT%yE$d5zspzwiKEogfmrFOL zY8HmWM(O6p?^#}XSpQ)#754Fvim0#(D36LZe23Di-nk*iJ|=f zn6g6*vllO1SU5MC{_4!qqt>S$qxu}T;roAg8w)=IyZ~tbF7QRbOMtt8@9BRGUFX;Q zlf%z-iwE~sH8$OrW?DELSBG@=@b>@P_~1xP9cg@J~Mt3m@Jtl-v{*r{hhH_)Oh3M(bFm+eGY%5x^ComE0z@G zl)inev;BWx)xVCls_Tu=_*r$bX~KFN=0*MMprj1N1jhKi34BI>b7EO->JKM|^`9r- z?5gvGs-PT5c~y(T$E(iqd-;v~rp{l10l8WXNyqXUsHXwzfMb9YfJXt30geME08&ho zpzZ^_rw1RHKZ(X56jx=8!RIpkhG+kK+VICxMl$3#T1}tnH71NM{`Z+vX23M{2lxN< EKib&=Pyhe`