/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package automenta.spacenet.run.old.story; import automenta.spacenet.var.scalar.IntVar; import automenta.spacenet.var.string.StringVar; import java.awt.BorderLayout; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.util.logging.Level; import java.util.logging.Logger; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JTextField; /** * * @author seh */ public class VariableEditPanel extends JPanel { public VariableEditPanel(Method m, Object obj) { super(new BorderLayout()); addLabel(m); Object variable; try { variable = m.invoke(obj); setBackground(WideIconPanelizer.getColor(variable, 0.5)); if (variable instanceof IntVar) { initInt((IntVar) variable); } else if (variable instanceof StringVar) { initString((StringVar) variable); } else { } } catch (Exception ex) { Logger.getLogger(VariableEditPanel.class.getName()).log(Level.SEVERE, null, ex); } } private void addLabel(Method m) { add(new JLabel(m.getName()), BorderLayout.NORTH); } private void initInt(IntVar intVar) { add(new JTextField(), BorderLayout.CENTER); } private void initString(StringVar stringVar) { add(new JTextField(stringVar.s()), BorderLayout.CENTER); } }