<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
Philippe Marschall wrote:
<blockquote
 cite="mid:66666f210712090347y7fc095c5pde775caf0c6170fb@mail.gmail.com"
 type="cite">
  <pre wrap="">Hi

I think this a great idea, but IMHO it would make more sense to
comment the configuration attributes instead of the values and then
also present the these comments.

Say hello to your new Seaside config app (see attachment).

Cheers
Philippe
  </pre>
</blockquote>
Hello Philippe, <br>
<br>
I tried that approach earlier, I even used tooltips to begin with,
however they can only provide very limited information about some
fairly complex choices.<br>
<br>
My current scheme asks the configuration ancestor to provide a comment
for the current value of the attribute.<br>
The comment displayed can also depend upon other configuration values.<br>
<br>
I came up with this idea because I am developing a fairly comprehensive
MagmaHelper scheme.<br>
<br>
This scheme has one selector providing a choice between the following
helper classes. (Any one application can have two of these)<br>
<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; WAMagma&nbsp; <br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; WAMagmaBasicPool <br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; WAMagmaSolo&nbsp; <br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; WAMagmaShared <br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; WAMagmaSharedAuto&nbsp; <br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; WAMagmaSoloAuto&nbsp; <br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; WAMockMagma&nbsp; <br>
<br>
Each of these attribute values provides a comprehensive explanation as
to what it does. The explanations tell the user about the database
commit strategy that they have selected, and so they are quite verbose.<br>
<br>
e.g.<br>
<br>
<small>"WAMagmaSoloAuto is specifically designed as the simplest and
most transparent of the Magma-Seaside helper options. It is the same as
WAMagmaSolo but provides an automatic #commitAndBegin, writing data to
the database following callback processing, just prior to rendering.<br>
<br>
&lt;br&gt;&lt;br&gt;<br>
<br>
'Solo' indicates that Seaside is the only user of the database and
therefore has the latest data available without any need for an
explicit refresh. If the code does perform a manual #commit: it is
protected so that multiple Seaside users do not accidentally overlap
the application of their changes to the database. Since a manual
#commit: in this instance is a sub-transaction it would normally be
ignored, however WAMagmaSoloAuto performs an #abort prior to any manual
#commit: this abort should not revoke any local changes made to the
data model, and the manual #commit: will be performed, followed by a
#begin in anticipation of the next automatic #commitAndBegin."</small><br>
<br>
Ok so this might be slight overkill, but it places the information
directly in the place where it is needed, there is no need to look at
code in order to configure the application.<br>
<br>
:-)<br>
<br>
Keith<br>
<br>
<br>
<br>
</body>
</html>