Basically I want to understand how the diagram of http://wiki.lyx.org/Devel/Diagrams corresponds to the implementation. I have figured out that each CursorSlice relates to one node in the stack of parents upto the root InsetText but can't understand the role of inset_ in DocIterator.
On Sun, Jun 13, 2010 at 8:43 PM, Sidharth Kshatriya <sid.kshatr...@gmail.com > wrote: > Dear All, > > I'm a newbie to LyX and I'm currently trying to understand the source code. > I'm very impressed by the WYSIWYM concept and I would like to be able to > contribute to LyX one day. > > I find the source code very lightly commented unfortunately. Even if every > class had a 3-4 lines describing what it did, it would have been great. It > would be wonderful if some more human commenting of each class were part of > the goals of the 2.0 version. Even a line or two compulsorily about each > member of a class would have been very useful. > > There is a lot of stuff on the Devel wiki but no document that kind of > discusses the basic internal structure and workings of LyX. The most useful > page that explained the internals of LyX was > http://wiki.lyx.org/Devel/Diagrams Are there any more such pages like this > out there? This one page has helped me so much! However I have a few > questions please > > I want to understand > * What is the use of the inset_ member in the DocIterator class? Each > CursorSlice has a link to its corresponding inset so what is the use of > inset_ in the DocIterator class? > * What happens if there are multiple cells? > * In the example described in the diagram in the link above there is an > Inset for each letter. What happens if there are sentences... does the whole > sentence appear in an InsetText? > * When is a DocIterator used? When is a CursorIterator used? > > Is there a way I can rapidly learn LyX source code somehow? Are there > simple test cases perhaps? Doxygen documentation is very useful of course > but nothing like a short writeup what explains the internal workings. > > I am willing to work with anybody that has the time, maybe on skype (I can > take some basic notes while they speak) and come out with a document > explaining the fundamentals of LyX internals. **I'm willing to spend some > serious time on this**. Subsequently I'm willing to also start commenting > the code. > > Thanks, > > Sidharth > -- Sidharth Kshatriya www.sidk.info