[PD-cvs] pd/src desire.tk, 1.1.2.512, 1.1.2.513 defaults.ddrc, 1.1.2.7, 1.1.2.8
chunlee
chunlee at users.sourceforge.net
Wed Oct 18 18:10:26 CEST 2006
Update of /cvsroot/pure-data/pd/src
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv5720
Modified Files:
Tag: devel_0_39
desire.tk defaults.ddrc
Log Message:
adding auto wire reconnection (opposite of auto object insertionX)
Index: desire.tk
===================================================================
RCS file: /cvsroot/pure-data/pd/src/Attic/desire.tk,v
retrieving revision 1.1.2.512
retrieving revision 1.1.2.513
diff -C2 -d -r1.1.2.512 -r1.1.2.513
*** desire.tk 18 Oct 2006 12:16:42 -0000 1.1.2.512
--- desire.tk 18 Oct 2006 16:10:22 -0000 1.1.2.513
***************
*** 1613,1617 ****
--- 1613,1624 ----
}
+ def Canvas insertxy {} {return [list $@insert_x $@insert_y]}
+
def Canvas insert_object {} {
+ $self do_insert_obj "none" "none"
+ }
+
+ def Canvas do_insert_obj {x y} {
+ if {$x == "none" && $y == "none"} {
if {[llength $@selection_wire] == 1} {
puts "insert object for $@selection_wire"
***************
*** 1635,1638 ****
--- 1642,1650 ----
return
}
+ } else {
+ pd .$self "obj" $x $y
+ set @action insert
+
+ }
}
***************
*** 2612,2615 ****
--- 2624,2664 ----
}
+ def Canvas clear_wires {} {
+ if {[llength $@selection] != 1} return
+ set @auto_wire_obj2 {}; set @auto_wire_obj1 {}
+ set obj $@selection
+ set nouts [$obj noutlets]; set nins [$obj ninlets]
+ foreach wire $@wires {
+ mset {obj1 port1 obj2 port2} [$wire report]
+ if {$obj1 == $obj} {
+ $self disconnect [$wire connects]
+ if {!$port1} {lappend @auto_wire_obj2 $obj2}
+ }
+ if {$obj2 == $obj} {
+ $self disconnect [$wire connects]
+ if {!$port2} {lappend @auto_wire_obj1 $obj1}
+ }
+
+ }
+ }
+
+ def Canvas auto_wire {} {
+ $self clear_wires
+ #set obj1_idx [$self children_idx $@auto_wire_obj1]
+ #set obj2_idx [$self children_idx $@auto_wire_obj2]
+ #$self connect [list $obj1_idx 0 $obj2_idx 0]
+ foreach obj1 $@auto_wire_obj1 {
+ set idx1 [$self children_idx $obj1]
+ foreach obj2 $@auto_wire_obj2 {
+ set idx2 [$self children_idx $obj2]
+ set wire [list $idx1 0 $idx2 0]
+ if {[lsearch $@wires_pair [list $idx1 0 $idx2 0]] < 0} {
+ $self connect [list $idx1 0 $idx2 0]
+ }
+ #$self connect [list $idx1 0 $idx2 0]
+ }
+ }
+ }
+
def Canvas end_action {} {
switch -- $@action {
***************
*** 2774,2782 ****
set @click_at [list $x $y]
! if {$f&8} {set c [$self widget];$self popup $id [winfo pointerx $c] [winfo pointery $c]; return}
if {!$@editmode} {
if {[llength $id]} {
! puts "target = $target :: [$id class]"
! if {[$id class] != "Canvas"} { $id click $x $y $f $target}
}
return
--- 2823,2846 ----
set @click_at [list $x $y]
! if {$f&8} {
! if {!$@editmode} {return}
! set c [$self widget]
! set @insert_x $x; set @insert_y $y
! $self popup $id [winfo pointerx $c] [winfo pointery $c]
! return
! }
if {!$@editmode} {
if {[llength $id]} {
! if {[$id class] != "Canvas"} {
! $id click $x $y $f $target
! } else {
! if {[$id subpatch]} {
! if {![$id mapped]} {
! $id popup_open
! } else {
! raise .$id
! }
! }
! }
}
return
***************
*** 3513,3517 ****
def Wire report {} {list $@obj1 $@port1 $@obj2 $@port2}
!
proc xys {x1 y1 x2 y2} {
set r {}
--- 3577,3581 ----
def Wire report {} {list $@obj1 $@port1 $@obj2 $@port2}
! def Wire connects {} {return $@connects}
proc xys {x1 y1 x2 y2} {
set r {}
***************
*** 3577,3581 ****
def Wire popup_insert {} {
! $@canvas insert_object
}
--- 3641,3647 ----
def Wire popup_insert {} {
! if {![llength [$@canvas selection_wire]]} {$@canvas selection_wire= $self}
! mset {x y} [$@canvas insertxy]
! $@canvas do_insert_obj $x $y
}
***************
*** 6323,6330 ****
key Canvas {cut copy}
key Canvas {undo redo}
! key Canvas paste
key Canvas select_all
key Canvas {reload redraw}
key Canvas editmodeswitch
subsection Client general
key Canvas Pdwindow
--- 6389,6397 ----
key Canvas {cut copy}
key Canvas {undo redo}
! key Canvas {paste duplicate}
key Canvas select_all
key Canvas {reload redraw}
key Canvas editmodeswitch
+ key Canvas {insert_object chain_object}
subsection Client general
key Canvas Pdwindow
Index: defaults.ddrc
===================================================================
RCS file: /cvsroot/pure-data/pd/src/Attic/defaults.ddrc,v
retrieving revision 1.1.2.7
retrieving revision 1.1.2.8
diff -C2 -d -r1.1.2.7 -r1.1.2.8
*** defaults.ddrc 16 Oct 2006 13:39:08 -0000 1.1.2.7
--- defaults.ddrc 18 Oct 2006 16:10:24 -0000 1.1.2.8
***************
*** 137,140 ****
--- 137,142 ----
insert_object Ctrl+i
chain_object Ctrl+6
+ clear_wires Ctrl+k
+ auto_wire Ctrl+j
}
Client {
More information about the Pd-cvs
mailing list