Rewrite entire addon not to use Ace3 library
Ernest314 opened this issue ยท 3 comments
Although Ace3 was a good starting point (and is easily skinned by ElvUI), it is a very clunky library with bad documentation. Many features require complete buy-in of the Ace3 ecosystem (such as instantiating the entire addon as an AceAddon, embedding AceEvent into the addon object, etc.), and with bad/unsupported documentation, this will only result in headaches down the line.
This issue is basically a complete rewrite of the addon, and will require much more research.
- Research (FrameXML, ScrollFrame!, etc.)
- Rewrite GUI in FrameXML
- Rewrite all components without Ace3
- Main UI
- Entries
- Remove Ace3 and dependencies
- Style window to look nice
LibStub and LibDBIcon are obviously still acceptable. In order to be "compatible" with ElvUI, the skinning will either have to look good by default (e.g. Astral Keys), or I'll need to ask around on the ElvUI forums.
CallbackHandler is a library that's used with Ace3, so once Ace3 is removed, that library can be removed as well.
Although WeakAuras also uses Ace3, it's a good example of why not to use it: even though Ace3 skinning is supported in ElvUI (or maybe it's AddOnSkins), not all the frames in the WeakAura window is skinned, and it looks pretty ugly.