Derived components extend or are collections of existing components.
If you have developed an Echo application, you have probably already created a derived component by extending one of Echo's built-in components. The simple example below shows such a case:
import nextapp.echo.Button;
import nextapp.echo.Color;
public class GreenButton extends Button {
public GreenButton(String text) {
super(text);
setForeground(Color.BLACK);
setBackground(Color.GREEN);
}
}
This component is a button that will display black text on a green background. This example, while trivial and having little real world application, is nevertheless a legitimate derived component. All of Echo's built in components are designed to be extended.
NOTE: You are NOT violating Echo's licensing terms if you create a closed-source or otherwise LGPL-incompatible component that extends a built-in Echo component.