* Merging revisions r46444 from trunk:

------------------------------------------------------------------------
    r46444 | michael | 2020-08-15 09:31:43 +0200 (Sat, 15 Aug 2020) | 1 line
    
    * Expose ExtraUnits, remove hardcoded DTypesUnit, patch by Henrique Werlang (bug ID 37570)
    ------------------------------------------------------------------------

git-svn-id: branches/fixes_3_2@46625 -
This commit is contained in:
michael 2020-08-23 09:46:45 +00:00
parent a5a787d74b
commit 96f515cff8
2 changed files with 8 additions and 12 deletions

View File

@ -153,6 +153,11 @@ begin
TStubCreator(P).OnUnitAliasData:=CallBackData;
end;
Procedure AddStubCreatorExtraUnit(P : PStubCreator; AUnitName : PAnsiChar); stdcall;
begin
TStubCreator(P).ExtraUnits:=AUnitName;
end;
exports
// Stub creator
GetStubCreator,
@ -166,6 +171,7 @@ exports
GetStubCreatorLastError,
AddStubCreatorDefine,
AddStubCreatorForwardClass,
AddStubCreatorExtraUnit,
ExecuteStubCreator,
SetStubCreatorUnitAliasCallBack;

View File

@ -19,9 +19,6 @@ interface
uses
Classes, SysUtils, strutils, inifiles, pscanner, pparser, pastree, iostream, paswrite;
Const
DTypesUnit = 'jsdelphisystem';
type
{ We have to override abstract TPasTreeContainer methods }
@ -90,6 +87,7 @@ type
Property OnUnitAliasData : Pointer Read FOnUnitAliasData Write FOnUnitAliasData;
Property OnWriteCallBack : TWriteCallBack Read FOnWriteCallBack Write SetWriteCallback;
Property CallbackData : Pointer Read FCallBackData Write FCallBackData;
Property ExtraUnits : String Read FExtraUnits write FExtraUnits;
Published
Property Defines : TStrings Read FDefines Write SetDefines;
Property ConfigFileName : String Read FConfigFile Write FConfigFile;
@ -390,7 +388,6 @@ procedure TStubCreator.WriteModule(M: TPasModule);
Var
F,H : TStream;
W : TPasWriter;
U : String;
begin
W:=Nil;
@ -411,18 +408,11 @@ begin
end;
W:=TPasWriter.Create(F);
W.Options:=FOptions;
U:=FExtraUnits;
W.ExtraUnits:=FExtraUnits;
if Assigned(FOnUnitAlias) then
W.OnUnitAlias:=@CheckUnitAlias;
if Pos(LowerCase(DTypesUnit),LowerCase(U)) = 0 then
begin
if (U<>'') then
U:=','+U;
U:=DTypesUnit+U;
end;
W.ExtraUnits:=U;
if FIndentSize<>-1 then
W.IndentSize:=FIndentSize;
if FLineNumberWidth>0 then