[ImageJ-devel] Design meeting notes
Lee Kamentsky
leek at broadinstitute.org
Tue Oct 12 09:56:21 CDT 2010
On 10/12/2010 10:07 AM, Curtis Rueden wrote:
> Hi Lee,
>
>
...
> The only tricky thing about this approach is how to handle
> programmatically generated changes. For example, if widget A's value
> depends on widget B, and both have callbacks... when user changes B,
> callbackB is called, which programmatically changes A... should
> callbackA then be invoked? Either way works—but if so, you have to be
> careful not to code mutual dependencies in a way that generates
> infinite recursion.
>
I'll use CellProfiler as an example here: the UI repaints itself after
any change, with the validation callbacks fired, but the validation
callbacks aren't allowed to change parameter values. The exception that
they throw indicates the parameter that's most at fault for the problem,
and some hopefully informative message about why.
So call depth = 1, respect the user's choice of parameters (which may be
transitory if they are editing several at once) and indicate, but not
prevent misconfiguration.
---Lee
More information about the ImageJ-devel
mailing list