WoWInterface

WoWInterface (https://www.wowinterface.com/forums/index.php)
-   General Authoring Discussion (https://www.wowinterface.com/forums/forumdisplay.php?f=20)
-   -   Object instance hierarchy documentation? (https://www.wowinterface.com/forums/showthread.php?t=59471)

pstatix 01-17-23 07:45 PM

Object instance hierarchy documentation?
 
I see lots of tutorials listing things like UIParent or UIPanelScrollFrameTemplate.

Is there documentation somewhere showing a list of these defined instances and their derivations?

Xrystal 01-17-23 09:04 PM

I don't know whether it has what you are looking for but there is :

https://wowpedia.fandom.com/wiki/Wow..._customization
Which is the main page for the UI side of WOW

https://github.com/Gethe/wow-ui-source/tree/classic
Which is the source code for the Classic versions of wow

https://github.com/Gethe/wow-ui-source/tree/live
Which is the retail version equivalent

pstatix 01-17-23 09:46 PM

Kinda? Guess I was curious if there was a curated class/object hierarchy available somewhere.

For example, the UIParent is the parent of all frames (typically) when using /fstack, so maybe there was a document somewhere that showed UIParent at the top, some subclasses, then their subclasses, etc.

This is great information though!

Fizzlemizz 01-17-23 11:49 PM

Consider UIParent like a sheet of glass over the 3D world. Most UI elements will use it as the base "parent" because it is hidden/shown when you press Alt-Z (as is anything parented to it) but essentially it's just a frame.

Templates are just virtual XML frames used as an outline for other frame/widget structures (in XML or created via CreateFrame). If you extract the UI (or use Xrystal's links) you can see in various XML structures the inherits="xxx" These are the template(s) used as the base structure for the given UI element (some templates will also inherit from other templates).

UIParent and templates are not related.

Widget (frames, buttons, sliders etc.) don't have a traditional inhertence model but you can see an approximation in the first image here

Dridzt 01-18-23 12:06 AM

wowprogramming once upon a time

pstatix 01-18-23 09:22 AM

Quote:

Originally Posted by Fizzlemizz (Post 341992)
Consider UIParent like a sheet of glass over the 3D world. Most UI elements will use it as the base "parent" because it is hidden/shown when you press Alt-Z (as is anything parented to it) but essentially it's just a frame.

Templates are just virtual XML frames used as an outline for other frame/widget structures (in XML or created via CreateFrame). If you extract the UI (or use Xrystal's links) you can see in various XML structures the inherits="xxx" These are the template(s) used as the base structure for the given UI element (some templates will also inherit from other templates).

UIParent and templates are not related.

Widget (frames, buttons, sliders etc.) don't have a traditional inhertence model but you can see an approximation in the first image here

The templates is what I was getting at, would be nice to have some sort of master listing of the templates to know what classes to use when making your own structures.


All times are GMT -6. The time now is 06:30 AM.

vBulletin © 2024, Jelsoft Enterprises Ltd
© 2004 - 2022 MMOUI