Enthought python - Traits

Ash ashutosh.mishra at gmail.com
Fri Oct 13 13:37:26 EDT 2006


Thanks Peter .. I will check out the mailing list. In the meanwhile - i
have made some progress. Now working out - how to get a button_fired
event to actually return the values ..

It's a process (as always..)

Cheers,

-A


Peter  Wang wrote:
> Ash wrote:
> > Hello everyone !
> >
> > I am trying to find some sort of a cookbook or more examples for using
> > Enthought Traits to build GUI's. I tried to follow the documentations
> > present at the enthought site, but couldnt get too far - especially on
> > how to handle a control event ?
>
> The traits manual is in the lib/site-packages/enthought/traits/doc
> directory, named Traits2_UM.doc/.pdf.  The traits UI manual/user guide
> is also in there.  However, what is not so obvious is that there is
> also an excellent, massive set of powerpoint slides (121 pages) that
> Dave Morrill put together that talks about the architecture of Traits
> UI, and how to build GUIs using it.  (Er, how to build them *well*,
> i.e. adhering to the M-V-C pattern and maximizing code reuse.)  Those
> slides are in traits_ui.ppt.
>
> > say i have a list "control" that create using the following two lines:
> >
> > class Project(HasTraits):
> > 	coordinate_system=Enum('Cartesian','Cylindrical')
> >
> > I added the following line to get the option selected by the user:
> >
> > def _coordinate_system_changed(self,old,new):
> >             print 'System changed from %s to %s ' %(old,new)
> >
> > but it does not return what the user select. It should return either 0
> > or 1 based on the two choices, but i can't seem to find a way to trap
> > that.
>
> The way that this works is that _coordinate_system_changed() gets
> called with the old value and the new value of self.coordinate_system.
> Thus, it doesn't "return" anything; your method is a "handler" method
> that gets called when the value of a particular trait gets changed.
>
> Why do you say it should return 0 or 1?  Do you mean that you want to
> get the index into the list of enumeration choices?  The Enum trait
> type is not quite like C in this regard.  In C/C++, enums are really
> ints; in traits, enums are lists of values of possibly mixed type.
>
> > I am relatively new to this GUI programming in Python and really could
> > use some tips/hints.
>
> No problem, hope the above helped.  You might want to email your
> questions to envisage-dev at enthought.com (and subscribe to it!).  That
> is the primary mailing list for several enthought libraries (including
> traits) and you'll get very speedy, in-depth answers to your questions
> there.
> 
> 
> -Peter




More information about the Python-list mailing list