You may also want to see

About

List menu merupakan object UI yang menyimpan list satu dimensi. obj_core_ui_list_menu di desain untuk menghandle item yang disusun secara tumpukan/vertikal.

Secara umum List Menu disusun seperti ini

TODO

  • Nulis dokumentasi
  • Contoh modifikasi
  • alternative lain
  • alternative lain adalah list menu 2d adalah parent dari list menu (masalah di event listener yang kacau)

Attributes

NameTypeDescription
active_indexRealIndex dalam list yang aktif, nilai akan dalam range 0 - “
active_anchorRealx
surface_namestringString yang digunakan sebagai id dari surface yang digunakan
item_listobj_core_ui_list_itemList yang berisikan object object list item, by design elemen dari list ini adalah object obj_core_ui_list_item atau turunannya. Atribut ini di isi lewat User Event 0
scrollbarScrollBarScrollBar dari list ini (jika ada). Attribut ini memerlukan manual binding
description_box
list_item_default_classAsset.GMObject

Methods

add_element

TODO refactor, let the list item construct itself and handle it rather than this class, more generic and no need to create object to inherit the menu and the item list

Parameters

NameTypeDescription
_dataId.StructData yang perlu untuk membuat sebuah item list
_item_classAsset.GMObjectClass object yang digunakan untuk menginstantiate list baru

Returns

Mixin type of _item_class

Description

Method ini digunakan untuk menambah element list_menu yang dapat menghandle berbagai macam varian list_item sesuai dengan _item_class yang diberikan

Example

var _c1 = self.add_element(
	"Quick Combo",
	"Basic quick combo. Good for starting a combo or extend any combos that possible.",
	obj_example_farid
)
generic_ui_text(_c1, [_light_attack_sprite,]);

Events

User Event 0

Event ini dilakukan untuk mempopulate list.

Clean Up

VERY IMPORTANT EVENT! Di event ini akan melakukan cascading destroy. Secara umum List menu akan memanggil destroy kepada tiap object yang berada di item_list. Tiap List Item akan menghandle ketergantungannya juga. Oleh karena itu, jika melakukan inheritance terhadap Object ini tolong hati hati, karena hanya dengan melakukan spam instantiate destroy intantiate destroy akan membuat memory leak yang parah.

Custom Events