def new_line(self, data) -> HBox: del_btn = Button(description="Remove", icon="trash") del_btn.button_style = 'danger' hbox = HBox([del_btn, self.data_to_dom(data)], layout=total_width, box_style='info') hbox.data = data def remove_hbox(): children = list(self.children) for i, c in enumerate(children): if id(c) == id(hbox): children.remove(c) self.children = children del_btn.click = remove_hbox return hbox
def new_line(self, key: str, data: Any) -> HBox: del_btn = Button(description="Remove", icon="trash") del_btn.button_style = 'danger' key_info = HTML(f"<h4 class='text-primary p-1'>{key}</h4>") hbox = HBox([VBox([key_info, del_btn]), self.data_to_dom(data)], layout=total_width, box_style='') hbox.data = data hbox.key = key def remove_hbox(): children = list(self.children) for c in children: if id(c) == id(hbox): children.remove(c) self.children = children self.run_update() del_btn.click = remove_hbox return hbox