procedural creation of UI elements - ESOUI
Thread Tools Display Modes
09/28/20, 06:35 AM   #1
Join Date: Sep 2020
Posts: 10
procedural creation of UI elements

Is there a posibility/library to create UI elements beside hardcoded XML?

for example when I want to create dynamicly a progressbar for each value in a table:

for i,value in pairs(table) do
spawnProgressBar(value) --dummy funciton!!!!!!

comming from wow addon programming: In "blizzLUA" you cannot destroy an existing frame (without reloading UI)... (in blizzLUA every UI element inherits from base class "frame")
so can you do such things in "esoLUA" like: destroy(progressBar01) / progressBar01 = nil ?
  Reply With Quote
09/28/20, 07:40 AM   #2
sirinsidiator's Avatar
AddOn Author - Click to view addons
Join Date: Apr 2014
Posts: 1,480
You can create new elements from Lua code via the window manager. Either by creating everything from scratch and setting all the values manually, or by using xml templates. However, you can never destroy a control once it has been created. That's why you should absolutely use a control pool and reuse them when you do any dynamic allocations like that.
You can find more information in part 6 and part 7 of the simple notebook tutorial.
https://www.imperialtradingcompany.eu/ - My Addons - The Vault (Early updates and experimental projects) - My patreon - My blog
>siri.exe MyAddon
Does your addon work? [y/n] n
There is a typo in there.
  Reply With Quote

ESOUI » Developer Discussions » Lua/XML Help » procedural creation of UI elements

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off