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.

Reply via email to