| Summary: | Refactor Widget.js for better Graphics and Animation integration | ||
|---|---|---|---|
| Product: | [RT] RAP | Reporter: | Tim Buschtoens <tbuschto> |
| Component: | RWT | Assignee: | Project Inbox <rap-inbox> |
| Status: | RESOLVED FIXED | QA Contact: | |
| Severity: | normal | ||
| Priority: | P3 | CC: | tbuschto |
| Version: | 1.4 | ||
| Target Milestone: | 1.4 M6 | ||
| Hardware: | PC | ||
| OS: | All | ||
| Whiteboard: | |||
|
Description
Tim Buschtoens
- prepareEnhancedBorder should not have to be defined twice (Widget and GraphicsMixin) - GraphicsMixin should not have to rename Widget._innerStyle to _innerStyleHidden - Intead of overwriting _layoutPost in GraphicsMixin (which is problematic since it is defined in Parent, Terminator, and serveral widgets inheriting from those), a event should be fired or a callback used - AnimationRenderer should not have to overwrite _applyVisibility on the widget-instance. (Besides beeing not very prettey, it keeps us from having more than one animationRenderer per widget. Idealy, this should also be done for the renderFunctions, but that might be hard to achieve.) After fixing this, ScrolledComposite.js should be slightly updated, as it is currently also overwriting _layoutPost on an widget-instance. Partial fix in CVS HEAD: - prepareEnhancedBorder is now mainly implemented in Widget.js. (Its, still overwritten, but the original is also called.) - layoutPost is no longer overwritten, introduced "flush" event instead - reformatted Widget.js for overview, removed some unused functions. Fixed in CVS HEAD: - Instead of hiding innerStyleHidden, GraphicsMixin sets the field _layoutTargetNode to false. - Widget now has a "getAdapter" function which can return a "WidgetRenderAdapter" class. WidgetRenderAdapter can be used by AnimationRenderer instead of overwriting functions. Currently only implemented for the critical "_applyVisibility", but should later be used for all renderfunctions. |