Scripting System Panels
Contents
Parent page: Scripting
Scripting Panels
The Altium Designer Scripting system offers a range of panels to support both writing and debugging scripts.
Panels that support building a user interface in a script Form design are:
- The Object Inspector panel
- The Tool Palette panel
Panels that assist the script debugging process are:
- The Code Explorer panel
- The Watch List panel
- The Breakpoints panel
- The Call Stack panel
The scripting panels can be accessed through Altium Designer's main menu (View » Workspace Panels » Script), or from the Script button at the bottom right of the design window.
The available Scripting panels.
Breakpoints Panel
Breakpoints, indicated on a script line by red highlighting, pause a script's execution when they are encoutered.
Controlling scripts with breakpoints allows you to execute single lines of code, an entire function or a specified script block. Breakpoints must be set on a line that contains a valid statement (rather than a blank or comment line), and are stored in the project associated with a script.
The Breakpoints Panel provides access to a project's defined breakpoints (in all opened scripts) so they are easy to locate and manage. The panel can be opened using the Ctrl+Alt+B shortcut.
Manage, add and edit script breakpoints in the Breakpoints Panel.
The breakpoints listed in the Breakpoints panel can be modified, disabled and removed via a right-click context menu. Breakpoints are usually added to a script by clicking in the editor gutter, but can also be added using the Breakpoints panel Right-click » Add menu and the Add New Breakpoint dialog.
The panel's right-click context menu offers a range of breakpoint managment options.
Call Stack Panel
The Call Stack panel enables you to view the chain of procedure/function calls that has led to the current point of execution in the script being debugged.
As a script is run or stepped through, the panel will sequentially log the name of any functions or procedures that are entered into, which effectively shows the relationship between the descendant function/procedure calls as they occur. The panel can be opened using the Ctrl+Alt+S shortcut.
The Call Stack Panel with a chain of procedure calls.
Code Explorer Panel
The Code Explorer panel displays a visual summary of the variables, functions and procedures (along with their parameters) for the currently focused script. The panel can be opened using the Ctrl+Alt+E shortcut.
The Code Explorer Panel showing the available variables and procedures in an example script.
Within the panel, global variables used in a current script are marked as aqua boxes under the Variables folder. In the Procedures & Functions folder, the functions used are marked with purple boxes along with yellow flash, and procedures are marked as purple boxes. Variable Parameters used in procedure/functions are marked with purple and aqua boxes.
Watch List Panel
The Watch List panel is used to track the values of variables or expressions as a script is debugged.
The values of the specified 'watch' expressions are evaluated as the script lines are stepped through, so any changes the script makes to those values will be immediately reflected in the Watch List panel. The panel can be opened using the Ctrl+Alt+W shortcut.
The Watch List panel with expressions and their values from the current script.
Expressions in the panel's list can be edited, added and deleted using the right-click context menu.
Add, delete or edit watched expressions using the panel's right-click menu.
An expression can be directly added to the Watch list by right-clicking on the expression/variable in the script code and selecting Add Watch from the context menu.
Object Inspector Panel
The Object Inspector panel provides a snapshot of the attributes (properties and events) of the current form component, or the form itself. The panel can be opened using the Ctrl+Alt+I shortcut.
The panel allows you to interrogate and edit the properties and events of components in the active script form. For example, the appearance and behavior properties of windowed control objects (such as those placed from the Tool Palette) can be edited via the Properties tab, while its event handlers can be defined and edited under the Events tab. (see below).
The Object Inspector panel exposes the Properties and Events for the current script form.
Form components have three items: Properties, Events and Methods. Properties and Events can displayed in the panel for the currently focused component by selecting the Properties or Events tabs.
The script method (event handler procedure) associated with a control event shown in the panel, such as a button click, can be located by double clicking on the event entry field in the panel. When a new event is created, a matching procedure structure is automatically implemented in the code.
Locating a component event procedure from the Object Inspector panel's Event view.
Tool Palette Panel
The Tool Palette panel provides a wide range of visual components (window controls) that are used to build script forms.
The palette is based on the Delphi's Visual Component Library (VCL), and is organized in tabbed categories. The panel can be opened using the Ctrl+Alt+P shortcut.
Use the Tool Palette panel to place components on a script Form design.
Components can be placed on a script form by double clicking the component symbol in the Tool Palette panel, or clicking the symbol once and then clicking on the form to place the component.
The Tool Palette's collapsible category sections are organized as follows:
Tool Palette Tab name | Description |
---|---|
Standard | Standard controls and menus. |
Additional | Specialized controls. |
Win32 | Common Window controls such as RichEdit, TrackBar and Coolbar components. |
System | Components and controls for system level access, including timers, multimedia and DDE. |
Dialogs | Commonly used dialogs such as Open dialog, Font dialog and Print dialog components. |
Altium Standard | Standard controls and menus but with the Windows XP look and feel. |
Instrument Controls | Specific components (buttons, displays, knobs) for designing an Altium Designer Custom Instrument GUI. |