Glenn Linderman wrote:
Speaking of history, I see I also have...
-menu => 1
in the list of "standard options for listbox and combobox widgets".
Generally speaking -menu takes a menu handle/object parameter. But I'm
quite sure I used this option to make something work... any chance you'd
know what? I'll experiment with taking it out, but it'll make me
nervous until I retest all my old programs...
I've not opened the source this time, but if I remember correctly the
CreatWindowEx() API call overloads its HMENU parameter, because only a
top level (main) window can have a menu. For a child window the field
becomes a 'control id' - when working with windows resources this is the
number that the programmer uses to refer to a child window, as window
handles are only assigned at run time. In Win32::GUI we refer to
everything by window name (-name), which we map internally to window
handles, so the control ID (which I believe is what you're setting here)
should be unnecessary.
I've come across a couple of place where it matters not to have a
control ID of zero, but, again, if I remember correctly this was related
to custom-draw and owner-draw functionality. If you find anywhere else
that it matter, then please let me know.
Thanks. For this and a few other multi-bit fields, I wonder if it is
really best to have
-variation1 => 1, -variation2 => 1, -variation3 => 1
types of options, or if it would be better to have
-variations => 1
-variations => 2
-variations => 3
Of course then one would rather have
-combostyle => simple
-combostyle => dropdown
-combostyle => dropdownlist
If I had a clean sheet to start from the last option you give would be
my prefered option (although using strings rather than constants).
It would be simpler to document, and "mutual exclusion" would be easier
to explain...
From the current starting point, yes. I have a few folder full of
experiments that I have been doing, whilst wondering if a Win32::GUI V2,
re-starting from scratch is the way to go. That was the approach I took.
However, microsoft don't make it easy - it takes a lot of reading
between the lines, experimenting and reeading of the header files to
work out what's mulually exclusive and what's not!
Regards,
Rob.