[lazarus] compile error on New Sources from cvs - FIXED

Mattias Gaertner nc-gaertnma at netcologne.de
Thu Nov 27 14:01:28 EST 2003


On Thu, 27 Nov 2003 19:22:37 +0100  Micha Nelissen
<M.Nelissen at student.tue.nl> wrote:

> Mattias Gaertner wrote:
> 
> > By using the the uses section in the implementation section you created
> > some circles. This is allowed, but it makes the code harder to structure
> > and less readable. They are allowed, but IMO you should try to avoid
> > them.
> 
> I find the current approach less readable: extra units (menutype in this 
> case), extra definitions (TBaseMenuItem), unnecessary casting from 
> TBaseMenuItem to TMenuItem, while we know it is a TMenuItem. 

see below


> IMHO, the 
> interface hierarchy is like this:
> 
> high - lcl (delphi compatible) interface
>       - generic platform independant interface
>       - lcl itself: controls, stdctrls, etc.
> low  - lcl type definitions

I think we are talking about the same thing. Maybe a little bit more clear:

interface
 .. uses ..
LCL
 .. uses ..
interface base
 .. uses ..
base types

IMPORTANT:
In the following context, the "LCL" is the lazarus component library. That
means the OO components and not the interface functions. 



More information about the Lazarus mailing list