def load_and_edit_record(self, event): """Load the selected record into a form for editing""" selected_record = self.record_display.GetFirstSelected() if selected_record == -1: # none selected return # convert to string coz unicode object does not work selected_record_key = str(''.join([self.record_display.GetItem( selected_record, x).GetText() for x in range(len(self.index_keys))])) rec = self.db.db[selected_record_key] f = Form(self, 'report_docs/form_fields.yaml', selected_record_key) f.set_values(rec)