[Lazarus] TTabControl reverted to it's old implementation

Mattias Gaertner nc-gaertnma at netcologne.de
Wed Jul 27 10:18:22 CEST 2011


On Wed, 27 Jul 2011 09:58:13 +0200
Graeme Geldenhuys <graemeg.lists at gmail.com> wrote:

> On 07/27/2011 09:03 AM, Felipe Monteiro de Carvalho wrote:
> > That's what I though initially, but it is wrong. In Delphi this
> > control allows other controls to be placed on it, so it effectively
> > has 1 sheet.
> 
> And I believe that to be a bug in Delphi. See attachment: tabcontrol.png
> 
> Dropping a Memo onto TTabControl is indeed possible, but look at the
> outcome! Components can be moved _over_ the tabs. Such behaviour should
> not be allowed. Yet when you set the Memo1.Align := alClient, then in
> maximizes the memo to fit underneath the tabs. This is very conflicting
> behaviour - thus the reason why I think that component is rather dodgy
> in behaviour.

This is the case for many Delphi controls. For instance TGroupBox.
This is more a design decision of the VCL. Some programmers need such a
feature, so you can not say it is a "bug" in general. But since the
beginning of the LCL it was clear that this is a winapi special and
can/will not be supported by the LCL.

The converter has some routines to automatically adjust some of
these client coordinates.

 
> Then again I have no idea where you guys draw the line on
> Delphi-compatibility. Do you implement Delphi bugs in LCL too?

It depends on the case.
Some semi good features are implemented.
For example the LCL TPanel allows to move child controls over its frame.

> [...]


Mattias




More information about the Lazarus mailing list