1 package org
.argeo
.slc
.akb
.ui
.editors
;
3 import org
.argeo
.slc
.akb
.ui
.AkbUiUtils
;
4 import org
.argeo
.slc
.akb
.ui
.composites
.ItemTemplateTitleComposite
;
5 import org
.eclipse
.swt
.SWT
;
6 import org
.eclipse
.swt
.layout
.GridData
;
7 import org
.eclipse
.swt
.widgets
.Composite
;
8 import org
.eclipse
.ui
.PartInitException
;
9 import org
.eclipse
.ui
.forms
.IManagedForm
;
10 import org
.eclipse
.ui
.forms
.editor
.FormEditor
;
11 import org
.eclipse
.ui
.forms
.editor
.FormPage
;
12 import org
.eclipse
.ui
.forms
.widgets
.ScrolledForm
;
15 * Parent class for most akb items editor. Factorizes UI parts that are common
16 * in various item types.
18 public abstract class AkbItemTemplateEditor
extends AbstractAkbNodeEditor
{
20 /* CONTENT CREATION */
22 public void populateMainPage(Composite parent
, IManagedForm managedForm
) {
23 parent
.setLayout(AkbUiUtils
.gridLayoutNoBorder());
24 // First line main info
25 ItemTemplateTitleComposite ittCmp
= new ItemTemplateTitleComposite(
26 parent
, SWT
.NO_FOCUS
, getToolkit(), managedForm
, getAkbNode(), getAkbService());
27 GridData gd
= new GridData(SWT
.FILL
, SWT
.TOP
, true, false);
28 gd
.minimumHeight
= 250;
29 ittCmp
.setLayoutData(gd
);
31 Composite bottomCmp
= getToolkit().createComposite(parent
);
32 gd
= new GridData(SWT
.FILL
, SWT
.FILL
, true, true);
33 bottomCmp
.setLayoutData(gd
);
34 populateBottomPart(bottomCmp
, managedForm
);
38 protected void addOtherPages() throws PartInitException
{
39 addPage(new TestPage(this, "testPage", "Test"));
42 /** Overwrite to add specific bottom part depending on the item type */
43 abstract protected void populateBottomPart(Composite parent
,
44 IManagedForm managedForm
);
49 private class TestPage
extends FormPage
{
51 public TestPage(FormEditor editor
, String id
, String title
) {
52 super(editor
, id
, title
);
55 protected void createFormContent(IManagedForm managedForm
) {
56 super.createFormContent(managedForm
);
57 ScrolledForm form
= managedForm
.getForm();
58 form
.setLayoutData(new GridData(SWT
.FILL
, SWT
.FILL
, true, true));
59 Composite parent
= form
.getBody();
60 populateTestPage(parent
);
64 protected void populateTestPage(Composite parent
) {
65 parent
.setLayout(AkbUiUtils
.gridLayoutNoBorder());
66 getToolkit().createLabel(
68 "This page will display a test page "
69 + "using default connection for the chosen alias");