[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Redisplaying/redrawing after modifications




I've written a function that renames all metavariables in the root
tree of a ctedit (in order to avoid having two different metavariables
with the same name). This is done by changing destructiveley the
metavariable's substructure:

	(rplaca (car ({tree}:sons <meta>)) <new-name>)

--------------------------- *centaur* ---------------------------
? meta
= #<Glider metavariable TYPE_EXPR>

? ;;;Button execution:
#<Glider metavariable TYPE_EXPR> is a #:tree:Glider:meta
  name: fragment-Glider-meta
  operator: #<operator meta>
  sons: ((TYPE_EXPR . 0) sublist)
  father: #<Glider domain>

? (:rename-meta-variable meta)
= #<Glider metavariable TYPE_EXPR1>

? meta
= #<Glider metavariable TYPE_EXPR1>

? ;;;Button execution:
#<Glider metavariable TYPE_EXPR1> is a #:tree:Glider:meta
  name: fragment-Glider-meta
  operator: #<operator meta>
  sons: ((TYPE_EXPR1 . 0) sublist)
  father: #<Glider domain>
= ()
--------------------------- *centaur* ---------------------------

Is there a "cleaner" way to achieve the same effect is it ok so?

Now I want to redisplay the tree, but neither {ctedit}:redisplay nor
{ctedit}:incremental-redisplay seem to work. I guess I have to tell
explicitely that there has been some updating, but I couldn't
figure out how.

	Guido