[PythonCAD] PythonCAD changes and documentation

Stuart Brorson sdb at cloud9.net
Mon Oct 17 17:36:40 CEST 2005


Hello PythonCADsters --

I spent some spare hours on PythonCAD over the last few days.  Here's
what I did:

*  I implemented keyboard mnemonics for all actions.  You can now use
the "keyboard in left hand, mouse in right hand" method to
conveniently drive the program.  I will e-mail the patches (a diff
file) directly to Art.

*  I created an OpenOffice doc which lists all available actions along
with their accelerators, mnemonics, and text commands.  Please find
the .sxw original along with a .pdf version attached below.

Art -- a kindly suggestion:  Please create a "doc" directory beneath
the main pythoncad directory and put this doc in there.  It will
hopefully be useful to other PythonCAD newbies.

*  I fixed the issue with the <escape> key.  Now, if you are in the
middle or end of some action and hit the <escape> key, then the
program will return to an idle mode, and await the next command.

*  I also was puzzled by the program's behavior w.r.t. entering normal
keystrokes for entering text commands.  Previously, the entered text
would sometimes go into the Entry box at the bottom of the window, but
sometimes a popup Entry box would appear and accept the text.  This
behavior seemed to be related to which of the window sub-widgets was
last activated.  I modified the program so that any normal text
keystrokes now go only into the Entry field at the bottom of the
window.  Hopefully, this is the desired behavior.

*  To help me understand how the UI worked, I created the beginnings
of a quasi-UML diagram showing the components of the GTKImage class.
I did the drawing using dia; please find the original attached.  If
desired, I can create a .png.

Art -- another kindly suggestion:  Please create a subdirectory
"development" beneath the "doc" directory, and place this drawing in
there.  It will hopefully be useful to other newbie developers.  And
the more help provided to developers, the more developers will
(hopefully) show up.  In any event, I will add more stuff to the
drawing as I learn more about the program.

=============================================================

Now for some questions.

*  I noticed two classes (in gtkshell.py) which seem to be unused:
ImageView and ImageWindow.   What are these?  Are they vestigal
classes which are no longer needed?  Or are they an as-yet
unimplemented feature?

*  When I save out a drawing, close and restart PythonCAD and try to
read in the drawing, I get this error:

Failed loading '/home/sdb/TestOfPythonCAD.xml.gz'!
/usr/lib/python2.3/site-packages/_xmlplus/parsers/pyexpat.so:
undefined symbol: PyUnicodeUCS4_Decode

It looks to me like there is a problem with my XML installation.  Has
anybody else seen this?

*  Typing in command strings doesn't seem to work.  When I type
e.g. copy, I get this:

Traceback (most recent call last):
  File "/usr/local/src/pythoncad/PythonCAD/Interface/Gtk/gtkimage.py", line 255,
in entry_event
    eval(_cmd) # this will go away ...
  File "<string>", line 0, in ?
NameError: name 'gtkmenus' is not defined

Is this a known problem?  I can work on it if desired, but don't want
to interfere if somebody else is taking care of this.

================================================================

Other random notes:

*  I haven't done any re-orgainzation of the menus yet.  I may
get to that in a few days.

*  Selection mechanism:  It would be nice if you could just click on
an object (rather than doing "edit -> select") to select it.  Are
there any objections to that behavior?


Enjoy!  I'll be contributing more stuff as time goes on.

Stuart
-------------- next part --------------
A non-text attachment was scrubbed...
Name: PythonCADClassHierarchy.dia
Type: application/x-dia-diagram
Size: 4701 bytes
Desc: not available
Url : http://mail.python.org/pipermail/pythoncad/attachments/20051017/7eaf4a21/PythonCADClassHierarchy-0001.bin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: PythonCADActions.sxw
Type: application/vnd.sun.xml.writer
Size: 9400 bytes
Desc: not available
Url : http://mail.python.org/pipermail/pythoncad/attachments/20051017/7eaf4a21/PythonCADActions-0001.sxw
-------------- next part --------------
A non-text attachment was scrubbed...
Name: PythonCADActions.pdf
Type: application/pdf
Size: 47649 bytes
Desc: not available
Url : http://mail.python.org/pipermail/pythoncad/attachments/20051017/7eaf4a21/PythonCADActions-0001.pdf


More information about the PythonCAD mailing list