Hi, I've started work on TAP5-1602 (Add Zone parameter to Checkbox component) and it's been an interesting learning experience (it's really the first time i'm going over such big part of the T5 codebase) - so, keep that in mind, it should explain my ignorance in a few cases!
So, anyway, i'd like to provide the zone parameter to all AbstractField subclasses since i don't see the need to special-case it to a particular component and in fact i've gotten it to work quite nicely. But (there's always a but!), I then noticed that Radio and RadioGroup do not extend from AbstractField, So, I'm wondering, are there any particular reason for this? Because i see a lot of the AbstractField code being duplicated in those components (esp. in RadioGroup). I've prepared a diff file that would turn those components into AbstractFields and it's at https://gist.github.com/ef2fe45d2396c7c3f6a7 It's mainly deleted code (i think close to 150 lines less)! but (i did mention there's always a but, didn't I?) it requires a slight change in AbstractField (the isDisabled method needs to lose its final modifier since Radio needs to overwrite it). Is that an acceptable change? If that's not the case, there's still an alternative that i could be happy with and that is to have only RadioGroup extend from AbstractField (which makes some sense since it's the component with the most duplications and its value is really the one that gets updated). What do you think? Please let me know if i'm heading in the wrong direction. btw, i'll discuss why it's possible to extend the concept of zone from the select component to all AbstractFields in a forthcoming email (but it basically has to do with reusing the AbstractField#processSubmission() method) -- Andreas Andreou - andy...@apache.org - http://blog.andyhot.gr Apache Tapestry PMC / http://chesstu.be owner Open Source / JEE Consulting --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tapestry.apache.org For additional commands, e-mail: dev-h...@tapestry.apache.org