[Tutor] ANN: PythonCard Prototype 0.4.1
Patrick K. O'Brien
pobrien@orbtech.com
Thu, 16 Aug 2001 19:43:26 -0500
I'm sending this on behalf of the PythonCard project. Enjoy.
---
Patrick K. O'Brien
Orbtech
"I am, therefore I think."
PythonCard is a software construction kit (in the spirit of Apple's
HyperCard) written in Python.
You can download the latest release at:
http://sourceforge.net/project/showfiles.php?group_id=19015
Samples included in the latest release: conversions, dialogs, findfiles,
minimal, proof, searchexplorer, sounds, SourceForgeTracker, tictactoe,
turtle, widgets, worldclock
To see screenshots of some of the samples, visit:
http://pythoncard.sourceforge.net/samples.html
PythonCard home page
http://pythoncard.sourceforge.net/
SourceForge summary page
http://sourceforge.net/projects/pythoncard/
Mailing list
http://groups.yahoo.com/group/pythoncard/
PythonCard requires Python 2.1 or later and wxPython 2.3.x. wxPython is
available at http://www.wxpython.org/
PythonCard relies on wxPython, it will support the Macintosh once wxPython
has been ported to the Mac.
PyCrust 0.5.2
PyCrust by Patrick K. O'Brien is included as part of the PythonCardPrototype
releases. If you would like to find our more about PyCrust or get a separate
distribution, please visit the home page at
http://sourceforge.net/projects/pycrust/
----------------------------
Changes since release 0.3.1 (2001-08-07):
The Property Editor is still only able to display widget
attributes, you'll have to use the Shell to actually change
an attribute. The Property Editor will work in the next
release, and this time I mean it. :)
Release 0.4.1 2001-08-16
updated debug.py and pycrustrc.py to support PyCrust 0.5.2
due to changes between PyCrust 0.5.2 and earlier versions you
must use the latest version of Pycrust with PythonCard, which
is included in the release .zip for convenience
added 'border' attribute to TextField and its subclasses to support
a 'none' wxNO_BORDER option. updated worldclock and
test_widgets.py to show TextField with a border of 'none' used
in place of StaticText
added empty bitmap support. Image and ImageButton now use
the Bitmap class rather than an explicit wxBitmap. the convention
is that if the file is '' then an empty bitmap is created.
see SourceForgeTracker for an example of the use of empty bitmaps
if the layout doesn't look right on Linux or Solaris, you can use
the SourceForgeTracker.original.rsrc.py file by renaming it to
SourceForgeTracker.rsrc.py
fixed worldclock and tictactoe samples to use Bitmap
Release 0.4 2001-08-14
added components dictionary
find/findByName, createWidget, and deleteWidget were
replaced by a dictionary, so that widgets on a background
can be accessed as:
self.components.button1
see the samples for numerous examples of the new usage.
widgets now use dot notation to access their attributes
print button1.label # get
button1.label = 'hello' # set
This was a major revision to widget.py that also impacted
many other parts of the framework, so if you have any samples
of your own done with release 0.3.1 or earlier, you'll need
to update your code.
updated all samples to use the new dot notation
all widget attributes that can only be set at initialization
will now throw an AttributeError if you try and change
them. for example button1.name = 'bob' is not legal
so you get:
'AttributeError: name attribute is read-only'
*** note that while updating all the widget attributes to dot
notation I realized that we had never cleaned up the 'selected'
attribute for List, RadioGroup, and Choice, so be aware that
the name and behavior of 'selected' will probably change in
the next release
PyCrust is now included as a separate package
numerous changes were made to the PyCrust shell, see the
PyCrust docs for more information.
fixed backgroundColor and foregroundColor in class Background
the widgets sample has a button to change the backgroundColor
to show off this fix.
added pycrustrc.py files
whatever python code is in these files will be executed when the
shell is first launched. there is a default pycrustrc.py in the
package directory. there is another example in the turtle sample
directory.
changed pythoncard.config.py
added options to set the position and size of all the "debug"
windows: Message Watcher, Property Editor, Shell
added pythoncard.user.config.py
this file will override pythoncard.config.py if it exists
you should copy pythoncard.user.config.py and
update the position of each window for your own screen
dimensions; you can update the shell size too
added defaultStackPosition option
you can add a key:value line to pythoncard.user.config.py
to override the stack position that a PythonCard app may or
may not specify. The most common would be something like
'defaultStackPosition':(5, 5),
to force the window to the top-left of the screen (I prefer
this over (0, 0) myself.
added 'Debug' menu
if any of the 'debug' windows are requested when an application
is started, then all of the windows will be created, but only
the requested ones will be shown initially. you can choose
the window name from the Debug menu to show/hide the window.
added an About PythonCard... menu item to the Debug menu
displays version numbers and PythonCard project info
added SourceForgeTracker sample
downloads XML from SourceForge tracker database to display
Bug Reports and Feature Requests for the following projects:
PyChecker, PyCrust, Python, PythonCard, wxPython. Additional
projects can be added.
added conversions sample
does Fahrenheit <-> Celsius and English <-> Morse Code
conversions with a generic framework, so other conversions
can be added
added tutorial.txt to docs
applications can now use the .pyw extension
if you don't want an application to have a console window,
then rename the application to .pyw, but don't change the
file reference in the .rsrc.py file, leave that as .py
as an example, you can change worldclock.py to worldclock.pyw
ka
---
Kevin Altis
altis@semi-retired.com
_______________________________________________
wxpython-users mailing list
wxpython-users@lists.wxwindows.org
http://lists.wxwindows.org/mailman/listinfo/wxpython-users