On Sun, 23 Feb 2003, Angus Leeming wrote:

> Christian Ridderström wrote:
> 
> But in brief:
> 
> We have tried to implement what is known as a Model-Controller-View split of 
> the code in LyX. The LyX core is the Model. It defines everything needed to 
> manipulate your document (what LyX calls a 'buffer'). The GUI-independence 
> project started life as a desire to move GUI code out of the LyX core. This 
> core would issue a series of commands to a 'black box' saying 'Open a 
> dialog' or 'draw this Pixmap'. The core itself would have no idea what was 
> actually doing the drawing, (or indeed if this drawing took place at all.) 
> In turn, the 'black box' would request information from the LyX core to 
> complete the task it was expected to perform.

Thanks for the explanation. I did a search for "Model-Controller-View"... 
would you say this:
        http://cpptips.hyperformix.com/cpptips/mvc
 is an accurate description of what you mean? Or perhaps you have another 
 URI for MVC... sorry MCV  (MVC is multi-variable control...)

> The downside has been that it often feels that, till now, only I have 
> understood the controller code ;-)

I know what you mean, no excuses necessary...  (save them for your own 
code that you understand any more :-)

> Personally, I would say that 1550 files and quarter of a million lines of 
> source code was too much...

Yikes... that's ridiculous? Anyway, I guess it explains why it takes 
so long to compile...

> 'Controller' and a 'View' for each of the different dialogs, for the 
> Menubars, for the Toolbars and for the main LyX screen itself. How could a 
> job we have made of this separation is a matter for debate and is an 
> on-going process.

I suspect a typo in the last sentence, since it doesn't make sense to 
me... Did you mean "How good a job we..."?

/Christian


-- 
Christian Ridderström                           http://www.md.kth.se/~chr


Reply via email to