diff options
Diffstat (limited to 'source/com/c2kernel/gui/data/NodeEntity.java')
| -rwxr-xr-x | source/com/c2kernel/gui/data/NodeEntity.java | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/source/com/c2kernel/gui/data/NodeEntity.java b/source/com/c2kernel/gui/data/NodeEntity.java new file mode 100755 index 0000000..adff241 --- /dev/null +++ b/source/com/c2kernel/gui/data/NodeEntity.java @@ -0,0 +1,80 @@ +package com.c2kernel.gui.data;
+
+
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.util.ArrayList;
+
+import javax.swing.JMenuItem;
+import javax.swing.JPopupMenu;
+
+import com.c2kernel.entity.proxy.EntityProxy;
+import com.c2kernel.gui.EntityTabManager;
+import com.c2kernel.lookup.Path;
+import com.c2kernel.process.Gateway;
+import com.c2kernel.utils.Language;
+import com.c2kernel.utils.Logger;
+
+/**
+ * Structure for Item presence on the tree and ItemDetails boxes. Created by NodeFactory.
+ * @author $Author: abranson $
+ * @version $Version$
+ */
+public abstract class NodeEntity extends Node {
+
+ protected EntityProxy myEntity = null;
+
+ public NodeEntity(Path path, EntityTabManager desktop) {
+ super(path, desktop);
+ Logger.msg(2,"NodeEntity.<init> - Creating item for '"+path.toString()+"'.");
+
+ try {
+ // if an item - resolve the item and get its properties
+ myEntity = Gateway.getProxyManager().getProxy(path);
+ this.sysKey = path.getSysKey();
+ Logger.msg(2,"NodeEntity.<init> - System key is "+this.sysKey);
+
+ // Name should be the alias if present
+ String alias = myEntity.getName();
+ if (alias != null) this.name = alias;
+
+ this.type = myEntity.getProperty("Type");
+ String iconString = this.type;
+ if (type.equals("ActivityDesc")) iconString = myEntity.getProperty("Complexity")+iconString;
+ iconString = iconString.toLowerCase();
+ this.setIcon(iconString);
+ createTreeNode();
+ } catch (Exception e) {
+ Logger.msg(2, "NodeEntity.<init> - "+sysKey+" failed to resolve:");
+ Logger.error(e);
+ }
+ }
+
+ public EntityProxy getEntity() {
+ return myEntity;
+ }
+ /**
+ *
+ */
+ public JPopupMenu getPopupMenu() {
+ JPopupMenu popup = super.getPopupMenu();
+ JMenuItem openItem = new JMenuItem(Language.translate("Open"));
+ openItem.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ openItem();
+ }
+ });
+ popup.addSeparator();
+ popup.add(openItem);
+ return popup;
+ }
+
+ public void openItem() {
+ desktop.add(this);
+ }
+
+ public ArrayList getTabs() {
+ ArrayList requiredTabs = new ArrayList();
+ return requiredTabs;
+ }
+}
|
