git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2457 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
blikblum 2012-06-09 16:11:47 +00:00
parent e1b8b548d7
commit e333deef99
5 changed files with 42 additions and 270 deletions

View File

@ -22,7 +22,7 @@ type TSpkItemSize = (isLarge, isNormal);
TSpkItemTableBehaviour = (tbBeginsRow, tbBeginsColumn, tbContinuesRow);
TSpkItemGroupBehaviour = (gbSingleItem, gbBeginsGroup, gbContinuesGroup, gbEndsGroup);
type TSpkBaseItem = class abstract(TSpkComponent)
TSpkBaseItem = class abstract(TSpkComponent)
private
protected
FRect : T2DIntRect;

View File

@ -37,10 +37,6 @@ type TSpkItems = class(TSpkCollection)
procedure SetLargeImages(const Value : TImageList);
procedure SetDisabledLargeImages(const Value : TImageList);
public
// *** Konstruktor, destruktor ***
constructor Create(RootComponent : TComponent); override;
destructor Destroy; override;
function AddLargeButton : TSpkLargeButton;
function AddSmallButton : TSpkSmallButton;
function AddCheckbox: TSpkCheckbox;
@ -64,133 +60,31 @@ implementation
{ TSpkItems }
function TSpkItems.AddLargeButton: TSpkLargeButton;
var Owner, Parent : TComponent;
i: Integer;
begin
if FRootComponent<>nil then
begin
Owner:=FRootComponent.Owner;
Parent:=FRootComponent;
end
else
begin
Owner:=nil;
Parent:=nil;
end;
result:=TSpkLargeButton.Create(Owner);
result.Parent:=Parent;
if FRootComponent<>nil then
begin
i:=0;
while FRootComponent.Owner.FindComponent('SpkLargeButton'+inttostr(i))<>nil do
inc(i);
result.Name:='SpkLargeButton'+inttostr(i);
end;
AddItem(result);
Result := TSpkLargeButton.Create(FRootComponent);
Result.Parent := FRootComponent;
AddItem(Result);
end;
function TSpkItems.AddSmallButton: TSpkSmallButton;
var Owner, Parent : TComponent;
i: Integer;
begin
if FRootComponent<>nil then
begin
Owner:=FRootComponent.Owner;
Parent:=FRootComponent;
end
else
begin
Owner:=nil;
Parent:=nil;
end;
result:=TSpkSmallButton.Create(Owner);
result.Parent:=Parent;
if FRootComponent<>nil then
begin
i:=0;
while FRootComponent.Owner.FindComponent('SpkSmallButton'+inttostr(i))<>nil do
inc(i);
result.Name:='SpkSmallButton'+inttostr(i);
end;
AddItem(result);
Result := TSpkSmallButton.Create(FRootComponent);
Result.Parent := FRootComponent;
AddItem(Result);
end;
function TSpkItems.AddCheckbox: TSpkCheckbox;
var
Owner, Parent : TComponent;
i: Integer;
begin
if FRootComponent <> nil then begin
Owner := FRootComponent.Owner;
Parent := FRootComponent;
end else begin
Owner := nil;
Parent := nil;
end;
result := TSpkCheckbox.Create(Owner);
result.Parent := Parent;
if FRootComponent <> nil then begin
i := 0;
while FRootComponent.Owner.FindComponent('SpkCheckbox'+IntToStr(i)) <> nil do
inc(i);
result.Name := 'SpkCheckbox' + IntToStr(i);
end;
AddItem(result);
Result := TSpkCheckbox.Create(FRootComponent);
Result.Parent := FRootComponent;
AddItem(Result);
end;
function TSpkItems.AddRadioButton: TSpkRadioButton;
var
Owner, Parent : TComponent;
i: Integer;
begin
if FRootComponent <> nil then begin
Owner := FRootComponent.Owner;
Parent := FRootComponent;
end else begin
Owner := nil;
Parent := nil;
end;
result := TSpkRadioButton.Create(Owner);
result.Parent := Parent;
if FRootComponent <> nil then begin
i := 0;
while FRootComponent.Owner.FindComponent('SpkRadioButton'+IntToStr(i)) <> nil do
inc(i);
result.Name := 'SpkRadioButton' + IntToStr(i);
end;
AddItem(result);
end;
constructor TSpkItems.Create(RootComponent : TComponent);
begin
inherited Create(RootComponent);
FToolbarDispatch:=nil;
FAppearance:=nil;
FImages:=nil;
FDisabledImages:=nil;
FLargeImages:=nil;
FDisabledLargeImages:=nil;
end;
destructor TSpkItems.Destroy;
begin
inherited Destroy;
Result := TSpkRadioButton.Create(FRootComponent);
Result.Parent := FRootComponent;
AddItem(Result);
end;
function TSpkItems.GetItems(index: integer): TSpkBaseItem;
@ -236,9 +130,8 @@ var i: Integer;
begin
FAppearance := Value;
if self.Count>0 then
for i := 0 to self.count - 1 do
Items[i].Appearance:=FAppearance;
for i := 0 to Count - 1 do
Items[i].Appearance := Value;
end;
procedure TSpkItems.SetDisabledImages(const Value: TImageList);
@ -247,9 +140,8 @@ var i: Integer;
begin
FDisabledImages := Value;
if self.Count>0 then
for i := 0 to self.count - 1 do
Items[i].DisabledImages:=FDisabledImages;
for i := 0 to Count - 1 do
Items[i].DisabledImages := Value;
end;
procedure TSpkItems.SetDisabledLargeImages(const Value: TImageList);
@ -258,9 +150,8 @@ var i: Integer;
begin
FDisabledLargeImages := Value;
if self.Count>0 then
for i := 0 to self.count - 1 do
Items[i].DisabledLargeImages:=FDisabledLargeImages;
for i := 0 to Count - 1 do
Items[i].DisabledLargeImages := Value;
end;
procedure TSpkItems.SetImages(const Value: TImageList);
@ -269,9 +160,8 @@ var i: Integer;
begin
FImages := Value;
if self.Count>0 then
for i := 0 to self.count - 1 do
Items[i].Images:=FImages;
for i := 0 to Count - 1 do
Items[i].Images := Value;
end;
procedure TSpkItems.SetLargeImages(const Value: TImageList);
@ -280,9 +170,8 @@ var i: Integer;
begin
FLargeImages := Value;
if self.Count>0 then
for i := 0 to self.count - 1 do
Items[i].LargeImages:=FLargeImages;
for i := 0 to Count - 1 do
Items[i].LargeImages := Value;
end;
procedure TSpkItems.SetToolbarDispatch(const Value: TSpkBaseToolbarDispatch);
@ -291,9 +180,8 @@ var i : integer;
begin
FToolbarDispatch := Value;
if self.Count>0 then
for i := 0 to self.count - 1 do
Items[i].ToolbarDispatch:=FToolbarDispatch;
for i := 0 to Count - 1 do
Items[i].ToolbarDispatch := Value;
end;
procedure TSpkItems.Update;

