Componentes.Terceros.DevExp.../internal/x.44/1/ExpressSkins Library/Sources/dxSkinSpringTime.pas
2009-06-29 12:09:02 +00:00

76 lines
1.8 KiB
ObjectPascal

unit dxSkinSpringTime;
interface
uses
Classes, dxGDIPlusApi, cxLookAndFeelPainters, dxSkinsCore, dxSkinsLookAndFeelPainter;
type
{ TdxSpringtimePainter }
TdxSpringtimePainter = class(TdxSkinLookAndFeelPainter)
protected
class function CacheData: TdxSkinLookAndFeelPainterInfo; override;
public
class function InternalUnitName: string; override;
end;
const
SkinsCount = 1;
SkinNames: array[0..SkinsCount - 1] of string =
('Springtime');
SkinPainters: array[0..SkinsCount - 1] of TcxCustomLookAndFeelPainterClass =
(TdxSpringtimePainter);
implementation
{$R dxSkinSpringTime.res}
var
CachedPainterData: array[0..SkinsCount - 1] of TdxSkinLookAndFeelPainterInfo;
{ TdxSpringtimePainter }
class function TdxSpringtimePainter.CacheData: TdxSkinLookAndFeelPainterInfo;
begin
Result := CachedPainterData[0];
end;
class function TdxSpringtimePainter.InternalUnitName: string;
begin
Result := 'dxSkinSpringTime';
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.