Google Web Toolkit offers a variety of ways for creating the custom widgets. The easiest way is to develop composite widgets by grouping existing basic widgets and adding some interaction logic to them.
 
To create a Custom Widget, it has three general concepts which are as follows : 
 
* Building Composite Widgets.
* Create the Java Code for the new widget.
* Wrap JavaScript using JSNI methods.