From 0ec8481c10cd8277d84c7c1a785483a0a739e5a0 Mon Sep 17 00:00:00 2001 From: abranson Date: Thu, 4 Aug 2011 00:42:34 +0200 Subject: More code cleanup: Refactored Entity Proxy Subscription to handle generics better Rewrote RemoteMap to use TreeMap instead of the internal array for order. It now sorts its keys by number if they parse, else as strings. Removed a no-longer-in-progress outcome form class --- source/com/c2kernel/gui/EntityDetails.java | 41 +++++++++++++++++------------- 1 file changed, 23 insertions(+), 18 deletions(-) (limited to 'source/com/c2kernel/gui/EntityDetails.java') diff --git a/source/com/c2kernel/gui/EntityDetails.java b/source/com/c2kernel/gui/EntityDetails.java index 5eb812f..7cb4f66 100644 --- a/source/com/c2kernel/gui/EntityDetails.java +++ b/source/com/c2kernel/gui/EntityDetails.java @@ -8,12 +8,14 @@ import java.awt.event.ActionEvent; import java.util.ArrayList; import java.util.HashMap; import java.util.Iterator; + import javax.swing.JComponent; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JTabbedPane; import javax.swing.SwingConstants; import javax.swing.event.ChangeListener; + import com.c2kernel.gui.data.NodeEntity; import com.c2kernel.gui.tabs.EntityTabPane; import com.c2kernel.utils.Language; @@ -41,7 +43,8 @@ public class EntityDetails extends JPanel implements ChangeListener, Runnable { myEntity = thisItem; } - public void run() { + @Override + public void run() { Thread.currentThread().setName("Entity Pane Builder"); EntityTabPane componentToAdd = null; setLayout(new BorderLayout()); @@ -50,13 +53,13 @@ public class EntityDetails extends JPanel implements ChangeListener, Runnable { add(myTabbedPane); // decide which tabs to create - ArrayList requiredTabs = myEntity.getTabs(); - - for (Iterator en = requiredTabs.iterator(); en.hasNext();) { - String tabName = (String)en.next(); + ArrayList requiredTabs = myEntity.getTabs(); + + for (Object name2 : requiredTabs) { + String tabName = (String)name2; if (tabName != null) { //create class instances and initialise - Class myClass = null; + Class myClass = null; //look up the required TabbedPane try { myClass = Class.forName(this.getClass().getPackage().getName() + ".tabs." + tabName + "Pane"); @@ -69,7 +72,7 @@ public class EntityDetails extends JPanel implements ChangeListener, Runnable { Logger.msg(0, "ItemDetails. - Instantiation Error! " + e); } catch (IllegalAccessException e) { Logger.msg(0, "ItemDetails. - Illegal Method Access Error! Class was probably not a ItemTabPane: " + e); - } + } if (componentToAdd == null) componentToAdd = new EntityTabPane(tabName, null); componentToAdd.setParent(this); @@ -94,12 +97,13 @@ public class EntityDetails extends JPanel implements ChangeListener, Runnable { } - public void stateChanged(javax.swing.event.ChangeEvent p1) { + @Override + public void stateChanged(javax.swing.event.ChangeEvent p1) { initialisePane((EntityTabPane)myTabbedPane.getSelectedComponent()); } public void initialisePane(EntityTabPane pane) { - Boolean isInit = (Boolean)childPanes.get(pane); + Boolean isInit = childPanes.get(pane); if (isInit.booleanValue() == false) { Logger.msg(4,"Initialising "+pane.getTabName()); pane.initForEntity(myEntity); @@ -155,18 +159,18 @@ public class EntityDetails extends JPanel implements ChangeListener, Runnable { public void discardTabs() { myTabbedPane.removeChangeListener(this); myTabbedPane.removeAll(); - for (Iterator iter = childPanes.keySet().iterator(); iter.hasNext();) { - EntityTabPane element = (EntityTabPane)iter.next(); + for (Iterator iter = childPanes.keySet().iterator(); iter.hasNext();) { + EntityTabPane element = iter.next(); element.destroy(); iter.remove(); } } - + public int getSysKey() { return myEntity.getSysKey(); } - + public void closeTab() { desktopManager.remove(myEntity.getSysKey()); Logger.msg(5,"Remove master Tab :"+myEntity.getType()+ " SysKey "+myEntity.getSysKey()); @@ -177,7 +181,7 @@ public class EntityDetails extends JPanel implements ChangeListener, Runnable { if (e.getActionCommand().equals("close")) closeTab(); } - + public void runCommand(String tab, String command) { if (initialized) { int tabIndex = findTab(tab); @@ -185,7 +189,7 @@ public class EntityDetails extends JPanel implements ChangeListener, Runnable { if (tabIndex == -1) { Logger.error("Tab "+tab+" not found for command "+command); return; - } + } EntityTabPane startPane = (EntityTabPane)myTabbedPane.getComponentAt(tabIndex); myTabbedPane.setSelectedIndex(tabIndex); initialisePane(startPane); @@ -198,7 +202,7 @@ public class EntityDetails extends JPanel implements ChangeListener, Runnable { startCommand = command; } } - + protected int findTab(String tabName) { for (int i=0; i< myTabbedPane.getTabCount(); i++) { EntityTabPane thisPane = (EntityTabPane)myTabbedPane.getComponentAt(i); @@ -207,7 +211,7 @@ public class EntityDetails extends JPanel implements ChangeListener, Runnable { } return -1; } - + public void refresh() { @@ -215,7 +219,8 @@ public class EntityDetails extends JPanel implements ChangeListener, Runnable { /** * */ - protected void finalize() throws Throwable { + @Override + protected void finalize() throws Throwable { Logger.msg(7, "EntityDetails "+myEntity.getSysKey()+" reaped"); super.finalize(); } -- cgit v1.2.3