Definitions

class mhi.pscad.Definition

Component Definition

property project_name: str

The project which defines this definition (read-only)

property scope: str

The project which defines this definition (read-only)

property name: str

Name of the definition (read-only)

property scoped_name: str

The scoped definition name is the project and definition names, separated by a colon (read-only)

property instances: int

Number of live instances of this definition (read-only)

New in version 2.8.

property xml

XML for the Definition (read-only)

is_module() bool

Check to see if this component has its own canvas, with in turn, can contain additional components.

Returns:

True if the component has an internal canvas, False otherwise.

Return type:

bool

parameters(*, name=None, desc=None, url=None, group=None, tags=None) Optional[Dict[str, str]]

Set or get the definition’s parameters.

Parameters:
  • name (str) – The definition name. Must be unique, alphanumeric, and a maximum of 30 characters

  • desc (str) – A short description for the definition

  • url (str) – Location if loaded from an external resource

  • group (str) – One or more labels to describe group categorization (Comma separated)

  • tags (str) – One or more tags to help find this definition (Comma separated)

Returns:

A dictionary of parameter values (if no parameters are being set), or None.

compile() None

Compile this component definition page

navigate_to() Canvas

Attempt to navigate to the first instance if possible

Returns:

The definition’s canvas

Return type:

Canvas

set_view(view: Union[str, View]) None

Activate the appropriate definition editor tab

Valid view tabs are one of the strings: “Schematic”, “Graphic”, “Parameters”, “Script”, “Fortran”, “Data”, or the equivalent View constant.

Parameters:

view – The desired view tab

canvas() Canvas

Definition canvas

graphics() GfxCanvas

Get the graphics canvas

New in version 2.2.

copy() None

Copy the definition to the clipboard.

property script

The definition’s script sections are accessed with this property.

Examples:

checks = defn.script['Checks']       # Get script section
defn.script['Computations'] = "..."  # Add/Change script section
del defn.script['FlyBy']             # Delete script section

New in version 2.2.