Andre Poenitz wrote: > But that does not solve my current problem of having to call a base class' > handlers manually in a derived class as far as I can see. Or does it?
I don't understand your problems, but maybe they are local to mathed and it's therefore I don't understand them. Normal insets just do this (included matheds base inset!): Excute all functions you really think doesn't interest the insets (we still don't do that!) LyXFunc calls theLockingInset->localDispatch() theLockingInset() has another locking inset so it would have to call its_locking_inset->localDispatch(), but before doing this it has to handle all lfuns it really want's to dispatch itself (have a look at the localDispatch function of InsetTabular) [iterate until you have locking inset iside] The most internal inset now decides if it likes the lfun or not if yes it just executes it and returns a "done" (it is called different but we all know that) or it isn't intererested in it and it returns "I have no interest in this lfun", now the chain goes down again. The lfun wasn't handled by the inset inside and so I have a look if I really want to handle doing the same as above. [iteraterate until I return to lyxfunc] We returned to the mainswitch and know if we handled the event or not. If yes we can just return happily if not we look if we want to handle the event anyway. Done! Now I have to implement the lfuns inside the Insets which are of interest to the inset and I just don't have to do anything if I'm not interested in it. I really don't see a problem here that some "event" is not passed down the chain. Would you care to explain inside which step you have a problem? Jug -- -._-._-._-._-._-._-._-._-._-._-._-._-._-._-._-._-._-._-._-._-._-._-._ Dr. Jürgen Vigna E-Mail: [EMAIL PROTECTED] Mitterstrich 151/A Tel/Fax: +39-0471-450260 / +39-0471-450253 I-39050 Steinegg Web: http://www.lyx.org/~jug -._-._-._-._-._-._-._-._-._-._-._-._-._-._-._-._-._-._-._-._-._-._-._