diff options
Diffstat (limited to 'java/src/IceGrid/TreeNode')
-rwxr-xr-x | java/src/IceGrid/TreeNode/Adapter.java | 23 | ||||
-rwxr-xr-x | java/src/IceGrid/TreeNode/AdapterEditor.java | 3 | ||||
-rwxr-xr-x | java/src/IceGrid/TreeNode/Application.java | 30 | ||||
-rwxr-xr-x | java/src/IceGrid/TreeNode/DbEnv.java | 26 | ||||
-rwxr-xr-x | java/src/IceGrid/TreeNode/Node.java | 23 | ||||
-rwxr-xr-x | java/src/IceGrid/TreeNode/Parent.java | 38 | ||||
-rwxr-xr-x | java/src/IceGrid/TreeNode/ReplicaGroup.java | 27 | ||||
-rwxr-xr-x | java/src/IceGrid/TreeNode/ReplicaGroupEditor.java | 6 | ||||
-rwxr-xr-x | java/src/IceGrid/TreeNode/Server.java | 64 | ||||
-rwxr-xr-x | java/src/IceGrid/TreeNode/ServerInstanceEditor.java | 5 | ||||
-rwxr-xr-x | java/src/IceGrid/TreeNode/ServerTemplate.java | 33 | ||||
-rwxr-xr-x | java/src/IceGrid/TreeNode/Service.java | 30 | ||||
-rwxr-xr-x | java/src/IceGrid/TreeNode/ServiceInstanceEditor.java | 3 | ||||
-rwxr-xr-x | java/src/IceGrid/TreeNode/ServiceTemplate.java | 29 |
14 files changed, 284 insertions, 56 deletions
diff --git a/java/src/IceGrid/TreeNode/Adapter.java b/java/src/IceGrid/TreeNode/Adapter.java index d0200c3ec5f..aba400950e3 100755 --- a/java/src/IceGrid/TreeNode/Adapter.java +++ b/java/src/IceGrid/TreeNode/Adapter.java @@ -9,6 +9,7 @@ package IceGrid.TreeNode; import java.awt.Component; +import javax.swing.Icon; import javax.swing.JTree; import javax.swing.tree.DefaultTreeCellRenderer; @@ -63,9 +64,7 @@ class Adapter extends Leaf _parent.paste(); } - // - // Overridden to show tooltip - // + public Component getTreeCellRendererComponent( JTree tree, Object value, @@ -77,12 +76,21 @@ class Adapter extends Leaf { if(_cellRenderer == null) { - // - // Initialization - // _cellRenderer = new DefaultTreeCellRenderer(); + _activeIcon = Utils.getIcon("/icons/16x16/adapter_active.png"); + _inactiveIcon = Utils.getIcon("/icons/16x16/adapter_inactive.png"); + } + + if(_currentEndpoints == null || _currentEndpoints.equals("")) + { + _cellRenderer.setLeafIcon(_inactiveIcon); + } + else + { + _cellRenderer.setLeafIcon(_activeIcon); } + _cellRenderer.setToolTipText(_toolTip); return _cellRenderer.getTreeCellRendererComponent( tree, value, sel, expanded, leaf, row, hasFocus); @@ -293,5 +301,8 @@ class Adapter extends Leaf private String _adapterId; // resolved adapter id, null when _resolver == null static private DefaultTreeCellRenderer _cellRenderer; + static private Icon _activeIcon; + static private Icon _inactiveIcon; + static private AdapterEditor _editor; } diff --git a/java/src/IceGrid/TreeNode/AdapterEditor.java b/java/src/IceGrid/TreeNode/AdapterEditor.java index de24fdbf8d2..a348a5895c2 100755 --- a/java/src/IceGrid/TreeNode/AdapterEditor.java +++ b/java/src/IceGrid/TreeNode/AdapterEditor.java @@ -53,7 +53,8 @@ class AdapterEditor extends ListElementEditor // // _replicaGroupButton // - Action gotoReplicaGroup = new AbstractAction("->") + Action gotoReplicaGroup = new AbstractAction( + "", Utils.getIcon("/icons/16x16/goto.png")) { public void actionPerformed(ActionEvent e) { diff --git a/java/src/IceGrid/TreeNode/Application.java b/java/src/IceGrid/TreeNode/Application.java index d1919d7f084..e54879f4056 100755 --- a/java/src/IceGrid/TreeNode/Application.java +++ b/java/src/IceGrid/TreeNode/Application.java @@ -9,14 +9,17 @@ package IceGrid.TreeNode;
import java.awt.Cursor;
+import java.awt.Component;
+import javax.swing.Icon;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import javax.swing.JPopupMenu;
import javax.swing.SwingUtilities;
+import javax.swing.JTree;
+import javax.swing.tree.DefaultTreeCellRenderer;
import IceGrid.AMI_Admin_patchApplication;
-
import IceGrid.AdapterDynamicInfo;
import IceGrid.ApplicationDescriptor;
import IceGrid.ApplicationUpdateDescriptor;
@@ -52,6 +55,30 @@ public class Application extends EditableParent return copy;
}
+
+ public Component getTreeCellRendererComponent(
+ JTree tree,
+ Object value,
+ boolean sel,
+ boolean expanded,
+ boolean leaf,
+ int row,
+ boolean hasFocus)
+ {
+ if(_cellRenderer == null)
+ {
+ _cellRenderer = new DefaultTreeCellRenderer();
+ _cellRenderer.setOpenIcon(
+ Utils.getIcon("/icons/16x16/application.png"));
+ _cellRenderer.setClosedIcon(
+ Utils.getIcon("/icons/16x16/application.png"));
+ }
+
+ return _cellRenderer.getTreeCellRendererComponent(
+ tree, value, sel, expanded, leaf, row, hasFocus);
+ }
+
+
public boolean[] getAvailableActions()
{
boolean[] actions = new boolean[ACTION_COUNT];
@@ -695,6 +722,7 @@ public class Application extends EditableParent private ServiceTemplates _serviceTemplates;
private Nodes _nodes;
+ static private DefaultTreeCellRenderer _cellRenderer;
static private ApplicationEditor _editor;
static private JPopupMenu _popup;
}
diff --git a/java/src/IceGrid/TreeNode/DbEnv.java b/java/src/IceGrid/TreeNode/DbEnv.java index 30659f3014a..bca6c846bed 100755 --- a/java/src/IceGrid/TreeNode/DbEnv.java +++ b/java/src/IceGrid/TreeNode/DbEnv.java @@ -8,6 +8,11 @@ // **********************************************************************
package IceGrid.TreeNode;
+import java.awt.Component;
+import javax.swing.Icon;
+import javax.swing.JTree;
+import javax.swing.tree.DefaultTreeCellRenderer;
+
import IceGrid.DbEnvDescriptor;
import IceGrid.Model;
import IceGrid.SimpleInternalFrame;
@@ -20,6 +25,26 @@ class DbEnv extends Leaf return (DbEnvDescriptor)d.clone();
}
+
+ public Component getTreeCellRendererComponent(
+ JTree tree,
+ Object value,
+ boolean sel,
+ boolean expanded,
+ boolean leaf,
+ int row,
+ boolean hasFocus)
+ {
+ if(_cellRenderer == null)
+ {
+ _cellRenderer = new DefaultTreeCellRenderer();
+ _cellRenderer.setLeafIcon(Utils.getIcon("/icons/16x16/database.png"));
+ }
+ return _cellRenderer.getTreeCellRendererComponent(
+ tree, value, sel, expanded, leaf, row, hasFocus);
+ }
+
+
//
// Actions
//
@@ -141,5 +166,6 @@ class DbEnv extends Leaf private Utils.Resolver _resolver;
private final boolean _ephemeral;
+ static private DefaultTreeCellRenderer _cellRenderer;
static private DbEnvEditor _editor;
}
diff --git a/java/src/IceGrid/TreeNode/Node.java b/java/src/IceGrid/TreeNode/Node.java index 646b6aba939..484439b3382 100755 --- a/java/src/IceGrid/TreeNode/Node.java +++ b/java/src/IceGrid/TreeNode/Node.java @@ -215,25 +215,20 @@ class Node extends EditableParent // Initialization
//
_cellRenderer = new DefaultTreeCellRenderer();
- _nodeUpOpen = Utils.getIcon("/icons/node_up_open.png");
- _nodeDownOpen = Utils.getIcon("/icons/node_down_open.png");
- _nodeUpClosed = Utils.getIcon("/icons/node_up_closed.png");
- _nodeDownClosed = Utils.getIcon("/icons/node_down_closed.png");
+ _nodeUp = Utils.getIcon("/icons/16x16/node_up.png");
+ _nodeDown = Utils.getIcon("/icons/16x16/node_down.png");
}
- //
- // TODO: separate icons for open and close
- //
if(_up)
{
_cellRenderer.setToolTipText("Up and running");
if(expanded)
{
- _cellRenderer.setOpenIcon(_nodeUpOpen);
+ _cellRenderer.setOpenIcon(_nodeUp);
}
else
{
- _cellRenderer.setClosedIcon(_nodeUpClosed);
+ _cellRenderer.setClosedIcon(_nodeUp);
}
}
else
@@ -241,11 +236,11 @@ class Node extends EditableParent _cellRenderer.setToolTipText("Not running");
if(expanded)
{
- _cellRenderer.setOpenIcon(_nodeDownOpen);
+ _cellRenderer.setOpenIcon(_nodeDown);
}
else
{
- _cellRenderer.setClosedIcon(_nodeDownClosed);
+ _cellRenderer.setClosedIcon(_nodeDown);
}
}
@@ -1100,10 +1095,8 @@ class Node extends EditableParent private NodeInfo _staticInfo;
static private DefaultTreeCellRenderer _cellRenderer;
- static private Icon _nodeUpOpen;
- static private Icon _nodeUpClosed;
- static private Icon _nodeDownOpen;
- static private Icon _nodeDownClosed;
+ static private Icon _nodeUp;
+ static private Icon _nodeDown;
static private NodeEditor _editor;
static private JPopupMenu _popup;
diff --git a/java/src/IceGrid/TreeNode/Parent.java b/java/src/IceGrid/TreeNode/Parent.java index 34ad7de0435..a239f4fcf83 100755 --- a/java/src/IceGrid/TreeNode/Parent.java +++ b/java/src/IceGrid/TreeNode/Parent.java @@ -8,10 +8,17 @@ // **********************************************************************
package IceGrid.TreeNode;
+import java.awt.Component;
+import javax.swing.JTree;
+
+import javax.swing.tree.DefaultTreeCellRenderer;
+import javax.swing.tree.TreeCellRenderer;
import javax.swing.tree.TreePath;
+
import javax.swing.event.TreeModelEvent;
import IceGrid.Model;
import IceGrid.TreeModelI;
+import IceGrid.Utils;
//
// Common implementation for non-leaf nodes
@@ -95,6 +102,35 @@ class Parent extends CommonBaseI }
}
+ //
+ // TreeCellRenderer
+ //
+
+ public Component getTreeCellRendererComponent(
+ JTree tree,
+ Object value,
+ boolean sel,
+ boolean expanded,
+ boolean leaf,
+ int row,
+ boolean hasFocus)
+ {
+ if(_cellRenderer == null)
+ {
+ //
+ // Initialization
+ //
+ _cellRenderer = new DefaultTreeCellRenderer();
+ _cellRenderer.setOpenIcon(
+ Utils.getIcon("/icons/16x16/folder_open.png"));
+ _cellRenderer.setClosedIcon(
+ Utils.getIcon("/icons/16x16/folder_closed.png"));
+ }
+
+ return _cellRenderer.getTreeCellRendererComponent(
+ tree, value, sel, expanded, leaf, row, hasFocus);
+ }
+
public Object getChildAt(int childIndex)
{
try
@@ -682,4 +718,6 @@ class Parent extends CommonBaseI protected java.util.LinkedList _children = new java.util.LinkedList();
private ChildComparator _childComparator = new ChildComparator();
protected boolean _sortChildren = true;
+
+ static private DefaultTreeCellRenderer _cellRenderer;
}
diff --git a/java/src/IceGrid/TreeNode/ReplicaGroup.java b/java/src/IceGrid/TreeNode/ReplicaGroup.java index 30f16dd45aa..f78ae25717a 100755 --- a/java/src/IceGrid/TreeNode/ReplicaGroup.java +++ b/java/src/IceGrid/TreeNode/ReplicaGroup.java @@ -8,6 +8,10 @@ // **********************************************************************
package IceGrid.TreeNode;
+import java.awt.Component;
+import javax.swing.JTree;
+import javax.swing.tree.DefaultTreeCellRenderer;
+
import IceGrid.Model;
import IceGrid.ReplicaGroupDescriptor;
import IceGrid.SimpleInternalFrame;
@@ -21,6 +25,27 @@ class ReplicaGroup extends EditableLeaf return (ReplicaGroupDescriptor)d.clone();
}
+ public Component getTreeCellRendererComponent(
+ JTree tree,
+ Object value,
+ boolean sel,
+ boolean expanded,
+ boolean leaf,
+ int row,
+ boolean hasFocus)
+ {
+ if(_cellRenderer == null)
+ {
+ _cellRenderer = new DefaultTreeCellRenderer();
+ _cellRenderer.setLeafIcon(
+ Utils.getIcon("/icons/16x16/replica_group.png"));
+ }
+
+ return _cellRenderer.getTreeCellRendererComponent(
+ tree, value, sel, expanded, leaf, row, hasFocus);
+ }
+
+
//
// Actions
//
@@ -136,5 +161,7 @@ class ReplicaGroup extends EditableLeaf private ReplicaGroupDescriptor _descriptor;
private final boolean _ephemeral;
+
+ static private DefaultTreeCellRenderer _cellRenderer;
static private ReplicaGroupEditor _editor;
}
diff --git a/java/src/IceGrid/TreeNode/ReplicaGroupEditor.java b/java/src/IceGrid/TreeNode/ReplicaGroupEditor.java index 8e4d3a90bc1..8be880cf088 100755 --- a/java/src/IceGrid/TreeNode/ReplicaGroupEditor.java +++ b/java/src/IceGrid/TreeNode/ReplicaGroupEditor.java @@ -336,6 +336,12 @@ class ReplicaGroupEditor extends Editor void show(ReplicaGroup replicaGroup) { + // + // Make sure everything is built + // + getProperties(); + + detectUpdates(false); setTarget(replicaGroup); diff --git a/java/src/IceGrid/TreeNode/Server.java b/java/src/IceGrid/TreeNode/Server.java index 539c065c93b..7ae59f2e635 100755 --- a/java/src/IceGrid/TreeNode/Server.java +++ b/java/src/IceGrid/TreeNode/Server.java @@ -583,32 +583,54 @@ class Server extends EditableParent // Initialization
//
_cellRenderer = new DefaultTreeCellRenderer();
- _icons = new Icon[7];
- _icons[0] = Utils.getIcon("/icons/unknown.png");
- _icons[ServerState.Inactive.value() + 1] = Utils.getIcon("/icons/inactive.png");
- _icons[ServerState.Activating.value() + 1] =
- Utils.getIcon("/icons/activating.png");
- _icons[ServerState.Active.value() + 1] =
- Utils.getIcon("/icons/active.png");
- _icons[ServerState.Deactivating.value() + 1] =
- Utils.getIcon("/icons/deactivating.png");
- _icons[ServerState.Destroying.value() + 1] =
- Utils.getIcon("/icons/destroying.png");
- _icons[ServerState.Destroyed.value() + 1] =
- Utils.getIcon("/icons/destroyed.png");
- }
- //
- // TODO: separate icons for open and close
- //
+ //
+ // Regular servers
+ //
+ _icons = new Icon[7][2][2];
+ _icons[0][0][0] = Utils.getIcon("/icons/16x16/server_unknown.png");
+ _icons[ServerState.Inactive.value() + 1][0][0]
+ = Utils.getIcon("/icons/16x16/server_inactive.png");
+ _icons[ServerState.Activating.value() + 1][0][0] =
+ Utils.getIcon("/icons/16x16/server_activating.png");
+ _icons[ServerState.Active.value() + 1][0][0] =
+ Utils.getIcon("/icons/16x16/server_active.png");
+ _icons[ServerState.Deactivating.value() + 1][0][0] =
+ Utils.getIcon("/icons/16x16/server_deactivating.png");
+ _icons[ServerState.Destroying.value() + 1][0][0] =
+ Utils.getIcon("/icons/16x16/server_destroying.png");
+ _icons[ServerState.Destroyed.value() + 1][0][0] =
+ Utils.getIcon("/icons/16x16/server_destroyed.png");
+
+ //
+ // IceBox servers
+ //
+ _icons[0][1][0] = Utils.getIcon("/icons/16x16/icebox_server_unknown.png");
+ _icons[ServerState.Inactive.value() + 1][1][0]
+ = Utils.getIcon("/icons/16x16/icebox_server_inactive.png");
+ _icons[ServerState.Activating.value() + 1][1][0] =
+ Utils.getIcon("/icons/16x16/icebox_server_activating.png");
+ _icons[ServerState.Active.value() + 1][1][0] =
+ Utils.getIcon("/icons/16x16/icebox_server_active.png");
+ _icons[ServerState.Deactivating.value() + 1][1][0] =
+ Utils.getIcon("/icons/16x16/icebox_server_deactivating.png");
+ _icons[ServerState.Destroying.value() + 1][1][0] =
+ Utils.getIcon("/icons/16x16/icebox_server_destroying.png");
+ _icons[ServerState.Destroyed.value() + 1][1][0] =
+ Utils.getIcon("/icons/16x16/icebox_server_destroyed.png");
+ }
+
+ int icebox = _serverDescriptor instanceof IceBoxDescriptor ? 1 : 0;
+ int disabled = 0;
+
if(expanded)
{
- _cellRenderer.setOpenIcon(_icons[_stateIconIndex]);
+ _cellRenderer.setOpenIcon(_icons[_stateIconIndex][icebox][disabled]);
}
else
{
- _cellRenderer.setClosedIcon(_icons[_stateIconIndex]);
- }
+ _cellRenderer.setClosedIcon(_icons[_stateIconIndex][icebox][disabled]);
+ }
_cellRenderer.setToolTipText(_toolTip);
return _cellRenderer.getTreeCellRendererComponent(
@@ -968,7 +990,7 @@ class Server extends EditableParent private DbEnvs _dbEnvs;
static private DefaultTreeCellRenderer _cellRenderer;
- static private Icon[] _icons;
+ static private Icon[][][] _icons;
static private ServerEditor _serverEditor;
static private ServerInstanceEditor _serverInstanceEditor;
diff --git a/java/src/IceGrid/TreeNode/ServerInstanceEditor.java b/java/src/IceGrid/TreeNode/ServerInstanceEditor.java index addfb91496f..3c53be2f043 100755 --- a/java/src/IceGrid/TreeNode/ServerInstanceEditor.java +++ b/java/src/IceGrid/TreeNode/ServerInstanceEditor.java @@ -57,7 +57,8 @@ class ServerInstanceEditor extends AbstractServerEditor //
// Template
//
- Action gotoTemplate = new AbstractAction("->")
+ Action gotoTemplate = new AbstractAction(
+ "", Utils.getIcon("/icons/16x16/goto.png"))
{
public void actionPerformed(ActionEvent e)
{
@@ -69,7 +70,7 @@ class ServerInstanceEditor extends AbstractServerEditor }
};
gotoTemplate.putValue(Action.SHORT_DESCRIPTION,
- "Goto this template");
+ "Goto this template");
_templateButton = new JButton(gotoTemplate);
//
diff --git a/java/src/IceGrid/TreeNode/ServerTemplate.java b/java/src/IceGrid/TreeNode/ServerTemplate.java index 9c05c7faf25..87c5a1ba6a0 100755 --- a/java/src/IceGrid/TreeNode/ServerTemplate.java +++ b/java/src/IceGrid/TreeNode/ServerTemplate.java @@ -15,20 +15,13 @@ import javax.swing.AbstractAction; import javax.swing.Action;
import javax.swing.Icon;
import javax.swing.JButton;
-import javax.swing.JComboBox;
import javax.swing.JComponent;
import javax.swing.JMenuItem;
-import javax.swing.JPanel;
import javax.swing.JPopupMenu;
-import javax.swing.JScrollPane;
-import javax.swing.JTextField;
-import javax.swing.JToggleButton;
+
import javax.swing.JTree;
import javax.swing.tree.DefaultTreeCellRenderer;
-import com.jgoodies.forms.builder.DefaultFormBuilder;
-import com.jgoodies.forms.factories.Borders;
-import com.jgoodies.forms.layout.FormLayout;
import IceGrid.SimpleInternalFrame;
import IceGrid.IceBoxDescriptor;
@@ -53,6 +46,29 @@ class ServerTemplate extends EditableParent (ServerDescriptor)copy.descriptor);
return copy;
}
+
+ public Component getTreeCellRendererComponent(
+ JTree tree,
+ Object value,
+ boolean sel,
+ boolean expanded,
+ boolean leaf,
+ int row,
+ boolean hasFocus)
+ {
+ if(_cellRenderer == null)
+ {
+ _cellRenderer = new DefaultTreeCellRenderer();
+ _cellRenderer.setOpenIcon(
+ Utils.getIcon("/icons/16x16/server_template.png"));
+ _cellRenderer.setClosedIcon(
+ Utils.getIcon("/icons/16x16/server_template.png"));
+ }
+
+ return _cellRenderer.getTreeCellRendererComponent(
+ tree, value, sel, expanded, leaf, row, hasFocus);
+ }
+
//
// Actions
@@ -300,6 +316,7 @@ class ServerTemplate extends EditableParent private PropertiesHolder _propertiesHolder;
private final boolean _ephemeral;
+ static private DefaultTreeCellRenderer _cellRenderer;
static private ServerTemplateEditor _editor;
static private JPopupMenu _popup;
}
diff --git a/java/src/IceGrid/TreeNode/Service.java b/java/src/IceGrid/TreeNode/Service.java index c84c2f22f01..cec0d2f59c8 100755 --- a/java/src/IceGrid/TreeNode/Service.java +++ b/java/src/IceGrid/TreeNode/Service.java @@ -8,8 +8,11 @@ // **********************************************************************
package IceGrid.TreeNode;
+import java.awt.Component;
import javax.swing.JMenuItem;
import javax.swing.JPopupMenu;
+import javax.swing.JTree;
+import javax.swing.tree.DefaultTreeCellRenderer;
import IceGrid.SimpleInternalFrame;
@@ -49,6 +52,32 @@ class Service extends Parent return copy;
}
+
+ public Component getTreeCellRendererComponent(
+ JTree tree,
+ Object value,
+ boolean sel,
+ boolean expanded,
+ boolean leaf,
+ int row,
+ boolean hasFocus)
+ {
+ if(_cellRenderer == null)
+ {
+ _cellRenderer = new DefaultTreeCellRenderer();
+ _cellRenderer.setOpenIcon(
+ Utils.getIcon("/icons/16x16/service.png"));
+
+ _cellRenderer.setClosedIcon(
+ Utils.getIcon("/icons/16x16/service.png"));
+ }
+
+ return _cellRenderer.getTreeCellRendererComponent(
+ tree, value, sel, expanded, leaf, row, hasFocus);
+ }
+
+
+
//
// Actions
//
@@ -361,6 +390,7 @@ class Service extends Parent private PropertiesHolder _propertiesHolder;
+ static private DefaultTreeCellRenderer _cellRenderer;
static private ServiceEditor _editor;
static private ServiceInstanceEditor _instanceEditor;
static private JPopupMenu _popup;
diff --git a/java/src/IceGrid/TreeNode/ServiceInstanceEditor.java b/java/src/IceGrid/TreeNode/ServiceInstanceEditor.java index cc81bd4ff17..f4d20fc379a 100755 --- a/java/src/IceGrid/TreeNode/ServiceInstanceEditor.java +++ b/java/src/IceGrid/TreeNode/ServiceInstanceEditor.java @@ -40,7 +40,8 @@ class ServiceInstanceEditor extends ListElementEditor //
// Template
//
- Action gotoTemplate = new AbstractAction("->")
+ Action gotoTemplate = new AbstractAction(
+ "", Utils.getIcon("/icons/16x16/goto.png"))
{
public void actionPerformed(ActionEvent e)
{
diff --git a/java/src/IceGrid/TreeNode/ServiceTemplate.java b/java/src/IceGrid/TreeNode/ServiceTemplate.java index 4d798d8c149..ef7e7acb2e0 100755 --- a/java/src/IceGrid/TreeNode/ServiceTemplate.java +++ b/java/src/IceGrid/TreeNode/ServiceTemplate.java @@ -8,14 +8,17 @@ // **********************************************************************
package IceGrid.TreeNode;
+import java.awt.Component;
import javax.swing.JMenuItem;
import javax.swing.JPopupMenu;
+import javax.swing.JTree;
+import javax.swing.tree.DefaultTreeCellRenderer;
import IceGrid.Model;
import IceGrid.ServiceDescriptor;
import IceGrid.SimpleInternalFrame;
import IceGrid.TemplateDescriptor;
-
+import IceGrid.Utils;
class ServiceTemplate extends EditableParent
{
@@ -31,6 +34,29 @@ class ServiceTemplate extends EditableParent return copy;
}
+ public Component getTreeCellRendererComponent(
+ JTree tree,
+ Object value,
+ boolean sel,
+ boolean expanded,
+ boolean leaf,
+ int row,
+ boolean hasFocus)
+ {
+ if(_cellRenderer == null)
+ {
+ _cellRenderer = new DefaultTreeCellRenderer();
+ _cellRenderer.setOpenIcon(
+ Utils.getIcon("/icons/16x16/service_template.png"));
+ _cellRenderer.setClosedIcon(
+ Utils.getIcon("/icons/16x16/service_template.png"));
+ }
+
+ return _cellRenderer.getTreeCellRendererComponent(
+ tree, value, sel, expanded, leaf, row, hasFocus);
+ }
+
+
//
// Actions
//
@@ -228,6 +254,7 @@ class ServiceTemplate extends EditableParent private PropertiesHolder _propertiesHolder;
private final boolean _ephemeral;
+ static private DefaultTreeCellRenderer _cellRenderer;
static private ServiceTemplateEditor _editor;
static private JPopupMenu _popup;
}
|