Skip to main content

abstract_DialogFocusMenu <ModeType, ClickedObj, PropType>

DialogMenu abstract subclass for dialog menus with a focus group.

Hierarchy

Index

Constructors

constructor

  • new _DialogFocusMenu<ModeType, ClickedObj, PropType>(mode): _DialogFocusMenu<ModeType, ClickedObj, PropType>
  • Parameters

    • mode: ModeType

      The name of the mode associated with this instance

    Returns _DialogFocusMenu<ModeType, ClickedObj, PropType>

Properties

inherited_initProperties

_initProperties: PropType = null

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.

abstractreadonlyinherited_initPropertyNames

_initPropertyNames: readonly keyof PropType[]

A list of all init property names as supported by this class. Represents the set of keys that will be stored in _initProperties

abstractreadonlyinheritedclickStatusCallbacks

clickStatusCallbacks: Record<string, (C, clickedObj, equippedItem) => string>

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.

readonlyinheriteddefaultShape

defaultShape: readonly [number, number, number, number] = ...

The default position & shape of the current subscreen as defined by the root element.

See DialogMenu.shape.

inheritedeventListeners

eventListeners: { _ClickButton: (this, ev) => string; _ClickDisabledButton: (this, ev) => string; _ClickPaginateNext: (this, ev) => void; _ClickPaginatePrev: (this, ev) => void; _WheelGrid: (this, event) => void }

An object containing all event listeners referenced in the DialogMenu subclass.


Type declaration

  • _ClickButton: (this, ev) => string
      • (this, ev): string

      • Parameters

        • this: HTMLButtonElement
        • ev: MouseEvent

        Returns string

        A status message if an unexpected error is encountered and null otherwise

  • _ClickDisabledButton: (this, ev) => string
      • (this, ev): string

      • Parameters

        • this: HTMLButtonElement
        • ev: MouseEvent

        Returns string

        A status message if an expected error is encountered and null otherwise

  • _ClickPaginateNext: (this, ev) => void
      • (this, ev): void
      • Parameters

        • this: HTMLButtonElement
        • ev: MouseEvent

        Returns void

  • _ClickPaginatePrev: (this, ev) => void
      • (this, ev): void
      • Parameters

        • this: HTMLButtonElement
        • ev: MouseEvent

        Returns void

  • _WheelGrid: (this, event) => void

    Provide more consistent mouse wheel scroll behavior by using browser-independent increments.

      • (this, event): void
      • Parameters

        • this: HTMLDivElement
        • event: WheelEvent

        Returns void

abstractreadonlyinheritedids

ids: Readonly<Record<string, string> & { grid?: string; icon?: string; menubar?: string; paginate?: string; root: string; status?: string }>

An object containing all DOM element IDs referenced in the DialogMenu subclass.

readonlyinheritedmode

mode: ModeType

The name of the mode associated with this instance (see DialogMenuMode).

Accessors

inheritedC

  • get C(): PropType[C]
  • set C(value): void
  • 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 AssetItemGroup

  • Get or set the currently selected group.

    Performs a hard DialogMenu.Reload if a new focus group is assigned.


    Parameters

    Returns void

inheritedshape

  • 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

    Returns void

Methods

abstractinherited_ClickButton

  • _ClickButton(button, C, clickedObj, equippedItem): void
  • Helper function for handling the clicks of successfully validated grid button clicks.


    Parameters

    • button: HTMLButtonElement

      The clicked button

    • C: Character

      The target character

    • clickedObj: ClickedObj

      The buttons underlying object (item or activity)

    • equippedItem: Item

      The currently equipped item

    Returns void

inherited_ConstructPaginateButtons

  • _ConstructPaginateButtons(id): HTMLDivElement

  • Parameters

    • id: string

    Returns HTMLDivElement

abstractinherited_GetClickedObject

  • _GetClickedObject(button): ClickedObj
  • Return the underlying item or activity object of the passed grid button.


    Parameters

    • button: HTMLButtonElement

      The clicked button

    Returns ClickedObj

    • The button's underlying item or activity object

abstractinherited_Load

  • _Load(): HTMLElement
  • Construct and return the (unpopulated) DialogMenu.ids.root element.


    Returns HTMLElement

inherited_Reload

  • _Reload(param, options): boolean

abstractinherited_ReloadButtonGrid

  • _ReloadButtonGrid(root, buttonGrid, properties, options): void
  • A DialogMenu.Reload helper function for reloading DialogMenu.ids.grid elements.


    Parameters

    • root: HTMLElement
    • buttonGrid: HTMLElement
    • properties: PropType
    • options: Pick<ReloadOptions, reset | resetScrollbar | resetDialogItems>

    Returns void

abstractinherited_ReloadIcon

  • _ReloadIcon(root, icon, properties, options): void

abstractinherited_ReloadMenubar

  • _ReloadMenubar(root, menubar, properties, options): void

abstractinherited_ReloadStatus

  • _ReloadStatus(root, status, properties, options): void

inherited_ReloadValidate

  • _ReloadValidate(properties): { param?: never; status: false } | { param: ReloadParam<PropType>; status: true }

  • Parameters

    • properties: Partial<PropType>

    Returns { param?: never; status: false } | { param: ReloadParam<PropType>; status: true }

inheritedClick

  • Click(event): void
  • Parameters

    • event: PointerEvent

    Returns void

inheritedDraw

  • Draw(): void
  • Returns void

inheritedExit

  • Exit(): void
  • Returns void

inheritedGetClickStatus

  • GetClickStatus(C, clickedObj, equippedItem): string
  • 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: ClickedObj

      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

inheritedInit

  • Init(properties, style): HTMLDivElement
  • Initialize the DialogMenu subscreen.

    Serves as a ScreenLoadHandler wrapper with added parameters.


    Parameters

    • properties: PropType

      The to be initialized character and any other properties

    • style: { shape?: RectTuple } = null

      Misc styling for the subscreen

    Returns HTMLDivElement

    The div containing the dialog subscreen root element or null if the screen failed to initialize

inheritedKeyDown

  • KeyDown(event): boolean
  • Parameters

    • event: KeyboardEvent

    Returns boolean

Load

  • Load(): Promise<void>
  • Returns Promise<void>

inheritedReload

  • Reload(properties, options): Promise<boolean>
  • Reload the subscreen, updating the DOM elements and, if required, re-assigning the character and focus group.


    Parameters

    • properties: Partial<PropType> = null
    • optionaloptions: ReloadOptions = null

      Further customization options

    Returns Promise<boolean>

    • Whether an update was triggered or aborted

inheritedResize

  • Resize(load): void
  • Parameters

    • load: boolean

    Returns void

inheritedRun

  • Run(time): void
  • Parameters

    • time: number

    Returns void

inheritedUnload

  • Unload(): void
  • Returns void