"HAS_EXP_TREE" define to handle fcl-passrc expressions
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2586 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
parent
94db8aae9b
commit
467d62d6d7
@ -100,7 +100,11 @@ var
|
||||
p.VarType := tr.FindElement(ATypeName) as TPasType;
|
||||
Check( (p.VarType <> nil), Format('Type not found : "%s".',[ATypeName]));
|
||||
p.VarType.AddRef();
|
||||
{$IFDEF HAS_EXP_TREE}
|
||||
p.DefaultExpr := TPrimitiveExpr.Create(p,pekString,ADefault);
|
||||
{$ELSE HAS_EXP_TREE}
|
||||
p.DefaultValue := ADefault;
|
||||
{$ENDIF HAS_EXP_TREE}
|
||||
p.Visibility := visPublished;
|
||||
p.StoredAccessorName := 'True';
|
||||
if ( AKind = ptAttribute ) then
|
||||
@ -166,7 +170,11 @@ var
|
||||
p.VarType := tr.FindElement(ATypeName) as TPasType;
|
||||
Check( (p.VarType <> nil), Format('Type not found : "%s".',[ATypeName]));
|
||||
p.VarType.AddRef();
|
||||
{$IFDEF HAS_EXP_TREE}
|
||||
p.DefaultExpr := TPrimitiveExpr.Create(p,pekString,ADefault);
|
||||
{$ELSE HAS_EXP_TREE}
|
||||
p.DefaultValue := ADefault;
|
||||
{$ENDIF HAS_EXP_TREE}
|
||||
p.Visibility := visPublished;
|
||||
p.StoredAccessorName := 'True';
|
||||
if ( AKind = ptAttribute ) then
|
||||
@ -235,7 +243,11 @@ var
|
||||
p.VarType := tr.FindElement(ATypeName) as TPasType;
|
||||
Check( (p.VarType <> nil), Format('Type not found : "%s".',[ATypeName]));
|
||||
p.VarType.AddRef();
|
||||
{$IFDEF HAS_EXP_TREE}
|
||||
p.DefaultExpr := TPrimitiveExpr.Create(p,pekString,ADefault);
|
||||
{$ELSE HAS_EXP_TREE}
|
||||
p.DefaultValue := ADefault;
|
||||
{$ENDIF HAS_EXP_TREE}
|
||||
p.Visibility := visPublished;
|
||||
p.StoredAccessorName := 'True';
|
||||
if ( AKind = ptAttribute ) then
|
||||
@ -305,7 +317,11 @@ var
|
||||
p.VarType := tr.FindElement(ATypeName) as TPasType;
|
||||
Check( (p.VarType <> nil), Format('Type not found : "%s".',[ATypeName]));
|
||||
p.VarType.AddRef();
|
||||
{$IFDEF HAS_EXP_TREE}
|
||||
p.DefaultExpr := TPrimitiveExpr.Create(p,pekString,ADefault);
|
||||
{$ELSE HAS_EXP_TREE}
|
||||
p.DefaultValue := ADefault;
|
||||
{$ENDIF HAS_EXP_TREE}
|
||||
p.Visibility := visPublished;
|
||||
p.StoredAccessorName := 'True';
|
||||
if ( AKind = ptAttribute ) then
|
||||
@ -378,7 +394,11 @@ var
|
||||
p.VarType := tr.FindElement(ATypeName) as TPasType;
|
||||
Check( (p.VarType <> nil), Format('Type not found : "%s".',[ATypeName]));
|
||||
p.VarType.AddRef();
|
||||
{$IFDEF HAS_EXP_TREE}
|
||||
p.DefaultExpr := TPrimitiveExpr.Create(p,pekString,ADefault);
|
||||
{$ELSE HAS_EXP_TREE}
|
||||
p.DefaultValue := ADefault;
|
||||
{$ENDIF HAS_EXP_TREE}
|
||||
p.Visibility := visPublished;
|
||||
p.StoredAccessorName := 'True';
|
||||
if ( AKind = ptAttribute ) then
|
||||
@ -441,7 +461,11 @@ var
|
||||
p.VarType := tr.FindElement(ATypeName) as TPasType;
|
||||
Check( (p.VarType <> nil), Format('Type not found : "%s".',[ATypeName]));
|
||||
p.VarType.AddRef();
|
||||
{$IFDEF HAS_EXP_TREE}
|
||||
p.DefaultExpr := TPrimitiveExpr.Create(p,pekString,ADefault);
|
||||
{$ELSE HAS_EXP_TREE}
|
||||
p.DefaultValue := ADefault;
|
||||
{$ENDIF HAS_EXP_TREE}
|
||||
p.Visibility := visPublished;
|
||||
p.StoredAccessorName := 'True';
|
||||
if ( AKind = ptAttribute ) then
|
||||
@ -503,7 +527,11 @@ var
|
||||
p.VarType := tr.FindElement(ATypeName) as TPasType;
|
||||
Check( (p.VarType <> nil), Format('Type not found : "%s".',[ATypeName]));
|
||||
p.VarType.AddRef();
|
||||
{$IFDEF HAS_EXP_TREE}
|
||||
p.DefaultExpr := TPrimitiveExpr.Create(p,pekString,ADefault);
|
||||
{$ELSE HAS_EXP_TREE}
|
||||
p.DefaultValue := ADefault;
|
||||
{$ENDIF HAS_EXP_TREE}
|
||||
p.Visibility := visPublished;
|
||||
p.StoredAccessorName := 'True';
|
||||
if ( AKind = ptAttribute ) then
|
||||
@ -1013,7 +1041,11 @@ var
|
||||
p.VarType := tr.FindElement(ATypeName) as TPasType;
|
||||
Check( (p.VarType <> nil), Format('Type not found : "%s".',[ATypeName]));
|
||||
p.VarType.AddRef();
|
||||
{$IFDEF HAS_EXP_TREE}
|
||||
p.DefaultExpr := TPrimitiveExpr.Create(p,pekString,ADefault);
|
||||
{$ELSE HAS_EXP_TREE}
|
||||
p.DefaultValue := ADefault;
|
||||
{$ENDIF HAS_EXP_TREE}
|
||||
p.Visibility := visPublished;
|
||||
p.StoredAccessorName := 'True';
|
||||
if ( AKind = ptAttribute ) then
|
||||
@ -1074,7 +1106,11 @@ var
|
||||
p.VarType := tr.FindElement(ATypeName) as TPasType;
|
||||
Check( (p.VarType <> nil), Format('Type not found : "%s".',[ATypeName]));
|
||||
p.VarType.AddRef();
|
||||
{$IFDEF HAS_EXP_TREE}
|
||||
p.DefaultExpr := TPrimitiveExpr.Create(p,pekString,ADefault);
|
||||
{$ELSE HAS_EXP_TREE}
|
||||
p.DefaultValue := ADefault;
|
||||
{$ENDIF HAS_EXP_TREE}
|
||||
p.Visibility := visPublished;
|
||||
p.StoredAccessorName := 'True';
|
||||
if ( AKind = ptAttribute ) then
|
||||
@ -1135,7 +1171,11 @@ var
|
||||
p.VarType := tr.FindElement(ATypeName) as TPasType;
|
||||
Check( (p.VarType <> nil), Format('Type not found : "%s".',[ATypeName]));
|
||||
p.VarType.AddRef();
|
||||
{$IFDEF HAS_EXP_TREE}
|
||||
p.DefaultExpr := TPrimitiveExpr.Create(p,pekString,ADefault);
|
||||
{$ELSE HAS_EXP_TREE}
|
||||
p.DefaultValue := ADefault;
|
||||
{$ENDIF HAS_EXP_TREE}
|
||||
p.Visibility := visPublished;
|
||||
p.StoredAccessorName := 'True';
|
||||
if ( AKind = ptAttribute ) then
|
||||
@ -1236,7 +1276,11 @@ begin
|
||||
mdl.InterfaceSection := TInterfaceSection(tr.CreateElement(TInterfaceSection,'',mdl,visDefault,'',0));
|
||||
cltyp := TPasClassType(tr.CreateElement(TPasClassType,'IEchoService',mdl.InterfaceSection,visDefault,'',0));
|
||||
cltyp.ObjKind := okInterface;
|
||||
{$IFDEF HAS_EXP_TREE}
|
||||
cltyp.GUIDExpr := TPrimitiveExpr.Create(cltyp,pekString,'{FCD0F68F-3023-46C6-AD09-1DDA4A2989EB}');
|
||||
{$ELSE HAS_EXP_TREE}
|
||||
cltyp.InterfaceGUID := '{FCD0F68F-3023-46C6-AD09-1DDA4A2989EB}';
|
||||
{$ENDIF HAS_EXP_TREE}
|
||||
mdl.InterfaceSection.Declarations.Add(cltyp);
|
||||
mdl.InterfaceSection.Types.Add(cltyp);
|
||||
tr.AddBinding('IEchoServiceBinding',cltyp);
|
||||
|
@ -1,7 +1,7 @@
|
||||
object fPropEdit: TfPropEdit
|
||||
Left = 979
|
||||
Left = 486
|
||||
Height = 326
|
||||
Top = 146
|
||||
Top = 236
|
||||
Width = 324
|
||||
HorzScrollBar.Page = 323
|
||||
VertScrollBar.Page = 325
|
||||
@ -11,7 +11,7 @@ object fPropEdit: TfPropEdit
|
||||
ClientHeight = 326
|
||||
ClientWidth = 324
|
||||
Position = poDesktopCenter
|
||||
LCLVersion = '0.9.29'
|
||||
LCLVersion = '0.9.31'
|
||||
object Panel1: TPanel
|
||||
Left = 0
|
||||
Height = 50
|
||||
|
@ -1,11 +1,11 @@
|
||||
{ This is an automatically generated lazarus resource file }
|
||||
|
||||
LazarusResources.Add('TfPropEdit','FORMDATA',[
|
||||
'TPF0'#10'TfPropEdit'#9'fPropEdit'#4'Left'#3#211#3#6'Height'#3'F'#1#3'Top'#3
|
||||
+#146#0#5'Width'#3'D'#1#18'HorzScrollBar.Page'#3'C'#1#18'VertScrollBar.Page'#3
|
||||
'TPF0'#10'TfPropEdit'#9'fPropEdit'#4'Left'#3#230#1#6'Height'#3'F'#1#3'Top'#3
|
||||
+#236#0#5'Width'#3'D'#1#18'HorzScrollBar.Page'#3'C'#1#18'VertScrollBar.Page'#3
|
||||
+'E'#1#11'BorderIcons'#11#12'biSystemMenu'#0#11'BorderStyle'#7#8'bsDialog'#7
|
||||
+'Caption'#6#9'fPropEdit'#12'ClientHeight'#3'F'#1#11'ClientWidth'#3'D'#1#8'Po'
|
||||
+'sition'#7#15'poDesktopCenter'#10'LCLVersion'#6#6'0.9.29'#0#6'TPanel'#6'Pane'
|
||||
+'sition'#7#15'poDesktopCenter'#10'LCLVersion'#6#6'0.9.31'#0#6'TPanel'#6'Pane'
|
||||
+'l1'#4'Left'#2#0#6'Height'#2'2'#3'Top'#3#20#1#5'Width'#3'D'#1#5'Align'#7#8'a'
|
||||
+'lBottom'#12'ClientHeight'#2'2'#11'ClientWidth'#3'D'#1#8'TabOrder'#2#0#0#7'T'
|
||||
+'Button'#7'Button1'#4'Left'#3#236#0#6'Height'#2#25#3'Top'#2#10#5'Width'#2'K'
|
||||
|
@ -12,7 +12,7 @@ object fInterfaceEdit: TfInterfaceEdit
|
||||
ClientWidth = 531
|
||||
OnCreate = FormCreate
|
||||
Position = poDesktopCenter
|
||||
LCLVersion = '0.9.29'
|
||||
LCLVersion = '1.0.1.4'
|
||||
object Panel1: TPanel
|
||||
Left = 0
|
||||
Height = 50
|
||||
@ -91,7 +91,7 @@ object fInterfaceEdit: TfInterfaceEdit
|
||||
Top = 0
|
||||
Width = 480
|
||||
Align = alClient
|
||||
DefaultItemHeight = 15
|
||||
DefaultItemHeight = 16
|
||||
PopupMenu = PopupMenu1
|
||||
TabOrder = 0
|
||||
end
|
||||
|
@ -1,10 +1,12 @@
|
||||
{ This is an automatically generated lazarus resource file }
|
||||
|
||||
LazarusResources.Add('TfInterfaceEdit','FORMDATA',[
|
||||
'TPF0'#15'TfInterfaceEdit'#14'fInterfaceEdit'#4'Left'#3'i'#1#6'Height'#3'4'#2
|
||||
+#3'Top'#3'%'#1#5'Width'#3#19#2#18'HorzScrollBar.Page'#3#18#2#18'VertScrollBa'
|
||||
+'r.Page'#3'3'#2#13'ActiveControl'#7#7'Button1'#11'BorderStyle'#7#13'bsSizeTo'
|
||||
+'olWin'#7'Caption'#6#14'fInterfaceEdit'#12'ClientHeight'#3'4'#2#11'ClientWid'
|
||||
+'th'#3#19#2#8'OnCreate'#7#10'FormCreate'#8'Position'#7#15'poDesktopCenter'#10
|
||||
+'LCLVersion'#6#6'0.9.29'#0#6'TPanel'#6'Panel1'#4'Left'#2#0#6'Height'#2'2'#3
|
||||
+'LCLVersion'#6#7'1.0.1.4'#0#6'TPanel'#6'Panel1'#4'Left'#2#0#6'Height'#2'2'#3
|
||||
+'Top'#3#2#2#5'Width'#3#19#2#5'Align'#7#8'alBottom'#12'ClientHeight'#2'2'#11
|
||||
+'ClientWidth'#3#19#2#8'TabOrder'#2#0#0#7'TButton'#7'Button1'#4'Left'#3#180#1
|
||||
+#6'Height'#2#25#3'Top'#2#10#5'Width'#2'K'#7'Anchors'#11#5'akTop'#7'akRight'#0
|
||||
@ -24,7 +26,7 @@ LazarusResources.Add('TfInterfaceEdit','FORMDATA',[
|
||||
+'Bottom'#0#7'Caption'#6#11' Methods '#12'ClientHeight'#3'^'#1#11'ClientWid'
|
||||
+'th'#3#224#1#8'TabOrder'#2#1#0#9'TTreeView'#10'trvMethods'#4'Left'#2#0#6'Hei'
|
||||
+'ght'#3'^'#1#3'Top'#2#0#5'Width'#3#224#1#5'Align'#7#8'alClient'#17'DefaultIt'
|
||||
+'emHeight'#2#15#9'PopupMenu'#7#10'PopupMenu1'#8'TabOrder'#2#0#0#0#0#7'TButto'
|
||||
+'emHeight'#2#16#9'PopupMenu'#7#10'PopupMenu1'#8'TabOrder'#2#0#0#0#0#7'TButto'
|
||||
+'n'#7'Button3'#4'Left'#2#20#6'Height'#2#25#3'Top'#3#194#1#5'Width'#2'c'#6'Ac'
|
||||
+'tion'#7#12'actNewMethod'#25'BorderSpacing.InnerBorder'#2#4#8'TabOrder'#2#2#0
|
||||
+#0#7'TButton'#7'Button4'#4'Left'#3#132#0#6'Height'#2#25#3'Top'#3#194#1#5'Wid'
|
||||
|
@ -10,10 +10,9 @@
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
}
|
||||
{$INCLUDE wst_global.inc}
|
||||
unit uinterfaceedit;
|
||||
|
||||
{$mode objfpc}{$H+}
|
||||
|
||||
interface
|
||||
|
||||
uses
|
||||
@ -273,8 +272,14 @@ begin
|
||||
end;
|
||||
FObject := TPasClassType(FSymbolTable.CreateElement(TPasClassType,intName,FSymbolTable.CurrentModule.InterfaceSection,visDefault,'',0));
|
||||
FObject.ObjKind := okInterface;
|
||||
if ( CreateGUID(g) = 0 ) then
|
||||
if ( CreateGUID(g) = 0 ) then begin
|
||||
{$IFDEF HAS_EXP_TREE}
|
||||
FreeAndNil(FObject.GUIDExpr);
|
||||
FObject.GUIDExpr:=TPrimitiveExpr.Create(FObject,pekString,GUIDToString(g));
|
||||
{$ELSE HAS_EXP_TREE}
|
||||
FObject.InterfaceGUID := GUIDToString(g);
|
||||
{$ENDIF HAS_EXP_TREE}
|
||||
end;
|
||||
FSymbolTable.CurrentModule.InterfaceSection.Declarations.Add(FObject);
|
||||
FSymbolTable.CurrentModule.InterfaceSection.Types.Add(FObject);
|
||||
FSymbolTable.AddBinding(Format('%sBinding',[FObject.Name]),FObject).BindingStyle := bsRPC;
|
||||
|
@ -336,7 +336,11 @@ begin
|
||||
try
|
||||
locRes.ObjKind := okInterface;
|
||||
if ( CreateGUID(g) = 0 ) then
|
||||
{$IFDEF HAS_EXP_TREE}
|
||||
locRes.GUIDExpr:=TPrimitiveExpr.Create(locRes,pekString,GUIDToString(g));
|
||||
{$ELSE HAS_EXP_TREE}
|
||||
locRes.InterfaceGUID := GUIDToString(g);
|
||||
{$ENDIF HAS_EXP_TREE}
|
||||
c := ARawInt.Members.Count;
|
||||
if ( c > 0 ) then begin
|
||||
for i := 0 to ( c - 1 ) do begin
|
||||
|
@ -1074,7 +1074,11 @@ var
|
||||
locPartCursor := CreateCursorOn(locAttCursor.Clone() as IObjectCursor,ParseFilter(Format('%s = %s',[s_NODE_NAME,QuotedStr(s_default)]),TDOMNodeRttiExposer));
|
||||
locPartCursor.Reset();
|
||||
if locPartCursor.MoveNext() then
|
||||
{$IFDEF HAS_EXP_TREE}
|
||||
locProp.DefaultExpr:=TPrimitiveExpr.Create(locProp,pekString,(locPartCursor.GetCurrent() as TDOMNodeRttiExposer).NodeValue);
|
||||
{$ELSE HAS_EXP_TREE}
|
||||
locProp.DefaultValue := (locPartCursor.GetCurrent() as TDOMNodeRttiExposer).NodeValue;
|
||||
{$ENDIF HAS_EXP_TREE}
|
||||
ExtractExtendedMetadata(locProp,AElement);
|
||||
end;
|
||||
|
||||
|
@ -1225,9 +1225,19 @@ begin
|
||||
FModule.InterfaceSection.Classes.Add(locIntf);
|
||||
locIntf.ObjKind := okInterface;
|
||||
Result := locIntf;
|
||||
{$IFDEF HAS_EXP_TREE}
|
||||
locIntf.GUIDExpr:=TPrimitiveExpr.Create(locIntf,pekString,ParseIntfGuid());
|
||||
{$ELSE HAS_EXP_TREE}
|
||||
locIntf.InterfaceGUID := ParseIntfGuid();
|
||||
if IsStrEmpty(locIntf.InterfaceGUID) and ( CreateGUID(inft_guid) = 0 ) then
|
||||
{$ENDIF HAS_EXP_TREE}
|
||||
if IsStrEmpty(locIntf.InterfaceGUID) and ( CreateGUID(inft_guid) = 0 ) then begin
|
||||
{$IFDEF HAS_EXP_TREE}
|
||||
FreeAndNil(locIntf.GUIDExpr);
|
||||
locIntf.GUIDExpr:=TPrimitiveExpr.Create(locIntf,pekString,GUIDToString(inft_guid) );
|
||||
{$ELSE HAS_EXP_TREE}
|
||||
locIntf.InterfaceGUID := GUIDToString(inft_guid);
|
||||
{$ENDIF HAS_EXP_TREE}
|
||||
end;
|
||||
locCursor := CreateChildrenCursor(ANode,cetRttiNode);
|
||||
if Assigned(locCursor) then begin
|
||||
locOpCursor := CreateCursorOn(locCursor,ParseFilter(CreateQualifiedNameFilterStr(s_operation,FWsdlShortNames),TDOMNodeRttiExposer));
|
||||
|
Loading…
Reference in New Issue
Block a user