Well, being in a Lofty mode, I did a review of all options that I could find in 
the latest HTML file download. Recommendations follow. As always, these are 
comments and not criticisms. The effort to get to this point seems huge and 
worthwhile, and I am greatful.
   
  I do have a cross-reference of Options vs. HTML files in excel, and would 
like to e-mail it to others for review, use, and change. It shows where each 
option is used, and it says something about the information given in the HTML 
documentation (good for tips, good for help, values provided, and defaults 
provided). The document is in sore need of review.
   
  Comments (only on %Option):
  1. The version of the Microsoft Windows GUI being implemented should be 
provided.
  2. A more extensive reference for methods, events, objects, etc. should be 
provided.
  3. A source book(s) that can be purchased and used as a reference should be 
provided (if different from 2. above).
  4. Missing index file (global reference). An HTML file referencing all other 
files was provided in v1.03 and is missing here.
  5. Commonality of topic. Each HTML file should be organized in exactly to 
same fashion. Topics which are deliberately absent should be marked as 
deliberately absent. In looking for %Option (always given under 'new' 
something), sometimes it's there, sometimes it's not. However, for a casual 
user, a missing topic can be interpreted as missing by inadvertance or by 
deliberate intent. If the topic is marked as deliberately missing then there is 
no ambiguity of purpose.
  6. Commonality of invocation. There seems to be two means to create a GUI 
object. Either as a 'new' something or as an 'add' something. If both are 
appropriate, both should be included, and if one should be excluded, then it 
should be explicitely excluded.
  7. Commonality of invocation description. All descriptions should look 
identical. For example in ImageList.html we see 'new(X, Y, FLAGS, INITAL, 
GROW)' with a comment concerning the use of 'common options', and in 
Button.html we see '  new(PARENT, %OPTIONS)' with descriptions of the options. 
It would be a good thing to describe acceptable formats in a single place and 
to use them throughout.
  8. Do not use an abbreviated or truncated form for an invocation. My beef is 
that the use of 'new' for options doesn't appear correct. Shouldn't it be 'new 
Win32::GUI::Object(%OPTIONS)' or 'new Win32::GUI::Object(<positional 
parameters>, <non-positional parameters>)' or ?
  9. A single file should be provided to describe all common notations and 
formats used. 10. Options. Options have inconsistent uses, values, and order 
within the HTML documents (my llittle excel spreadsheet can be used to show 
this). For ease of maintenance and ease of description I suggest the following:
    a. All options be collected into a single file and a program developed to 
distribute the information to HTML files from this file. Maintenance is reduced 
because only a single file needs to be reviewed and modifiied..
    b. All options contain a default value (as appropriate) or a statement 
saying that there is not default value.
    c. All options contain their values or references to files containing their 
values. 'COLOR' or 'IMAGELIST' or 'FONT' just doesn't seem descriptive enough.
    d. Where the distribution of values is not symmetric to all objects, then a 
separate mechanism should be invented to indicate which objects can use which 
values.
    e. All options should include at least a 'tip' to indicate what it does. A 
statement that 'Set/unset option' is non-descriptive. The question is not 
whether the option can be turned on or off, but what service does the option 
perform.
    f. All options may contain 'help' information. Information more extensive 
that the 'tip'. I note here that it seems to be possible to generate a 'tip' 
from an extensive 'help', and so, given a 'help' a 'tip' is unnecessary. (A 
mouthful if I do say so myself.)
   
  I am willing to provide any support in implementing these features that you'd 
like. I admit to being the lowest common denominator in any group of my peers, 
but a ready hand is a ready hand. 
   
  The gathering of descriptions and information on options has already been 
done (the excel file). I intend to continue this effort on events and methods 
and option values. This is to provide me with a global picture of what has been 
implemented in Win32::GUI and to enable me to build an editor based on that. 
For my own effort, any comments and/or support is more than welcome.
   
  art

Reply via email to