Update of /cvsroot/pure-data/pd/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16223
Modified Files: Tag: devel_0_39 desire.tk Log Message: crosshair trouble..
Index: desire.tk =================================================================== RCS file: /cvsroot/pure-data/pd/src/Attic/desire.tk,v retrieving revision 1.1.2.387 retrieving revision 1.1.2.388 diff -C2 -d -r1.1.2.387 -r1.1.2.388 *** desire.tk 20 Aug 2006 22:38:55 -0000 1.1.2.387 --- desire.tk 20 Aug 2006 22:50:52 -0000 1.1.2.388 *************** *** 4367,4370 **** --- 4367,4408 ---- mset {vx1 vx2} [$c xview] mset {vy1 vy2} [$c yview] + set xoff [expr ([winfo width $c] * $vx1)/$@scale] + set yoff [expr ([winfo height $c] * $vy1)/$@scale] + set vx1 [expr ($x1+($x2-$x1)*$vx1)/$@scale] + set vy1 [expr ($y1+($y2-$y1)*$vy1)/$@scale] + set vx2 [expr ($x1+($x2-$x1)*$vx2)/$@scale] + set vy2 [expr ($y1+($y2-$y1)*$vy2)/$@scale] + mset {type id detail} $target + if {$crosshair(hairsnap)} { + switch -regexp -- $type { + ^object|outlet|inlet$ { + if {$id != $self} { + mset {x y x3 y3} [$id bbox] + set crosshair(follow) $id + } + } + ^move|edit$ {mset {x y x3 y3} [$crosshair(follow) bbox]} + } + } + #set v1 [list $x $vy1 $x $vy2] + #set h1 [list $vx1 $y $vx2 $y] + set v1 [list $x [expr $y - $y + $yoff] $x [expr $y + ($height +$yoff)]] + set h1 [list [expr $x - $x + $xoff] $y [expr $x + ($width +$xoff)] $y] + #$self item BORDER rect [list $vx1 $vy1 $vx2 $vy2] -width 10 + $self item VHAIR1 line $v1 -fill [look selectframe] -width 0.5 -dash {4 4 4 4} + $self item HHAIR1 line $h1 -fill [look selectframe] -width 0.5 -dash {4 4 4 4} + } + + + def Canvas show_crosshair2 {x y target} { + global crosshair + set c .$self.c + set width [expr [winfo width $c]/$@scale] + set height [expr [winfo height $c]/$@scale] + mset {x1 y1 x2 y2} [$c cget -scrollregion] + mset {vx1 vx2} [$c xview] + mset {vy1 vy2} [$c yview] + #set xoff [expr ([winfo width $c] * $vx1)/$@scale] + #set yoff [expr ([winfo height $c] * $vy1)/$@scale] set vx1 [expr ($x1+($x2-$x1)*$vx1)/$@scale] set vy1 [expr ($y1+($y2-$y1)*$vy1)/$@scale] *************** *** 4385,4388 **** --- 4423,4428 ---- set v1 [list $x $vy1 $x $vy2] set h1 [list $vx1 $y $vx2 $y] + #set v1 [list $x [expr $y - $y + $yoff] $x [expr $y + ($height +$yoff)]] + #set h1 [list [expr $x - $x + $xoff] $y [expr $x + ($width +$xoff)] $y] #$self item BORDER rect [list $vx1 $vy1 $vx2 $vy2] -width 10 $self item VHAIR1 line $v1 -fill [look selectframe] -width 0.5 -dash {4 4 4 4} *************** *** 4390,4393 **** --- 4430,4434 ---- }
+ def Canvas hide_crosshair {} {$self item_delete VHAIR1; $self item_delete HHAIR1}