You've already forked lazarus-ccr
TGradButton:
- Added TGradCustomControl - Added DropDown-SplitButton Support git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@1455 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
@ -4,51 +4,63 @@
|
||||
<PathDelim Value="\"/>
|
||||
<Name Value="gradcontrols"/>
|
||||
<CompilerOptions>
|
||||
<Version Value="8"/>
|
||||
<Version Value="9"/>
|
||||
<PathDelim Value="\"/>
|
||||
<SearchPaths>
|
||||
<IncludeFiles Value="src\;..\"/>
|
||||
<OtherUnitFiles Value="src\;..\"/>
|
||||
<IncludeFiles Value="src"/>
|
||||
<OtherUnitFiles Value="src"/>
|
||||
<UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/>
|
||||
</SearchPaths>
|
||||
<Parsing>
|
||||
<SyntaxOptions>
|
||||
<UseAnsiStrings Value="False"/>
|
||||
</SyntaxOptions>
|
||||
</Parsing>
|
||||
<Other>
|
||||
<CompilerPath Value="$(CompPath)"/>
|
||||
</Other>
|
||||
</CompilerOptions>
|
||||
<Files Count="3">
|
||||
<Files Count="4">
|
||||
<Item1>
|
||||
<Filename Value="src\ugradtabcontrol.pas"/>
|
||||
<HasRegisterProc Value="True"/>
|
||||
<UnitName Value="ugradtabcontrol"/>
|
||||
</Item1>
|
||||
<Item2>
|
||||
<Filename Value="src\ugradbtn.pas"/>
|
||||
<HasRegisterProc Value="True"/>
|
||||
<UnitName Value="ugradbtn"/>
|
||||
</Item1>
|
||||
<Item2>
|
||||
<Filename Value="src\ugradtabcontrol.pas"/>
|
||||
<HasRegisterProc Value="True"/>
|
||||
<UnitName Value="ugradtabcontrol"/>
|
||||
</Item2>
|
||||
<Item3>
|
||||
<Filename Value="src\urotatebitmap.pas"/>
|
||||
<UnitName Value="uRotateBitmap"/>
|
||||
</Item3>
|
||||
<Item4>
|
||||
<Filename Value="src\gradcustomcontrol.pas"/>
|
||||
<UnitName Value="gradcustomcontrol"/>
|
||||
</Item4>
|
||||
</Files>
|
||||
<Type Value="RunAndDesignTime"/>
|
||||
<RequiredPkgs Count="3">
|
||||
<RequiredPkgs Count="4">
|
||||
<Item1>
|
||||
<PackageName Value="IDEIntf"/>
|
||||
<PackageName Value="multiloglaz"/>
|
||||
</Item1>
|
||||
<Item2>
|
||||
<PackageName Value="LCl"/>
|
||||
<PackageName Value="IDEIntf"/>
|
||||
</Item2>
|
||||
<Item3>
|
||||
<PackageName Value="LCl"/>
|
||||
</Item3>
|
||||
<Item4>
|
||||
<PackageName Value="FCL"/>
|
||||
<MinVersion Major="1" Valid="True"/>
|
||||
</Item3>
|
||||
</Item4>
|
||||
</RequiredPkgs>
|
||||
<UsageOptions>
|
||||
<IncludePath Value="$(PkgOutDir)\;$(PkgOutDir)\..\"/>
|
||||
<LibraryPath Value="$(PkgOutDir)\;$(PkgOutDir)\..\"/>
|
||||
<ObjectPath Value="$(PkgOutDir)\;$(PkgOutDir)\..\"/>
|
||||
<UnitPath Value="$(PkgOutDir)\;$(PkgOutDir)\..\"/>
|
||||
<IncludePath Value="$(PkgOutDir);$(PkgOutDir)\.."/>
|
||||
<LibraryPath Value="$(PkgOutDir);$(PkgOutDir)\.."/>
|
||||
<ObjectPath Value="$(PkgOutDir);$(PkgOutDir)\.."/>
|
||||
<UnitPath Value="$(PkgOutDir);$(PkgOutDir)\.."/>
|
||||
</UsageOptions>
|
||||
<PublishOptions>
|
||||
<Version Value="2"/>
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ This file was automatically created by Lazarus. do not edit !
|
||||
{ This file was automatically created by Lazarus. Do not edit!
|
||||
This source is only used to compile and install the package.
|
||||
}
|
||||
|
||||
@ -7,14 +7,15 @@ unit gradcontrols;
|
||||
interface
|
||||
|
||||
uses
|
||||
ugradtabcontrol, ugradbtn, uRotateBitmap, LazarusPackageIntf;
|
||||
ugradbtn, ugradtabcontrol, uRotateBitmap, gradcustomcontrol,
|
||||
LazarusPackageIntf;
|
||||
|
||||
implementation
|
||||
|
||||
procedure Register;
|
||||
begin
|
||||
RegisterUnit('ugradtabcontrol', @ugradtabcontrol.Register);
|
||||
RegisterUnit('ugradbtn', @ugradbtn.Register);
|
||||
RegisterUnit('ugradtabcontrol', @ugradtabcontrol.Register);
|
||||
end;
|
||||
|
||||
initialization
|
||||
|
71
components/gradcontrols/src/gradcustomcontrol.pas
Executable file
71
components/gradcontrols/src/gradcustomcontrol.pas
Executable file
@ -0,0 +1,71 @@
|
||||
unit gradcustomcontrol;
|
||||
|
||||
{$mode objfpc}{$H+}
|
||||
|
||||
interface
|
||||
|
||||
uses
|
||||
Classes, SysUtils, Controls, Graphics;
|
||||
|
||||
type
|
||||
|
||||
{ TGradCustomControl }
|
||||
|
||||
TGradCustomControl = class(TCustomControl)
|
||||
protected
|
||||
FBuffer: TBitmap;
|
||||
public
|
||||
constructor Create(AOwner: TComponent); override;
|
||||
destructor Destroy; override;
|
||||
procedure ChangeBounds(ALeft, ATop, AWidth, AHeight: integer;
|
||||
KeepBase: boolean); override;
|
||||
procedure Paint; override;
|
||||
procedure PaintTo(ACanvas: TCanvas; X, Y: Integer); overload;
|
||||
procedure _Paint(ACanvas: TCanvas); virtual; abstract;
|
||||
end;
|
||||
|
||||
implementation
|
||||
|
||||
{ TGradCustomControl }
|
||||
|
||||
constructor TGradCustomControl.Create(AOwner: TComponent);
|
||||
begin
|
||||
inherited Create(AOwner);
|
||||
|
||||
FBuffer := TBitmap.Create;
|
||||
end;
|
||||
|
||||
destructor TGradCustomControl.Destroy;
|
||||
begin
|
||||
FBuffer.Free;
|
||||
|
||||
inherited Destroy;
|
||||
end;
|
||||
|
||||
procedure TGradCustomControl.ChangeBounds(ALeft, ATop, AWidth,
|
||||
AHeight: integer; KeepBase: boolean);
|
||||
begin
|
||||
FBuffer.SetSize(AWidth, AHeight);
|
||||
|
||||
_Paint(FBuffer.Canvas);
|
||||
|
||||
inherited ChangeBounds(ALeft, ATop, AWidth, AHeight, KeepBase);
|
||||
end;
|
||||
|
||||
procedure TGradCustomControl.Paint;
|
||||
begin
|
||||
if not HasParent then
|
||||
Exit;
|
||||
|
||||
Canvas.Draw(0,0, FBuffer);
|
||||
|
||||
inherited Paint;
|
||||
end;
|
||||
|
||||
procedure TGradCustomControl.PaintTo(ACanvas: TCanvas; X, Y: Integer);
|
||||
begin
|
||||
ACanvas.Draw(0,0, FBuffer);
|
||||
end;
|
||||
|
||||
end.
|
||||
|
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user