View File

@ -126,10 +126,6 @@ type TSpkPanes = class(TSpkCollection)
procedure SetLargeImages(const Value: TImageList);
procedure SetDisabledLargeImages(const Value : TImageList);
public
// *** Konstruktor, destruktor ***
constructor Create(RootComponent : TComponent); override;
destructor Destroy; override;
// *** Dodawanie i wstawianie elementów ***
function Add : TSpkPane;
function Insert(index : integer) : TSpkPane;
@ -908,51 +904,10 @@ end;
{ TSpkPanes }
function TSpkPanes.Add: TSpkPane;
var Owner, Parent : TComponent;
i: Integer;
begin
if FRootComponent<>nil then
begin
Owner:=FRootComponent.Owner;
Parent:=FRootComponent;
end
else
begin
Owner:=nil;
Parent:=nil;
end;
result:=TSpkPane.Create(Owner);
result.Parent:=Parent;
if FRootComponent<>nil then
begin
i:=0;
while FRootComponent.Owner.FindComponent('SpkPane'+inttostr(i))<>nil do
inc(i);
result.Name:='SpkPane'+inttostr(i);
end;
AddItem(result);
end;
constructor TSpkPanes.Create(RootComponent : TComponent);
begin
inherited Create(RootComponent);
FToolbarDispatch:=nil;
FAppearance:=nil;
FImages:=nil;
FDisabledImages:=nil;
FLargeImages:=nil;
FDisabledLargeImages:=nil;
end;
destructor TSpkPanes.Destroy;
begin
inherited Destroy;
Result:=TSpkPane.Create(FRootComponent);
Result.Parent:=FRootComponent;
AddItem(Result);
end;
function TSpkPanes.GetItems(index: integer): TSpkPane;

View File

