deinit
Parameters
- self:*Branch
- *Branch
Source
Implementation
pub fn deinit(self: *Branch) void {
defer if (dvui.widgetIsAllocated(self)) dvui.widgetFree(self);
defer self.* = undefined;
if (self.can_expand) {
if (self.expanded) {
self.expander_vbox.deinit();
}
if (self.anim) |a| {
a.deinit();
}
dvui.dataSet(null, self.data().id, "_expanded", self.expanded);
} else {
self.hbox.deinit();
self.button.deinit();
}
if (self.floating_widget) |*fw| {
self.data().minSizeMax(fw.data().min_size);
fw.deinit();
}
self.data().minSizeSetAndRefresh();
self.data().minSizeReportToParent();
self.tree.current_branch_focus_id = self.parent_focus_id;
dvui.parentReset(self.data().id, self.data().parent);
}