]> git.argeo.org Git - gpl/argeo-slc.git/blobdiff - plugins/org.argeo.slc.akb.ui/src/main/java/org/argeo/slc/akb/ui/editors/AbstractAkbNodeEditor.java
Add AKB icons
[gpl/argeo-slc.git] / plugins / org.argeo.slc.akb.ui / src / main / java / org / argeo / slc / akb / ui / editors / AbstractAkbNodeEditor.java
index 7eb74bb5ee3a84c998ccf64a43f9e3c248a9c7fa..164dd5cb926e8a747907e50fa807594147b4fe87 100644 (file)
@@ -9,6 +9,7 @@ import javax.jcr.Session;
 import org.argeo.jcr.JcrUtils;
 import org.argeo.slc.akb.AkbException;
 import org.argeo.slc.akb.AkbService;
+import org.argeo.slc.akb.ui.AkbUiUtils;
 import org.argeo.slc.akb.utils.AkbJcrUtils;
 import org.eclipse.core.runtime.IProgressMonitor;
 import org.eclipse.swt.SWT;
@@ -81,13 +82,18 @@ public abstract class AbstractAkbNodeEditor extends FormEditor {
                setTitleToolTip("Display and edit " + name);
        }
 
+       /** Overwrite to provide supplementary pages between main and history page */
+       protected void addOtherPages() throws PartInitException {
+       }
+
        /* Pages management */
        @Override
        protected void addPages() {
                try {
                        addPage(new ConnectorAliasPage(this, "mainPage", "Main"));
-                       // TODO Add history page
-                       // addPage(new ConnectorAliasPage(this, "mainPage", "Main"));
+                       // Add AKB Type specific pages
+                       addOtherPages();
+                       addPage(new HistoryPage(this, "historyPage", "History"));
                } catch (PartInitException e) {
                        throw new AkbException("Unable to initialise pages for editor "
                                        + getEditorId(), e);
@@ -111,6 +117,26 @@ public abstract class AbstractAkbNodeEditor extends FormEditor {
                }
        }
 
+       /**
+        * Display history
+        */
+       private class HistoryPage extends FormPage {
+
+               public HistoryPage(FormEditor editor, String id, String title) {
+                       super(editor, id, title);
+               }
+
+               protected void createFormContent(IManagedForm managedForm) {
+                       super.createFormContent(managedForm);
+                       ScrolledForm form = managedForm.getForm();
+                       form.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
+                       Composite parent = form.getBody();
+                       parent.setLayout(AkbUiUtils.gridLayoutNoBorder());
+                       getToolkit().createLabel(parent,
+                                       "This page will display history " + "for current AKB Node");
+               }
+       }
+
        /* EXPOSES TO CHILDREN CLASSES */
        protected Session getSession() {
                return session;