I think I know now more or less how the LyX GUI works.

However, I still completely fail to see why it needs to be so complicated.

Simple example: The 'About' dialog. We have:
 - information somewhere in the kernel (lyx_version etc.)
 - a pair of files in frontend/controllers wrapping this
   information in a nice string or writing it to a stream
 - a class QAbout pushing this information into ...
 - ... a class QAboutDialog 

All in all roughly 400 LOC for something that could be done in less
than 100.

What's exactly wrong with having kernel functions

  void getCredits(std::ostream &) const;
  std::string const getCopyright() const;
  std::string const getLicense() const;
  std::string const getDisclaimer() const;
  std::string const getVersion() const;

and a single GUI class QAboutDialog calling the kernel functions
on creation? 

Isn't this M-V-C thingy about making maintanance easier? If so, how come
that a simple dialog needs 3(!) extra classes (spilled on 6 files in 2
directories, no less...)?

Something went awfully wrong here as far as I can tell...

Andre'

Reply via email to