My first attempt at Graphical User Interfaces (GUIs) was to write in GL a routine to draw a button which when clicked would depress and perform an action. Next, I learned Motif, which, of course, was a great improvement with a number of ready-to-use widgets. The disadvantages of Motif is that it is difficult to learn and somewhat awkward to use. These problems motivated a number of commercial GUIs to build Motif GUIs. Then, I learned Tcl/Tk which is easy and fun to learn and use. Tcl/Tk is well designed. I was especially impressed with the seemingly obvious design of a set of radio buttons. All of the buttons are associated with the same variable, but each button is assigned a different value. A button is on if and only if the associated variable contains the button's assigned value. One of the disadvantages of Tcl/Tk is that you cannot program the GUI in C.
The tools for programming GUIs are getting better and Wind-US itself is in a constant state of development. By experience you achieve better proficiency with the tools and also learn better ways for doing things. Therefore you can always go back and rewrite a better program. Sometimes this is a good thing to do and other times, as in the case of the Motif GUIs to prepare namelists for NPARC and XAIR, it is not worth redoing since the programs themselves are becoming obsolete. As the Common File format becomes the standard, the conversion programs will also become obsolete or perhaps as CGNS (The CFD Notation System) comes into use, new conversion programs will become necessary. The point is that you have to run to stay where you are. That is the price of progress. To be a useful program, b4wind will remain in a state of flux, improving old GUIs and adding new ones, for a long time to come.
Last updated 5 May 2003