On Mon, 5 Mar 2001, Angus Leeming wrote:
> > Please enlighten me why you think you have to implement it the way you
> > suggest.
>
> Ok, here goes. If I leave out the all important line in
> ButtonController::input():
>
> if (ButtonPolicy::SMI_NOOP == in) return;
>
> then the up,down,add,delete buttons in the Citation dialog become active when
> a entry is clicked on in the two browsers. I think this occurs because their
> state is controlled by the dialog rather than by the ButtonController, but
> I'm not sure about this.
In that case I suggest you put the above line in nextState() where it
belongs but also keep it in Citation with a comment saying that it
shouldn't really be there because the up,down,add,delete buttons are
mishandled (or at least handled by the dialog). That way everyone should
get what is needed -- if you don't have it in nextState() what will happen
when someone calls with SMI_NOOP? Undefined.
> Of course, you could always extend ButtonController so that it can control
> _everything_, but that's definitely your baby not mine!
What? You want me to come up with solutions to problems _and_ implement
them too! ;-)
> Incidentally, this stuff is now in BRANCH_MVC. Wait a day or so and it'll be
> in HEAD, so you won't need to check out anything to experiment.
>From the glimpses I've had I like it a lot. A whole lot.
Allan. (ARRae)