ComboBox setSelectedId update parameter


#1

Is it just me or do i see that all component have a

sendChangeMessage = true

and combo has

dontSendChangeMessage = false

could this be consistent across components, i just spent an hour trying to figure out what’s zeroing my parameters. perhaps there is a reason for this i don’t understand ?


#2

Yes… I know about that, to my shame. They’re both very old methods that I happened to write in an inconsistent way, but now that there’s tons of code out there using them, I can’t change one of them without silently breaking everybody’s code!

I’ve considered changing them to use a different type of parameter, e.g. an enum instead of a bool, but it’d need to be done in a way that causes a syntax error in all code that uses it, and forces people to explicitly fix it.


#3

yeah, i think you should consider a global (to all classes)

enum ListenerNotificationMethod
{
    SendChangeMessage = 1,
    DontSendChangeMessage = 2
};

or the like… used in the setXXX methods of relevance.


#4

The only worry is that some compilers might cast the enum to a bool and emit a warning rather than throwing an error. I’ll have to experiment.