]> git.argeo.org Git - gpl/argeo-slc.git/blob - plugins/org.argeo.slc.akb.ui/src/main/java/org/argeo/slc/akb/ui/editors/SshCommandTemplateEditor.java
Work on items editors
[gpl/argeo-slc.git] / plugins / org.argeo.slc.akb.ui / src / main / java / org / argeo / slc / akb / ui / editors / SshCommandTemplateEditor.java
1 package org.argeo.slc.akb.ui.editors;
2
3 import org.argeo.slc.akb.AkbNames;
4 import org.argeo.slc.akb.ui.AkbUiPlugin;
5 import org.argeo.slc.akb.ui.AkbUiUtils;
6 import org.eclipse.swt.SWT;
7 import org.eclipse.swt.layout.GridData;
8 import org.eclipse.swt.layout.GridLayout;
9 import org.eclipse.swt.widgets.Composite;
10 import org.eclipse.swt.widgets.Group;
11 import org.eclipse.swt.widgets.Text;
12 import org.eclipse.ui.forms.AbstractFormPart;
13 import org.eclipse.ui.forms.IManagedForm;
14
15 /**
16 * Display and edit a SSH Command Template ITEM
17 */
18 public class SshCommandTemplateEditor extends AkbItemTemplateEditor {
19
20 public final static String ID = AkbUiPlugin.PLUGIN_ID
21 + ".sshCommandTemplateEditor";
22
23 @Override
24 protected String getEditorId() {
25 return ID;
26 }
27
28 @Override
29 protected void populateBottomPart(Composite parent, IManagedForm managedForm) {
30 parent.setLayout(AkbUiUtils.gridLayoutNoBorder());
31 Group group = new Group(parent, SWT.NO_FOCUS);
32 getToolkit().adapt(group, false, false);
33 group.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
34
35 group.setLayout(new GridLayout(1, false));
36
37 // first line: Description
38 getToolkit().createLabel(group, "Enter below a valid SSH command");
39
40 // 2nd line: the query
41 final Text queryTxt = getToolkit().createText(group, "",
42 SWT.BORDER | SWT.MULTI | SWT.WRAP);
43 GridData gd = new GridData(SWT.FILL, SWT.FILL, true, true);
44 queryTxt.setLayoutData(gd);
45
46 // Part Management
47 final AbstractFormPart part = new AbstractFormPart() {
48 public void refresh() {
49 super.refresh();
50 // update display value
51 AkbUiUtils.refreshFormTextWidget(queryTxt, getAkbNode(),
52 AkbNames.AKB_COMMAND_TEXT);
53 }
54 };
55 // Listeners
56 AkbUiUtils.addTextModifyListener(queryTxt, getAkbNode(),
57 AkbNames.AKB_COMMAND_TEXT, part);
58 managedForm.addPart(part);
59 }
60 }