matchEvent
Parameters
- self:*TreeWidget
- *TreeWidget
- event:*dvui.Event
- *dvui.Event
Source
Implementation
pub fn matchEvent(self: *TreeWidget, event: *dvui.Event) bool {
if (dvui.captured(self.wd.id) or (self.init_options.drag_name != null and dvui.dragName(self.init_options.drag_name.?))) {
// passively listen to mouse motion
for (dvui.events()) |*e| {
if (e.evt == .mouse and e.evt.mouse.action == .motion) {
self.drag_point = e.evt.mouse.p;
dvui.scrollDrag(.{
.mouse_pt = e.evt.mouse.p,
.screen_rect = self.wd.rectScale().r,
});
}
}
}
if (self.init_options.drag_name) |dn| {
if (dvui.dragName(dn)) {
return dvui.eventMatch(event, .{ .id = self.data().id, .r = self.data().borderRectScale().r, .drag_name = dn });
}
}
return dvui.eventMatchSimple(event, self.data());
}