Стартовый пул

This commit is contained in:
2024-04-02 08:46:59 +03:00
parent fd57fffd3a
commit 3bb34d000b
5591 changed files with 3291734 additions and 0 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 822 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 822 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 822 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 822 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 822 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 822 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 822 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 822 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 822 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 822 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 822 B

Binary file not shown.

View File

@@ -0,0 +1,380 @@
unit SpkToolbarEditor;
{$mode Delphi}
interface
uses Forms, Controls, Classes, ComponentEditors, PropEdits, LazarusPackageIntf, LazIdeIntf, TypInfo, Dialogs,
SysUtils, ImgList, GraphPropEdits,
spkToolbar, spkt_Tab, spkt_Buttons,
spkte_EditWindow, spkte_AppearanceEditor;
const PROPERTY_CONTENTS_NAME = 'Contents';
PROPERTY_CONTENTS_VALUE = 'Open editor...';
//type
//
// TAddContentsFilter = class(TSelectionEditor, ISelectionPropertyFilter)
// public
// procedure FilterProperties(const ASelection: IDesignerSelections; const ASelectionProperties: IInterfaceList);
// end;
//
//TSpkToolbarContentsEditor = class(TBasePropertyEditor, IProperty, IPropertyKind)
// private
// protected
// FPropList : PInstPropList;
// FPropCount : integer;
// FDesigner : IDesigner;
// FToolbar : TSpkToolbar;
//
// procedure SetPropEntry(Index: Integer; AInstance: TPersistent;
// APropInfo: PPropInfo); override;
// procedure Initialize; override;
// public
// constructor Create(const ADesigner: IDesigner; APropCount: Integer); override;
// destructor Destroy; override;
//
// procedure Activate;
// function AllEqual: Boolean;
// function AutoFill: Boolean;
// procedure Edit;
// function HasInstance(Instance: TPersistent): Boolean;
// function GetAttributes: TPropertyAttributes;
// function GetEditLimit: Integer;
// function GetEditValue(out Value: string): Boolean;
// function GetName: string;
// procedure GetProperties(Proc: TGetPropProc);
// function GetPropInfo: PPropInfo;
// function GetPropType: PTypeInfo;
// function GetValue: string;
// procedure GetValues(Proc: TGetStrProc);
// procedure Revert;
// procedure SetValue(const Value: string);
// function ValueAvailable: Boolean;
//
// function GetKind: TTypeKind;
//
// property PropCount : integer read FPropCount;
// property Designer : IDesigner read FDesigner;
// property Toolbar : TSpkToolbar read FToolbar write FToolbar;
// end;
type TSpkToolbarCaptionEditor = class(TStringProperty)
private
protected
public
procedure SetValue(const Value: string); override;
end;
type TSpkToolbarAppearanceEditor = class(TClassProperty)
private
protected
public
function GetAttributes: TPropertyAttributes; override;
procedure Edit; override;
end;
type TSpkToolbarEditor = class(TComponentEditor)
protected
procedure DoOpenContentsEditor;
public
procedure Edit; override;
procedure ExecuteVerb(Index: Integer); override;
function GetVerb(Index: Integer): string; override;
function GetVerbCount: Integer; override;
end;
type TSpkImageIndexPropertyEditor = class(TImageIndexPropertyEditor)
protected
function GetImageList: TCustomImageList; override;
end;
var EditWindow : TfrmEditWindow;
implementation
{ TSpkToolbarEditor }
//procedure TSpkToolbarContentsEditor.Activate;
//begin
////
//end;
//
//function TSpkToolbarContentsEditor.AllEqual: Boolean;
//begin
//result:=FPropCount = 1;
//end;
//
//function TSpkToolbarContentsEditor.AutoFill: Boolean;
//begin
//result:=false;
//end;
//
//constructor TSpkToolbarContentsEditor.Create(const ADesigner: IDesigner;
// APropCount: Integer);
//begin
// inherited Create(ADesigner, APropCount);
// FDesigner:=ADesigner;
// FPropCount:=APropCount;
// FToolbar:=nil;
// GetMem(FPropList, APropCount * SizeOf(TInstProp));
// FillChar(FPropList^, APropCount * SizeOf(TInstProp), 0);
//end;
//
//destructor TSpkToolbarContentsEditor.Destroy;
//begin
// if FPropList <> nil then
// FreeMem(FPropList, FPropCount * SizeOf(TInstProp));
// inherited;
//end;
//
//procedure TSpkToolbarContentsEditor.Edit;
//begin
// EditWindow.SetData(FToolbar,self.Designer);
// EditWindow.Show;
//end;
//
//function TSpkToolbarContentsEditor.GetAttributes: TPropertyAttributes;
//begin
//result:=[paDialog, paReadOnly];
//end;
//
//function TSpkToolbarContentsEditor.GetEditLimit: Integer;
//begin
//result:=0;
//end;
//
//function TSpkToolbarContentsEditor.GetEditValue(out Value: string): Boolean;
//begin
//Value:=GetValue;
//result:=true;
//end;
//
//function TSpkToolbarContentsEditor.GetKind: TTypeKind;
//begin
//result:=tkClass;
//end;
//
//function TSpkToolbarContentsEditor.GetName: string;
//begin
//result:=PROPERTY_CONTENTS_NAME;
//end;
//
//procedure TSpkToolbarContentsEditor.GetProperties(Proc: TGetPropProc);
//begin
////
//end;
//
//function TSpkToolbarContentsEditor.GetPropInfo: PPropInfo;
//begin
//Result:=nil;
//end;
//
//function TSpkToolbarContentsEditor.GetPropType: PTypeInfo;
//begin
//Result:=nil;
//end;
//
//function TSpkToolbarContentsEditor.GetValue: string;
//begin
//result:=PROPERTY_CONTENTS_VALUE;
//end;
//
//procedure TSpkToolbarContentsEditor.GetValues(Proc: TGetStrProc);
//begin
////
//end;
//
//function TSpkToolbarContentsEditor.HasInstance(Instance: TPersistent): Boolean;
//begin
// result:=EditWindow.Toolbar = Instance;
//end;
//
//procedure TSpkToolbarContentsEditor.Initialize;
//begin
// inherited;
//end;
//
//procedure TSpkToolbarContentsEditor.Revert;
//begin
////
//end;
//
//procedure TSpkToolbarContentsEditor.SetPropEntry(Index: Integer; AInstance: TPersistent;
// APropInfo: PPropInfo);
//begin
//with FPropList^[Index] do
// begin
// Instance := AInstance;
// PropInfo := APropInfo;
// end;
//end;
//
//procedure TSpkToolbarContentsEditor.SetValue(const Value: string);
//begin
////
//end;
//
//function TSpkToolbarContentsEditor.ValueAvailable: Boolean;
//begin
//result:=true;
//end;
{ TSelectionFilter }
//procedure TAddContentsFilter.FilterProperties(
// const ASelection: IDesignerSelections;
// const ASelectionProperties: IInterfaceList);
//
//var ContentsEditor : TSpkToolbarContentsEditor;
// Prop : IProperty;
// i : integer;
// Added : boolean;
//
//begin
//if ASelection.Count<>1 then
// exit;
//
//if ASelection[0] is TSpkToolbar then
// begin
// ContentsEditor:=TSpkToolbarContentsEditor.Create(inherited Designer, 1);
// ContentsEditor.Toolbar:=ASelection[0] as TSpkToolbar;
//
// i:=0;
// Added:=false;
// while (i<ASelectionProperties.Count) and not Added do
// begin
// ASelectionProperties.Items[i].QueryInterface(IProperty, Prop);
// if (assigned(Prop)) and (Prop.GetName>PROPERTY_CONTENTS_NAME) then
// begin
// ASelectionProperties.Insert(i, ContentsEditor);
// Added:=true;
// end;
// inc(i);
// end;
//
// if not(Added) then
// ASelectionProperties.Add(ContentsEditor as IProperty);
// end;
//end;
{ TSpkToolbarEditor }
procedure TSpkToolbarEditor.DoOpenContentsEditor;
var
Component: TComponent;
begin
Component:=self.GetComponent;
if not(Component is TSpkToolbar) then
exit;
if EditWindow = nil then
EditWindow := TfrmEditWindow.Create(nil);
EditWindow.SetData(TSpkToolbar(Component),Self.GetDesigner);
EditWindow.Show;
end;
procedure TSpkToolbarEditor.Edit;
begin
DoOpenContentsEditor;
end;
procedure TSpkToolbarEditor.ExecuteVerb(Index: Integer);
begin
case Index of
0 : DoOpenContentsEditor;
end;
end;
function TSpkToolbarEditor.GetVerb(Index: Integer): string;
begin
case Index of
0 : result:='Contents editor...';
end;
end;
function TSpkToolbarEditor.GetVerbCount: Integer;
begin
Result := 1;
end;
{ TSpkToolbarCaptionEditor }
procedure TSpkToolbarCaptionEditor.SetValue(const Value: string);
begin
inherited;
EditWindow.RefreshNames;
end;
{ TSpkImageIndexPropertyEditor }
function TSpkImageIndexPropertyEditor.GetImagelist: TCustomImageList;
var
Instance: TPersistent;
begin
Result := nil;
Instance := GetComponent(0);
if (Instance is TSpkLargeButton) then
Result := TSpkLargeButton(Instance).Images
else if (Instance is TSpkSmallButton) then
Result := TSpkSmallButton(Instance).Images;
end;
{ TSpkToolbarAppearanceEditor }
procedure TSpkToolbarAppearanceEditor.Edit;
var
Obj: TObject;
Toolbar: TSpkToolbar;
Tab: TSpkTab;
AppearanceEditor: tfrmAppearanceEditWindow;
begin
Obj:=GetComponent(0);
if Obj is TSpkToolbar then
begin
Toolbar := TSpkToolbar(Obj);
AppearanceEditor:=TfrmAppearanceEditWindow.Create(nil);
try
AppearanceEditor.Appearance.Assign(Toolbar.Appearance);
if AppearanceEditor.ShowModal = mrOK then
begin
Toolbar.Appearance.Assign(AppearanceEditor.Appearance);
Modified;
end;
finally
AppearanceEditor.Free;
end;
end else
if Obj is TSpkTab then
begin
Tab:=TSpkTab(Obj);
AppearanceEditor:=TfrmAppearanceEditWindow.Create(nil);
try
AppearanceEditor.Appearance.Assign(Tab.CustomAppearance);
if AppearanceEditor.ShowModal = mrOK then
begin
Tab.CustomAppearance.Assign(AppearanceEditor.Appearance);
Modified;
end;
finally
AppearanceEditor.Free;
end;
end;
end;
function TSpkToolbarAppearanceEditor.GetAttributes: TPropertyAttributes;
begin
result:=inherited GetAttributes + [paDialog] - [paMultiSelect];
end;
initialization
//EditWindow:=TfrmEditWindow.create(nil);
finalization
EditWindow.Free;
end.

View File

@@ -0,0 +1 @@
lazres ..\SpkToolbar.lrs tspktoolbar.png tspktoolbar_150.png tspktoolbar_200.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 411 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 551 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 520 B

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff