Update of /cvsroot/pure-data/pd/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4509
Modified Files: Tag: devel_0_39 objective.tcl desire.tk Log Message: fixed bugs in client-side observer and manager and such
Index: desire.tk =================================================================== RCS file: /cvsroot/pure-data/pd/src/Attic/desire.tk,v retrieving revision 1.1.2.88 retrieving revision 1.1.2.89 diff -C2 -d -r1.1.2.88 -r1.1.2.89 *** desire.tk 31 Oct 2005 11:13:58 -0000 1.1.2.88 --- desire.tk 31 Oct 2005 12:47:12 -0000 1.1.2.89 *************** *** 51,60 **** def* observable subscribe {observer} { set i [lsearch $@subscribers $observer] ! if {!$i} {lappend @subscribers $observer} }
def* observable unsubscribe {observer} { set i [lsearch $@subscribers $observer] ! if {$i} {set @subscribers [lreplace $@subscribers $i $i]} }
--- 51,60 ---- def* observable subscribe {observer} { set i [lsearch $@subscribers $observer] ! if {$i<0} {lappend @subscribers $observer} }
def* observable unsubscribe {observer} { set i [lsearch $@subscribers $observer] ! if {$i>=0} {set @subscribers [lreplace $@subscribers $i $i]} }
*************** *** 73,77 **** class_new manager {thing}
! def manager init {} { set @q [list] $self call --- 73,78 ---- class_new manager {thing}
! def* manager init {} { ! post %s "MANAGER INIT!!! self=$self" set @q [list] $self call *************** *** 90,94 **** }
! def manager notice {origin args} { global poolset if {[info exists poolset($origin)]} { --- 91,95 ---- }
! def* manager notice {origin args} { global poolset if {[info exists poolset($origin)]} { *************** *** 683,692 **** #-----------------------------------------------------------------------------------#
- proc* pdtk_canvas_new {name width height geometry editable} { - global _ - set self [c2self $name] - canvas_new_as $self $width $height $geometry $editable - } - class_new canvas {view} def* canvas init {{width 300} {height 400} {geometry 400x300+0+0} {editable 0}} { --- 684,687 ---- *************** *** 732,735 **** --- 727,734 ---- set @children {} set @obj_in_edit {} + global manager + post %s "canvas init: subscribing to $manager" + $self subscribe $manager + $self changed }
*************** *** 1086,1094 ****
#----------------------------------------------------------------------------------- - #proc objectbox_by_ctrl {} { - # - # pd "%W obj 0 ;" - # - #}
class_new objectbox {textbox} --- 1085,1088 ---- *************** *** 1220,1227 **** # think of the children!!! set born [lwithout $children $@children]; post %s "BORN: $born" ! set dead [lwithout $@children $children]; post %s "BORN: $dead" ! foreach x $born {} ! foreach x $dead {} set @children $children }
--- 1214,1222 ---- # think of the children!!! set born [lwithout $children $@children]; post %s "BORN: $born" ! set dead [lwithout $@children $children]; post %s "DEAD: $dead" ! foreach x $born {$x subscribe $self; $x changed} ! foreach x $dead {$x unsubscribe $self} set @children $children + $self changed }
*************** *** 1684,1695 **** }
! def canvas notice {origin args} { ! global pool ! set has_window 1 ! if {$has_window} { ! set pool($origin) 1 ! } { ! eval [concat [list child_changed $origin] $args] ! } }
--- 1679,1684 ---- }
! def* canvas notice {origin args} { ! eval [concat [list child_changed $origin] $args] }
*************** *** 1875,1879 **** set fields(hdl) $fields(hradio) set fields(vdl) $fields(hradio) ! #set fields(msg)
# @class {@_class} --- 1864,1869 ---- set fields(hdl) $fields(hradio) set fields(vdl) $fields(hradio) ! set fields(canvas) {name width height geometry editable} !
# @class {@_class} *************** *** 3027,3029 **** --- 3017,3021 ----
+ post %s hello set manager [manager_new] + post %s hello
Index: objective.tcl =================================================================== RCS file: /cvsroot/pure-data/pd/src/Attic/objective.tcl,v retrieving revision 1.1.2.2 retrieving revision 1.1.2.3 diff -C2 -d -r1.1.2.2 -r1.1.2.3 *** objective.tcl 31 Oct 2005 11:13:58 -0000 1.1.2.2 --- objective.tcl 31 Oct 2005 12:47:11 -0000 1.1.2.3 *************** *** 26,29 **** --- 26,30 ---- set _($self:_class) $self eval [concat [list $self init] $args] + return $self " proc ${self}_new_as {self args} " *************** *** 31,34 **** --- 32,36 ---- set _($self:_class) $self eval [concat [list $self init] $args] + return $self " }