Jean-Marc Lasgouttes wrote:

> Could you tell us a little bit about ArgumentProxy and what is is good
> for?

It is used for macros with arguments. Each argument of a math macro is one 
cell of the macro. An ArgumentProxy is the expanded representation of such a 
cell. It has basically no own data (except for a possible default argument), 
but forwards everything interesting to the macro itself. The only reason why 
it is needed is reusage of some MathData member functions: draw(), metrics, 
dimension() etc.

> BTW updateMacros is quite heavy on big documents (#5973) and I have
> medium-term plans for making the update lazy. This may become
> unnecessary if you can do another kind of miracle. My plan is to use
> recordUndo to increment a version_id for the buffer. Therefore we can
> know when macros really need to be updated.

I know that this needs work, but I don't see an obvious miracle:-( Currently 
we also have the strange mixture of lazy and non-lazy macros.


Georg

Reply via email to