]> git.entuzijast.net Git - imunes.git/commitdiff
When configuring cross-canvas link update both visible and invisible
authormarko <marko>
Mon, 31 Oct 2005 23:17:56 +0000 (23:17 +0000)
committermarko <marko>
Mon, 31 Oct 2005 23:17:56 +0000 (23:17 +0000)
part.

Animate selection markers.

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

editor.tcl
initgui.tcl

index dfb1ec488ccdde1d47d27433a2e9fb8de86e6266..b3644e00b69b5d05ae8e3464e6df50f7824629f3 100755 (executable)
@@ -453,8 +453,8 @@ proc selectNode { c obj } {
     }
     set bx1 [expr [lindex $bbox 0] - 2]
     set by1 [expr [lindex $bbox 1] - 2]
-    set bx2 [expr [lindex $bbox 2] + 2]
-    set by2 [expr [lindex $bbox 3] + 2]
+    set bx2 [expr [lindex $bbox 2] + 1]
+    set by2 [expr [lindex $bbox 3] + 1]
     $c delete -withtags "selectmark && $node"
     $c create line $bx1 $by1 $bx2 $by1 $bx2 $by2 $bx1 $by2 $bx1 $by1 \
        -dash {6 4} -fill black -width 1 -tags "selectmark $node"
@@ -545,12 +545,17 @@ proc button3node { c x y } {
            -menu .button3menu.connect.$canvas
     }
     foreach peer_node $node_list {
+       set canvas [getNodeCanvas $peer_node]
        if { $node != $peer_node &&
-           [lsearch {pseudo rj45} [nodeType $peer_node]] < 0 } {
-           set canvas [getNodeCanvas $peer_node]
+           [lsearch {pseudo rj45} [nodeType $peer_node]] < 0 &&
+           [ifcByLogicalPeer $node $peer_node] == "" } {
            .button3menu.connect.$canvas add command \
                -label [getNodeName $peer_node] \
                -command "newLink $c $node $peer_node"
+       } elseif { [nodeType $peer_node] != "pseudo" } {
+           .button3menu.connect.$canvas add command \
+               -label [getNodeName $peer_node] \
+               -state disabled
        }
     }
 
@@ -1718,24 +1723,37 @@ proc popupConfigApply { wi object_type target close phase } {
        # Link
        #
        link {
+           set mirror [getLinkMirror $target]
            set bw [$wi.bandwidth.value get]
            if { $bw != [getLinkBandwidth $target] } {
                setLinkBandwidth $target [$wi.bandwidth.value get]
+               if { $mirror != "" } {
+                   setLinkBandwidth $mirror [$wi.bandwidth.value get]
+               }
                set changed 1
            }
            set dly [$wi.delay.value get]
            if { $dly != [getLinkDelay $target] } {
                setLinkDelay $target [$wi.delay.value get]
+               if { $mirror != "" } {
+                   setLinkDelay $mirror [$wi.delay.value get]
+               }
                set changed 1
            }
            set ber [$wi.ber.value get]
            if { $ber != [getLinkBER $target] } {
                setLinkBER $target [$wi.ber.value get]
+               if { $mirror != "" } {
+                   setLinkBER $mirror [$wi.ber.value get]
+               }
                set changed 1
            }
            set dup [$wi.dup.value get]
            if { $dup != [getLinkDup $target] } {
                setLinkDup $target [$wi.dup.value get]
+               if { $mirror != "" } {
+                   setLinkDup $mirror [$wi.dup.value get]
+               }
                set changed 1
            }
            updateLinkLabel $target
@@ -1954,3 +1972,19 @@ proc refreshCanvasMenu {} {
     }
 }
 
+
+proc animate {} {
+    global animatephase oper_mode
+
+    .c itemconfigure "selectmark || selectbox" -dashoffset $animatephase
+    incr animatephase 2
+    if { $animatephase == 100 } {
+       set animatephase 0
+    }
+
+    if { $oper_mode == "edit" } {
+       after 250 animate
+    } else {
+       after 1500 animate
+    }
+}
index 9ae02db4a941b84b314c88e9140523aed5040f45..a0fd16a59a6b8a7c1a2153a895875fa27123501e 100755 (executable)
@@ -43,6 +43,7 @@ set selectbox ""
 set selected ""
 newCanvas default
 
+set animatephase 0
 set undolevel 0
 set redolevel 0
 set undolog(0) ""
@@ -342,3 +343,8 @@ menu .button3menu.ethereal -tearoff 0
 #
 refreshCanvasMenu
 redrawAll
+
+#
+# Fire up the animation loop - used basically for selectbox
+#
+animate