0ad/source/gui/Scripting
wraitii 1b67a079fb Reduce duplication in JSI GUI objects implementation.
- Store the functions in an unordered_map. A no-container implementation
is doable but likely not worth the added code complexity, maybe with
C++20
- Move more things into the _impl.h
- Clear out the un-necessary friends declaration in the specific types
by moving the functions to the public interface, which makes sense.
- Fix a memory leak (JS::PersistentRootedObject weren't deleted).

This doesn't change what one needs to do to add a new type, but it does
reduce the actual code that's necessary, and makes it less error prone.

Differential Revision: https://code.wildfiregames.com/D3214
This was SVN commit r24384.
2020-12-13 15:06:18 +00:00
..
GuiScriptConversions.cpp Fix building without precompiled headers. 2020-11-18 11:35:36 +00:00
JSInterface_CButton.cpp Reduce duplication in JSI GUI objects implementation. 2020-12-13 15:06:18 +00:00
JSInterface_CList.cpp Reduce duplication in JSI GUI objects implementation. 2020-12-13 15:06:18 +00:00
JSInterface_CText.cpp Reduce duplication in JSI GUI objects implementation. 2020-12-13 15:06:18 +00:00
JSInterface_GUIManager.cpp [SM78 2/2] Update to Spidermonkey 78 APIs 2020-12-06 14:03:02 +00:00
JSInterface_GUIManager.h Mass rename CxPrivate to CmptPrivate. 2020-11-13 16:44:15 +00:00
JSInterface_GUIProxy.h Reduce duplication in JSI GUI objects implementation. 2020-12-13 15:06:18 +00:00
JSInterface_GUIProxy_impl.h Reduce duplication in JSI GUI objects implementation. 2020-12-13 15:06:18 +00:00
JSInterface_GUISize.cpp [SM60 2/2] Update to Spidermonkey 60 APIs 2020-11-24 15:47:03 +00:00
JSInterface_GUISize.h [SM52 2/2] Update to Spidermonkey 52 APIs. 2020-11-18 14:39:04 +00:00
JSInterface_IGUIObject.cpp Reduce duplication in JSI GUI objects implementation. 2020-12-13 15:06:18 +00:00
ScriptFunctions.cpp Make JS GUI Objects Proxy objects. 2020-11-21 17:49:06 +00:00
ScriptFunctions.h Sort GUI Object types, GUI Object bases and GUI Setting value types into three new folders. 2019-10-02 09:44:00 +00:00