Index: library/lib/test.tcl =================================================================== diff -u -rc4ce5d5802925fc9a4c4cb8c80fc183e85ecc289 -r1da9ce4144ca62bd435da5c165fc40983611ecc4 --- library/lib/test.tcl (.../test.tcl) (revision c4ce5d5802925fc9a4c4cb8c80fc183e85ecc289) +++ library/lib/test.tcl (.../test.tcl) (revision 1da9ce4144ca62bd435da5c165fc40983611ecc4) @@ -63,7 +63,7 @@ #[[current] slot $name] default $value #:slot $name default $value [self]::slot::$name default $value - ::nsf::invalidateobjectparameter [self] + [self]::slot::$name reconfigure } else { return [[self]::slot::$name $name default] } Index: library/nx/nx.tcl =================================================================== diff -u -rfc36bf33edd6f5b3f273cb2abdcb30f2ececdff4 -r1da9ce4144ca62bd435da5c165fc40983611ecc4 --- library/nx/nx.tcl (.../nx.tcl) (revision fc36bf33edd6f5b3f273cb2abdcb30f2ececdff4) +++ library/nx/nx.tcl (.../nx.tcl) (revision 1da9ce4144ca62bd435da5c165fc40983611ecc4) @@ -895,20 +895,23 @@ # # Get a full object parmeter specification from slot object # - set options [:getParameterOptions -withMultiplicity true -withSubstdefault true] - if {[info exists :initcmd]} { - lappend options initcmd - return [list [:namedParameterSpec ${:name} $options] ${:initcmd}] - - } elseif {[info exists :default]} { - # deactivated for now: || [string first {$} ${:default}] > -1 - if {[string match {*\[*\]*} ${:default}]} { - lappend options substdefault + if {![info exists :parameterSpec]} { + set options [:getParameterOptions -withMultiplicity true -withSubstdefault true] + if {[info exists :initcmd]} { + lappend options initcmd + set :parameterSpec [list [:namedParameterSpec ${:name} $options] ${:initcmd}] + + } elseif {[info exists :default]} { + # deactivated for now: || [string first {$} ${:default}] > -1 + if {[string match {*\[*\]*} ${:default}]} { + lappend options substdefault + } + set :parameterSpec [list [:namedParameterSpec ${:name} $options] ${:default}] + } else { + set :parameterSpec [list [:namedParameterSpec ${:name} $options]] } - return [list [:namedParameterSpec ${:name} $options] ${:default}] - } else { - return [list [:namedParameterSpec ${:name} $options]] } + return ${:parameterSpec} } ################################################################# @@ -1181,8 +1184,10 @@ } ::nx::Attribute public method reconfigure {} { - puts stderr "*** Should we reconfigure [self]???" + #puts stderr "*** Should we reconfigure [self]???" + unset -nocomplain :parameterSpec :makeAccessor + ::nsf::invalidateobjectparameter ${:domain} } ::nx::Attribute protected method init {} {