ESOUI

ESOUI (https://www.esoui.com/forums/index.php)
-   Lua/XML Help (https://www.esoui.com/forums/forumdisplay.php?f=175)
-   -   Replacing API functions/methods with custom ones? (https://www.esoui.com/forums/showthread.php?t=7877)

VulcanTourist 06/20/18 01:15 PM

Replacing API functions/methods with custom ones?
 
I'm not sure if the subject is misleading of my intent or not, but... can a mod that outright replaces a default UI frame instead of extending the default also replace all of the API functionality relating to the default frame, in such a way that other mods that intend to alter the default frame would instead similarly alter the replacement frame with no specific compatibility code required?

sirinsidiator 06/20/18 01:47 PM

I'd say it depends on the scope of your changes. If your replacement frame looks and behaves exactly like the original, it could work. But even small changes like changing the size or something like that could render it incompatible with addons that depend on that. You would also have to keep up with all changes ZOS ever makes to those APIs. In the end it's likely very unpractical and would cause more issues than it solves.

VulcanTourist 06/20/18 02:03 PM

I expected the answer might resemble that, but I was hoping it might be more promising.

What got me thinking about it was mods like CraftStore, which completely replaces the enchanting station frame with its own which is substantially different. In the process, other mods that intend to, say, inject information into the default frame are shut out, unable to do so without specific checks for CraftStore and its custom frame. In my selfish instance, I now must choose between CraftStore and the convenience of being able to see every glyph's enchantment level at a glance, which convenience was due to another mod that is ignorant of CraftStore. I wish there could be more convergence of great ideas, like the Borg seeking perfection (without the screaming and surgery and slavery).
.


All times are GMT -6. The time now is 09:20 PM.

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