On 3/19/07, Alexander Eisenhuth <newsuser@stacom-software.de> wrote:
> Hello alltogether,
> I'm willing to contribute some enhancements to the GUI of Py++. The idea behind
> the enhancement is to add a little "project management" to the gui. Any comments
> or discussion is welcome.
> GUI enhancements:
> + Add a Menue bar
> + Add File Item:
>    + Save Project
>    + Load Project
>    + Recent Project
>      + (last projects)
> + Context Menue to "Generated code"
>    + "Select all (Ctrl-A)"
>    + "Copy (Ctrl+C)"
> Project File:
> + XML file
> + Name entered by user
> + project settings:
>    + GCC XML-Path (*)
>    + List of Inc-Paths
>    + List of Defines
>    + Generated Code

Why do you think we need this one?

> + Gui Settings
>    + Geometry
> PY++ GUI configuration:
> + XML file
> + Name: $(HOME).pyplusplus_gui
> + project settings:
>    + max num projects
>    + list of recent projects
>    + path of last project
> (*) I'm not shure weater I should add the GCCXML path to project or to the GUI
> config.
> Add it to Project File:
> + Different GCCXML can be used
> Add it to PY++ GUI configuration:
> + New version of GCCXML must only be changed once

I think GCCXML belongs to project file, also you we can implement some logic that will remember last X used GCCXML's. Thus it will be pretty easy to use same project on different machines. Another valid option is to define GCCXML environment variable.
You can take a look on "gccxml search algorithm" here: http://pygccxml.svn.sourceforge.net/viewvc/pygccxml/pygccxml_dev/pygccxml/parser/source_reader.py?view=markup
Take a look on __raise_on_wrong_settings method.

> What do you mean?
> I haven't used TkInter for now. So I'm at the moment open to other proposals
> than Tkinter.
> My thoughts about gui toolkit:
> - Good GUI builder are a nice thing, when the generated code can be easily be
> integrated (like QtDesigner, boa)
> - PyQt and wxPython are good toolkits but a new dependancy to Py++
> - When a change from Tkinter should take place, it should be done now

I thought about this and if you ask me than wxPython and Boa is the way to go.
I was not productive with Tkinter. I never used PyQt. Another reason to use wxPython
is that it works pretty well with "freeze" tools. It is possible to create stand-alone, with no
external dependencies executable.

I think what you are going to do is great. Let me know if you need some\\any help from me.

Roman Yakovenko
C++ Python language binding