Fix up the StringConstant activity UI for the new service panel.
Tidy up the code.
diff --git a/src/main/java/net/sf/taverna/t2/activities/stringconstant/actions/StringConstantActivityConfigurationAction.java b/src/main/java/net/sf/taverna/t2/activities/stringconstant/actions/StringConstantActivityConfigurationAction.java
index 790ed9c..fa8bafc 100644
--- a/src/main/java/net/sf/taverna/t2/activities/stringconstant/actions/StringConstantActivityConfigurationAction.java
+++ b/src/main/java/net/sf/taverna/t2/activities/stringconstant/actions/StringConstantActivityConfigurationAction.java
@@ -23,8 +23,6 @@
import java.awt.Frame;
import java.awt.event.ActionEvent;
-import javax.swing.Action;
-
import net.sf.taverna.t2.activities.stringconstant.views.StringConstantConfigView;
import net.sf.taverna.t2.servicedescriptions.ServiceDescriptionRegistry;
import net.sf.taverna.t2.workbench.activityicons.ActivityIconManager;
@@ -35,39 +33,39 @@
import uk.org.taverna.commons.services.ServiceRegistry;
import uk.org.taverna.scufl2.api.activity.Activity;
-public class StringConstantActivityConfigurationAction extends ActivityConfigurationAction {
-
+public class StringConstantActivityConfigurationAction extends
+ ActivityConfigurationAction {
private static final long serialVersionUID = 2518716617809186972L;
-
public static final String CONFIGURE_STRINGCONSTANT = "Edit value";
private final EditManager editManager;
-
private final FileManager fileManager;
-
private final ServiceRegistry serviceRegistry;
- public StringConstantActivityConfigurationAction(Activity activity, Frame owner,
- EditManager editManager, FileManager fileManager,
- ActivityIconManager activityIconManager, ServiceDescriptionRegistry serviceDescriptionRegistry, ServiceRegistry serviceRegistry) {
+ public StringConstantActivityConfigurationAction(Activity activity,
+ Frame owner, EditManager editManager, FileManager fileManager,
+ ActivityIconManager activityIconManager,
+ ServiceDescriptionRegistry serviceDescriptionRegistry,
+ ServiceRegistry serviceRegistry) {
super(activity, activityIconManager, serviceDescriptionRegistry);
this.editManager = editManager;
this.fileManager = fileManager;
this.serviceRegistry = serviceRegistry;
- putValue(Action.NAME, CONFIGURE_STRINGCONSTANT);
+ putValue(NAME, CONFIGURE_STRINGCONSTANT);
}
+ @Override
public void actionPerformed(ActionEvent e) {
- ActivityConfigurationDialog currentDialog = ActivityConfigurationAction.getDialog(getActivity());
+ ActivityConfigurationDialog currentDialog = getDialog(getActivity());
if (currentDialog != null) {
currentDialog.toFront();
return;
}
- StringConstantConfigView stringConstantConfigView = new StringConstantConfigView(activity, serviceRegistry);
- ActivityConfigurationDialog dialog = new ActivityConfigurationDialog(getActivity(), stringConstantConfigView, editManager);
-
- ActivityConfigurationAction.setDialog(getActivity(), dialog, fileManager);
+ StringConstantConfigView configView = new StringConstantConfigView(
+ activity, serviceRegistry);
+ ActivityConfigurationDialog dialog = new ActivityConfigurationDialog(
+ getActivity(), configView, editManager);
+ setDialog(getActivity(), dialog, fileManager);
}
-
}
diff --git a/src/main/java/net/sf/taverna/t2/activities/stringconstant/menu/AddStringConstantTemplateAction.java b/src/main/java/net/sf/taverna/t2/activities/stringconstant/menu/AddStringConstantTemplateAction.java
index 7db5c70..fb9d069 100644
--- a/src/main/java/net/sf/taverna/t2/activities/stringconstant/menu/AddStringConstantTemplateAction.java
+++ b/src/main/java/net/sf/taverna/t2/activities/stringconstant/menu/AddStringConstantTemplateAction.java
@@ -20,6 +20,8 @@
******************************************************************************/
package net.sf.taverna.t2.activities.stringconstant.menu;
+import static net.sf.taverna.t2.workbench.ui.workflowview.WorkflowView.importServiceDescription;
+
import java.awt.event.ActionEvent;
import java.net.URI;
@@ -32,21 +34,21 @@
import net.sf.taverna.t2.workbench.activityicons.ActivityIconManager;
import net.sf.taverna.t2.workbench.edits.EditManager;
import net.sf.taverna.t2.workbench.selection.SelectionManager;
-import net.sf.taverna.t2.workbench.ui.workflowview.WorkflowView;
import uk.org.taverna.commons.services.ServiceRegistry;
import uk.org.taverna.scufl2.api.core.Workflow;
/**
- * An action to add a string constant activity + a wrapping processor to the workflow.
- *
+ * An action to add a string constant activity + a wrapping processor to the
+ * workflow.
+ *
* @author Alex Nenadic
* @author David Withers
*/
@SuppressWarnings("serial")
-public class AddStringConstantTemplateAction extends AbstractContextualMenuAction {
-
- private static final URI ACTIVITY_TYPE = URI.create("http://ns.taverna.org.uk/2010/activity/constant");
-
+public class AddStringConstantTemplateAction extends
+ AbstractContextualMenuAction {
+ private static final URI ACTIVITY_TYPE = URI
+ .create("http://ns.taverna.org.uk/2010/activity/constant");
private static final URI insertSection = URI
.create("http://taverna.sf.net/2009/contextMenu/insert");
@@ -55,7 +57,6 @@
private SelectionManager selectionManager;
private ActivityIconManager activityIconManager;
private ServiceDescriptionRegistry serviceDescriptionRegistry;
-
private ServiceRegistry serviceRegistry;
public AddStringConstantTemplateAction() {
@@ -64,22 +65,22 @@
@Override
public boolean isEnabled() {
- return super.isEnabled() && getContextualSelection().getSelection() instanceof Workflow;
+ return super.isEnabled()
+ && getContextualSelection().getSelection() instanceof Workflow;
}
@Override
protected Action createAction() {
AbstractAction action = new AbstractAction("Text constant",
activityIconManager.iconForActivity(ACTIVITY_TYPE)) {
-
+ @Override
public void actionPerformed(ActionEvent e) {
-
- WorkflowView.importServiceDescription(
- serviceDescriptionRegistry.getServiceDescription(ACTIVITY_TYPE), false, editManager,
- menuManager, selectionManager, serviceRegistry);
-
+ importServiceDescription(
+ serviceDescriptionRegistry
+ .getServiceDescription(ACTIVITY_TYPE),
+ false, editManager, menuManager, selectionManager,
+ serviceRegistry);
}
-
};
return action;
}
@@ -100,12 +101,12 @@
this.activityIconManager = activityIconManager;
}
- public void setServiceDescriptionRegistry(ServiceDescriptionRegistry serviceDescriptionRegistry) {
+ public void setServiceDescriptionRegistry(
+ ServiceDescriptionRegistry serviceDescriptionRegistry) {
this.serviceDescriptionRegistry = serviceDescriptionRegistry;
}
public void setServiceRegistry(ServiceRegistry serviceRegistry) {
this.serviceRegistry = serviceRegistry;
}
-
}
diff --git a/src/main/java/net/sf/taverna/t2/activities/stringconstant/menu/AddStringConstantTemplateMenuAction.java b/src/main/java/net/sf/taverna/t2/activities/stringconstant/menu/AddStringConstantTemplateMenuAction.java
index 477fcfe..cb1682d 100644
--- a/src/main/java/net/sf/taverna/t2/activities/stringconstant/menu/AddStringConstantTemplateMenuAction.java
+++ b/src/main/java/net/sf/taverna/t2/activities/stringconstant/menu/AddStringConstantTemplateMenuAction.java
@@ -20,14 +20,17 @@
******************************************************************************/
package net.sf.taverna.t2.activities.stringconstant.menu;
+import static java.awt.event.InputEvent.ALT_DOWN_MASK;
+import static java.awt.event.InputEvent.SHIFT_DOWN_MASK;
+import static java.awt.event.KeyEvent.VK_S;
+import static javax.swing.KeyStroke.getKeyStroke;
+import static net.sf.taverna.t2.workbench.ui.workflowview.WorkflowView.importServiceDescription;
+
import java.awt.event.ActionEvent;
-import java.awt.event.InputEvent;
-import java.awt.event.KeyEvent;
import java.net.URI;
import javax.swing.AbstractAction;
import javax.swing.Action;
-import javax.swing.KeyStroke;
import net.sf.taverna.t2.servicedescriptions.ServiceDescriptionRegistry;
import net.sf.taverna.t2.ui.menu.AbstractMenuAction;
@@ -36,39 +39,31 @@
import net.sf.taverna.t2.workbench.activityicons.ActivityIconManager;
import net.sf.taverna.t2.workbench.edits.EditManager;
import net.sf.taverna.t2.workbench.selection.SelectionManager;
-import net.sf.taverna.t2.workbench.ui.workflowview.WorkflowView;
import uk.org.taverna.commons.services.ServiceRegistry;
/**
- * An action to add a string constant activity + a wrapping processor to the workflow.
- *
+ * An action to add a string constant activity + a wrapping processor to the
+ * workflow.
+ *
* @author Alex Nenadic
* @author Alan R Williams
* @author David Withers
*/
@SuppressWarnings("serial")
public class AddStringConstantTemplateMenuAction extends AbstractMenuAction {
-
- private static final URI ACTIVITY_TYPE = URI.create("http://ns.taverna.org.uk/2010/activity/constant");
-
+ private static final URI ACTIVITY_TYPE = URI
+ .create("http://ns.taverna.org.uk/2010/activity/constant");
private static final URI INSERT = URI
.create("http://taverna.sf.net/2008/t2workbench/menu#insert");
-
private static final String ADD_STRING_CONSTANT = "Text constant";
-
private static final URI ADD_STRING_CONSTANT_URI = URI
.create("http://taverna.sf.net/2008/t2workbench/menu#graphMenuAddStringConstant");
private EditManager editManager;
-
private MenuManager menuManager;
-
private SelectionManager selectionManager;
-
private ActivityIconManager activityIconManager;
-
private ServiceDescriptionRegistry serviceDescriptionRegistry;
-
private ServiceRegistry serviceRegistry;
public AddStringConstantTemplateMenuAction() {
@@ -80,25 +75,25 @@
return new AddStringConstantMenuAction();
}
- protected class AddStringConstantMenuAction extends AbstractAction implements DesignOnlyAction {
+ protected class AddStringConstantMenuAction extends AbstractAction
+ implements DesignOnlyAction {
AddStringConstantMenuAction() {
super();
- putValue(SMALL_ICON, activityIconManager.iconForActivity(ACTIVITY_TYPE));
+ putValue(SMALL_ICON,
+ activityIconManager.iconForActivity(ACTIVITY_TYPE));
putValue(NAME, ADD_STRING_CONSTANT);
putValue(SHORT_DESCRIPTION, ADD_STRING_CONSTANT);
- putValue(
- Action.ACCELERATOR_KEY,
- KeyStroke.getKeyStroke(KeyEvent.VK_S, InputEvent.SHIFT_DOWN_MASK
- | InputEvent.ALT_DOWN_MASK));
-
+ putValue(ACCELERATOR_KEY,
+ getKeyStroke(VK_S, SHIFT_DOWN_MASK | ALT_DOWN_MASK));
}
+ @Override
public void actionPerformed(ActionEvent e) {
-
- WorkflowView.importServiceDescription(
- serviceDescriptionRegistry.getServiceDescription(ACTIVITY_TYPE), false, editManager,
- menuManager, selectionManager, serviceRegistry);
-
+ importServiceDescription(
+ serviceDescriptionRegistry
+ .getServiceDescription(ACTIVITY_TYPE),
+ false, editManager, menuManager, selectionManager,
+ serviceRegistry);
}
}
@@ -118,12 +113,12 @@
this.activityIconManager = activityIconManager;
}
- public void setServiceDescriptionRegistry(ServiceDescriptionRegistry serviceDescriptionRegistry) {
+ public void setServiceDescriptionRegistry(
+ ServiceDescriptionRegistry serviceDescriptionRegistry) {
this.serviceDescriptionRegistry = serviceDescriptionRegistry;
}
public void setServiceRegistry(ServiceRegistry serviceRegistry) {
this.serviceRegistry = serviceRegistry;
}
-
}
diff --git a/src/main/java/net/sf/taverna/t2/activities/stringconstant/menu/ConfigureStringConstantMenuAction.java b/src/main/java/net/sf/taverna/t2/activities/stringconstant/menu/ConfigureStringConstantMenuAction.java
index 9cb05cb..46bdde9 100644
--- a/src/main/java/net/sf/taverna/t2/activities/stringconstant/menu/ConfigureStringConstantMenuAction.java
+++ b/src/main/java/net/sf/taverna/t2/activities/stringconstant/menu/ConfigureStringConstantMenuAction.java
@@ -1,5 +1,8 @@
package net.sf.taverna.t2.activities.stringconstant.menu;
+import static javax.swing.Action.NAME;
+import static net.sf.taverna.t2.activities.stringconstant.actions.StringConstantActivityConfigurationAction.CONFIGURE_STRINGCONSTANT;
+
import java.net.URI;
import javax.swing.Action;
@@ -12,8 +15,8 @@
import net.sf.taverna.t2.workbench.file.FileManager;
import uk.org.taverna.commons.services.ServiceRegistry;
-public class ConfigureStringConstantMenuAction extends AbstractConfigureActivityMenuAction {
-
+public class ConfigureStringConstantMenuAction extends
+ AbstractConfigureActivityMenuAction {
private static final URI ACTIVITY_TYPE = URI
.create("http://ns.taverna.org.uk/2010/activity/constant");
@@ -21,7 +24,6 @@
private FileManager fileManager;
private ActivityIconManager activityIconManager;
private ServiceDescriptionRegistry serviceDescriptionRegistry;
-
private ServiceRegistry serviceRegistry;
public ConfigureStringConstantMenuAction() {
@@ -31,10 +33,10 @@
@Override
protected Action createAction() {
StringConstantActivityConfigurationAction configAction = new StringConstantActivityConfigurationAction(
- findActivity(), getParentFrame(), editManager, fileManager, activityIconManager,
- serviceDescriptionRegistry, serviceRegistry);
- configAction.putValue(Action.NAME,
- StringConstantActivityConfigurationAction.CONFIGURE_STRINGCONSTANT);
+ findActivity(), getParentFrame(), editManager, fileManager,
+ activityIconManager, serviceDescriptionRegistry,
+ serviceRegistry);
+ configAction.putValue(NAME, CONFIGURE_STRINGCONSTANT);
addMenuDots(configAction);
return configAction;
}
@@ -51,12 +53,12 @@
this.activityIconManager = activityIconManager;
}
- public void setServiceDescriptionRegistry(ServiceDescriptionRegistry serviceDescriptionRegistry) {
+ public void setServiceDescriptionRegistry(
+ ServiceDescriptionRegistry serviceDescriptionRegistry) {
this.serviceDescriptionRegistry = serviceDescriptionRegistry;
}
public void setServiceRegistry(ServiceRegistry serviceRegistry) {
this.serviceRegistry = serviceRegistry;
}
-
}
diff --git a/src/main/java/net/sf/taverna/t2/activities/stringconstant/servicedescriptions/StringConstantActivityIcon.java b/src/main/java/net/sf/taverna/t2/activities/stringconstant/servicedescriptions/StringConstantActivityIcon.java
index 4b5ba37..409c0f5 100644
--- a/src/main/java/net/sf/taverna/t2/activities/stringconstant/servicedescriptions/StringConstantActivityIcon.java
+++ b/src/main/java/net/sf/taverna/t2/activities/stringconstant/servicedescriptions/StringConstantActivityIcon.java
@@ -28,16 +28,14 @@
import net.sf.taverna.t2.workbench.activityicons.ActivityIconSPI;
/**
- *
* @author Alex Nenadic
- *
*/
-public class StringConstantActivityIcon implements ActivityIconSPI{
-
- private static final URI ACTIVITY_TYPE = URI.create("http://ns.taverna.org.uk/2010/activity/constant");
-
+public class StringConstantActivityIcon implements ActivityIconSPI {
+ private static final URI ACTIVITY_TYPE = URI
+ .create("http://ns.taverna.org.uk/2010/activity/constant");
private static Icon icon = null;
+ @Override
public int canProvideIconScore(URI activityType) {
if (activityType.equals(ACTIVITY_TYPE))
return DEFAULT_ICON + 1;
@@ -45,16 +43,16 @@
return NO_ICON;
}
+ @Override
public Icon getIcon(URI activityType) {
return getStringConstantIcon();
}
public static Icon getStringConstantIcon() {
- if (icon == null) {
- icon = new ImageIcon(StringConstantActivityIcon.class.getResource("/stringconstant.png"));
- }
+ if (icon == null)
+ icon = new ImageIcon(
+ StringConstantActivityIcon.class
+ .getResource("/stringconstant.png"));
return icon;
}
}
-
-
diff --git a/src/main/java/net/sf/taverna/t2/activities/stringconstant/servicedescriptions/StringConstantTemplateService.java b/src/main/java/net/sf/taverna/t2/activities/stringconstant/servicedescriptions/StringConstantTemplateService.java
index 1df7aba..157f3b6 100644
--- a/src/main/java/net/sf/taverna/t2/activities/stringconstant/servicedescriptions/StringConstantTemplateService.java
+++ b/src/main/java/net/sf/taverna/t2/activities/stringconstant/servicedescriptions/StringConstantTemplateService.java
@@ -26,20 +26,18 @@
import net.sf.taverna.t2.servicedescriptions.AbstractTemplateService;
import net.sf.taverna.t2.servicedescriptions.ServiceDescription;
+import net.sf.taverna.t2.servicedescriptions.ServiceDescriptionProvider;
import uk.org.taverna.scufl2.api.configurations.Configuration;
import com.fasterxml.jackson.databind.node.ObjectNode;
public class StringConstantTemplateService extends AbstractTemplateService {
-
- private static final URI ACTIVITY_TYPE = URI.create("http://ns.taverna.org.uk/2010/activity/constant");
-
- public static final String DEFAULT_VALUE = "Add your own value here";
-
- private static final String STRINGCONSTANT = "Text constant";
-
+ private static final URI ACTIVITY_TYPE = URI
+ .create("http://ns.taverna.org.uk/2010/activity/constant");
private static final URI providerId = URI
- .create("http://taverna.sf.net/2010/service-provider/stringconstant");
+ .create("http://taverna.sf.net/2010/service-provider/stringconstant");
+ public static final String DEFAULT_VALUE = "Add your own value here";
+ private static final String STRINGCONSTANT = "Text constant";
@Override
public URI getActivityType() {
@@ -59,10 +57,12 @@
return StringConstantActivityIcon.getStringConstantIcon();
}
+ @Override
public String getName() {
return STRINGCONSTANT;
}
+ @Override
public String getDescription() {
return "A string value that you can set";
}
@@ -72,7 +72,13 @@
return scts.templateService;
}
+ @Override
public String getId() {
return providerId.toString();
}
+
+ @Override
+ public ServiceDescriptionProvider newInstance() {
+ return new StringConstantTemplateService();
+ }
}
diff --git a/src/main/java/net/sf/taverna/t2/activities/stringconstant/views/StringConstantActivityContextualView.java b/src/main/java/net/sf/taverna/t2/activities/stringconstant/views/StringConstantActivityContextualView.java
index 22bb2e6..803692d 100644
--- a/src/main/java/net/sf/taverna/t2/activities/stringconstant/views/StringConstantActivityContextualView.java
+++ b/src/main/java/net/sf/taverna/t2/activities/stringconstant/views/StringConstantActivityContextualView.java
@@ -20,6 +20,9 @@
******************************************************************************/
package net.sf.taverna.t2.activities.stringconstant.views;
+import static org.apache.commons.lang.StringEscapeUtils.escapeHtml;
+import static org.apache.commons.lang.StringUtils.abbreviate;
+
import java.awt.Frame;
import javax.swing.Action;
@@ -31,29 +34,28 @@
import net.sf.taverna.t2.workbench.edits.EditManager;
import net.sf.taverna.t2.workbench.file.FileManager;
import net.sf.taverna.t2.workbench.ui.actions.activity.HTMLBasedActivityContextualView;
-
-import org.apache.commons.lang.StringEscapeUtils;
-import org.apache.commons.lang.StringUtils;
-
import uk.org.taverna.commons.services.ServiceRegistry;
import uk.org.taverna.scufl2.api.activity.Activity;
import com.fasterxml.jackson.databind.JsonNode;
-public class StringConstantActivityContextualView extends HTMLBasedActivityContextualView {
-
+public class StringConstantActivityContextualView extends
+ HTMLBasedActivityContextualView {
private static final long serialVersionUID = -553974544001808511L;
+ private static final int MAX_LENGTH = 100;
private final EditManager editManager;
private final FileManager fileManager;
private final ActivityIconManager activityIconManager;
private final ServiceDescriptionRegistry serviceDescriptionRegistry;
private final ServiceRegistry serviceRegistry;
- private static final int MAX_LENGTH = 100;
- public StringConstantActivityContextualView(Activity activity, EditManager editManager,
- FileManager fileManager, ActivityIconManager activityIconManager,
- ColourManager colourManager, ServiceDescriptionRegistry serviceDescriptionRegistry, ServiceRegistry serviceRegistry) {
+ public StringConstantActivityContextualView(Activity activity,
+ EditManager editManager, FileManager fileManager,
+ ActivityIconManager activityIconManager,
+ ColourManager colourManager,
+ ServiceDescriptionRegistry serviceDescriptionRegistry,
+ ServiceRegistry serviceRegistry) {
super(activity, colourManager);
this.editManager = editManager;
this.fileManager = fileManager;
@@ -71,22 +73,21 @@
protected String getRawTableRowsHtml() {
JsonNode json = getConfigBean().getJson();
String value = json.get("string").textValue();
- value = StringUtils.abbreviate(value, MAX_LENGTH);
- value = StringEscapeUtils.escapeHtml(value);
+ value = abbreviate(value, MAX_LENGTH);
+ value = escapeHtml(value);
String html = "<tr><td>Value</td><td>" + value + "</td></tr>";
return html;
}
@Override
public Action getConfigureAction(Frame owner) {
- return new StringConstantActivityConfigurationAction(
- getActivity(), owner, editManager, fileManager,
- activityIconManager, serviceDescriptionRegistry, serviceRegistry);
+ return new StringConstantActivityConfigurationAction(getActivity(),
+ owner, editManager, fileManager, activityIconManager,
+ serviceDescriptionRegistry, serviceRegistry);
}
@Override
public int getPreferredPosition() {
return 100;
}
-
}
diff --git a/src/main/java/net/sf/taverna/t2/activities/stringconstant/views/StringConstantActivityViewFactory.java b/src/main/java/net/sf/taverna/t2/activities/stringconstant/views/StringConstantActivityViewFactory.java
index 1f4adf3..3f1e480 100644
--- a/src/main/java/net/sf/taverna/t2/activities/stringconstant/views/StringConstantActivityViewFactory.java
+++ b/src/main/java/net/sf/taverna/t2/activities/stringconstant/views/StringConstantActivityViewFactory.java
@@ -20,8 +20,9 @@
******************************************************************************/
package net.sf.taverna.t2.activities.stringconstant.views;
+import static java.util.Arrays.asList;
+
import java.net.URI;
-import java.util.Arrays;
import java.util.List;
import net.sf.taverna.t2.servicedescriptions.ServiceDescriptionRegistry;
@@ -34,25 +35,29 @@
import uk.org.taverna.commons.services.ServiceRegistry;
import uk.org.taverna.scufl2.api.activity.Activity;
-public class StringConstantActivityViewFactory implements ContextualViewFactory<Activity> {
-
- private static final URI ACTIVITY_TYPE = URI.create("http://ns.taverna.org.uk/2010/activity/constant");
+public class StringConstantActivityViewFactory implements
+ ContextualViewFactory<Activity> {
+ private static final URI ACTIVITY_TYPE = URI
+ .create("http://ns.taverna.org.uk/2010/activity/constant");
private EditManager editManager;
private FileManager fileManager;
private ActivityIconManager activityIconManager;
private ColourManager colourManager;
private ServiceDescriptionRegistry serviceDescriptionRegistry;
-
private ServiceRegistry serviceRegistry;
+ @Override
public boolean canHandle(Object object) {
- return object instanceof Activity && ((Activity) object).getType().equals(ACTIVITY_TYPE);
+ return object instanceof Activity
+ && ((Activity) object).getType().equals(ACTIVITY_TYPE);
}
+ @Override
public List<ContextualView> getViews(Activity activity) {
- return Arrays.asList(new ContextualView[] { new StringConstantActivityContextualView(
- activity, editManager, fileManager, activityIconManager, colourManager, serviceDescriptionRegistry, serviceRegistry) });
+ return asList(new ContextualView[] { new StringConstantActivityContextualView(
+ activity, editManager, fileManager, activityIconManager,
+ colourManager, serviceDescriptionRegistry, serviceRegistry) });
}
public void setEditManager(EditManager editManager) {
@@ -71,12 +76,12 @@
this.colourManager = colourManager;
}
- public void setServiceDescriptionRegistry(ServiceDescriptionRegistry serviceDescriptionRegistry) {
+ public void setServiceDescriptionRegistry(
+ ServiceDescriptionRegistry serviceDescriptionRegistry) {
this.serviceDescriptionRegistry = serviceDescriptionRegistry;
}
public void setServiceRegistry(ServiceRegistry serviceRegistry) {
this.serviceRegistry = serviceRegistry;
}
-
}
diff --git a/src/main/java/net/sf/taverna/t2/activities/stringconstant/views/StringConstantConfigView.java b/src/main/java/net/sf/taverna/t2/activities/stringconstant/views/StringConstantConfigView.java
index 92bdf71..b371adb 100644
--- a/src/main/java/net/sf/taverna/t2/activities/stringconstant/views/StringConstantConfigView.java
+++ b/src/main/java/net/sf/taverna/t2/activities/stringconstant/views/StringConstantConfigView.java
@@ -3,6 +3,23 @@
*/
package net.sf.taverna.t2.activities.stringconstant.views;
+import static java.awt.BorderLayout.CENTER;
+import static java.awt.BorderLayout.SOUTH;
+import static java.awt.Color.WHITE;
+import static java.awt.Font.PLAIN;
+import static java.awt.GridBagConstraints.BOTH;
+import static java.awt.GridBagConstraints.FIRST_LINE_START;
+import static java.lang.String.format;
+import static javax.swing.BorderFactory.createTitledBorder;
+import static javax.swing.JOptionPane.YES_NO_OPTION;
+import static javax.swing.JOptionPane.YES_OPTION;
+import static javax.swing.JOptionPane.showConfirmDialog;
+import static javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION;
+import static javax.swing.border.TitledBorder.DEFAULT_POSITION;
+import static net.sf.taverna.t2.activities.stringconstant.servicedescriptions.StringConstantTemplateService.DEFAULT_VALUE;
+import static net.sf.taverna.t2.lang.ui.FileTools.readStringFromFile;
+import static net.sf.taverna.t2.lang.ui.FileTools.saveStringToFile;
+
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
@@ -15,14 +32,11 @@
import javax.swing.JButton;
import javax.swing.JEditorPane;
-import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextPane;
import javax.swing.event.AncestorEvent;
import javax.swing.event.AncestorListener;
-import net.sf.taverna.t2.activities.stringconstant.servicedescriptions.StringConstantTemplateService;
-import net.sf.taverna.t2.lang.ui.FileTools;
import net.sf.taverna.t2.lang.ui.LineEnabledTextPanel;
import net.sf.taverna.t2.lang.ui.LinePainter;
import net.sf.taverna.t2.lang.ui.NoWrapEditorKit;
@@ -40,26 +54,27 @@
*/
@SuppressWarnings("serial")
public class StringConstantConfigView extends ActivityConfigurationPanel {
-
+ private static final String CONTENT_PROPERTY = "string";
+ private static final String TEXT_FILE_EXTENSION = ".txt";
public static Logger logger = Logger.getLogger(StringConstantConfigView.class);
+ private static final Color LINE_COLOR = WHITE;
+ @SuppressWarnings("unused")
+ private static final String HELP_TOKEN = "net.sf.taverna.t2.activities.stringconstant.views.StringConstantConfigView";
/** The text */
private JEditorPane scriptTextArea;
-
- private static final Color LINE_COLOR = Color.WHITE;
-
private final ServiceRegistry serviceRegistry;
- public StringConstantConfigView(Activity activity, Configuration configuration,
- ServiceRegistry serviceRegistry) {
+ public StringConstantConfigView(Activity activity,
+ Configuration configuration, ServiceRegistry serviceRegistry) {
super(activity, configuration);
this.serviceRegistry = serviceRegistry;
setLayout(new GridBagLayout());
initialise();
- this.addAncestorListener(new AncestorListener() {
+ addAncestorListener(new AncestorListener() {
@Override
public void ancestorAdded(AncestorEvent event) {
- StringConstantConfigView.this.whenOpened();
+ whenOpened();
}
@Override
@@ -72,15 +87,16 @@
});
}
- public StringConstantConfigView(Activity activity, ServiceRegistry serviceRegistry) {
+ public StringConstantConfigView(Activity activity,
+ ServiceRegistry serviceRegistry) {
super(activity);
this.serviceRegistry = serviceRegistry;
setLayout(new GridBagLayout());
initialise();
- this.addAncestorListener(new AncestorListener() {
+ addAncestorListener(new AncestorListener() {
@Override
public void ancestorAdded(AncestorEvent event) {
- StringConstantConfigView.this.whenOpened();
+ whenOpened();
}
@Override
@@ -93,24 +109,25 @@
});
}
+ @Override
public void whenOpened() {
scriptTextArea.requestFocus();
- if (scriptTextArea.getText().equals(StringConstantTemplateService.DEFAULT_VALUE)) {
+ if (scriptTextArea.getText().equals(DEFAULT_VALUE))
scriptTextArea.selectAll();
- }
}
+ /** The name of the thing we are working with. */
+ protected String entityName() {
+ return "text";
+ }
+
+ @Override
protected void initialise() {
super.initialise();
- // CSH
- // .setHelpIDString(
- // this,
- // "net.sf.taverna.t2.activities.stringconstant.views.StringConstantConfigView");
+ // CSH.setHelpIDString(this, HELP_TOKEN);
- setBorder(javax.swing.BorderFactory.createTitledBorder(null, null,
- javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION,
- javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font(
- "Lucida Grande", 1, 12)));
+ setBorder(createTitledBorder(null, null, DEFAULT_JUSTIFICATION,
+ DEFAULT_POSITION, new Font("Lucida Grande", 1, 12)));
JPanel scriptEditPanel = new JPanel(new BorderLayout());
@@ -119,53 +136,51 @@
// NOTE: Due to T2-1145 - always set editor kit BEFORE setDocument
scriptTextArea.setEditorKit(new NoWrapEditorKit());
- scriptTextArea.setFont(new Font("Monospaced", Font.PLAIN, 14));
- scriptTextArea.setText(getProperty("string"));
+ scriptTextArea.setFont(new Font("Monospaced", PLAIN, 14));
+ scriptTextArea.setText(getProperty(CONTENT_PROPERTY));
scriptTextArea.setCaretPosition(0);
scriptTextArea.setPreferredSize(new Dimension(200, 100));
- scriptEditPanel.add(new LineEnabledTextPanel(scriptTextArea), BorderLayout.CENTER);
+ scriptEditPanel.add(new LineEnabledTextPanel(scriptTextArea), CENTER);
GridBagConstraints outerConstraint = new GridBagConstraints();
- outerConstraint.anchor = GridBagConstraints.FIRST_LINE_START;
+ outerConstraint.anchor = FIRST_LINE_START;
outerConstraint.gridx = 0;
outerConstraint.gridy = 0;
- outerConstraint.fill = GridBagConstraints.BOTH;
+ outerConstraint.fill = BOTH;
outerConstraint.weighty = 0.1;
outerConstraint.weightx = 0.1;
add(scriptEditPanel, outerConstraint);
- JButton loadScriptButton = new JButton("Load text");
- loadScriptButton.setToolTipText("Load text from a file");
+ JButton loadScriptButton = new JButton("Load " + entityName());
+ loadScriptButton.setToolTipText(format("Load %s from a file",
+ entityName()));
loadScriptButton.addActionListener(new ActionListener() {
+ @Override
public void actionPerformed(ActionEvent e) {
- String newScript = FileTools.readStringFromFile(StringConstantConfigView.this,
- "Load text", ".txt");
- if (newScript != null) {
- scriptTextArea.setText(newScript);
- scriptTextArea.setCaretPosition(0);
- }
+ loadText();
}
});
- JButton saveRScriptButton = new JButton("Save text");
- saveRScriptButton.setToolTipText("Save the text to a file");
+ JButton saveRScriptButton = new JButton("Save " + entityName());
+ saveRScriptButton.setToolTipText(format("Save the %s to a file",
+ entityName()));
saveRScriptButton.addActionListener(new ActionListener() {
+ @Override
public void actionPerformed(ActionEvent e) {
- FileTools.saveStringToFile(StringConstantConfigView.this, "Save text", ".txt",
- scriptTextArea.getText());
+ saveText();
}
});
- JButton clearScriptButton = new JButton("Clear text");
- clearScriptButton.setToolTipText("Clear current text from the edit area");
+ JButton clearScriptButton = new JButton("Clear " + entityName());
+ clearScriptButton.setToolTipText(format(
+ "Clear current %s from the edit area", entityName()));
clearScriptButton.addActionListener(new ActionListener() {
-
+ @Override
public void actionPerformed(ActionEvent e) {
- cleaText();
+ clearText();
}
-
});
JPanel buttonPanel = new JPanel();
@@ -174,22 +189,41 @@
buttonPanel.add(saveRScriptButton);
buttonPanel.add(clearScriptButton);
- scriptEditPanel.add(buttonPanel, BorderLayout.SOUTH);
+ scriptEditPanel.add(buttonPanel, SOUTH);
setPreferredSize(new Dimension(600, 500));
this.validate();
-
}
/**
- * Method for clearing the script
+ * Method for loading the value
*/
- private void cleaText() {
- if (JOptionPane.showConfirmDialog(this, "Do you really want to clear the text?",
- "Clearing the script", JOptionPane.YES_NO_OPTION) == JOptionPane.YES_OPTION) {
- scriptTextArea.setText("");
+ private void loadText() {
+ String newScript = readStringFromFile(this, "Load " + entityName(),
+ TEXT_FILE_EXTENSION);
+ if (newScript != null) {
+ scriptTextArea.setText(newScript);
+ scriptTextArea.setCaretPosition(0);
}
}
+ /**
+ * Method for saving the value
+ */
+ private void saveText() {
+ saveStringToFile(this, "Save " + entityName(), TEXT_FILE_EXTENSION,
+ scriptTextArea.getText());
+ }
+
+ /**
+ * Method for clearing the value
+ */
+ private void clearText() {
+ if (showConfirmDialog(this,
+ format("Do you really want to clear the %s?", entityName()),
+ "Clearing the " + entityName(), YES_NO_OPTION) == YES_OPTION)
+ scriptTextArea.setText("");
+ }
+
@Override
public boolean checkValues() {
return true;
@@ -197,14 +231,13 @@
@Override
public boolean isConfigurationChanged() {
- return !scriptTextArea.getText().equals(getProperty("string"));
+ return !scriptTextArea.getText().equals(getProperty(CONTENT_PROPERTY));
}
@Override
public void noteConfiguration() {
- setProperty("string", scriptTextArea.getText());
+ setProperty(CONTENT_PROPERTY, scriptTextArea.getText());
configureInputPorts(serviceRegistry);
configureOutputPorts(serviceRegistry);
}
-
}
diff --git a/src/main/resources/META-INF/spring/stringconstant-activity-ui-context-osgi.xml b/src/main/resources/META-INF/spring/stringconstant-activity-ui-context-osgi.xml
index 996e30c..359a72d 100644
--- a/src/main/resources/META-INF/spring/stringconstant-activity-ui-context-osgi.xml
+++ b/src/main/resources/META-INF/spring/stringconstant-activity-ui-context-osgi.xml
@@ -7,15 +7,13 @@
http://www.springframework.org/schema/osgi/spring-osgi.xsd">
<service ref="StringConstantActivityIcon" interface="net.sf.taverna.t2.workbench.activityicons.ActivityIconSPI" />
-
<service ref="StringConstantTemplateService" interface="net.sf.taverna.t2.servicedescriptions.ServiceDescriptionProvider" />
+ <service ref="StringConstantActivityViewFactory" interface="net.sf.taverna.t2.workbench.ui.views.contextualviews.activity.ContextualViewFactory" />
<service ref="AddStringConstantTemplateAction" auto-export="interfaces" />
<service ref="AddStringConstantTemplateMenuAction" auto-export="interfaces" />
<service ref="ConfigureStringConstantMenuAction" auto-export="interfaces" />
- <service ref="StringConstantActivityViewFactory" interface="net.sf.taverna.t2.workbench.ui.views.contextualviews.activity.ContextualViewFactory" />
-
<reference id="editManager" interface="net.sf.taverna.t2.workbench.edits.EditManager" />
<reference id="fileManager" interface="net.sf.taverna.t2.workbench.file.FileManager" />
<reference id="menuManager" interface="net.sf.taverna.t2.ui.menu.MenuManager" />
@@ -24,5 +22,4 @@
<reference id="colourManager" interface="net.sf.taverna.t2.workbench.configuration.colour.ColourManager" />
<reference id="serviceDescriptionRegistry" interface="net.sf.taverna.t2.servicedescriptions.ServiceDescriptionRegistry" />
<reference id="serviceRegistry" interface="uk.org.taverna.commons.services.ServiceRegistry" />
-
</beans:beans>
diff --git a/src/main/resources/META-INF/spring/stringconstant-activity-ui-context.xml b/src/main/resources/META-INF/spring/stringconstant-activity-ui-context.xml
index 28c25d4..19bb6fd 100644
--- a/src/main/resources/META-INF/spring/stringconstant-activity-ui-context.xml
+++ b/src/main/resources/META-INF/spring/stringconstant-activity-ui-context.xml
@@ -46,5 +46,4 @@
<property name="serviceDescriptionRegistry" ref="serviceDescriptionRegistry" />
<property name="serviceRegistry" ref="serviceRegistry" />
</bean>
-
</beans>
diff --git a/src/test/java/net/sf/taverna/t2/activities/stringconstant/views/TestStringConstantContextualView.java b/src/test/java/net/sf/taverna/t2/activities/stringconstant/views/TestStringConstantContextualView.java
index 6058cea..4555d0c 100644
--- a/src/test/java/net/sf/taverna/t2/activities/stringconstant/views/TestStringConstantContextualView.java
+++ b/src/test/java/net/sf/taverna/t2/activities/stringconstant/views/TestStringConstantContextualView.java
@@ -39,11 +39,15 @@
activity = new Activity();
}
- @Test @Ignore
+ @Test
+ @Ignore
public void testGetConfigureAction() throws Exception {
- ContextualView view = new StringConstantActivityContextualView(activity, null, null, null, null, null, null);
- assertNotNull("The action should not be null",view.getConfigureAction(null));
- assertTrue("Should be a StringConstantActivityConfigurationAction",view.getConfigureAction(null) instanceof StringConstantActivityConfigurationAction);
+ ContextualView view = new StringConstantActivityContextualView(
+ activity, null, null, null, null, null, null);
+ assertNotNull("The action should not be null",
+ view.getConfigureAction(null));
+ assertTrue(
+ "Should be a StringConstantActivityConfigurationAction",
+ view.getConfigureAction(null) instanceof StringConstantActivityConfigurationAction);
}
-
}