# GWT Designer User Guide

GWT Designer is a powerful and easy to use bi-directional Java GUI designer that makes it very easy to create GWT GUI applications without spending a lot of time writing code to display simple forms. With GWT Designer you can create complicated windows in minutes. Use the visual designer and Java code will be generated for you. You can easily add controls using drag-and-drop, add event handlers to your controls, change various properties of controls using a property editor, internationalize your app and much more.

GWT Designer is built as a plug-in to Eclipse and the various Eclipse-based IDEs (RAD, RSA, MyEclipse, JBuilder, etc.). The plug-in builds an abstract syntax tree (AST) to navigate the source code and uses GEF to display and manage the visual presentation. Using WYSIWYG layout tools, you don't need to write any lines of java code - the code will be generated for you by GWT Designer.

You can easily add any component to a container by using drag-and-drop, add an event handler to your controls, change various properties of controls using property editors and much more. Generated code doesn't require any additional custom libraries to compile and run: all of the generated code can be used without having GWT Designer installed. GWT Designer can read and write almost any format and reverse-engineer most hand-written Java GUI code. It also supports free form code editing (make changes anywhere...not just in special areas) and most user refactorings (you can move, rename and subdivide methods without a problem).

The editor is composed of the following major user interface components:

- Design View - the main visual layout area.
- Source View - write code and review the generated code
- Structure View - composed of the Component Tree and the Property Pane.
  - Component Tree - shows the hierarchical relationship between all of the components.
  - Property Pane - displays properties and events of the selected components.
- Palette - provides quick access to toolkit-specific components.
- Toolbar - provides access to commonly used commands.
- Context Menu - provides access to commonly used commands.

The editor also offers the following major features:

- Bi-directional Code Generation - read and write almost any format and reverse-engineer most hand-written code
- Internationalization (i18n) / Localization - externalize component strings, create and manage resource bundles.
- Custom Composites & Panels - create custom, reusable components.
- Factories - create custom factory classes and methods.
- Visual Inheritance - create visual component hierarchies.
- Event Handling - add event handlers to your components.
- Menu Editing - visually create and edit menubars, menu items and popup menus.
- Morphing - convert one component type into another.

Powered by Eclipse Technology
Copyright © 2003, 2014 Google, Inc. All rights reserved.