def create_ui(self): """ create a dialog with the options from the parser and an ok and cancel button """ self.addDescription() self.actionLookupTable = { type(argparse._HelpAction(None)) : self.makeHelpActionEntry, type(argparse._VersionAction(None)) : self.makeHelpActionEntry, type(argparse._StoreAction(None,None,None)): self.makeStoreConstEntry, type(argparse._StoreConstAction(None,None,None)): self.makeStoreConstEntry, type(argparse._StoreTrueAction(None, None)): self.makeStoreConstEntry, type(argparse._StoreFalseAction(None, None)): self.makeStoreConstEntry, type(argparse._StoreAction(None, None)) : self.makeStoreActionEntry, type(argparse._CountAction(None, None)) : self.makeCountActionEntry, type(argparse._AppendAction(None,None)) : self.makeAppendActionEntry, type(argparse._AppendConstAction(None, None, None)) : self.makeCountActionEntry } for a in self.parser._get_optional_actions(): try: self.actionLookupTable[type(a)](a, optional=True) #print ("Introspected type: {0}\n".format(a)) except KeyError: print ("Unsupported type: {0}\n".format(a)) for a in self.parser._get_positional_actions(): try: self.actionLookupTable[type(a)](a, optional=True) #print ("Introspected type: {0}\n".format(a)) except KeyError: print ("Unsupported type: {0}\n".format(a)) self.addEpilog()
class CapitalisedHelpFormatter(argparse.HelpFormatter): def add_usage(self, usage, actions, groups, prefix=None): return None class FakeArgumentParser(argparse.ArgumentParser): def error(self, message): self.print_help(sys.stderr) parser = FakeArgumentParser(description="Usage: main.py {prog} [args]", add_help=False, formatter_class=CapitalisedHelpFormatter) parser._positionals.title = 'Plots' parser._optionals.title = 'args' comp = parser.add_argument_group("compile all programs") comp.add_argument(fakeStr("-fakecompile"), metavar = "compile", required=False, action="append", help="Compiles all C++ programs") parser.add_argument('-h', '--help', action='help', default=argparse.SUPPRESS, help='Show this help message and exit.') argparse._HelpAction(option_strings=['-h', '--help'], dest='help', default='==SUPPRESS==', help='Show this help message and exit.') parser.add_argument('type',type=str, choices = ["single", "variateAlpha", "variateBeta","stability", "acceptance-rate", "optimal-step-fit", "E-varE", "3D-beta", "beta-parallel", "virial"],help="Follow program name by optional program specific parameters listed below") parser.add_argument("-omega", metavar="", type=float, help="float. ω, frequency of H.O") parser.add_argument("-alpha", metavar = "", type=float, help="float. α, variational parameter") parser.add_argument("-beta", metavar="", type=float, help="float. β, variational parameter") parser.add_argument("-a0", metavar = "", type=float, help="float. Start value of α") parser.add_argument("-a1", metavar = "", type=float, help="float. End value of α") parser.add_argument("-da", metavar = "", type=float, help="float. Increment value of α") parser.add_argument("-b0", metavar = "", type=float, help="float. Start value of β") parser.add_argument("-b1", metavar = "", type=float, help="float. End value of β") parser.add_argument("-db", metavar = "", type=float, help="float. Increment value of β") parser.add_argument("-step0", metavar = "", type=float, help="float. Start value of step sizes to use in metropolis") parser.add_argument("-step1", metavar = "", type=float, help="float. End valuue of step size") parser.add_argument("-dstep", metavar = "", type=float, help="float. Increment value step size") parser.add_argument("-psi", metavar = "", type=str, help="string. What trial wave functions to run, T1 or T2")