Browse Source

fcl-js: TJSCallExpression.InsertArg

git-svn-id: trunk@47271 -
(cherry picked from commit 04de97bc091ca90ab85cf20e004aa93377677467)
Mattias Gaertner 4 years ago
parent
commit
5b24dcfba6
1 changed files with 10 additions and 1 deletions
  1. 10 1
      packages/fcl-js/src/jstree.pp

+ 10 - 1
packages/fcl-js/src/jstree.pp

@@ -230,7 +230,7 @@ Type
     Property Elements[AIndex : Integer] : TJSArrayLiteralElement Read GetE ; default;
     Property Elements[AIndex : Integer] : TJSArrayLiteralElement Read GetE ; default;
   end;
   end;
 
 
-  { TJSArrayLiteral - [element1,...] }
+  { TJSArrayLiteral - [element1,...] or Args of a function }
 
 
   TJSArrayLiteral = Class(TJSElement)
   TJSArrayLiteral = Class(TJSElement)
   private
   private
@@ -328,6 +328,7 @@ Type
   Public
   Public
     Destructor Destroy; override;
     Destructor Destroy; override;
     procedure AddArg(El: TJSElement);
     procedure AddArg(El: TJSElement);
+    procedure InsertArg(Index: integer; El: TJSElement);
     Property Expr : TJSElement Read FExpr Write FExpr;
     Property Expr : TJSElement Read FExpr Write FExpr;
     Property Args : TJSArguments Read FArgs Write FArgs;
     Property Args : TJSArguments Read FArgs Write FArgs;
   end;
   end;
@@ -1698,6 +1699,14 @@ begin
   Args.Elements.AddElement.Expr:=El;
   Args.Elements.AddElement.Expr:=El;
 end;
 end;
 
 
+procedure TJSCallExpression.InsertArg(Index: integer; El: TJSElement);
+var
+  NewEl: TJSArrayLiteralElement;
+begin
+  NewEl:=TJSArrayLiteralElement(Args.Elements.Insert(Index));
+  NewEl.Expr:=El;
+end;
+
 { TJSUnary }
 { TJSUnary }
 
 
 Class function TJSUnary.PrefixOperatorToken: tjsToken;
 Class function TJSUnary.PrefixOperatorToken: tjsToken;