X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;ds=inline;f=plugins%2Forg.argeo.slc.akb.ui%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fslc%2Fakb%2Fui%2Feditors%2FSshFileTemplateEditor.java;h=bb112b0cb1a9fcbe1f1e98faf848ce7cb9ef56a1;hb=44b4c78e6a082d51d0410c3995b5edf353d417b9;hp=d4712bcc894d36ba21829a00226c7466fc802a64;hpb=20f77667758d42da2ff45aa005738cf678990e06;p=gpl%2Fargeo-slc.git diff --git a/plugins/org.argeo.slc.akb.ui/src/main/java/org/argeo/slc/akb/ui/editors/SshFileTemplateEditor.java b/plugins/org.argeo.slc.akb.ui/src/main/java/org/argeo/slc/akb/ui/editors/SshFileTemplateEditor.java index d4712bcc8..bb112b0cb 100644 --- a/plugins/org.argeo.slc.akb.ui/src/main/java/org/argeo/slc/akb/ui/editors/SshFileTemplateEditor.java +++ b/plugins/org.argeo.slc.akb.ui/src/main/java/org/argeo/slc/akb/ui/editors/SshFileTemplateEditor.java @@ -3,7 +3,11 @@ package org.argeo.slc.akb.ui.editors; import org.argeo.slc.akb.AkbNames; import org.argeo.slc.akb.ui.AkbUiPlugin; import org.argeo.slc.akb.ui.AkbUiUtils; +import org.argeo.slc.akb.ui.composites.ActiveItemHeaderComposite; +import org.argeo.slc.akb.ui.utils.Refreshable; +import org.argeo.slc.akb.utils.AkbJcrUtils; import org.eclipse.swt.SWT; +import org.eclipse.swt.graphics.Font; import org.eclipse.swt.layout.GridData; import org.eclipse.swt.layout.GridLayout; import org.eclipse.swt.widgets.Composite; @@ -15,16 +19,45 @@ import org.eclipse.ui.forms.IManagedForm; /** * Display and edit a connection to a file on a distant accessible by SSH server */ -public class SshFileTemplateEditor extends AkbItemTemplateEditor { +public class SshFileTemplateEditor extends AkbItemTemplateEditor implements + Refreshable { public final static String ID = AkbUiPlugin.PLUGIN_ID + ".sshFileTemplateEditor"; + private Text outputDisplay; + @Override protected String getEditorId() { return ID; } + @Override + protected void populateTestPage(Composite parent, IManagedForm managedForm) { + parent.setLayout(AkbUiUtils.gridLayoutNoBorder()); + + ActiveItemHeaderComposite header = new ActiveItemHeaderComposite( + parent, SWT.NONE, getToolkit(), managedForm, getEnvNode(), + getAkbNode(), getAkbService()); + header.setLayoutData(new GridData(SWT.FILL, SWT.TOP, true, false)); + + outputDisplay = getToolkit().createText(parent, "", SWT.MULTI); + outputDisplay.setFont(new Font(parent.getDisplay(), "Monospaced", 10, + SWT.NONE)); + outputDisplay.setEditable(false); + outputDisplay + .setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); + + forceRefresh(null); + } + + public void forceRefresh(Object object) { + String output = getAkbService() + .retrieveFile(getEnvNode(), getAkbNode()); + if (AkbJcrUtils.checkNotEmptyString(output)) + outputDisplay.setText(output); + } + @Override protected void populateBottomPart(Composite parent, IManagedForm managedForm) { parent.setLayout(AkbUiUtils.gridLayoutNoBorder());