def pfopen(self): """ Load the parameter settings from a user-specified file. Any changes here must be coordinated with the corresponding epar pfopen function. """ flist = irafpar.getSpecialVersionFiles(self.taskName, self.pkgName) if len(flist) <= 0: msg = "No special-purpose parameter files found for " + self.taskName okdlg = urwutil.DialogDisplay(msg, 8, 0) okdlg.add_buttons([("OK", 0)]) okdlg.main() return fname = None if len(flist) == 1: msg = "One special-purpose parameter file found.\n"+ \ "Load file?\n\n"+flist[0] yesnodlg = urwutil.DialogDisplay(msg, 12, 0) yesnodlg.add_buttons([("OK", 0), ("Cancel", 1)]) rv, junk = yesnodlg.main() if rv == 0: fname = flist[0] # if not, fname is still None else: # >1 file, need a select dialog flist.sort() chcs = [] # ListDialogDisplay takes a 2-column tuple for i in range(len(flist)): chcs.append(str(i)) # need index as tag - it is the return val chcs.append(flist[i]) def menuItemConstr(tag, state): return urwutil.MenuItem(tag) selectdlg = urwutil.ListDialogDisplay("Select from these:", len(flist) + 7, 75, menuItemConstr, tuple(chcs), False) selectdlg.add_buttons([ ("Cancel", 1), ]) rv, ans = selectdlg.main() if rv == 0: fname = flist[int(ans)] # check-point: if fname is not None, we load a file msg = "\n\nPress any key to continue..." if fname != None: newParList = irafpar.IrafParList(self.taskName, fname) # load it self.set_all_entries_from_par_list(newParList) # set GUI entries msg = "\n\nLoaded:\n\n " + fname + msg # Notify them (also forces a screen redraw, which we need) try: self.ui.clear() # fixes clear when next line calls draw_screen except AttributeError: self.ui._clear() # older urwid vers use different method name self.info(msg, None)
def pfopen(self): """ Load the parameter settings from a user-specified file. Any changes here must be coordinated with the corresponding epar pfopen function. """ flist = irafpar.getSpecialVersionFiles(self.taskName, self.pkgName) if len(flist) <= 0: msg = "No special-purpose parameter files found for "+self.taskName okdlg = urwutil.DialogDisplay(msg, 8, 0) okdlg.add_buttons([ ("OK",0) ]) okdlg.main() return fname = None if len(flist) == 1: msg = "One special-purpose parameter file found.\n"+ \ "Load file?\n\n"+flist[0] yesnodlg = urwutil.DialogDisplay(msg, 12, 0) yesnodlg.add_buttons([ ("OK", 0), ("Cancel", 1) ]) rv, junk = yesnodlg.main() if rv == 0: fname = flist[0] # if not, fname is still None else: # >1 file, need a select dialog flist.sort() chcs = [] # ListDialogDisplay takes a 2-column tuple for i in range(len(flist)): chcs.append(str(i)) # need index as tag - it is the return val chcs.append(flist[i]) def menuItemConstr(tag, state): return urwutil.MenuItem(tag) selectdlg = urwutil.ListDialogDisplay("Select from these:", len(flist)+7, 75, menuItemConstr, tuple(chcs), False) selectdlg.add_buttons([ ("Cancel",1), ]) rv, ans = selectdlg.main() if rv == 0: fname = flist[int(ans)] # check-point: if fname is not None, we load a file msg = "\n\nPress any key to continue..." if fname != None: newParList = irafpar.IrafParList(self.taskName, fname) # load it self.set_all_entries_from_par_list(newParList) # set GUI entries msg = "\n\nLoaded:\n\n "+fname+msg # Notify them (also forces a screen redraw, which we need) try: self.ui.clear() # fixes clear when next line calls draw_screen except AttributeError: self.ui._clear() # older urwid vers use different method name self.info(msg, None)
def _getOpenChoices(self): return irafpar.getSpecialVersionFiles(self.taskName, self.pkgName)