package org.openswing.swing.lookup.client; import java.beans.*; /** * <p>Title: OpenSwing Framework</p> * <p>Description: Editor for code selection window property.</p> * @author Mauro Carniel * @version 1.0 */ public class SelectionWindowEditor extends PropertyEditorSupport { static private int[] winTypeValues = new int[]{ LookupController.GRID_FRAME, LookupController.TREE_FRAME, LookupController.TREE_GRID_FRAME, LookupController.GRID_AND_FILTER_FRAME, LookupController.TREE_GRID_AND_FILTER_FRAME, LookupController.GRID_AND_PANEL_FRAME, LookupController.TREE_GRID_AND_PANEL_FRAME }; static private String[] winTypeDescriptions = new String[]{ "Grid", "Tree", "Tree + Grid", "Filter Panel + Grid", "Tree + Filter Panel + Grid", "Panel + Grid", "Tree + Panel + Grid" }; /** * * @return String */ public String getJavaInitializationString() { switch( ((Number) getValue()).intValue()) { case LookupController.TREE_FRAME: return "LookupController.TREE_FRAME"; case LookupController.TREE_GRID_FRAME: return "LookupController.TREE_GRID_FRAME"; case LookupController.GRID_AND_FILTER_FRAME: return "LookupController.GRID_AND_FILTER_FRAME"; case LookupController.TREE_GRID_AND_FILTER_FRAME: return "LookupController.TREE_GRID_AND_FILTER_FRAME"; case LookupController.GRID_AND_PANEL_FRAME: return "LookupController.GRID_AND_PANEL_FRAME"; case LookupController.TREE_GRID_AND_PANEL_FRAME: return "LookupController.TREE_GRID_AND_PANEL_FRAME"; default: return "LookupController.GRID_FRAME"; } } /** * * @return String[] */ public String[] getTags() { return winTypeDescriptions; } /** * * @param text String * @throws IllegalArgumentException */ public void setAsText(String text) throws IllegalArgumentException { for(int i=0;i<winTypeDescriptions.length;i++) if (winTypeDescriptions[i].equals(text)) setValue(new Integer(winTypeValues[i])); } /** * * @return String */ public String getAsText() { for(int i=0;i<winTypeValues.length;i++) if (winTypeValues[i]==((Integer)getValue()).intValue()) return winTypeDescriptions[i]; return null; } }