blob: b11160480160cb4b729cff244192c052f58ab3ae [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML>
<HEAD>
<meta name="copyright" content="Copyright (c) IBM Corporation and others 2000, 2005. This page is made available under license. For full details see the LEGAL in the documentation book that contains this page." >
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=ISO-8859-1">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
<LINK REL="STYLESHEET" HREF="../book.css" CHARSET="ISO-8859-1" TYPE="text/css">
<TITLE>
Managed forms
</TITLE>
</HEAD>
<BODY BGCOLOR="#ffffff">
<H1>
Managed forms</H1>
<p align="left">Managed forms are wrappers that add life cycle management and
notification to form members. Managed form is not a form by itself. It <i>has</i>
a form and accepts registration of <code>IFormPart</code> element. For each
<code>IFormPart</code>, it manages events like dirty state, saving, commit,
focus, selection changes etc. In order to reach to the wrapped form widget, call
the '<code>getForm()'</code> method.</p>
<p align="left">There is a similarity between managed forms and JFace viewers -
the relationship between a form and a managed form is similar to the one between
a <code>Table</code> widget and <code>TableViewer</code> in JFace, for example.</p>
<p align="left">Not every control on the form needs to be a form part. It is
better to group a number of controls and implement <code>IFormPart</code>
interface for the group. Section is a natural group and Eclipse Form provides
<code>SectionPart</code> implementation. It implements the interface and
contains a <code>Section</code> instance (either created outside and passed into
the constructor, or created in the part itself).</p>
</BODY>
</HTML>