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; 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; SetInitialBounds(0, 0, GetControlClassDefaultSize.cx, GetControlClassDefaultSize.cy); ControlStyle := ControlStyle - [csSetCaption]; end; procedure TIndustrialBase.GraphicChanged; begin if Assigned(Parent) and (Visible or (csDesigning in ComponentState)) then Invalidate; end; procedure TIndustrialBase.SetAntiAliasingMode(AValue: TAntialiasingMode); begin if FAntiAliasingMode=AValue then Exit; FAntiAliasingMode:=AValue; GraphicChanged; end; end.