Componentes.Terceros.DevExp.../internal/x.36/1/ExpressSkins Library/Sources/dxSkinBlue.pas
2008-09-04 11:31:51 +00:00

76 lines
1.8 KiB
ObjectPascal

unit dxSkinBlue;
interface
uses
Classes, dxGDIPlusApi, cxLookAndFeelPainters, dxSkinsCore, dxSkinsLookAndFeelPainter;
type
{ TdxBluePainter }
TdxBluePainter = class(TdxSkinLookAndFeelPainter)
protected
class function CacheData: TdxSkinLookAndFeelPainterInfo; override;
public
class function InternalUnitName: string; override;
end;
const
SkinsCount = 1;
SkinNames: array[0..SkinsCount - 1] of ShortString =
('Blue');
SkinPainters: array[0..SkinsCount - 1] of TcxCustomLookAndFeelPainterClass =
(TdxBluePainter);
implementation
{$R dxSkinBlue.res}
var
CachedPainterData: array[0..SkinsCount - 1] of TdxSkinLookAndFeelPainterInfo;
{ TdxBluePainter }
class function TdxBluePainter.CacheData: TdxSkinLookAndFeelPainterInfo;
begin
Result := CachedPainterData[0];
end;
class function TdxBluePainter.InternalUnitName: string;
begin
Result := 'dxSkinBlue';
end;
procedure RegisterPainters;
var
SkinIndex: Integer;
begin
if not CheckGdiPlus then Exit;
for SkinIndex := 0 to SkinsCount - 1 do
begin
CachedPainterData[SkinIndex] :=
TdxSkinLookAndFeelPainterInfo.Create(TdxSkin.Create(SkinNames[SkinIndex], True, HInstance));
GetExtendedStylePainters.Register(
SkinNames[SkinIndex], SkinPainters[SkinIndex], CachedPainterData[SkinIndex]);
end;
end;
procedure UnregisterPainters;
var
SkinIndex: Integer;
begin
if GetExtendedStylePainters = nil then Exit;
for SkinIndex := 0 to SkinsCount - 1 do
GetExtendedStylePainters.UnRegister(SkinNames[SkinIndex]);
end;
{$IFNDEF DXSKINDYNAMICLOADING}
initialization
dxUnitsLoader.AddUnit(@RegisterPainters, @UnregisterPainters);
finalization
dxUnitsLoader.RemoveUnit(@UnregisterPainters);
{$ENDIF}
end.