class DeleteFittingWindow(Frame): """ Handles the window for deleting a Fitting. """ def __init__(self, parent): self.parent = parent self.window = Toplevel(self.parent) self.window.resizable(width=False, height=False) self.fitting_library = FittingLibrary() # Call pertinent methods for this window. self.combobox_select_fitting() def combobox_select_fitting(self): """ Gets fitting from the user with an entrybox, adds Okay and Cancel buttons. """ fitting_list = self.fitting_library.get_fitting_list() lbl_enter_name = Label(self.window, text='Select fitting to delete') self.cbx_select_fitting = ttk.Combobox(self.window, values=fitting_list) btn_cancel = Button(self.window, text='Cancel', command=self.cancel) btn_delete = Button(self.window, text='Okay', command=self.delete) # Grid management lbl_enter_name.grid(column=0, row=0, columnspan=2, sticky=W) self.cbx_select_fitting.grid(column=0, row=1, columnspan=2, sticky=EW) btn_cancel.grid(column=0, row=2, sticky=E) btn_delete.grid(column=1, row=2, sticky=E) def cancel(self, *args): self.window.destroy() def delete(self, *args): """ """ name = self.cbx_select_fitting.get() fitting = self.fitting_library.get_fitting(name) self.fitting_library.delete_fitting(fitting) # Update main window to show some other fitting. other_fitting = self.fitting_library.get_fitting_list()[0] self.parent.update_fitting(other_fitting) self.window.destroy()