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/EntityFinder.java | 52 +++++++++++++++++++------------ 1 file changed, 32 insertions(+), 20 deletions(-) mode change 100755 => 100644 source/com/c2kernel/gui/EntityFinder.java (limited to 'source/com/c2kernel/gui/EntityFinder.java') diff --git a/source/com/c2kernel/gui/EntityFinder.java b/source/com/c2kernel/gui/EntityFinder.java old mode 100755 new mode 100644 index 6f23a5d..18038c9 --- a/source/com/c2kernel/gui/EntityFinder.java +++ b/source/com/c2kernel/gui/EntityFinder.java @@ -10,7 +10,14 @@ import java.io.IOException; import java.util.Enumeration; import java.util.StringTokenizer; -import javax.swing.*; +import javax.swing.Box; +import javax.swing.BoxLayout; +import javax.swing.ImageIcon; +import javax.swing.JButton; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JTextField; +import javax.swing.JToggleButton; import com.c2kernel.lookup.DomainPath; import com.c2kernel.lookup.LDAPLookup; @@ -28,7 +35,7 @@ public class EntityFinder extends Box implements Runnable { LDAPLookup lookup = Gateway.getLDAPLookup(); DomainKeyConsumer defaultConsumer = null; DomainKeyConsumer currentConsumer = null; - Enumeration matches; + Enumeration matches; Path rootNode = MainFrame.userNode.getPath(); static protected ImageIcon mFindIcon = null; @@ -54,7 +61,7 @@ public class EntityFinder extends Box implements Runnable { inputField.setText(key); runSearch(); } - + public void setDefaultConsumer(DomainKeyConsumer newConsumer) { defaultConsumer = newConsumer; currentConsumer = newConsumer; @@ -64,43 +71,46 @@ public class EntityFinder extends Box implements Runnable { currentConsumer = newConsumer; findButton.setText(label); } - + public void clearConsumer(DomainKeyConsumer oldConsumer) { if (currentConsumer == oldConsumer) { currentConsumer = defaultConsumer; findButton.setText(""); } } - + private void initPanel() { JLabel search = new JLabel(" "+Language.translate("Search")+":"); add(search); add(Box.createHorizontalStrut(7)); - + inputField = new JTextField(20); add(inputField); add(Box.createHorizontalStrut(5)); inputField.addActionListener( new ActionListener() { - public void actionPerformed(ActionEvent e) { + @Override + public void actionPerformed(ActionEvent e) { pushNewKey(inputField.getText()); } }); - + findButton = new JButton(mFindIcon);//(Language.translate("Find")); findButton.setMargin(new Insets(2, 5, 2, 5)); findButton.addActionListener( new ActionListener() { - public void actionPerformed(ActionEvent e) { + @Override + public void actionPerformed(ActionEvent e) { pushNewKey(inputField.getText()); } }); add(findButton); add(Box.createHorizontalStrut(5)); - findNextButton = new JButton(mNextIcon);//(Language.translate("Next")); + findNextButton = new JButton(mNextIcon);//(Language.translate("Next")); findNextButton.setMargin(new Insets(2, 5, 2, 5)); findNextButton.addActionListener( new ActionListener() { - public void actionPerformed(ActionEvent e) { + @Override + public void actionPerformed(ActionEvent e) { MainFrame.status.setText("Navigating to next match"); nextMatch(); } @@ -118,7 +128,7 @@ public class EntityFinder extends Box implements Runnable { String listenerName = tok.nextToken(); Logger.msg(6, "ItemFinder() - creating a " + listenerName); try { - Class listenerClass = Class.forName(listenerName); + Class listenerClass = Class.forName(listenerName); DomainKeyListener newListener = (DomainKeyListener)listenerClass.newInstance(); newListener.init(); newListener.setConsumer(this); JToggleButton listenerButton = new JToggleButton(newListener.getIcon(), false); @@ -139,19 +149,20 @@ public class EntityFinder extends Box implements Runnable { Thread searcher = new Thread(this); searcher.start(); } - - public void run() { + + @Override + public void run() { Thread.currentThread().setName("Entity Search"); MainFrame.status.setText("Searching. Please Wait"); findButton.setEnabled(false); findNextButton.setEnabled(false); String searchTerm = inputField.getText(); if (searchTerm.length() == 0) return; // don't allow null searches - findNextButton.setEnabled(false); + findNextButton.setEnabled(false); matches = lookup.search(rootNode,inputField.getText()); if (!matches.hasMoreElements()) { MainFrame.status.setText("No results"); currentConsumer.push(searchTerm); // for subscribers who don't care if it exists - findButton.setEnabled(true); + findButton.setEnabled(true); return; } MainFrame.status.setText("Selecting first match."); @@ -161,7 +172,7 @@ public class EntityFinder extends Box implements Runnable { void nextMatch() { findButton.setEnabled(false); findNextButton.setEnabled(false); - DomainPath nextMatch = (DomainPath)matches.nextElement(); + DomainPath nextMatch = (DomainPath)matches.nextElement(); try { currentConsumer.push(nextMatch); @@ -171,8 +182,8 @@ public class EntityFinder extends Box implements Runnable { //case the item searched is not found ! } findButton.setEnabled(true); - findNextButton.setToolTipText("Click to show next match"); - if (matches.hasMoreElements()) findNextButton.setEnabled(true); + findNextButton.setToolTipText("Click to show next match"); + if (matches.hasMoreElements()) findNextButton.setEnabled(true); } private class ListenerButtonListener implements ItemListener { @@ -184,7 +195,8 @@ public class EntityFinder extends Box implements Runnable { this.listenerButton = listenerButton; } - public void itemStateChanged(ItemEvent e) { + @Override + public void itemStateChanged(ItemEvent e) { if (e.getStateChange() == ItemEvent.SELECTED) { // Switch on try { -- cgit v1.2.3