This document presents an overview of Matisse4MyEclipse (M4M)
features available in MyEclipse.
What is Matisse4MyEclipse?
Matisse is the code name for the well-known WYSIWYG Swing
user-interface designer of
NetBeans. This designer
includes some of the most intuitive and advanced layout and
sizing controls of any Swing visual designer today.
Matisse4MyEclipse is an implementation of NetBeans Matisse that
integrates its functionality into
Workbench to enable the rapid development of Java
Swing rich client applications (RCP) within the MyEclipse
environment. Developed in partnership with Sun's NetBeans
Project, Matisse4MyEclipse offers full control and round trip
development between RAD visual design tools and underlying Java
Source code. It consists of a form designer with a source mode,
an extensible palette of Swing and AWT controls with
drag-and-drop placement support,
advanced alignment guides and sizing tools as well as property
and outline views.
Swing/Matisse workbench perspective
Form Editor with visual design and source modes
Extensible palette of Swing and AWT controls
Form creation and project library configuration wizard
Preferences for operation customization
Numerous UI control and event configuration wizards.
The design process involves drag-and-drop placement of Swing and
AWT components from the UI controls palette onto a
visual form. The Form Editor provides advanced alignment guides
and sizing tools to enable quick development of aesthetically
pleasing user interfaces in minutes. The source mode of
the Form Editor is an embedded version of the Eclipse
Java Editor and allows quick viewing and modification of
generated and supporting Java code.
Creating a New Form
Working with Matisse4MyEclipse begins with first creating a new
Matisse Form and adding it to your project.
MyEclipse supports many different kinds of Swing-based forms that
you can add to your project, including:
MDI Application (A form for a JDesktopPane-based MDI
After creating your new form in your project, MyEclipse will take
you to the Matisse4MyEclipse perspective where you will be ready
to design your new form visually.
Some of the tools you will have to design your forms are:
Form Designer - At the center of the screen you
have the visual representation of the form you are designing,
and the components on that form can be dragged and dropped or
organized in any fashion you wish.
Form Outline - This will show you the hierarchy
of all the visual components in your form (for example, which
panels contain which components, etc.)
Matisse Palette - This palette includes all the
components you can use to design your form. It can also contain
Properties - This will display the properties,
events and code generation settings for each component in your
form for you to tweak or fine-tune as you want.
Source/Design - The tabs at the bottom of the
Form Designer allow you to easily flip between the Source or
Design views of your form, allowing you to work in whichever
method you prefer.
Quick Preview - This preview mode will pop up
an emulated version of your running form for you immediately, to
get an idea of how it will look at runtime without needing to
spin up the entire application.
The focus of the Matisse4MyEclipse tools is to help you work
quickly and efficiently by providing tools that allow you to
visually edit your forms while also allowing you to dig deep into
the code and tweak any behaviors you want to customize.
Custom Palette Components
Matisse4MyEclipse also supports the use of Custom Swing
Components in the Matisse Palette. New components can easily be
added by opening the palette's management tools:
and then selecting the type of component you'd like to add to it:
From then on you will have access to your custom components
directly from the Matisse Palette. They can be dropped into any
form you are working on or properties edited using the advanced
form design tools.
We would like to hear from you! If you liked this overview, have
some suggestions or even some corrections for us please let us
know. We track all user feedback about our learning material in
Please be sure to let us know which piece of MyEclipse material
you are commenting on so we can quickly pinpoint any issues that