Abdelrazak Younes wrote:
Stefan,
The way we do the macro tables update is not optimal and I think time
consuming. I've cleaned up child document handling now except for
everything macro related. I believe you can do all this stuff in
updateLabels(), please have a look.
I had a closer look at the macro stuff. This is really complicated
Stefan. WRT child/parent handling, I think you should take the same
solution as for the labels and the toc backend, namely that only the
_master_ macro table is updated and maintained. IOW, this means that the
macro registering presently done in Buffer::updateEnvironmentMacros():
// register macro
d->macros[macroTemplate.name()][it]
= Impl::ScopeMacro(scope, MacroData(*this, it));
should be done in MathMacroTemplate::updateLabels() this way:
// register macro
buffer().masterBuffer()->registerMacro(...);
I am sorry to say this only now but I am worried about future
maintenance of the code. So, if you agree with me and you have the time,
please try to do those change before 1.6.0.
Abdel.