Class MenuController<ML, MT>

[jp] メニュー管理クラス

メニューコンポーネントは三つの段階に分かれる

  • Controller: 複数のMenuを切替・管理する(本クラス)
  • Menu:メニュー本体
  • Item:項目。Menuの子に当たる概念

Example

// TODO

Type Parameters

  • ML = any

  • MT extends Menu = Menu

Hierarchy

  • MenuController

Constructors

Properties

_currentMenu?: MT
_menuMap: Map<ML, MT> = ...
_prevMenuStack: MT[] = []

Accessors

Methods

  • メニュー切替 Deactivate current menu -> Set (activated) specified menu

    Parameters

    • menu: MT

      menu to activate

    Returns void

  • メニュー追加

    Parameters

    • label: ML

      Menu label

    • menu: MT

    Returns void

  • [jp] 直前のメニューに戻る

    Returns

    前メニューの有無をBooleanで返す

    Parameters

    • resetCurrent: boolean = false

      Whether to reset current menu item selection

    Returns boolean

  • ラベルでメニューを取得

    Returns

    Parameters

    • label: ML

      Menu label

    Returns undefined | MT

  • [jp] 選択中の項目を実行. (currentMenuのrunOptionを実行 -> 選択中Itemのexecuteメソッドを実行)

    currentMenuが存在しない、 選択中Itemのexecuteが定義されてない場合は何もしない

    Returns

    実行結果を返す 実行結果がラベル文字列を返した場合、対応するメニューをアクティブ化

    Parameters

    • Rest ...args: any

    Returns any

  • [jp] 現在のメニューの一つ後の項目を選択 &その参照を返す(存在すれば)

    Returns undefined | boolean

  • [jp] 現在のメニューの一つ前の項目を選択 &その参照を返す(存在すれば)

    Returns undefined | boolean

  • アクティブにしたいメニューをlabel指定

    Parameters

    • label: ML
    • resetState: boolean = false

    Returns void

Generated using TypeDoc