IDE: register TProcessUTF8 with LazUtils, not LCL

git-svn-id: trunk@53735 -
This commit is contained in:
mattias 2016-12-20 13:25:34 +00:00
parent 05116af836
commit c458f34d54
7 changed files with 35 additions and 21 deletions

View File

@ -135,7 +135,7 @@
</Item29>
<Item30>
<Filename Value="lazutf16.pas"/>
<UnitName Value="lazUTF16"/>
<UnitName Value="LazUTF16"/>
</Item30>
<Item31>
<Filename Value="lazutf8sysutils.pas"/>
@ -287,7 +287,6 @@
</Item67>
<Item68>
<Filename Value="utf8process.pp"/>
<HasRegisterProc Value="True"/>
<UnitName Value="UTF8Process"/>
</Item68>
<Item69>

View File

@ -24,7 +24,6 @@ implementation
procedure Register;
begin
RegisterUnit('UTF8Process', @UTF8Process.Register);
end;
initialization

View File

@ -33,7 +33,7 @@ interface
uses
Classes, LCLProc, Controls, Forms, Buttons, SysUtils, Graphics,
// register IDE base packages
RegisterLCL, FCLLaz, allsynedit, LazControls, LazarusPackageIntf,
LazarusPackageIntf, RegisterLCL, PkgRegisterBase, allsynedit, LazControls,
// IDE
ObjectInspector, Designer, IDECommands, FormEditingIntf, CustomFormEditor;

View File

@ -1302,6 +1302,7 @@
<Unit230>
<Filename Value="formeditor.pp"/>
<IsPartOfProject Value="True"/>
<UnitName Value="FormEditor"/>
</Unit230>
<Unit231>
<Filename Value="revision.inc"/>

View File

@ -58,7 +58,6 @@ begin
RegisterUnit('LazHelpHTML',@LazHelpHTML.Register);
RegisterUnit('PopupNotifier', @PopupNotifier.Register);
RegisterUnit('AsyncProcess', @AsyncProcess.Register);
RegisterUnit('UTF8Process', @UTF8Process.Register);
RegisterUnit('ShellCtrls', @ShellCtrls.Register);
RegisterUnit('XMLPropStorage',@XMLPropStorage.Register);
RegisterUnit('IniPropStorage',@IniPropStorage.Register);

View File

@ -1550,9 +1550,12 @@ begin
if StaticPackages=nil then exit;
Quiet:=false;
// register IDE's FCL components
// register components in Lazarus packages
for i:=0 to StaticPackages.Count-1 do begin
StaticPackage:=PRegisteredPackage(StaticPackages[i]);
//debugln(['TPkgManager.LoadStaticCustomPackages ',StaticPackage^.Name]);
// check package name
if not IsValidPkgName(StaticPackage^.Name)
@ -1562,7 +1565,7 @@ begin
continue;
end;
// check register procedure
// check RegisterFCLBaseComponents procedure
if (StaticPackage^.RegisterProc=nil) then begin
DebugLn('Warning: (lazarus) [TPkgManager.LoadStaticCustomPackages]',
' Package "',StaticPackage^.Name,'" has no register procedure.');
@ -1573,12 +1576,7 @@ begin
APackage:=LoadInstalledPackage(StaticPackage^.Name,KeepInstalledPackages,
Quiet);
// register
if APackage=PackageGraph.FCLPackage then
// register FCL components used by the IDE itself
PackageGraph.RegisterStaticPackage(APackage,@PkgRegisterBase.Register)
else
PackageGraph.RegisterStaticPackage(APackage,StaticPackage^.RegisterProc);
PackageGraph.RegisterStaticPackage(APackage,StaticPackage^.RegisterProc);
end;
PackageGraph.SortAutoInstallDependencies;
ClearRegisteredPackages;

View File

@ -41,17 +41,14 @@ uses
{$ifdef mswindows}
ServiceManager,
{$endif}
Classes, SysUtils, Process, DB, BufDataset, SimpleIPC, XMLConf, EventLog;
Classes, SysUtils, Process, DB, BufDataset, SimpleIPC, XMLConf, EventLog,
UTF8Process;
procedure Register;
procedure RegisterFCLBaseComponents;
procedure RegisterLazUtilsComponents;
implementation
procedure RegisterProcess;
begin
RegisterComponents('System',[TProcess]);
end;
procedure RegisterDB;
begin
RegisterComponents('Data Access',[TDatasource,TBufDataset]); // this bites dbflaz
@ -79,17 +76,38 @@ begin
end;
{$endif mswindows}
procedure Register;
procedure RegisterProcess;
begin
RegisterComponents('System',[TProcess]);
end;
procedure RegisterFCLBaseComponents;
begin
RegisterUnit('DB',@RegisterDB);
RegisterUnit('Process',@RegisterProcess);
RegisterUnit('SimpleIPC', @RegisterSimpleIPC);
RegisterUnit('XMLConf',@RegisterXMLConf);
RegisterUnit('EventLog',@RegisterEventLog);
{$ifdef mswindows}
RegisterUnit('ServiceManager',@RegisterServiceManager);
{$endif mswindows}
RegisterUnit('Process',@RegisterProcess);
end;
procedure RegisterUTF8Process;
begin
RegisterComponents('System',[TProcessUTF8]);
end;
procedure RegisterLazUtilsComponents;
begin
RegisterUnit('UTF8Process',@RegisterUTF8Process);
end;
initialization
// register package FCL and LazUtils here to avoid pulling in all units
// and to keep those package clean of designtime code.
RegisterPackage('FCL', @RegisterFCLBaseComponents);
RegisterPackage('LazUtils', @RegisterLazUtilsComponents);
end.