Hans-Peter Diettrich wrote: > Mattias Gärtner schrieb: > > >> The IDE is structured in a hierarchy. >> >> mainide: the top level of the IDE and the central nerve system. Because of >> its >> size it's splitted into several units. This is the 'integrated' in IDE. It >> connects the various modules like debugger, package system, codetools, >> designer, etc. >> source notebook: the whole source editor >> source editor: one single editor (at the moment in the same unit with source >> notebook, but should eventually split up) >> synedit: visual control >> > > Interesting information. Where would I have to start implementing > multiple source editors (notebooks)? > > DoDi >
IMHO the first consideration would be that if you have multiply windows, or split windows allowing more than one source viewed; you must also take care what happens if 2 views, display the same source. Of course restrictions could be put in place to prevent this, but in the end, I guess it wil be wanted, and will have to be done. therefore: 1) Allow 2 SynEdits to be able to share a textbuffer. Then depends, if you display them in one window, or multiply windows. (in the later you need to add managment for the extra windows) 2) you have to find where the actual visual TNoteBook component (with the tabs) is created (either main-ide or SourceNotebook). To clarify SourceNotebook is not a visible component.It is a class that controls the (visible) TNoteBook 3) Make SourceNotebook able to have more than one TNotebook in it's control. 4) Fix all the code using this (things like find active editor, find active notebook-page.... This is only a brief overview, I havent looked through all requirement yet. Best Regards Martin _______________________________________________ Lazarus mailing list [email protected] http://www.lazarus.freepascal.org/mailman/listinfo/lazarus
