[PythonCAD] other notes about development

Art Haas ahaas at airmail.net
Sat Mar 4 18:29:45 CET 2006

On Sat, Mar 04, 2006 at 03:13:06PM +0000, Floris Bruynooghe wrote:
> [ Terribly late reply here, but still thought it worthwile ]
> On Mon, Jun 20, 2005 at 10:55:19AM -0500, Art Haas wrote:
> > On Mon, Jun 20, 2005 at 01:03:32PM +0200, Rafael Villar Burke wrote:
> > > Another point I humbly think makes difficult to grow a community of 
> > > developers is that some architectural decisions such as the generic UI 
> > > layer, which were made to have some more flexibility in the future, make 
> > > current development too complex and burdensome. The current situation 
> > > makes difficult to take advantage of the underlaying toolkit 
> > > capabilities and to attract developers that are proficient in a specific 
> > > toolkit.
> I must somehow agree here.  I remember looking at the code more
> closely a while ago.  Initially I applauded the separation.  But then
> I discovered that the core/engine/whatever was too much linked with
> the GUI.  Specifically I remember the menu layout being specified in
> the GUI-independent part, this did really put me off.  I was hoping to
> find a much more generic core/engine where one can then build several
> UI's on.  For example, why should it not be possible to build two GTK
> GUI's that look different?
The initial menu code was in the 'Generic' code, but that is no longer
true. When I first started working on PythonCAD I thought that was the
way things should be done, so the interface would use the 'menus.py'
file and build a menu/toolbar/something from that file. That approach
has since been abandoned, and all the menu code is now done in the
'gtkmenus.py' file. The 'menus.py' file is still around but is not used.
I need to 'svn delete' it ...

> Appart from that I must agree with everyone else in this thread:
> thanks for keeping up the great work!  Personally I have wanted to get
> involved a few times but mostly haven't because of a lack of time.

The current approach of building the menu used in the interface from
code defined in the 'Interface' portion of PythonCAD is closer to what
you want described above. If you find some time I'd welcome suggestions
and/or patches to make PythonCAD have an improved UI.

Art Haas
Man once surrendering his reason, has no remaining guard against absurdities
the most monstrous, and like a ship without rudder, is the sport of every wind.

-Thomas Jefferson to James Smith, 1822

More information about the PythonCAD mailing list