My set of ideas
by Roman Suzi other posts by this author
Jun 20 2001 6:53AM messages near this date
what's wrong with the existing solutions?
|
I am here
Hello!
Let me give my vision of what PythonCard should be.
Description:
Freeware authoring tool targeted for rapid multimedia
applications development.
License: GPL ?
(We will need Sketch and PIL so maybe some other?)
Features and architecture:
- Python as scripting language
- persistent object approach (no saves needed)
- special built-in message-passing scheme similar to HyperCard's
- abstraction from GUI toolkits (NO Tk-specifics here!)
- Unicode usage with always correctly looking fonts
- XML usage for project sources (like in Glade)
(thus projects must be serializable in human readable form
and reconstructable form. We are for Open Source!)
- CORBA for communication with other programs, for RPCs
- visual card editor
- maximal usage of existing compatible by license components
- lightweight runtime engine allowing creation of standalones
- fine grain components and extensions (maybe we need
something similar to Macintosh resources).
- vector and raster graphics, animation, video, audio hooks
- there must be some security model to prevent virus-propagation
(like Merry Xmas for HyperCard). I don't know how...
May be:
- Glade <-> PythonCard converter
(but it will be hard to do, especiall Glade <- PythonCard
part).
- optional relational/object database for serving objects
* special object model desciption here *
Each PythonCard object is visible to the user in one way or
another:
- on the main card or background window
- menu/panel edition window
- other windows
Each PythonCard object is scriptable to provide reaction to events.
(Python objects could be visualized (similar to __repr__)
by __visual__ for example. But this is probably just for fun.)
Interobject links (observers) must be allowed for things like
scroll-effect.
That is each object could subscribe to observe other object changes.
Object are contined one in another and events are passed
from inner to outer containers. Final container is Pythoncard
itself (or some Ultimate Network Python Card server ;-)
PythonCard need not be HyperCard clone. We need better thing.
The following proportion could be useful to understand what
PythonCard is for:
Python : C++ == PythonCard : Glade
I think, Sketch is a ready component for PythonCard to provide vector
graphics objects.
What else is already in place?
Sincerely yours, Roman A.Suzi
--
- Petrozavodsk - Karelia - Russia - mailto:rnd@[...].. -
|