What is Incisor?
Tutorials
Key Concepts
Reddit
Stack Overflow
Configuration Settings
Deprecation Schedule

InspectorPanel(panelTypeName, includeBodyScrollingPanel (opt), includeHeaderScrollingPanel (opt))

Object defining an inspector panel within the Incisor GUI. Custom panels can be defined and registered in Incisor extensions code placed in the 'Utilities/ProjectExtensions' directory within the project, or within the 'Global Extensions' directory in the application support directory (available from within the Incisor menu). To make a custom panel, define a class that extends this class, populating the 'headerScrollingPanel' and 'bodyScrollingPanel' members with the desired custom content. Then call 'nce.registerInspectorPanelDefinition' with the newly defined class as a parameter and the new panel should appear in the panel options menu. [REQUIREMENT: unpublished projects only] [REQUIREMENT: user subscription access - 'extensions'] [REQUIREMENT: code placed in extensions directories]

new InspectorPanel(panelTypeName, includeBodyScrollingPanel (opt), includeHeaderScrollingPanel (opt))

Object defining an inspector panel within the Incisor GUI. Custom panels can be defined and registered in Incisor extensions code placed in the 'Utilities/ProjectExtensions' directory within the project, or within the 'Global Extensions' directory in the application support directory (available from within the Incisor menu). To make a custom panel, define a class that extends this class, populating the 'headerScrollingPanel' and 'bodyScrollingPanel' members with the desired custom content. Then call 'nce.registerInspectorPanelDefinition' with the newly defined class as a parameter and the new panel should appear in the panel options menu. [REQUIREMENT: unpublished projects only] [REQUIREMENT: user subscription access - 'extensions'] [REQUIREMENT: code placed in extensions directories]

Parameters:
Name Type Attributes Default Description
panelTypeName string  

The name of the new panel type. This is the name that will appear in the panel options drop down. This name must be unique among panel type names.

includeBodyScrollingPanel boolean <optional>
 

Boolean indicating if the InspectorPanel will have a 'bodyScrollingPanel' member. If false, the InspectorPanel will need include code responsible for populating and position the body content of the panel. [DEFAULT: true]

includeHeaderScrollingPanel boolean <optional>
 

Boolean indicating if the InspectorPanel will have a 'hearScrollingPanel' member. If false, the InspectorPanel will need include code responsible for populating and position the header content of the panel. [DEFAULT: true]

MEMBERS

bodyScrollingPanel :ScrollingPanel

The ScrollingPanel that contains the body content for this InspectorPanel. This, and 'headerScrollingPanel' are where the majority of the customization for user-defined panels take place. This will be undefined if the InspectorPanel is instantiated with 'includeHeaderScrollingPanel=false'

borderBottom :GraphicObject

The GraphicObject that serves as the bottom border of this InspectorPanel.

borderLeft :GraphicObject

The GraphicObject that serves as the left border of this InspectorPanel.

borderRight :GraphicObject

The GraphicObject that serves as the right border of this InspectorPanel.

borderTop :GraphicObject

The GraphicObject that serves as the top border of this InspectorPanel.

dividerButton :Button

Button used by 'container' panels that allow the user to change the 'divisionLocation' value. For standard 'content' panels this member is undefined.

divisionLocation :Array

Value used by 'container' panels to determine the proportion of its area that each subPanel will occupy. For standard 'content' panels this value is unused.

exButton :UiGraphicButton

The UiGraphicButton serving as the 'x' button on the righthand side of the InspectorPanel's menu bar. Users use this button to close this InspectorPanel.

headerDivider :GraphicObject

A thin line between the headerScrollingPanel and bodyScrollingPanel

headerScrollingPanel :ScrollingPanel

The ScrollingPanel that contains the header content for this InspectorPanel. This, and 'bodyScrollingPanel' are where the majority of the customization for user-defined panels take place. This will be undefined if the InspectorPanel is instantiated with 'includeBodyScrollingPanel=false'

headerScrollingPanelCoreHeight :number

The core height of the headerScrollingPanel (before uiZoom is applied).

readonly headerScrollingPanelHeight :number

The current height of this InspectorPanel's headerScrollingPanel, with uiZoom factored in.

inheritedTypes :object

Dictionary object listing all of the types this object is compatible with.

readonly inspectorPanelUid :number

The unique identifier for this InspectorPanel.

isColumns :Array

Boolean value used by 'container' panels to determine if its subPanels are side-by-side or top-and-bottom. For standard 'content' panels this value is unused.

leftMenuStack :LayoutStack

The horizontal LayoutStack on the left side of the InspectorPanel's menu bar. This LayoutStack contains the panel type selection UiDropDownMenu.

The UiPanel/Button that serves as the background for this InspectorPanel's menu bar.

The current height of this InspectorPanel's menu bar.

readonly panelHeight :number

The current height of the InspectorPanel.

panelMaskGraphic :Button

This Button serves as a mask for the 'panelTypeMenu', 'plusButton', and 'exButton', ensuring that those items don't extend outside of the menu bar
regardless of the uiZoom and size/aspect-ratio of the InspectorPanel.

panelType :string

The name of the panel type. This is the name that will appear within the panel options drop down menu.

panelTypeMenu :UiDropDownMenu

The drop down mene containing all of the panel type options. This menu is what is used by the users to select different panels.

readonly panelWidth :number

The current width of the InspectorPanel.

plusButton :UiGraphicButton

The UiGraphicButton serving as the '+' button on the righthand side of the InspectorPanel's menu bar. Users use this button to add subPanels to this InspectorPanel.

quadrantButtonBottom :UiPanel|Button

The 'quadrantButton' that enables the user to select the bottom portion of this InspectorPanel.

quadrantButtonContainer :SceneObject

SceneObject containing the 'quadrantButtons', which are the Buttons that enable the user to select the top, bottom, left, or right portionm of the InspectorPanel.

quadrantButtonLeft :UiPanel|Button

The 'quadrantButton' that enables the user to select the left portion of this InspectorPanel.

quadrantButtonRight :UiPanel|Button

The 'quadrantButton' that enables the user to select the right portion of this InspectorPanel.

quadrantButtonTop :UiPanel|Button

The 'quadrantButton' that enables the user to select the top portion of this InspectorPanel.

rightMenuStack :LayoutStack

The horizontal LayoutStack on the right side of the InspectorPanel's menu bar. This LayoutStack contains the '+' button and the 'x' button.

rolloverButton :Button

The Button responsible for setting the 'nc.singularFocusObject' to each InspectorPanel as the user's cursor moves over it (via 'addCursorInCallback').

subPanels :Array

Array containing the subPanels of this InspectorPanel. For standard 'content' panels, this array will be be empty, as subpanels are only present in InspectorPanels that are strictly 'container' panels.

type :string

The type indicator for this object.

METHODS

addResizeCallback(callbackOwner, callbackName, callbackArgs (opt))

Adds a callback that occurs whenever the InspectorPanel is resized.

Parameters:
Name Type Attributes Default Description
callbackOwner object  

The object owning the callback function.

callbackName string  

The name of the callback function.

callbackArgs Array | any <optional>
 

Arguments for the callback function.

removeResizeCallback(callbackOwner, callbackName)

Removes the given callback for when the InspectorPanel is resized.

Parameters:
Name Type Attributes Default Description
callbackOwner object    

The object owning the callback function.

callbackName string    

The name of the callback function.