[Pythonmac-SIG] Appearance

Jack Jansen jack@oratrix.nl
Tue, 07 Dec 1999 21:45:12 +0100


Folks,
I'm about to convert various (and, eventually, all) dialogs and such
in MacPython to Appearance Manager. Moreover, I'm about to do so
pretty soon, at least for some stuff like EasyDialogs, as I need
appearance support quickly for GRiNS.

The thing I'm still not 100% certain about is backward
compatability. I see the following possible solutions which I'd like
feedback on, but any other ideas are of course welcome too.

1. Forget about backwards compatability. This is definitely the
   easiest solution:-) I'm afraid it might be unacceptable, though,
   because there are people with machines that can't run
   Appearance. If so: please speak up.
2. Have a special non-appearance directory in sys.path, probably
   something like Mac:Lib:lib-noappearance. This directory would
   contain versions of EasyDialogs, Framework and others plus their
   resource files. This directory should be prepended to sys.path
   either by the installer or by the user (probably after a warning
   message by the appearance-EasyDialogs or so). The non-appearance
   modules would probably eventually start lagging behind in
   functionality. An alternative of this might be the reverse: have
   the appearance versions in lib-appearance and the compatible ones
   in the standard sys.path.
3. Have modules dynamically decide whether to provide appearance
   support or not. This is the most elegant solution from a user point 
   of view, but quite a bit more work than I really care for, unless
   it turns out a large proportion of the MacPython users still have
   pre-appearance machines.

Another issue is that of the dialogs in the interpreter itself and the 
surrounding applets like EditPythonPrefs (and IDE, which I'll leave to 
Just), but I think these can be handled in similar ways.
--
Jack Jansen             | ++++ stop the execution of Mumia Abu-Jamal ++++
Jack.Jansen@oratrix.com | ++++ if you agree copy these lines to your sig ++++
www.oratrix.nl/~jack    | see http://www.xs4all.nl/~tank/spg-l/sigaction.htm