I hope Epic dev’s will read this, I don’t want to hurt anybody, this is just an opinion.
You guys make a major mistake confound engine devs with game devs/users. Since you give us the sources, you expect from game devs or engine users, to know the engine with all internal stuff and details. But this is a mistake. Sure, Epic devs, are so familiar with the engine from years of working on it, but a new user have no time to learn and understand all stuff you did and why for years. The engine do not have an easy and logic “front API”.
Example:
Fallow this https://forums.unrealengine.com/showthread.php?56484-Twitch-Training-Stream-Extending-the-Editor-Jan-20th-2015 and watch the video.
This is just insane. Nobody expect this from and API, especially UI.
My answer was (copy&paste):
"Honestly, extending the editor is complicate and will drive many peoples back. Most peoples when comes to a new UI expect to add a toolbar button some how like that:
GetToolbar(name)->Addbutton(where, icon, callback);
and probable same way with a menu item, without needing to know in depth details about the internal framework."
And probable Michael got offender because I do not like his tutorial. I am sorry for that, was not my intention to offend anybody, I just to say something is wrong.
By design, this is not good, except maybe for speed, but this is again disputable, because there is a use of C++ template and inline, with out going into premature optimization. Intellisense is most of the time useless, because there is no way to get what data you need from it, you need to know in depth the mechanic what drives the data and structures. And this is not a good design also, users should get minimal API deprecation over time, rest of internal stuff can change daily.
Also, read what this guy said, I have to agree with him:
Thanks for reading.