mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-11-22 17:29:26 +01:00
customdrawn: Corrects the drawing of TCDGroupBox dsCommon and dsWinCE
git-svn-id: trunk@33469 -
This commit is contained in:
parent
bb87ce4341
commit
6eb2ce848f
@ -940,10 +940,14 @@ begin
|
|||||||
ADest.Rectangle(0, 0, ASize.cx, ASize.cy);
|
ADest.Rectangle(0, 0, ASize.cx, ASize.cy);
|
||||||
|
|
||||||
// frame
|
// frame
|
||||||
ADest.Pen.Color := clBlack;
|
ADest.Pen.Color := WIN2000_FRAME_WHITE;
|
||||||
ADest.Pen.Style := psSolid;
|
ADest.Pen.Style := psSolid;
|
||||||
ADest.Brush.Style := bsClear;
|
ADest.Brush.Style := bsClear;
|
||||||
ADest.Rectangle(0, FCaptionMiddle, ASize.cx, ASize.cy-FCaptionMiddle);
|
ADest.Rectangle(Bounds(1, 1+FCaptionMiddle, ASize.cx-1, ASize.cy-1-FCaptionMiddle));
|
||||||
|
ADest.Pen.Color := WIN2000_FRAME_GRAY;
|
||||||
|
ADest.Rectangle(Bounds(0, FCaptionMiddle, ASize.cx-1, ASize.cy-1-FCaptionMiddle));
|
||||||
|
ADest.Pixels[0, ASize.cy-1] := WIN2000_FRAME_WHITE;
|
||||||
|
ADest.Pixels[ASize.cx-1, FCaptionMiddle] := WIN2000_FRAME_WHITE;
|
||||||
|
|
||||||
// ToDo: Make the caption smaller if it is too big
|
// ToDo: Make the caption smaller if it is too big
|
||||||
lCaption := AStateEx.Caption;
|
lCaption := AStateEx.Caption;
|
||||||
|
|||||||
@ -41,6 +41,9 @@ type
|
|||||||
// TCDCheckBox
|
// TCDCheckBox
|
||||||
procedure DrawCheckBoxSquare(ADest: TCanvas; ADestPos: TPoint; ASize: TSize;
|
procedure DrawCheckBoxSquare(ADest: TCanvas; ADestPos: TPoint; ASize: TSize;
|
||||||
AState: TCDControlState; AStateEx: TCDControlStateEx); override;
|
AState: TCDControlState; AStateEx: TCDControlStateEx); override;
|
||||||
|
// TCDGroupBox
|
||||||
|
procedure DrawGroupBox(ADest: TCanvas; ADestPos: TPoint; ASize: TSize;
|
||||||
|
AState: TCDControlState; AStateEx: TCDControlStateEx); override;
|
||||||
// ===================================
|
// ===================================
|
||||||
// Common Controls Tab
|
// Common Controls Tab
|
||||||
// ===================================
|
// ===================================
|
||||||
@ -184,6 +187,46 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TCDDrawerWinCE.DrawGroupBox(ADest: TCanvas; ADestPos: TPoint;
|
||||||
|
ASize: TSize; AState: TCDControlState; AStateEx: TCDControlStateEx);
|
||||||
|
var
|
||||||
|
FCaptionMiddle: integer;
|
||||||
|
lTextSize: TSize;
|
||||||
|
lCaption: String;
|
||||||
|
begin
|
||||||
|
FCaptionMiddle := ADest.TextHeight(cddTestStr) div 2;
|
||||||
|
if FCaptionMiddle = 0 then FCaptionMiddle := AStateEx.Font.Size div 2;
|
||||||
|
if FCaptionMiddle = 0 then FCaptionMiddle := 5;
|
||||||
|
|
||||||
|
// Background
|
||||||
|
ADest.Brush.Color := AStateEx.ParentRGBColor;
|
||||||
|
ADest.Brush.Style := bsSolid;
|
||||||
|
ADest.Pen.Style := psSolid;
|
||||||
|
ADest.Pen.Color := AStateEx.ParentRGBColor;
|
||||||
|
ADest.Rectangle(0, 0, ASize.cx, ASize.cy);
|
||||||
|
|
||||||
|
// frame
|
||||||
|
ADest.Pen.Color := clBlack;
|
||||||
|
ADest.Pen.Style := psSolid;
|
||||||
|
ADest.Brush.Style := bsClear;
|
||||||
|
ADest.Rectangle(0, FCaptionMiddle, ASize.cx, ASize.cy);
|
||||||
|
|
||||||
|
// ToDo: Make the caption smaller if it is too big
|
||||||
|
lCaption := AStateEx.Caption;
|
||||||
|
lTextSize := ADest.TextExtent(lCaption);
|
||||||
|
|
||||||
|
// fill the text background
|
||||||
|
ADest.Brush.Style := bsSolid;
|
||||||
|
ADest.Brush.Color := AStateEx.ParentRGBColor;
|
||||||
|
ADest.Pen.Style := psClear;
|
||||||
|
ADest.Rectangle(Bounds(FCaptionMiddle, 0, lTextSize.cx+5, lTextSize.cy));
|
||||||
|
|
||||||
|
// paint text
|
||||||
|
ADest.Pen.Style := psClear;
|
||||||
|
ADest.Brush.Style := bsClear;
|
||||||
|
ADest.TextOut(FCaptionMiddle+3, 0, lCaption);
|
||||||
|
end;
|
||||||
|
|
||||||
procedure TCDDrawerWinCE.DrawTab(ADest: TCanvas; ADestPos: TPoint;
|
procedure TCDDrawerWinCE.DrawTab(ADest: TCanvas; ADestPos: TPoint;
|
||||||
ASize: TSize; AState: TCDControlState; AStateEx: TCDCTabControlStateEx);
|
ASize: TSize; AState: TCDControlState; AStateEx: TCDCTabControlStateEx);
|
||||||
var
|
var
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user