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.
-
menuBarBackground :UiPanel|Button
-
The UiPanel/Button that serves as the background for this InspectorPanel's menu bar.
-
readonly menubarHeight :number
-
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.