LCL: new IndustrialBase class for Arrow and future components

git-svn-id: trunk@41234 -
This commit is contained in:
juha 2013-05-17 12:57:06 +00:00
parent 1d623aeab7
commit b284755d19
2 changed files with 61 additions and 0 deletions

1
.gitattributes vendored
View File

@ -6071,6 +6071,7 @@ lcl/include/treeview.inc svneol=native#text/pascal
lcl/include/winapi.inc svneol=native#text/pascal
lcl/include/winapih.inc svneol=native#text/pascal
lcl/include/wincontrol.inc svneol=native#text/pascal
lcl/industrialbase.pp svneol=native#text/pascal
lcl/inipropstorage.pas svneol=native#text/pascal
lcl/interfacebase.pp svneol=native#text/pascal
lcl/interfaces/LAYOUT.txt svneol=native#text/plain

60
lcl/industrialbase.pp Normal file
View File

@ -0,0 +1,60 @@
unit IndustrialBase;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, Controls, Graphics;
type
{ TIndustrialBase }
TIndustrialBase = class(TGraphicControl)
private
FAntiAliasingMode: TAntialiasingMode;
procedure SetAntiAliasingMode(AValue: TAntialiasingMode);
protected
procedure GraphicChanged;
procedure Paint; override;
public
constructor Create(aOwner: TComponent); override;
published
property AntiAliasingMode: TAntialiasingMode read FAntiAliasingMode
write SetAntiAliasingMode default amDontCare;
end;
implementation
constructor TIndustrialBase.Create(aOwner: TComponent);
begin
inherited Create(aOwner);
FAntiAliasingMode := amDontCare;
with GetControlClassDefaultSize do
SetInitialBounds(0, 0, cx, cy);
ControlStyle := ControlStyle - [csSetCaption];
end;
procedure TIndustrialBase.GraphicChanged;
begin
if Assigned(Parent) and (Visible or (csDesigning in ComponentState))
then Invalidate;
end;
procedure TIndustrialBase.Paint;
begin
Canvas.AntialiasingMode := FAntiAliasingMode;
inherited Paint;
end;
procedure TIndustrialBase.SetAntiAliasingMode(AValue: TAntialiasingMode);
begin
if FAntiAliasingMode=AValue then Exit;
FAntiAliasingMode:=AValue;
GraphicChanged;
end;
end.