[PD-cvs] pd/src desire.tk,1.1.2.559,1.1.2.560
chunlee
chunlee at users.sourceforge.net
Sat Nov 18 17:09:37 CET 2006
Update of /cvsroot/pure-data/pd/src
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30275
Modified Files:
Tag: devel_0_39
desire.tk
Log Message:
first commit to fix the ; and $ bugs in messagebox
Index: desire.tk
===================================================================
RCS file: /cvsroot/pure-data/pd/src/Attic/desire.tk,v
retrieving revision 1.1.2.559
retrieving revision 1.1.2.560
diff -C2 -d -r1.1.2.559 -r1.1.2.560
*** desire.tk 17 Nov 2006 18:26:21 -0000 1.1.2.559
--- desire.tk 18 Nov 2006 16:09:33 -0000 1.1.2.560
***************
*** 1909,1912 ****
--- 1909,1917 ----
set @y1 [lindex $mess 3]
set @text [lrange $mess 4 end]
+ set c [lindex $mess 4]
+ set c_pos [string first $c $mess 0]
+ set s [string range $mess $c_pos end]
+ regsub -all {\\} $s "" text
+ set @text $text
set @longline 0
}
***************
*** 1922,1926 ****
if {$@edit} {
set t [$@canvas widget].${self}text
- puts " t::: $t"
$self item text window [list [expr $x1+2] [expr $y1+2]] \
-window $t -anchor nw -tags "${self}text $self text"
--- 1927,1930 ----
***************
*** 4261,4271 ****
#A 0 0;
proc update_object {self e ninlets noutlets} {
! foreach mess [split $e ";"] {update_object_2 $self $mess}
if {[lindex $e 1] == "array"} {
! $self ninlets= 0
! $self noutlets= 0
} else {
! $self ninlets= $ninlets ;# bogus in case of array
! $self noutlets= $noutlets
}
$self changed
--- 4265,4276 ----
#A 0 0;
proc update_object {self e ninlets noutlets} {
! parse_line $self $e
! #foreach mess [split $e ";"] {update_object_2 $self $mess}
if {[lindex $e 1] == "array"} {
! $self ninlets= 0
! $self noutlets= 0
} else {
! $self ninlets= $ninlets ;# bogus in case of array
! $self noutlets= $noutlets
}
$self changed
***************
*** 4318,4321 ****
--- 4323,4342 ----
}
+ proc parse_line {self e} {
+ #first replace every "\n" by a " ", then replace every "\\;" by a "\n", then
+ #split on ";", then replace every "\n" by a "\\;"
+
+ regsub -all "\n" $e " " y
+ regsub -all {\\;} $y "\n" z
+ foreach mess [split $z ";"] {
+ if {$mess != ""} {
+ regsub -all "\n" $mess "\\;" x
+ update_object_2 $self [string trimleft $x]
+ }
+
+ }
+ }
+
+
############ rendering
More information about the Pd-cvs
mailing list