Перейти к основному содержанию

Class: ModeExtensionBase

Около 3 мин

Class: ModeExtensionBase

Base class for any mode extension for RenderManager. Mode extensions can store and restore scene state. In other words define additional mode for viewer for scene representation. For example, mode extension can colorize any elements in scene and store this scene state.

Hierarchy

Constructors

constructor

new ModeExtensionBase(viewerName, modeDesc, modeIcon): ModeExtensionBase

Parameters

NameTypeDescription
viewerNamestringOwner viewer name.
modeDescstringMode description or name.
modeIconstringMode icon name. Icon name will be used by viewer Toolbar UI component for displaying mode buttons.

Returns

ModeExtensionBase

Overrides

ExtensionBase.constructor

Properties

enableTooltip

enableTooltip: boolean

Enable or disable viewer tooltip feature for this extension.


getName

getName: () => string

Get unique extension name.

Type declaration

▸ (): string

Get unique extension name.

Returns

string

Inherited from

ExtensionBase.getName


helpDesc

Readonly helpDesc: string

Optional description for placing on HelpToolbar.

Inherited from

ExtensionBase.helpDesc


helpIcon

Readonly helpIcon: string

Optional icon for placing on HelpToolbar.

Inherited from

ExtensionBase.helpIcon


hideToolbar

hideToolbar: boolean

Is extension need to hide toolbar or not.

Inherited from

ExtensionBase.hideToolbar


modeDesc

Readonly modeDesc: string

Mode description or name.


modeIcon

Readonly modeIcon: string

Mode icon name. Icon name will be used by viewer Toolbar UI component for displaying mode buttons.


showTooltip

showTooltip: boolean

Show or hide viewer tooltip feature if enableTooltip == true.


state

state: any

Any extension data which can be stored in browser local storage and restored after (any extension settings, buttons state and so one). State will be saved in local storage with 'tangl-ext-extensionName' key.

Inherited from

ExtensionBase.state


type

Readonly type: string

Extension type (ext, mode, control).

Overrides

ExtensionBase.type


viewerName

Readonly viewerName: string

Owner viewer name.

Inherited from

ExtensionBase.viewerName


getName

Static getName: () => string

Get unique extension name.

Type declaration

▸ (): string

Get unique extension name.

Returns

string

Inherited from

ExtensionBase.getName

Methods

clearData

clearData(): void

Clear resource array, details array and elements list.

Returns

void


getRenderManager

getRenderManager(): RenderManager

Get current RenderManager instance.

Returns

RenderManager

Inherited from

ExtensionBase.getRenderManager


restoreState

restoreState(): void

Restore extension state from the local storage.

Returns

void

Inherited from

ExtensionBase.restoreState


restoreTooltipState

restoreTooltipState(): void

Restore enableTooltip state from local storage.

Returns

void


saveState

saveState(): void

Save extension state in the local storage.

Returns

void

Inherited from

ExtensionBase.saveState


saveTooltipState

saveTooltipState(): void

Save enableTooltip state to local storage.

Returns

void


setData

setData(elNums, resourceArray, details, forceClearData?): void

Set data to resource array and details array for elements list.

Parameters

NameTypeDescription
elNumsnumber[]Elements self Ids.
resourceArrayany[]Resource data array.
detailsanyDetails data array.
forceClearData?booleanforce clear data after applying by extension.

Returns

void


setRestoreStateHandler

setRestoreStateHandler(handler): void

Sets external hook handler for restoring extension state in the local storage.

Parameters

NameTypeDescription
handlerFunctionhandler hook function.

Returns

void

Inherited from

ExtensionBase.setRestoreStateHandler


setSaveStateHandler

setSaveStateHandler(handler): void

Sets external hook handler for storing extension state in the local storage.

Parameters

NameTypeDescription
handlerFunctionhandler hook function.

Returns

void

Inherited from

ExtensionBase.setSaveStateHandler


setup

setup(): void

Setup viewer state and modify elements by this state. Should be overridden by each mode extension.

Returns

void


tooltipRender

tooltipRender(container): void

Render function for rendering tooltip content when enableTooltip == true.

Parameters

NameTypeDescription
containerHTMLElementParent DOM container.

Returns

void

Hooks

added

added(): void

Hook when extension is added to ExtensionManager. Called by ExtensionManager.addExtension().

Returns

void

Inherited from

ExtensionBase.added


commandChanged

commandChanged(newCommand): void

Hook when current extension command is changed or finished. Called by ExtensionManager.setCurrentCommandExtension().

Parameters

NameType
newCommandExtensionBase

Returns

void

Inherited from

ExtensionBase.commandChanged


dedicatedToolbarRender

dedicatedToolbarRender(container): void

Render function for rendering dedicated toolbar content.

Parameters

NameTypeDescription
containerHTMLElementParent DOM container.

Returns

void

Inherited from

ExtensionBase.dedicatedToolbarRender


deleted

deleted(): void

Hook when extension is deleted from ExtensionManager. Called by ExtensionManager.clear().

Returns

void

Inherited from

ExtensionBase.deleted


selected

selected(): void

Hook when extension is activated (selected as current mode). Called by ExtensionManager.selectControllerExtension().

Returns

void


sharedToolbarRender

sharedToolbarRender(container): void

Render function for rendering shared toolbar content.

Parameters

NameTypeDescription
containerHTMLElementParent DOM container.

Returns

void

Inherited from

ExtensionBase.sharedToolbarRender


uiRender

uiRender(container): void

Render function for rendering additional UI above viewer canvas.

Parameters

NameTypeDescription
containerHTMLElementParent DOM container.

Returns

void

Inherited from

ExtensionBase.uiRender


unselected

unselected(): void

Hook when extension is deactivated. Called by ExtensionManager.selectControllerExtension()

Returns

void