Thanks for you answer.

I am converting one project from Delphi/Kylix to Lazarus and using SVN
versions of Lazarus with FPC 2.2.0.

This behavior is currently related to i386-linux-gtk. But I am going
to port it under MacOS too (Carbon).

MG> Some widgetsets use a mixture. That means it depends on the type of widget, 
what
MG> technique is used.

Where I can find information of differences among widgets?

TRoland;

<<< 30.6.2008 12:57 - Mattias Gärtner "[EMAIL PROTECTED]" >>>
MG> Zitat von Roland Turcan <[EMAIL PROTECTED]>:

>> Hello lazarus project!
>>
>> How to assure, that all nested components will be repainted after
>> calling MyPanel.Paint, because actually all components are behind new
>> rectangle.

MG> I'm not sure, if you found a bug or if you misunderstood the concept of 
event
MG> based painting and/or clipping.

MG> In general:
MG> TPanel and TRadioButton are TWinControls and have their own handle. So it 
is up
MG> to the widgetset (windows, gtk, carbon, qt, fpgui ...) to control the order 
and
MG> how (double buffered, default background, clipping, overlapping) these 
widgets
MG> are painted. If they use clipping, then they can paint in any order. They 
can
MG> even paint only one of them. If they don't use clipping, then they will 
first
MG> paint TPanel and then TRadioButton.
MG> Some widgetsets use a mixture. That means it depends on the type of widget, 
what
MG> technique is used.

MG> What widgetset are you using?
MG> What effect do you expect and what do you get?
MG> What lazarus, fpc and OS version are you using?


>> procedure TMyPanel.Paint;
>> var rect :TRect;
>> begin
>>   rect := GetClientRect;
>>   InflateRect(rect,-50,-50);
>>   Canvas.Brush.Color:= clYellow;
>>   Canvas.Rectangle(rect);
>>
>>   inherited Paint;
>> end;
>>
>> procedure TForm1.FormCreate(Sender: TObject);
>> var mp:TMyPanel;
>> begin
>>   mp := TMyPanel.Create (self);
>>   with mp do begin
>>     Parent := self;
>>     Left := 0;
>>     Top := 0;
>>     Width := 200;
>>     Height := 150;
>>     Color:= clRed;
>>   end;
>>
>>   with TRadioButton.Create(mp) do begin
>>     Left:= 10;
>>     Top := mp.Height div 2;
>>     Width:=150;
>>     Caption:= 'Roland';
>>     Parent := mp;
>>   end;
>> end;
>>
>> Thanks in advance.

MG> Mattias





-- 
Best regards, TRoland
http://www.rotursoft.sk
http://exekutor.rotursoft.sk

_______________________________________________
Lazarus mailing list
[email protected]
http://www.lazarus.freepascal.org/mailman/listinfo/lazarus

Reply via email to