mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-04-23 00:59:31 +02:00
IdeIntf: Remove LCL dependency from unit ComponentReg. Adjust TRegisteredComponent method visibility.
This commit is contained in:
parent
3aaae1a6a8
commit
2c7e959e62
@ -25,8 +25,6 @@ interface
|
||||
|
||||
uses
|
||||
Classes, SysUtils, TypInfo, AVL_Tree, fgl,
|
||||
// LCL
|
||||
Controls,
|
||||
// LazUtils
|
||||
LazUtilities, LazLoggerBase, Laz2_XMLCfg, LazMethodList, LazUTF8;
|
||||
|
||||
@ -148,29 +146,30 @@ type
|
||||
FOrigPageName: string;
|
||||
FRealPage: TBaseComponentPage;
|
||||
FVisible: boolean;
|
||||
protected
|
||||
FNextSameName: TRegisteredComponent;
|
||||
FPrevSameName: TRegisteredComponent;
|
||||
procedure AddToPalette;
|
||||
protected
|
||||
function CanBeCreatedInDesigner: boolean; virtual;
|
||||
procedure ConsistencyCheck; virtual;
|
||||
function GetPriority: TComponentPriority; virtual;
|
||||
function InheritsFromControl: boolean; virtual; abstract;
|
||||
public
|
||||
constructor Create(TheComponentClass: TComponentClass; const ThePageName: string);
|
||||
destructor Destroy; override;
|
||||
procedure ConsistencyCheck; virtual;
|
||||
function GetUnitName: string; virtual; abstract;
|
||||
function GetPriority: TComponentPriority; virtual;
|
||||
procedure AddToPalette; virtual;
|
||||
function CanBeCreatedInDesigner: boolean; virtual;
|
||||
function GetCreationClass: TComponentClass; virtual;
|
||||
function HasAmbiguousClassName: boolean; virtual; // true if another component class with same name (different unit) is registered
|
||||
function GetFullClassName(const UnitSep: char = '/'): string; virtual;
|
||||
function GetUnitName: string; virtual; abstract;
|
||||
function HasAmbiguousClassName: boolean; virtual; // true if another component class with same name (different unit) is registered
|
||||
public
|
||||
property ComponentClass: TComponentClass read FComponentClass; // Beware of ambiguous classnames
|
||||
property OnGetCreationClass: TOnGetCreationClass read FOnGetCreationClass
|
||||
write FOnGetCreationClass;
|
||||
property OrigPageName: string read FOrigPageName; // case sensitive
|
||||
property RealPage: TBaseComponentPage read FRealPage write FRealPage;
|
||||
property Visible: boolean read FVisible write FVisible;
|
||||
property NextSameName: TRegisteredComponent read FNextSameName;
|
||||
property PrevSameName: TRegisteredComponent read FPrevSameName;
|
||||
property OnGetCreationClass: TOnGetCreationClass read FOnGetCreationClass
|
||||
write FOnGetCreationClass;
|
||||
end;
|
||||
|
||||
{ TBaseComponentPage }
|
||||
@ -1284,7 +1283,7 @@ var
|
||||
i, Vote: Integer;
|
||||
begin
|
||||
Vote:=1;
|
||||
if HideControls and AComponent.ComponentClass.InheritsFrom(TControl) then
|
||||
if HideControls and AComponent.InheritsFromControl then
|
||||
Dec(Vote);
|
||||
i:=FHandlers[cphtVoteVisibility].Count;
|
||||
while FHandlers[cphtVoteVisibility].NextDownIndex(i) do
|
||||
|
@ -40,7 +40,7 @@ uses
|
||||
// FCL
|
||||
Classes, SysUtils, Contnrs, TypInfo, AVL_Tree, System.UITypes,
|
||||
// LCL
|
||||
Forms, ImgList,
|
||||
Forms, Controls, ImgList,
|
||||
// Codetools
|
||||
LazConfigStorage, DefineTemplates, CodeToolManager,
|
||||
CodeCache, CodeToolsCfgScript, CodeToolsStructs, BasicCodeTools,
|
||||
@ -90,17 +90,19 @@ type
|
||||
private
|
||||
FPkgFile: TPkgFile;
|
||||
procedure SetPkgFile(const AValue: TPkgFile);
|
||||
protected
|
||||
function CanBeCreatedInDesigner: boolean; override;
|
||||
procedure ConsistencyCheck; override;
|
||||
function GetPriority: TComponentPriority; override;
|
||||
function InheritsFromControl: boolean; override;
|
||||
public
|
||||
constructor Create(ThePkgFile: TPkgFile; TheComponentClass: TComponentClass;
|
||||
const ThePageName: string);
|
||||
destructor Destroy; override;
|
||||
function GetUnitName: string; override;
|
||||
function GetPriority: TComponentPriority; override;
|
||||
procedure ConsistencyCheck; override;
|
||||
function HasIcon: boolean;
|
||||
function ImageIndex: TImageIndex;
|
||||
class function Images: TCustomImageList;
|
||||
function HasIcon: boolean;
|
||||
function CanBeCreatedInDesigner: boolean; override;
|
||||
public
|
||||
property PkgFile: TPkgFile read FPkgFile write SetPkgFile;
|
||||
end;
|
||||
@ -4052,6 +4054,11 @@ begin
|
||||
if (FPkgFile<>nil) then PkgFile.AddPkgComponent(Self);
|
||||
end;
|
||||
|
||||
function TPkgComponent.InheritsFromControl: boolean;
|
||||
begin
|
||||
Result:=ComponentClass.InheritsFrom(TControl);
|
||||
end;
|
||||
|
||||
constructor TPkgComponent.Create(ThePkgFile: TPkgFile;
|
||||
TheComponentClass: TComponentClass; const ThePageName: string);
|
||||
begin
|
||||
|
Loading…
Reference in New Issue
Block a user