[Lazarus] Fix for bug in TTabcontrol/TPageControl/TNotebook

Vincent Snijders vincent.snijders at gmail.com
Wed Nov 5 12:28:45 CET 2008


2008/11/5 Michael Van Canneyt <michael at freepascal.org>:
>
>
> On Wed, 5 Nov 2008, Vincent Snijders wrote:
>
>> 2008/11/4 Michael Van Canneyt <michael at freepascal.org>:
>> >
>> > Hi,
>> >
>> > The TNBPages(TStrings) class does not implement the GetObect and PutObject
>> > calls of TStrings correctly.
>> >
>> > That is, If I do a
>> >  MyNoteBook.Pages.AddObject('SomeString',SomeObject);
>> >
>> > the SomeObject is simply lost. (logical, PutObject is not implemented)
>> > Instead, the MyNoteBook.Pages.Objects returns a reference to the
>> > TCustomPage used by the notebook. This is of course horribly wrong :(
>> >
>> > It's easy enough to fix this by correctly implementing TNBPages.PutObject
>> > and fixing TNBPages.GetObject. I can do this, but before I do this, I would
>> > like to know if there is LCL code that relies on the fact that
>> > Pages.Objects return references to the actual TCustomPage instances ?
>>
>> I don't know. A quick scan indicates that this is not the case.
>
> So I can go ahead and fix the actual bug ?
>

Yes, and if it breaks something, we can try to fix that.

Vincent



More information about the Lazarus mailing list