diff --git a/src/graphics/ui/gui_xml.cpp b/src/graphics/ui/gui_xml.cpp index b58ae8a9..8c7aca2d 100644 --- a/src/graphics/ui/gui_xml.cpp +++ b/src/graphics/ui/gui_xml.cpp @@ -99,6 +99,17 @@ static void _readUINode(UiXmlReader& reader, xml::xmlelement element, UINode& no element->attr("gravity").getText() )); } + + if (element->has("onclick")) { + auto callback = scripting::create_runnable( + reader.getEnvironment().getId(), + element->attr("onclick").getText(), + reader.getFilename() + ); + node.listenAction([callback](GUI*) { + callback(); + }); + } } @@ -224,17 +235,6 @@ static std::shared_ptr readButton(UiXmlReader& reader, xml::xmlelement e button = std::make_shared