On 03/26/13 01:54, MacArthur, Ian (Selex ES, UK) wrote: >> Actually, some elaboration; tests revealed a subtlety I wasn't aware of: > > Huh; that's not quite what I expected, either. > Though, now I think of it, I'm not sure what I *did* expect the behaviour to > be. > I only rarely use the "when" options, so had (at best) a vague notion of how > they interacted,
Ya, ditto. > I wonder if it is worth poking at a few non-radio buttons > and see if that is "the same" or whether some of these behaviours > are peculiar to the radio-button case? Good idea; Fl_Browser is the only one I can think of that has multiple states that are similar to radio buttons. I can't use Fl_Tree or Fl_Table as examples, as I'm working on those.. Overall, radio and browsers are "similar" when it comes to mouse clicks, though there are some oddball behaviors. The keyboard behavior is different; the browser is "more consistent" with what I'd expect, but has some odd behavior too. So here's a big table comparing the when() behavior of radio and browser, comparing mouse clicks and keyboard nav clicks: http://seriss.com/people/erco/fltk/when-behavior-03-26-2013.html RED indicates behavior I think is *wrong and should be fixed*. BLUE indicates behavior I thought *odd* but maybe shouldn't be fixed, not sure. Hover over the colored text to see tooltips for what I think the behavior *should* be. PS. Making that table made me dizzy. PPS. One consistently asymmetrical behavior I notice with mouse clicks in both radio and browser that might be intentional (though I can't think why offhand): WHEN_CHANGED -- callback invoked on *PUSH* WHEN_NOT_CHANGED -- callback invoked on *RELEASE* Not sure why both aren't on the same stroke, as I would think both would work on PUSH unless amended by WHEN_RELEASE.. though maybe that's not how WHEN_RELEASE is supposed to work, and perhaps there's a reason for this during odd things such as DRAGGING. _______________________________________________ fltk-dev mailing list fltk-dev@easysw.com http://lists.easysw.com/mailman/listinfo/fltk-dev