-------------- Original message ----------------------
From: Adrian Klaver <[EMAIL PROTECTED]>
> On Friday 01 February 2008 7:28 am, Ed Leafe wrote:
> > On Feb 1, 2008, at 8:59 AM, Adrian Klaver wrote:
> > > A couple of points:
> > > Changes made to a cdxml file outside of the ClassDesigner seem to get
> > > overwritten.
> >
> >     Depends on the change. If there is something that is not being
> > properly persisted, then that is a bug and should be reported. This
> > has nothing to do with XML, and it is wrong to place the blame for
> > this on XML. It is simply a matter of the Class Designer not being
> > tested and debugged as well as it needs to be.

Yea, I will have to investigate this further. Got caught up in my general 
reaction
to XML.

> >
> > > Getting the coding/escaping right for XML is finicky and error prone.
> >
> >     It is plain text. You declare the encoding in the header, and the
> > rest is handled by the tools for parsing XML. It is no more difficult
> > than encoding in a .py file.
> >
> >     Python has its own escaping issues, especially with pathing on Windows.
> >
> > > I am progressing to that point, but in the absence of documentation
> > > of how the
> > > various parts of Dabo work together the ClassDesigner is the best
> > > tool to
> > > learn Dabo.
> >
> >     When you save a design into separate .cdxml and .py files, you get a
> > wonderful visual description of the separation of the GUI structure
> > (.cdxml) and action (.py). Constructing the GUI widgets is not
> > interesting; it is a necessary part of creating a desktop app. What
> > those widgets do is the interesting part.

True, but without the widgets and an understanding of how they are
constructed the app goes nowhere.

> >
> > > I realize I am fighting an uphill battle in regards to XML, one I
> > > waging on
> > > multiple fronts. I for one think it sucks as a data storage tool.
> > > For similar
> > > purposes I find YAML(http://pyyaml.org/) to be much easier to work
> > > with and
> > > understand. Just my 2 cents.
> >
> >     I would rather defend the choice of a nearly-universal standard such
> > as XML to the occasional naysayer such as yourself than have to defend
> > the choice of a relatively unknown and obscure format to the vast
> > majority of users.

I can see that, though I would add that YAML forms the basis for the text data 
persistence for Ruby on Rails. 

> >
> > > My goal at some point in the near future. The issue such as it is,
> > > is that the
> > > entry point for people new to Dabo will be ClassDesigner and they
> > > will start
> > > looking at the cdxml files to see how things are done. Seeing Python
> > > code
> > > would be more helpful in seeing how things work.
> >
> >     Here I strongly disagree. The .cdxml is very helpful in revealing the
> > structure; try creating a complex layout using nested sizers, paged
> > controls and grids, and then look at the resulting .cdxml file. You'll
> > see an exact mirror of the form's structure. Now imagine the Python
> > code necessary to create the same form: there would be no visual clue
> > as to what is nested within what.

Here we have to disagree. I find it easier to follow the flow of information in 
Python then XML. The idea that XML is human readable is questionable, at
least to this human.

> >
> > > At some point the XML in the
> > > cdxml is converted back to Python to generate a form. If there was
> > > way to
> > > dump that information (however inelegant) back to a file it would be
> > > very
> > > helpful.
> >
> >     Of course there is a way; whether it is helpful or not is debatable.
> > The reason is that in order to create generic translations, the code
> > that is produced, while perfectly functional, is hardly as tight,
> > efficient or attractive as what a human could write.

Maybe not but it is a step in the right direction. Any building process is
iterative where over time you strip away the extraneous and are left with
a polished finished product. Its the crawl, walk, run process. 

> >
> >     To see the output, open dabo/lib/DesignerXmlConverter.py and
> > uncomment line #68. The next time you run a .cdxml structure, a file
> > in the directory you are running from will be created; its name will
> > be "CLASSTEXT.py". You can then read that file to see just what is
> > being created. Be forewarned, though: it is not an example of how
> > anyone would write Dabo UI code.

 This is much easier to follow. My only comment  here would be to replace 
obj = with 'obj_name' =   i.e dTextBox4 = , common_name =

> >
> > -- Ed Leafe
> >
> 
> Thanks for the tip. I have some further comments but they will have to wait, 
> work beckons.
> 
> -- 
> Adrian Klaver
> [EMAIL PROTECTED]
> 



--
Adrian Klaver
[EMAIL PROTECTED]

 



_______________________________________________
Post Messages to: [email protected]
Subscription Maintenance: http://leafe.com/mailman/listinfo/dabo-users
Searchable Archives: http://leafe.com/archives/search/dabo-users
This message: http://leafe.com/archives/byMID/dabo-users/[EMAIL PROTECTED]

Reply via email to