@ -149,9 +149,6 @@ type TSpkTabs = class(TSpkCollection)
procedure SetLargeImages(const Value : TImageList);
procedure SetDisabledLargeImages(const Value : TImageList);
public
constructor Create(RootComponent : TComponent); override;
destructor Destroy; override;
function Add : TSpkTab;
function Insert(index : integer) : TSpkTab;
@ -616,51 +613,10 @@ end;
{ TSpkTabs }
function TSpkTabs.Add: TSpkTab;
var Owner, Parent : TComponent;
i: Integer;
begin
if FRootComponent<>nil then
begin
Owner:=FRootComponent.Owner;
Parent:=FRootComponent;
end
else
begin
Owner:=nil;
Parent:=nil;
end;
result:=TSpkTab.create(Owner);
result.Parent:=Parent;
if FRootComponent<>nil then
begin
i:=0;
while FRootComponent.Owner.FindComponent('SpkTab'+inttostr(i))<>nil do
inc(i);
result.Name:='SpkTab'+inttostr(i);
end;
AddItem(result);
end;
constructor TSpkTabs.Create(RootComponent : TComponent);
begin
inherited Create(RootComponent);
FToolbarDispatch:=nil;
FAppearance:=nil;
FImages:=nil;
FDisabledImages:=nil;
FLargeImages:=nil;
FDisabledLargeImages:=nil;
end;
destructor TSpkTabs.Destroy;
begin
inherited Destroy;
Result:=TSpkTab.create(FRootComponent);
Result.Parent:=FRootComponent;
AddItem(Result);
end;
function TSpkTabs.GetItems(index: integer): TSpkTab;

View File

@ -22,7 +22,7 @@ type TSpkListState = (lsNeedsProcessing, lsReady);
type TSpkCollection = class(TPersistent)
private
protected
FList : TObjectList;
FList : TFPObjectList;
FNames : TStringList;
FListState : TSpkListState;
FRootComponent : TComponent;
@ -32,9 +32,6 @@ type TSpkCollection = class(TPersistent)
procedure Update; virtual;
// *** Wewnêtrzne metody dodawania i wstawiania elementów ***
procedure AddItem(AItem : TComponent);
procedure InsertItem(index : integer; AItem : TComponent);
// *** Gettery i settery ***
function GetItems(index: integer): TComponent; virtual;
public
@ -43,6 +40,8 @@ type TSpkCollection = class(TPersistent)
destructor Destroy; override;
// *** Obs³uga listy ***
procedure AddItem(AItem : TComponent);
procedure InsertItem(index : integer; AItem : TComponent);
procedure Clear;
function Count : integer;
procedure Delete(index : integer); virtual;
@ -67,20 +66,13 @@ type TSpkComponent = class(TComponent)
protected
FParent : TComponent;
FCollection: TSpkCollection;
// *** Gettery i settery ***
function GetParent: TComponent;
procedure SetParent(const Value: TComponent);
public
// *** Konstruktor ***
constructor Create(AOwner : TComponent); override;
// *** Obs³uga parenta ***
function HasParent : boolean; override;
function GetParentComponent : TComponent; override;
procedure SetParentComponent(Value : TComponent); override;
property Parent : TComponent read GetParent write SetParent;
property Parent : TComponent read FParent write SetParentComponent;
property Collection: TSpkCollection read FCollection;
end;
@ -121,7 +113,7 @@ FRootComponent:=RootComponent;
FNames:=TStringList.create;
FList:=TObjectList.create(False);
FList:=TFPObjectList.create(False);
FListState:=lsReady;
end;
@ -263,31 +255,17 @@ begin
end;
procedure TSpkCollection.WriteNames(Writer: TWriter);
var Item : pointer;
var
i: Integer;
begin
Writer.WriteListBegin;
for Item in FList do
Writer.WriteString(TComponent(Item).Name);
Writer.WriteListEnd;
Writer.WriteListBegin;
for i := 0 to FList.Count - 1 do
Writer.WriteString(TComponent(FList[i]).Name);
Writer.WriteListEnd;
end;
{ TSpkComponent }
constructor TSpkComponent.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
FParent:=nil;
end;
function TSpkComponent.GetParent: TComponent;
begin
result:=GetParentComponent;
end;
function TSpkComponent.GetParentComponent: TComponent;
begin
result:=FParent;
@ -298,11 +276,6 @@ begin
result:=FParent<>nil;
end;
procedure TSpkComponent.SetParent(const Value: TComponent);
begin
SetParentComponent(Value);
end;
procedure TSpkComponent.SetParentComponent(Value: TComponent);
begin
FParent:=Value;