Difference between revisions of "CreateNewObject"

m
m
 
Line 1: Line 1:
 
[[category:Meta-Inference Functions]]
 
[[category:Meta-Inference Functions]]
 +
 +
Normally, you, as a modeler, create new objects by dragginge a new node from the [[Create and edit node|Node toolbar]] into a Diagram.
 +
This function lets you write functions or buttons to automate creation of new objects, or an entire module.
  
 
== CreateNewObject(class, inModule'', title, identifier, original'') ==
 
== CreateNewObject(class, inModule'', title, identifier, original'') ==
  
Create a new Analytica object with the specified class, in specified module, and return a [[handle]] to it.   
+
Create a new Analytica object with the specified «class» in the module «inModule», and return a [[handle]] to the new object.   
  
 
Key phrases: Make Object, New Object, Create Object, Make variable, New variable, Create variable
 
Key phrases: Make Object, New Object, Create Object, Make variable, New variable, Create variable
Line 12: Line 15:
 
*«title»:  optional text for the Title attribute of the new object.
 
*«title»:  optional text for the Title attribute of the new object.
 
*«identifier»: the desired identifier. If that identifier is already in use, it adds digits to the end to make a unique identifier.  If not specified, it uses the «title» or «class» to generate an identifier.
 
*«identifier»: the desired identifier. If that identifier is already in use, it adds digits to the end to make a unique identifier.  If not specified, it uses the «title» or «class» to generate an identifier.
*«original»: if the object is an Alias or FormNode (User input or output), this is the original object to which it refers.
+
*«original»: If «class» is an Alias or FormNode (User input or output), the new object will refer to this original object.
 
+
The creation of a new object is a side-effect -- i.e. it makes a permanent change to the model -- so you can only use CreateNewObject in a button's [[OnClick]] attribute (or  the [[Typescript Window]]) or a Function called from [[OnClick]]. You cannot use it in the definition of a Variable.
+
  
== Usage ==
+
The creation of a new object is a [[side-effect]] -- i.e. it makes a permanent change to the model -- so you can only use CreateNewObject in a button's [[OnClick]] attribute (or the [[Typescript Window]]) or a Function called from [[OnClick]]. You cannot use it in the definition of a Variable.
Normally, you, as a modeler, create new objects using the Object menu.
+
This function lets you write functions or buttons to automate the copying or creation of new objects, or an entire module, or create "diagrams as drawings" to depict information.
+
  
 
==History==
 
==History==

Latest revision as of 23:21, 6 June 2020


Normally, you, as a modeler, create new objects by dragginge a new node from the Node toolbar into a Diagram. This function lets you write functions or buttons to automate creation of new objects, or an entire module.

CreateNewObject(class, inModule, title, identifier, original)

Create a new Analytica object with the specified «class» in the module «inModule», and return a handle to the new object.

Key phrases: Make Object, New Object, Create Object, Make variable, New variable, Create variable

Parameters:

  • «class»: the Classs or type of the new object, such as Variable, Chance, Index, Module, FormNode, etc.
  • «inModule»: the parent module to contain this object. It tries to position the node in the first available empty space in the diagram for this module.
  • «title»: optional text for the Title attribute of the new object.
  • «identifier»: the desired identifier. If that identifier is already in use, it adds digits to the end to make a unique identifier. If not specified, it uses the «title» or «class» to generate an identifier.
  • «original»: If «class» is an Alias or FormNode (User input or output), the new object will refer to this original object.

The creation of a new object is a side-effect -- i.e. it makes a permanent change to the model -- so you can only use CreateNewObject in a button's OnClick attribute (or the Typescript Window) or a Function called from OnClick. You cannot use it in the definition of a Variable.

History

Introduced in Analytica 5.0.

See Also

Comments


You are not allowed to post comments.