#include "UIManager.h" #include "IFrame.h" #include "tinyxml.h" #include "tinystr.h" namespace ezui { inline UIString __Attribute(TiXmlElement* node, const char* szstr) { auto str = node->Attribute(szstr); if (str == NULL) return ""; return str; } std::map> g_createFunc; void RegisterControl(const UIString& ctrlName, const std::function& create_cb) { if (!ctrlName.empty() && create_cb) { g_createFunc[ctrlName.toLower()] = create_cb; } } void InitControls() { RegisterControl("control"); RegisterControl("layout"); RegisterControl("box"); RegisterControl("vlist"); RegisterControl("vlistview"); RegisterControl("hlist"); RegisterControl("hlistview"); RegisterControl("vlayout"); RegisterControl("vbox"); RegisterControl("hlayout"); RegisterControl("hbox"); RegisterControl("tilelist"); RegisterControl("tilelistview"); RegisterControl("tablayout"); RegisterControl("spacer"); RegisterControl("vspacer"); RegisterControl("hspacer"); RegisterControl