Skip to content

SourcePropsWindow

Defined in: window/config.ts:23

This utility class exposes functionality for source plugin developers to handle the properties window for their source plugins. The framework also uses this class for its own internal purposes.

Developers can use this class to specify how their configuration HTML should be rendered within the built-in window in XSplit Broadcaster. This class also serves as an event emitter for specific important events.

Inherits from: #util/EventEmitter Util/EventEmitter

At the moment, the only relevant event for developers is:

  • set-selected-tab: used when using Tabbed mode. Passes the name of the selected tab so properties window can update itself accordingly.

Use the on(event: string, handler: Function) function to listen to an event.

  • EventEmitter

new SourcePropsWindow(): SourcePropsWindow

Defined in: window/config.ts:42

Use getInstance() instead.

SourcePropsWindow

EventEmitter.constructor

static _proxyHandlers: object = {}

Defined in: util/eventemitter.ts:7

EventEmitter._proxyHandlers


static _remoteHandlers: object = {}

Defined in: util/eventemitter.ts:6

EventEmitter._remoteHandlers

close(): Promise<any>

Defined in: window/config.ts:173

Closes the properties window.

Promise<any>


emit(event, …params): void

Defined in: util/eventemitter.ts:66

This function lets an event trigger with any number of supplied parameters.

string

any[]

void

EventEmitter.emit


off(event, handler): void

Defined in: util/eventemitter.ts:37

This function removes a handler to an event.

string

Function

void

EventEmitter.off


on(event, handler, _id?): void

Defined in: util/eventemitter.ts:10

This function attaches a handler to an event. Duplicate handlers are allowed.

string

Function

string

void

EventEmitter.on


requestDialogTitleChange(name): void

Defined in: window/config.ts:165

param: name

Changes the title of the source properties dialog. Note: The title change is temporary, as re-opening the source properties resets the title to the display name of the source (custom name takes precedence over name)

string

void


resize(width, height): void

Defined in: window/config.ts:147

param: width, height

Resizes the properties window. Currently only works when using full window mode.

number

number

void


showLoading(show): void

Defined in: window/config.ts:184

param: show

Toggles on/off the load indicator of the source properties dialog

boolean

void


useFullWindow(): void

Defined in: window/config.ts:90

Informs the application that the plugin intends to use the entire window for rendering its configuration.

void


useTabbedWindow(config): void

Defined in: window/config.ts:109

param: ({customTabs: string[], tabOrder: string[]})

Informs the application that the plugin intends to use the existing tab system to render its properties window.

The customTabs node should contain a list of tab titles that the plugin will create for itself.

The tabOrder node contains the desired order of tabs. This list comes from the specified custom tabs, and the set of reusable XSplit tabs: ‘Color’, ‘Layout’ and ‘Transition’.

string[]

string[]

void


static _finalCallback(message): Promise<void>

Defined in: util/eventemitter.ts:99

string

Promise<void>

EventEmitter._finalCallback


static _setCallback(message): Promise<unknown>

Defined in: util/eventemitter.ts:90

string

Promise<unknown>

EventEmitter._setCallback


static getInstance(): SourcePropsWindow

Defined in: window/config.ts:32

Gets the instance of the window utility. Use this instead of the constructor.

SourcePropsWindow