def run(): global menu, options, frame args = sys.argv[1:] if "-l" in args: # cvs is an idiot i = args.index("-l") args = args[i : i + 2] + args del args[i + 2 : i + 4] for arg in args[:]: try: i = args.index(arg) if arg[:2] == "-o" and args[i + 1][0] != "-": args[i : i + 2] = [] # suck on it scp except ValueError: pass root = Tkinter.Tk() root.withdraw() top = Tkinter.Toplevel() menu = TkConchMenu(top) menu.pack(side=Tkinter.TOP, fill=Tkinter.BOTH, expand=1) options = GeneralOptions() try: options.parseOptions(args) except usage.UsageError as u: print("ERROR: %s" % u) options.opt_help() sys.exit(1) for k, v in options.items(): if v and hasattr(menu, k): getattr(menu, k).insert(Tkinter.END, v) for (p, (rh, rp)) in options.localForwards: menu.forwards.insert(Tkinter.END, "L:%s:%s:%s" % (p, rh, rp)) options.localForwards = [] for (p, (rh, rp)) in options.remoteForwards: menu.forwards.insert(Tkinter.END, "R:%s:%s:%s" % (p, rh, rp)) options.remoteForwards = [] frame = tkvt100.VT100Frame(root, callback=None) root.geometry( "%dx%d" % (tkvt100.fontWidth * frame.width + 3, tkvt100.fontHeight * frame.height + 3) ) frame.pack(side=Tkinter.TOP) tksupport.install(root) root.withdraw() if (options["host"] and options["user"]) or "@" in options["host"]: menu.doConnect() else: top.mainloop() reactor.run() sys.exit(exitStatus)
try: options.parseOptions(args) except usage.UsageError, u: print 'ERROR: %s' % u options.opt_help() sys.exit(1) for k, v in options.items(): if v and hasattr(menu, k): getattr(menu, k).insert(Tkinter.END, v) for (p, (rh, rp)) in options.localForwards: menu.forwards.insert(Tkinter.END, 'L:%s:%s:%s' % (p, rh, rp)) options.localForwards = [] for (p, (rh, rp)) in options.remoteForwards: menu.forwards.insert(Tkinter.END, 'R:%s:%s:%s' % (p, rh, rp)) options.remoteForwards = [] frame = tkvt100.VT100Frame(root, callback=None) root.geometry('%dx%d' % (tkvt100.fontWidth * frame.width + 3, tkvt100.fontHeight * frame.height + 3)) frame.pack(side=Tkinter.TOP) tksupport.install(root) root.withdraw() if (options['host'] and options['user']) or '@' in options['host']: menu.doConnect() else: top.mainloop() reactor.run() sys.exit(exitStatus) def handleError(): from twisted.python import failure