]> git.entuzijast.net Git - imunes.git/commitdiff
Move a few more global variables to per-cfg namespaces:
authormarko <marko>
Sat, 5 Jan 2008 18:06:25 +0000 (18:06 +0000)
committermarko <marko>
Sat, 5 Jan 2008 18:06:25 +0000 (18:06 +0000)
curcanvas
zoom
undolevel
redolevel
undolog
oper_mode
eid
ngnodemap

Bug found by:
Submitted by:
Reviewed by:
Approved by:
Obtained from:

14 files changed:
annotations.tcl
canvas.tcl
copypaste.tcl
editor.tcl
exec.tcl
filemgmt.tcl
hub.tcl
imunes.tcl
initgui.tcl
lanswitch.tcl
linkcfg.tcl
ns2imunes.tcl
rj45.tcl
topogen.tcl

index 7cb57cc2562fac9f783932e3f30466d5affaa7d1..0d091655c68c9d6b633cf123121cb65490019211 100644 (file)
@@ -23,7 +23,7 @@
 # SUCH DAMAGE.
 #
 
-# $Id: annotations.tcl,v 1.9 2008/01/02 12:08:46 marko Exp $
+# $Id: annotations.tcl,v 1.10 2008/01/05 18:06:25 marko Exp $
 
 
 #****h* imunes/annotations.tcl
