An open-source application development environment for Python/Tkinter
Thoughts on the graphical layout area
The point of the graphical layout area is to help you quickly layout -
and later modify - the frames and widgets within a form. Making it pretty
was less of a concern than was making if functional.
In our opinion WYSIWYG is a tool to be used if and when appropraite, not
a Holy Grail. We also feel that you have to be careful that things don't
degenerate into WYSIWYSW - What You See Is What You're Stuck With.
The Rapyd-Tk layout area strives to make obvious what you have requested. What
the form will eventually look like is related to but not the same thing as
what you requested.
We thought about attempting to make the Rapyd-Tk layout area look just
like the eventual run-time form but decided against:
A lot of what goes on at layout time is frames and in the final run-time
version those frames aren't visible which in turn makes it much less obvious
what it was you asked for in the first place. The Rapyd-Tk form layout
scheme makes obvious the relationship of the forms and widgets.
What happens on the layout area is only part of the story. While the
frames, the widgets and their various settings - particularly the pack
settings - contribute to the look of the run-time form, there is as well
your code and various run time possibilities which also contribute to
the look of the run-time form, and Rapyd-Tk has no way of knowing about
these at form design time.
We felt that rather than doing a half-baked job of showing - at design
time - what the form might look like at run time, that we would rather
do a good job of showing what you asked for at design time and let the
run-time form speak for itself. Since you can run applications from
within Rapyd-Tk it is but a single keystroke to save the current
project, build it and run it.
However, for those of you who feel the layout absolutely
must be WYSIWYG, we encourage you to write your own development system. But
you might at least try Rapyd-Tk first; it really works quite well.
Rapyd-Tk started as a little experiment to see what would be involved in
creating a graphical front end for the Tkinter pack geometry manager.
That was in fact the easy part and involved only a couple of hundred
lines of Python code. All the rest of the stuff required to make it a
real application and handle all the various odd cases took up the other
twenty five thousand lines of code.