There are several ways to create custom widgets for RAP. This article is not a guide on how to create them, but links to the relevant resources and covers some current issues.
SWT-Style Custom Widgets
Those are custom widgets like they are created in SWT. There are two types: Compound widgets and Self-drawing widgets.
This guide by the creators of SWT pre-dates RAP, but is still valid for current SWT/RAP versions. The chapters about native-code can be ignored.
The current RAP developers guide covers some RAP-specific aspects of such custom-widgets.
- Bug 321274 - Compound Custom Widget Focus
- Bug 370328 - [Canvas] - Text has wrong z-index
- Bug 375615 - [GC] - Drawing order of image is not correct
- Bug 370313 - [Canvas] - Tweak canvas performance in IE7/8
- Bug 361615 - [Canvas] - Implement SWT.NO_BACKGROUND to avoid clearing the canvas rectangle
Browser-based Custom Widgets
The current RAP developers guide gives an overview of the techniques that can be used to create such custom widgets and links to several examples.
- Bug 363811 - [Browser] certain characters in browser function name crash client]
- Bug 374244 - SWTException during Browser.evaluate() when trying to retrieve size of browser content
- Bug 371132 - [BrowserFunction] - Support calls to browser function while another browser function is pending
- Bug 371133 - [Browser] - Support multiple script executions
- Bug 323803 - [ipad] Browser-widget/iframe broken
ClientScripting-based Custom Widget
ClientScripting is an Incubator Projects suitable to create RAP custom widgets. It requires at least RAP 1.5.
The current RAP developers guide explaining when ClientScripting is a good solution for creating custom widgets.
Detailed and up-to-date explanation of ClientScripting features.