ButtonListenerServices
immutable
auto ButtonListenerServices =
q{
static foreach (member; __traits(derivedMembers, typeof(this))) {
static if (typeof(super).stringof == "Canvas") {
static if (mixin("hasUDA!(" ~ typeof(this).stringof ~ "." ~ member ~ ", Signal)")) {
static foreach (el; ["RightClick", "LeftClick", "MouseMove", "MouseInside", "Update"]) {
static if (member.stringof == "\"on" ~ el ~ getUDAs!(__traits(getMember, this, member), Signal)[0].id ~ "\"") {
if (element.id == getUDAs!(__traits(getMember, this, member), Signal)[0].id) {
mixin("element.on" ~ el ~ " = &on" ~ el ~ getUDAs!(__traits(getMember, this, member), Signal)[0].id ~ ";");
}
}
}
}
}
}
};
liberty core scenegraph services
interfacesstructsvariables