void panel_remove(struct widget *self) { handle_free(self->owner, DATA->hrotate); handle_free(self->owner, DATA->hzoom); handle_free(self->owner, DATA->hclose); handle_free(self->owner, DATA->hlabel); handle_free(self->owner, DATA->hbar); g_free(DATA); r_divnode_free(self->in); }
void textedit_remove(struct widget *self) { /* * The general rule is that once you create a handle you should never * delete the object it refers to, only delete the handle */ handle_free(self->owner,DATA->bit_h); text_backend_destroy(DATA); g_free(DATA); r_divnode_free(self->in); }
void panelbar_remove(struct widget *self) { if (DATA->s) { free_sprite(DATA->s); DATA->s = NULL; } if (DATA->sbit) { VID(bitmap_free) (DATA->sbit); DATA->sbit = NULL; } g_free(DATA); r_divnode_free(self->in); }