deinit
Parameters
- self:*TreeWidget
- *TreeWidget
Source
Implementation
pub fn deinit(self: *TreeWidget) void {
defer if (dvui.widgetIsAllocated(self)) dvui.widgetFree(self);
defer self.* = undefined;
self.group.deinit();
if (self.drag_ending) {
self.id_branch = null;
self.drag_point = null;
dvui.refresh(null, @src(), self.data().id);
}
if (self.id_branch) |idr| {
dvui.dataSet(null, self.data().id, "_id_branch", idr);
} else {
dvui.dataRemove(null, self.data().id, "_id_branch");
}
if (self.drag_point) |dp| {
dvui.dataSet(null, self.data().id, "_drag_point", dp);
} else {
dvui.dataRemove(null, self.data().id, "_drag_point");
}
dvui.dataSet(null, self.data().id, "_branch_size", self.branch_size);
self.data().minSizeSetAndRefresh();
self.data().minSizeReportToParent();
dvui.parentReset(self.data().id, self.data().parent);
}