_DialogSelfMenu <ModeType, T>
Hierarchy
Index
Constructors
Properties
Accessors
Methods
Constructors
constructor
Type parameters
- ModeType: DialogSelfMenuName = DialogSelfMenuName
- T = any
Parameters
mode: ModeType
Returns _DialogSelfMenu<ModeType, T>
Properties
_initProperties
An object for storing all of this classes init properties.
Subclasses should generally implement a public getter/setter interface for safely manipulating each property stored herein.
Type declaration
_initPropertyNames
A list of all init property names as supported by this class. Represents the set of keys that will be stored in _initProperties
readonlyclickStatusCallbacks
An object mapping IDs to DialogMenu.GetClickStatus helper functions. Used for evaluating the error statuses of item clicks.
Additional checks can be freely added here.
defaultShape
The default position & shape of the current subscreen as defined by the root element.
See DialogMenu.shape.
eventListeners
An object containg all event listeners referenced in the DialogMenu subclass.
Type declaration
_ClickButton: (this: HTMLButtonElement, ev: MouseEvent) => string
Parameters
this: HTMLButtonElement
ev: MouseEvent
Returns string
_ClickDisabledButton: (this: HTMLButtonElement, ev: MouseEvent) => string
Parameters
this: HTMLButtonElement
ev: MouseEvent
Returns string
_ClickPaginateNext: (this: HTMLButtonElement, ev: MouseEvent) => void
Parameters
this: HTMLButtonElement
ev: MouseEvent
Returns void
_ClickPaginatePrev: (this: HTMLButtonElement, ev: MouseEvent) => void
Parameters
this: HTMLButtonElement
ev: MouseEvent
Returns void
_WheelGrid: (this: HTMLDivElement, event: WheelEvent) => void
Provide more consistent mouse wheel scroll behavior by using browser-independent increments.
Parameters
this: HTMLDivElement
event: WheelEvent
Returns void
_ClickDisabledMenuButton: function
Parameters
this: HTMLButtonElement
ev: MouseEvent
Returns void
_ClickMenuButton: function
Parameters
this: HTMLButtonElement
ev: MouseEvent
Returns void
readonlyids
An object containg all DOM element IDs referenced in the DialogMenu subclass.
menubarEventListeners
An object mapping button HTMLButtonElement.names to their respective click + validation functions
Type declaration
next: MenuButtonData<{ C: PlayerCharacter }>
readonlymode
The name of the mode associated with this instance (see DialogMenuMode).
Accessors
C
Get or set the currently selected character.
Performs a hard DialogMenu.Reload if a new character is assigned.
Returns PropType[C]
Parameters
value: PropType[C]
Returns void
focusGroup
Get or set the currently selected group.
Performs a hard DialogMenu.Reload if a new focus group is assigned.
Returns AssetGroup
shape
Get or set the position & shape of the current subscreen as defined by the root element.
Performs a DialogMenu.Resize if a new shape is assigned.
Returns RectTuple
Parameters
value: RectTuple
Returns void
Methods
Click
Parameters
event: MouseEvent | TouchEvent
Returns void
Draw
Returns void
Exit
Returns void
GetClickStatus
Return an error status (if any) for when an item or activity is clicked.
Error statuses are used for evaluating whether the relevant grid buttons must be disabled or not.
Parameters
C: Character
The target character
clickedObj: T
The item that is clicked
equippedItem: Item = null
The item that is equipped (if any)
Returns string
- The error status or
null
if everything is ok
Init
Initialize the DialogMenu subscreen.
Serves as a ScreenLoadHandler wrapper with added parameters.
Parameters
properties: { C: PlayerCharacter }
The to be initialized character and any other properties
style: { shape?: RectTuple } = null
Misc styling for the subscreen
optionalshape: RectTuple
Returns HTMLDivElement
The div containing the dialog subscreen root element or
null
if the screen failed to initialize
IsAvailable
Whether this self-menu is accessible via the "view next page" button.
Parameters
Returns boolean
KeyDown
Parameters
event: KeyboardEvent
Returns boolean
Load
Returns void
Reload
Reload the subscreen, updating the DOM elements and, if required, re-assigning the character and focus group.
Parameters
properties: Partial<{ C: PlayerCharacter }> = null
optionaloptions: ReloadOptions = null
Further customization options
Returns Promise<boolean>
- Whether an update was triggered or aborted
Resize
Parameters
load: boolean
Returns void
Run
Parameters
time: number
Returns void
Unload
Returns void
_ClickButton
_ConstructPaginateButtons
Parameters
id: string
Returns HTMLDivElement
_GetClickedObject
Return the underlying item or activity object of the passed grid button.
Parameters
button: HTMLButtonElement
The clicked button
Returns T
- The button's underlying item or activity object
_Load
Construct and return the (unpopulated) DialogMenu.ids.root element.
Returns HTMLElement
_Reload
Parameters
param: ReloadParam<any>
options: ReloadOptions
Returns boolean
_ReloadButtonGrid
A DialogMenu.Reload helper function for reloading DialogMenu.ids.grid elements.
Parameters
root: HTMLElement
buttonGrid: HTMLElement
properties: { C: PlayerCharacter }
options: Pick<ReloadOptions, reset | resetScrollbar | resetDialogItems>
Returns void
_ReloadIcon
A DialogMenu.Reload helper function for reloading DialogMenu.ids.icon elements.
Parameters
root: HTMLElement
icon: HTMLElement
properties: { C: PlayerCharacter }
options: Pick<ReloadOptions, never>
Returns void
_ReloadMenubar
A DialogMenu.Reload helper function for reloading DialogMenu.ids.menubar elements.
Parameters
root: HTMLElement
menubar: HTMLElement
properties: { C: PlayerCharacter }
options: Pick<ReloadOptions, reset>
Returns void
_ReloadStatus
A DialogMenu.Reload helper function for reloading DialogMenu.ids.status elements.
Parameters
root: HTMLElement
status: HTMLElement
properties: { C: PlayerCharacter }
options: Pick<ReloadOptions, status | statusTimer>
Returns void
_ReloadValidate
Parameters
properties: Partial<{ C: PlayerCharacter }>
Returns { param?: never; status: false } | { param: ReloadParam<{ C: PlayerCharacter }>; status: true }
The name of the mode associated with this instance