def set_program(self, event): """ Kick off spacecraft info reading and display script names in windows Description: Creates Reader and Writer objects, commencing reading of inputs. Then displays script names. """ # Clear output self.out_text.config(state=tkinter.NORMAL) self.out_text.delete(1.0,self.output_text_len+1.0) self.out_text.config(state=tkinter.DISABLED) # Clear listboxes self.a_htr_display.delete(0, len(self.ah_scripts)) self.cf_htr_display.delete(0, len(self.cfh_scripts)) self.twta_display.delete(0, len(self.twta_scripts)) # Create spacecraft self.spacecraft = Components.Spacecraft() self.spacecraft.name = self.program_combo.get() self.spacecraft.script_dir = self.programs[self.spacecraft.name][0] self.spacecraft.data_dir = self.programs[self.spacecraft.name][1] self.spacecraft.db_dir = self.programs[self.spacecraft.name][2] self.author = self.author_text.get() # Create I/O objects try: self.reader = IOUtils.Reader(gui=self, spacecraft=self.spacecraft) self.reader.execute() self.writer = IOUtils.Writer(gui=self, dbase=self.reader.dbase, spacecraft=self.spacecraft, author=self.author) self.output_text('') except Exception as error: self.output_text('Failed to read spacecraft info: %s' % error) out = traceback.format_exc() self.output_text(out) print(out)