We are in need of a Python framework which will allow us to quickly create GUI wrappers around java and other command line programs. The framework should consist of two major pieces: a wrapper class which allows us to quickly wrap a java command line program with a GUI, and a Menu class which can automatically identify and create a button menu for all the wrapper classes it finds in a specified folder (and sub folders).
The framework should consist of the following major functionality:
- provide a method for allowing our developers to add widgets to a class-provided Frame. Widgets would include static text, text entry, radio buttons, checkboxes, askopenfilename, color pickers etc. I would imagine a basic class which is sub-classed for each wrapper and has CreateGui() and CreateCommandline() type methods which are overridden.
- expose standard actions such as Run, Cancel, View Log, Help etc.
- provide a method for executing the command line and capturing the stdout and stderr and making it available to the View Log action.
- provide a standardized means for viewing the stdout/stderr logs on demand
- provide a means for determining if the command line should be run again or exited.
- provide a "running..." and success/failure type notifications in the GUI
- must be able to run as a standalone app or from the Menu (see below).
- Points to a default folder on the client
- Can discover wrappers and dynamically create a menu which allows the wrapper classes to be run.
- Allows the user to view a small description of each menu item by extracting a field from each wrapper.
- Has standard About, Exit, Help functions
The Python framework ash to work across Windows XP/Vista, Mac OSX (10.4 or above), Linux and Solaris
Must use Tkinter as the windowing library.