I think Component class would benefit for implementing HasEnabled interface (there'd be no API change, since Component already has setEnabled(boolean)/isEnabled). The benefit is that when i use the enabled/disabled feature on a view of my MVP, i would declare HasEnabled in my view, and just return the component in the view implementation. For now, i need to wrap the component in a anonymous inner class of type HasEnabled and forward the call to setEnabled/isEnabled into the component's setEnabled/isEnabled.
As an example :
Thanks for the report. I've filed an API review ticket and will update this thread with any decision or changes we make. Like you said, Component already implements these methods, so this change seems to make sense at first glance.
The fix for this shortcoming has been included in the public release of Sencha GXT 3.0.0. You should be able to observe this change in our source. Although we're confident that this issue has been resolved, please reply here (or start a new bug thread linking to this one) if you have any issues with this change.