@@ -165,8 +165,9 @@ proc deleteAnnotation { c type target } {
 
 proc drawOval {oval} {
     upvar 0 ::cf::[set ::curcfg]::$oval $oval
-    global defFillColor zoom curcanvas
-    global defTextFontFamily defTextFontSize
+    upvar 0 ::cf::[set ::curcfg]::curcanvas curcanvas
+    upvar 0 ::cf::[set ::curcfg]::zoom zoom
+    global defFillColor defTextFontFamily defTextFontSize
 
     set coords [getNodeCoords $oval]
     set x1 [expr {[lindex $coords 0] * $zoom}]
@@ -283,8 +284,9 @@ proc roundRect { w x0 y0 x3 y3 radius args } {
 
 proc drawRect {rectangle} {
     upvar 0 ::cf::[set ::curcfg]::$rectangle $rectangle
-    global defFillColor zoom curcanvas
-    global defTextFontFamily defTextFontSize
+    upvar 0 ::cf::[set ::curcfg]::curcanvas curcanvas
+    upvar 0 ::cf::[set ::curcfg]::zoom zoom
+    global defFillColor defTextFontFamily defTextFontSize
 
     set coords [getNodeCoords $rectangle]
     if {$coords == ""} {
@@ -635,7 +637,8 @@ proc popupAnnotationApply { c wi target type } {
 
 
 proc backgroundImage { c file } {
-    global sizex sizey zoom
+    upvar 0 ::cf::[set ::curcfg]::zoom zoom
+    global sizex sizey
 
     set e_sizex [expr {int($sizex * $zoom)}]
     set e_sizey [expr {int($sizey * $zoom)}]
@@ -750,7 +753,8 @@ proc selectmarkLeave {c x y} {
 
 proc textEnter { c x y } {
     upvar 0 ::cf::[set ::curcfg]::annotation_list annotation_list
-    global curcanvas
+    upvar 0 ::cf::[set ::curcfg]::curcanvas curcanvas
+    upvar 0 ::cf::[set ::curcfg]::zoom zoom
 
     set object [newObjectId annotation]
     set newtext [$c create text $x $y -text "" \
@@ -774,8 +778,10 @@ proc textEnter { c x y } {
 
 proc drawText {text} {
     upvar 0 ::cf::[set ::curcfg]::$text $text
+    upvar 0 ::cf::[set ::curcfg]::curcanvas curcanvas
+    upvar 0 ::cf::[set ::curcfg]::zoom zoom
     global defTextColor defTextFont defTextFontFamily defTextFontSize
-    global zoom curcanvas newfontsize
+    global newfontsize
 
     set coords [getNodeCoords $text]
     if {$coords == ""} {
index c8fdb61f8898dffebb9252deb9e155a6d5522bfd..d9a1cc26e66027736bc8b80a230a644a72eb3378 100755 (executable)
@@ -1,4 +1,4 @@
-# $Id: canvas.tcl,v 1.13 2008/01/02 12:08:46 marko Exp $ 
+# $Id: canvas.tcl,v 1.14 2008/01/05 18:06:25 marko Exp $ 
 #
 #
 # Copyright 2005-2008 University of Zagreb, Croatia.
@@ -25,7 +25,7 @@
 # SUCH DAMAGE.
 #
 
-# $Id: canvas.tcl,v 1.13 2008/01/02 12:08:46 marko Exp $
+# $Id: canvas.tcl,v 1.14 2008/01/05 18:06:25 marko Exp $
 
 
 #****h* imunes/canvas.tcl
@@ -215,7 +215,8 @@ set bkgImage ""
 #****
 
 proc selectBkgImage {} {
-    global bkgImage imageFileTypes showBkgImage curcanvas
+    upvar 0 ::cf::[set ::curcfg]::curcanvas curcanvas
+    global bkgImage imageFileTypes showBkgImage
     set imageFileTypes {{"GIF images" {.gif}}
                        {"All files"  {*}   }}
 
index 062687f0e9e30c7626a6c3cd85592859916a6d93..1c49e3e30393fa16a5afab6450cb7326b5f6ec8f 100644 (file)
@@ -23,7 +23,7 @@
 # SUCH DAMAGE.
 #
 
-# $Id: copypaste.tcl,v 1.1 2008/01/03 13:47:54 marko Exp $
+# $Id: copypaste.tcl,v 1.2 2008/01/05 18:06:25 marko Exp $
 
 
 proc cutSelection {} {
@@ -81,7 +81,8 @@ proc copySelection {} {
 proc paste {} {
     upvar 0 ::cf::[set ::curcfg]::node_list node_list
     upvar 0 ::cf::[set ::curcfg]::link_list link_list
-    global curcanvas changed
+    upvar 0 ::cf::[set ::curcfg]::curcanvas curcanvas
+    global changed
 
     # Nothing to do if clipboard is empty
     if {[set ::cf::clipboard::node_list] == {}} {
index c6432a8f3baa2f2fe0d7dcd65dee5a52426af369..5258df73f65f9c5d03bd4be2d60d7cb45ad29987 100755 (executable)
@@ -26,7 +26,7 @@
 # and Technology through the research contract #IP-2003-143.
 #
 
-# $Id: editor.tcl,v 1.87 2008/01/03 13:47:54 marko Exp $
+# $Id: editor.tcl,v 1.88 2008/01/05 18:06:25 marko Exp $
 
 
 #****h* imunes/editor.tcl
@@ -138,10 +138,13 @@ proc removeGUINode { node } {
 #****
 
 proc updateUndoLog {} {
-    global changed undolog undolevel redolevel
+    upvar 0 ::cf::[set ::curcfg]::undolevel undolevel
+    upvar 0 ::cf::[set ::curcfg]::redolevel redolevel
+    upvar 0 ::cf::[set ::curcfg]::undolog undolog
+    global changed
 
     if { $changed } {
-       global t_undolog undolog
+       global t_undolog
        set t_undolog ""
        dumpCfg string t_undolog
        incr undolevel
@@ -165,7 +168,9 @@ proc updateUndoLog {} {
 #****
 
 proc undo {} {
-    global undolevel undolog oper_mode
+    upvar 0 ::cf::[set ::curcfg]::undolevel undolevel
+    upvar 0 ::cf::[set ::curcfg]::undolog undolog
+    upvar 0 ::cf::[set ::curcfg]::oper_mode oper_mode
 
     if {$oper_mode == "edit" && $undolevel > 0} {
        .menubar.edit entryconfigure "Redo" -state normal
@@ -192,7 +197,10 @@ proc undo {} {
 #****
 
 proc redo {} {
-    global undolevel redolevel undolog oper_mode
+    upvar 0 ::cf::[set ::curcfg]::undolevel undolevel
+    upvar 0 ::cf::[set ::curcfg]::redolevel redolevel
+    upvar 0 ::cf::[set ::curcfg]::undolog undolog
+    upvar 0 ::cf::[set ::curcfg]::oper_mode oper_mode
 
     if {$oper_mode == "edit" && $redolevel > $undolevel} {
        incr undolevel
@@ -221,8 +229,9 @@ proc redrawAll {} {
     upvar 0 ::cf::[set ::curcfg]::node_list node_list
     upvar 0 ::cf::[set ::curcfg]::link_list link_list
     upvar 0 ::cf::[set ::curcfg]::annotation_list annotation_list
+    upvar 0 ::cf::[set ::curcfg]::curcanvas curcanvas
+    upvar 0 ::cf::[set ::curcfg]::zoom zoom
     global background sizex sizey grid
-    global curcanvas zoom
     global showBkgImage showAnnotations showGrid bkgImage
     .bottom.zoom config -text "zoom [expr {int($zoom * 100)}]%"
     set e_sizex [expr {int($sizex * $zoom)}]
@@ -323,9 +332,10 @@ proc redrawAll {} {
 #****
 
 proc drawNode { node } {
+    upvar 0 ::cf::[set ::curcfg]::curcanvas curcanvas
+    upvar 0 ::cf::[set ::curcfg]::zoom zoom
     global showNodeLabels
     global router pc host lanswitch frswitch rj45 hub pseudo
-    global curcanvas zoom
 
     set type [nodeType $node]
     set coords [getNodeCoords $node]
@@ -495,7 +505,8 @@ proc listLANnodes { l2node l2peers } {
 #****
 
 proc calcDxDy { lnode } {
-    global showIfIPaddrs showIfIPv6addrs zoom
+    upvar 0 ::cf::[set ::curcfg]::zoom zoom
+    global showIfIPaddrs showIfIPv6addrs
     upvar dx x
     upvar dy y
 
@@ -641,7 +652,7 @@ proc updateLinkLabel { link } {
 #****
 proc redrawAllLinks {} {
     upvar 0 ::cf::[set ::curcfg]::link_list link_list
-    global curcanvas
+    upvar 0 ::cf::[set ::curcfg]::curcanvas curcanvas
 
     foreach link $link_list {
        set nodes [linkPeers $link]
@@ -719,7 +730,8 @@ proc redrawLink { link } {
 #   * link -- link id
 #****
 proc splitGUILink { link } {
-    global changed zoom
+    upvar 0 ::cf::[set ::curcfg]::zoom zoom
+    global changed
 
     set peer_nodes [linkPeers $link]
     set new_nodes [splitLink $link pseudo]
@@ -832,7 +844,7 @@ proc selectedRealNodes {} {
 }
 
 proc selectAdjacent {} {
-    global curcanvas
+    upvar 0 ::cf::[set ::curcfg]::curcanvas curcanvas
 
     set selected [selectedNodes]
     set adjacent {}
@@ -873,8 +885,8 @@ proc selectAdjacent {} {
 proc button3link { c x y } {
     upvar 0 ::cf::[set ::curcfg]::node_list node_list
     upvar 0 ::cf::[set ::curcfg]::canvas_list canvas_list
-    global oper_mode env eid
-    global curcanvas
+    upvar 0 ::cf::[set ::curcfg]::curcanvas curcanvas
+    upvar 0 ::cf::[set ::curcfg]::oper_mode oper_mode
 
     set link [lindex [$c gettags {link && current}] 1]
     if { $link == "" } {
@@ -1037,7 +1049,9 @@ proc mergeGUINode { node } {
 proc button3node { c x y } {
     upvar 0 ::cf::[set ::curcfg]::node_list node_list
     upvar 0 ::cf::[set ::curcfg]::canvas_list canvas_list
-    global oper_mode env eid curcanvas
+    upvar 0 ::cf::[set ::curcfg]::curcanvas curcanvas
+    upvar 0 ::cf::[set ::curcfg]::oper_mode oper_mode
+    upvar 0 ::cf::[set ::curcfg]::eid eid
 
     set node [lindex [$c gettags {node && current}] 1]
     if { $node == "" } {
@@ -1244,7 +1258,8 @@ proc button3node { c x y } {
 #   * cmd -- the path to the shell.
 #****
 proc spawnShell { node cmd } {
-    global eid remote_exec exec_host gui_unix
+    upvar 0 ::cf::[set ::curcfg]::eid eid
+    global remote_exec exec_host gui_unix
 
     set node_id $eid\.$node
 
@@ -1278,7 +1293,7 @@ proc spawnShell { node cmd } {
 #   * iface -- interface name
 #****
 proc startethereal { node iface } {
-    global eid
+    upvar 0 ::cf::[set ::curcfg]::eid eid
 
     set interface "$iface@$eid\.$node"
     nexec wireshark -i $interface -f " " &
@@ -1303,7 +1318,8 @@ proc startethereal { node iface } {
 #****
 proc button1 { c x y button } {
     upvar 0 ::cf::[set ::curcfg]::node_list node_list
-    global curcanvas zoom
+    upvar 0 ::cf::[set ::curcfg]::curcanvas curcanvas
+    upvar 0 ::cf::[set ::curcfg]::zoom zoom
     global activetool newlink curobj changed def_router_model
     global router pc host lanswitch frswitch rj45 hub
     global oval rectangle text
@@ -1462,7 +1478,7 @@ proc button1 { c x y button } {
 proc button1-motion { c x y } {
     global activetool newlink changed
     global lastX lastY sizex sizey selectbox background
-    global oper_mode newoval newrect resizemode
+    global newoval newrect resizemode
     set x [$c canvasx $x]
     set y [$c canvasy $y]
 
@@ -1668,11 +1684,16 @@ proc newGUILink { lnode1 lnode2 } {
 #****
 proc button1-release { c x y } {
     upvar 0 ::cf::[set ::curcfg]::node_list node_list
+    upvar 0 ::cf::[set ::curcfg]::zoom zoom
+    upvar 0 ::cf::[set ::curcfg]::undolevel undolevel
+    upvar 0 ::cf::[set ::curcfg]::redolevel redolevel
+    upvar 0 ::cf::[set ::curcfg]::undolog undolog
     global activetool newlink curobj grid
-    global changed undolog undolevel redolevel selectbox
-    global lastX lastY sizex sizey zoom
+    global changed selectbox
+    global lastX lastY sizex sizey
     global autorearrange_enabled
     global resizemode resizeobj
+
     set redrawNeeded 0
 
     set x [$c canvasx $x]
@@ -2001,8 +2022,10 @@ proc focusAndFlash {W {count 9}} {
 #   * c -- canvas id
 #****
 proc popupConfigDialog { c } {
-    global activetool router_model link_color supp_router_models oper_mode
-    global badentry curcanvas
+    upvar 0 ::cf::[set ::curcfg]::curcanvas curcanvas
+    upvar 0 ::cf::[set ::curcfg]::oper_mode oper_mode
+    global activetool router_model link_color supp_router_models
+    global badentry
 
     set wi .popup
     catch {destroy $wi}
@@ -2607,9 +2630,10 @@ proc customConfigApply { w node addccfg } {
 #   set to 0.
 #****
 proc popupConfigApply { wi object_type target phase } {
-    global changed oper_mode router_model link_color badentry
+    upvar 0 ::cf::[set ::curcfg]::oper_mode oper_mode
+    upvar 0 ::cf::[set ::curcfg]::eid eid
+    global changed router_model link_color badentry
     global customEnabled ipsecEnabled
-    global eid
     global showIPsecConfig
        
     $wi config -cursor watch
@@ -2891,7 +2915,8 @@ proc deleteSelection {} {
 
 
 proc align2grid {} {
-    global sizex sizey grid zoom changed
+    upvar 0 ::cf::[set ::curcfg]::zoom zoom
+    global sizex sizey grid changed
 
     set node_objects [.c find withtag node]
     if { [llength $node_objects] == 0 } {
@@ -2937,7 +2962,9 @@ proc align2grid {} {
 #****
 proc rearrange { mode } {
     upvar 0 ::cf::[set ::curcfg]::link_list link_list
-    global autorearrange_enabled sizex sizey curcanvas zoom
+    upvar 0 ::cf::[set ::curcfg]::curcanvas curcanvas
+    upvar 0 ::cf::[set ::curcfg]::zoom zoom
+    global autorearrange_enabled sizex sizey
 
     set autorearrange_enabled 1
     .menubar.tools entryconfigure "Auto rearrange all" -state disabled
@@ -3108,7 +3135,7 @@ proc rearrange { mode } {
 #****
 proc switchCanvas { direction } {
     upvar 0 ::cf::[set ::curcfg]::canvas_list canvas_list
-    global curcanvas
+    upvar 0 ::cf::[set ::curcfg]::curcanvas curcanvas
     global sizex sizey
 
     set i [lsearch $canvas_list $curcanvas]
@@ -3187,7 +3214,7 @@ proc switchCanvas { direction } {
 #   Tk widget for renaming the canvas. 
 #****
 proc renameCanvasPopup { x y } {
-    global curcanvas
+    upvar 0 ::cf::[set ::curcfg]::curcanvas curcanvas
 
     set w .entry1
     catch {destroy $w}
@@ -3225,7 +3252,7 @@ proc renameCanvasPopup { x y } {
 }
 
 proc resizeCanvasPopup {} {
-    global curcanvas
+    upvar 0 ::cf::[set ::curcfg]::curcanvas curcanvas
 
     set w .entry1
     catch {destroy $w}
@@ -3275,7 +3302,8 @@ proc resizeCanvasPopup {} {
 #   * w -- tk widget (rename canvas popup dilog box)
 #****
 proc renameCanvasApply { w } {
-    global curcanvas changed
+    upvar 0 ::cf::[set ::curcfg]::curcanvas curcanvas
+    global changed
 
     set newname [$w.e1 get]
     destroy $w
@@ -3288,7 +3316,8 @@ proc renameCanvasApply { w } {
 }
 
 proc resizeCanvasApply { w } {
-    global curcanvas changed
+    upvar 0 ::cf::[set ::curcfg]::curcanvas curcanvas
+    global changed
 
     set x [$w.size.x get]
     set y [$w.size.y get]
@@ -3311,7 +3340,8 @@ proc resizeCanvasApply { w } {
 #   different for edit and exec mode.
 #****
 proc animate {} {
-    global animatephase oper_mode
+    upvar 0 ::cf::[set ::curcfg]::oper_mode oper_mode
+    global animatephase
 
     .c itemconfigure "selectmark || selectbox" -dashoffset $animatephase
     incr animatephase 2
@@ -3328,7 +3358,7 @@ proc animate {} {
 
 
 proc zoom { dir } {
-    global zoom
+    upvar 0 ::cf::[set ::curcfg]::zoom zoom
 
     set stops ".25 .5 .75 1.0 1.5 2.0 4.0"
     # set i [lsearch $stops $zoom]
@@ -3411,8 +3441,8 @@ proc double1onGrid { c x y } {
 }
 
 proc setZoom { x y } {
-    global curcanvas
-    global zoom
+    upvar 0 ::cf::[set ::curcfg]::curcanvas curcanvas
+    upvar 0 ::cf::[set ::curcfg]::zoom zoom
 
     set w .entry1
     catch {destroy $w}
@@ -3450,7 +3480,7 @@ proc setZoom { x y } {
 }
 
 proc setZoomApply { w } {
-    global zoom changed
+    upvar 0 ::cf::[set ::curcfg]::zoom zoom
 
     set newzoom [expr [$w.e1 get] / 100.0]
     if { $newzoom != $zoom } {
@@ -3461,8 +3491,8 @@ proc setZoomApply { w } {
 }
 
 proc selectZoom { x y } {
-    global curcanvas
-    global zoom
+    upvar 0 ::cf::[set ::curcfg]::curcanvas curcanvas
+    upvar 0 ::cf::[set ::curcfg]::zoom zoom
 
     set stops ".25 .5 .75 1.0 1.5 2.0 4.0"
 
index ad863fc8ff64962b9e14c32ecbe9cde97d124f1a..0c014aeb005a64f47462f52df8202bc43e9c9247 100755 (executable)
--- a/exec.tcl
+++ b/exec.tcl
@@ -26,7 +26,7 @@
 # and Technology through the research contract #IP-2003-143.
 #
 
-# $Id: exec.tcl,v 1.68 2008/01/02 12:08:46 marko Exp $
+# $Id: exec.tcl,v 1.69 2008/01/05 18:06:25 marko Exp $
 
 
 #****f* exec.tcl/nexec
@@ -92,9 +92,12 @@ proc nexec { args } {
 #****
 proc setOperMode { mode } {
     upvar 0 ::cf::[set ::curcfg]::node_list node_list
-    global oper_mode eid activetool
+    upvar 0 ::cf::[set ::curcfg]::undolevel undolevel
+    upvar 0 ::cf::[set ::curcfg]::redolevel redolevel
+    upvar 0 ::cf::[set ::curcfg]::oper_mode oper_mode
+    upvar 0 ::cf::[set ::curcfg]::eid eid
+    global activetool
     global editor_only remote_exec execSock
-    global undolevel redolevel
 
     if { $mode == "exec" } { ;# let's try something, sockets should be opened
        nexec id -u
@@ -245,8 +248,9 @@ proc createIfc { eid type hook } {
 #   * node -- node id
 #****
 proc l3node.instantiate { eid node } {
-    global ngnodemap
+    upvar 0 ::cf::[set ::curcfg]::ngnodemap ngnodemap
     global mac_byte4 mac_byte5
+
     set node_id "$eid\.$node"
     nexec vimage -c $node_id
     nexec vimage $node_id hostname [getNodeName $node]
@@ -497,11 +501,11 @@ proc l3node.destroy { eid node } {
 proc deployCfg {} {
     upvar 0 ::cf::[set ::curcfg]::node_list node_list
     upvar 0 ::cf::[set ::curcfg]::link_list link_list
-    global eid
+    upvar 0 ::cf::[set ::curcfg]::ngnodemap ngnodemap
+    upvar 0 ::cf::[set ::curcfg]::eid eid
     global supp_router_models
     global mac_byte4 mac_byte5
     global remote_exec
-    global ngnodemap
 
     set mac_byte4 0
     set mac_byte5 0
index c07f22cc3c08e4b113a2f80a7a422566eb86790d..e4bead6e87a58d3e74de8e1b53152801d7bdb9cf 100755 (executable)
@@ -26,7 +26,7 @@
 # and Technology through the research contract #IP-2003-143.
 #
 
-# $Id: filemgmt.tcl,v 1.15 2008/01/02 12:08:46 marko Exp $
+# $Id: filemgmt.tcl,v 1.16 2008/01/05 18:06:25 marko Exp $
 
 
 ##****h* imunes/filemgmt.tcl
@@ -91,8 +91,12 @@ set fileTypes {
 #****
 proc newFile {} {
     upvar 0 ::cf::[set ::curcfg]::canvas_list canvas_list
-    global currentFile oper_mode eid
-    global curcanvas undolevel redolevel
+    upvar 0 ::cf::[set ::curcfg]::curcanvas curcanvas
+    upvar 0 ::cf::[set ::curcfg]::undolevel undolevel
+    upvar 0 ::cf::[set ::curcfg]::redolevel redolevel
+    upvar 0 ::cf::[set ::curcfg]::oper_mode oper_mode
+    upvar 0 ::cf::[set ::curcfg]::eid eid
+    global currentFile
 
     if { $oper_mode == "exec" } {
        vimageCleanup $eid
@@ -118,9 +122,12 @@ proc newFile {} {
 #****
 proc openFile {} {
     upvar 0 ::cf::[set ::curcfg]::canvas_list canvas_list
+    upvar 0 ::cf::[set ::curcfg]::curcanvas curcanvas
+    upvar 0 ::cf::[set ::curcfg]::undolevel undolevel
+    upvar 0 ::cf::[set ::curcfg]::redolevel redolevel
+    upvar 0 ::cf::[set ::curcfg]::undolog undolog
     global currentFile 
-    global undolevel redolevel undolog activetool
-    global curcanvas
+    global activetool
     
     set fileName [file tail $currentFile]
     wm title . "IMUNES $fileName"
diff --git a/hub.tcl b/hub.tcl
index aa0f2af92fe14a035ee23090fd4ffbd1dee7b8d1..747909eb7526997e970050e8afbd338852f03c8f 100755 (executable)
--- a/hub.tcl
+++ b/hub.tcl
@@ -26,7 +26,7 @@
 # and Technology through the research contract #IP-2003-143.
 #
 
-# $Id: hub.tcl,v 1.13 2008/01/01 18:22:59 marko Exp $
+# $Id: hub.tcl,v 1.14 2008/01/05 18:06:25 marko Exp $
 
 
 #****h* imunes/hub.tcl
@@ -73,7 +73,7 @@ proc $MODULE.layer {} {
 #****
 
 proc $MODULE.instantiate { eid node } {
-    global ngnodemap
+    upvar 0 ::cf::[set ::curcfg]::ngnodemap ngnodemap
 
     catch {exec vimage $eid ngctl mkpeer hub anchor anchor | tail -1} resp
     catch {exec vimage $eid ngctl l | fgrep "  Name: " | cut -c51-58 | xargs echo } nglist
index 220d78a306396eab556c417a990d9145c643d80f..d4513086ffc234d92a3a168597dd4aeffe0692ec 100755 (executable)
@@ -26,7 +26,7 @@
 # and Technology through the research contract #IP-2003-143.
 #
 
-# $Id: imunes.tcl,v 1.33 2008/01/03 13:47:54 marko Exp $
+# $Id: imunes.tcl,v 1.34 2008/01/05 18:06:25 marko Exp $
 
 
 #****h* imunes/imunes.tcl
@@ -46,7 +46,7 @@
 #****
 
 set execMode interactive
-set eid i[format %04x [pid]]
+set eid_base i[format %04x [pid]]
 
 while { [string index [lindex $argv 0] 0] == "-" } {
     switch -exact -- [lindex $argv 0] {
@@ -57,7 +57,7 @@ while { [string index [lindex $argv 0] 0] == "-" } {
        }
        "-e" -
        "--eid" {
-           set eid [lindex $argv 1]
+           set eid_base [lindex $argv 1]
            set argv [lrange $argv 2 end]
        }
        default {
@@ -147,7 +147,9 @@ set cf::cfg0::node_list {}
 set cf::cfg0::link_list {}
 set cf::cfg0::annotation_list {}
 set cf::cfg0::canvas_list {}
+set cf::cfg0::eid $eid_base
 
+set cfg_list cfg0
 set curcfg cfg0
 
 # Clipboard
@@ -262,7 +264,7 @@ if {$execMode == "interactive"} {
        loadCfg $cfg
        deployCfg
     } else {
-       vimageCleanup $eid
+       vimageCleanup $eid_base
     }
 }
 
index 003de40f1704d008cbec3c62555a3468fb19bcd8..1ade3af2a0456c85329b38e6e020291f23260b80 100755 (executable)
@@ -26,7 +26,7 @@
 # and Technology through the research contract #IP-2003-143.
 #
 
-# $Id: initgui.tcl,v 1.43 2008/01/03 13:47:54 marko Exp $
+# $Id: initgui.tcl,v 1.44 2008/01/05 18:06:25 marko Exp $
 
 
 #****h* imunes/initgui.tcl
@@ -97,19 +97,20 @@ set selectbox ""
 set selected ""
 newCanvas ""
 
+set ::cf::cfg0::undolevel 0
+set ::cf::cfg0::redolevel 0
+set ::cf::cfg0::undolog(0) ""
+set ::cf::cfg0::curcanvas [lindex [set ::cf::cfg0::canvas_list] 0]
+set ::cf::cfg0::zoom 1.0
+set ::cf::cfg0::oper_mode edit
+
 set animatephase 0
-set undolevel 0
-set redolevel 0
-set undolog(0) ""
 set changed 0
 set badentry 0
 set cursorState 0
 set clock_seconds 0
-set oper_mode edit
 set grid 24
 set showGrid 1
-set zoom 1.0
-set curcanvas [lindex [set ::cf::[set ::curcfg]::canvas_list] 0]
 set autorearrange_enabled 0
 
 # resize Oval/Rectangle, "false" or direction: north/west/east/...
index 7c4472b4298ea0f03ce12b2e7eabf53a640ef7dd..426430415f92707989d451fbb477ef35eb0d9ce5 100755 (executable)
@@ -26,7 +26,7 @@
 # and Technology through the research contract #IP-2003-143.
 #
 
-# $Id: lanswitch.tcl,v 1.13 2008/01/01 18:22:59 marko Exp $
+# $Id: lanswitch.tcl,v 1.14 2008/01/05 18:06:25 marko Exp $
 
 
 #****h* imunes/lanswitch.tcl
@@ -73,7 +73,7 @@ proc $MODULE.layer {} {
 #****
 
 proc $MODULE.instantiate { eid node } {
-    global ngnodemap
+    upvar 0 ::cf::[set ::curcfg]::ngnodemap ngnodemap
 
     catch {exec vimage $eid ngctl mkpeer bridge anchor anchor | tail -1} resp
     catch {exec vimage $eid ngctl l | fgrep "  Name: " | cut -c51-58 | xargs echo } nglist
index 0846aa5b1f42d20ec229c32de0c617016f80ec1d..82ecc57d209061cd6b5adeb11c83b4ad13bad370 100755 (executable)
@@ -26,7 +26,7 @@
 # and Technology through the research contract #IP-2003-143.
 #
 
-# $Id: linkcfg.tcl,v 1.20 2008/01/02 12:08:46 marko Exp $
+# $Id: linkcfg.tcl,v 1.21 2008/01/05 18:06:25 marko Exp $
 
 
 #****h* imunes/linkcfg.tcl
@@ -651,9 +651,9 @@ proc newLink { lnode1 lnode2 } {
     upvar 0 ::cf::[set ::curcfg]::link_list link_list
     upvar 0 ::cf::[set ::curcfg]::$lnode1 $lnode1
     upvar 0 ::cf::[set ::curcfg]::$lnode2 $lnode2
+    upvar 0 ::cf::[set ::curcfg]::curcanvas curcanvas
     global defEthBandwidth defSerBandwidth defSerDelay
     global defLinkColor defLinkWidth
-    global curcanvas
 
     if { [nodeType $lnode1] == "frswitch" && \
        [nodeType $lnode2] != "router" && \
index 2f3512c02da4fdcd778b4b2281b6415a2fd31432..195615f835bd197cd8eb1925e1a20e9c1d94504f 100755 (executable)
@@ -23,7 +23,7 @@
 # SUCH DAMAGE.
 #
 
-# $Id: ns2imunes.tcl,v 1.5 2008/01/02 12:08:46 marko Exp $
+# $Id: ns2imunes.tcl,v 1.6 2008/01/05 18:06:25 marko Exp $
 
 
 #****h* imunes/ns2imunes.tcl
@@ -52,8 +52,9 @@ proc ns2im { srcfile } {
     upvar 0 ::cf::[set ::curcfg]::node_list node_list
     upvar 0 ::cf::[set ::curcfg]::link_list link_list
     upvar 0 ::cf::[set ::curcfg]::canvas_list canvas_list
-    global curcanvas
+    upvar 0 ::cf::[set ::curcfg]::curcanvas curcanvas
     global cfg
+
     set cfg {}
     set node_list {}
     set link_list {}
index b0e87ab4e15e53c4bce5c84809fcfa9134cfe026..684b65c2e5d2ebfe369d870aade79405f610329b 100755 (executable)
--- a/rj45.tcl
+++ b/rj45.tcl
@@ -26,7 +26,7 @@
 # and Technology through the research contract #IP-2003-143.
 #
 
-# $Id: rj45.tcl,v 1.11 2008/01/01 18:22:59 marko Exp $
+# $Id: rj45.tcl,v 1.12 2008/01/05 18:06:25 marko Exp $
 
 
 #****h* imunes/rj45.tcl
@@ -72,7 +72,7 @@ proc $MODULE.layer {} {
 #****
 
 proc $MODULE.instantiate { eid node } {
-    global ngnodemap
+    upvar 0 ::cf::[set ::curcfg]::ngnodemap ngnodemap
 
     set ifname [getNodeName $node]
     set ngnodemap($ifname) $ifname
index d9a3d40bb8d82f34b561a261412c59e4516e62c4..4a0dba0d7658a31ea31d45dac230ca5ed1b20dd5 100755 (executable)
@@ -23,7 +23,7 @@
 # SUCH DAMAGE.
 #
 
-# $Id: topogen.tcl,v 1.5 2008/01/01 18:22:59 marko Exp $
+# $Id: topogen.tcl,v 1.6 2008/01/05 18:06:25 marko Exp $
 
 
 menu .menubar.t_g -tearoff 0
@@ -103,7 +103,8 @@ for { set i 3 } { $i <= 24 } { incr i } {
 }
 
 proc newNodes { n } {
-    global curcanvas grid sizex sizey activetool
+    upvar 0 ::cf::[set ::curcfg]::curcanvas curcanvas
+    global grid sizex sizey activetool
 
     set v {}
     set r [expr {($n - 1) * (1 + 4 / $n) * $grid / 2}]