Example usage for com.jgoodies.forms.builder DefaultFormBuilder append

List of usage examples for com.jgoodies.forms.builder DefaultFormBuilder append

Introduction

In this page you can find the example usage for com.jgoodies.forms.builder DefaultFormBuilder append.

Prototype

public JLabel append(String textWithMnemonic, Component component) 

Source Link

Document

Adds a text label and component to the panel.

Usage

From source file:edu.umich.robot.SoarDataView.java

License:Open Source License

public SoarDataView(PropertyManager properties) {
    this.properties = properties;

    FormLayout layout = new FormLayout("right:pref, 4dlu, 60dlu", "");
    DefaultFormBuilder builder = new DefaultFormBuilder(layout);
    builder.setDefaultDialogBorder();//from www  .  j  av  a 2s  .  com

    builder.appendSeparator("collection mode");
    ButtonGroup group = new ButtonGroup();
    for (DataCollectionMode s : DataCollectionMode.values()) {
        JRadioButton b = new JRadioButton();
        b.setSelected(properties.get(SoarProperties.DATA_COLLECTION_MODE) == s);
        modeButtons.put(s, b);
        group.add(b);
        builder.append(s.toString().toLowerCase(), b);
    }

    builder.appendSeparator("collection period");
    periodCycles = new JTextField();
    periodCycles.setText(Integer.toString(properties.get(SoarProperties.PERIOD_CYCLES)));
    builder.append("Collect data every n decision cycles", periodCycles);

    periodMillis = new JTextField();
    periodMillis.setText(Integer.toString(properties.get(SoarProperties.PERIOD_MILLIS)));
    builder.append("Collect data every n milliseconds", periodMillis);

    ActionListener al = new ActionListener() {
        public void actionPerformed(ActionEvent arg0) {
            periodCycles.setEnabled(modeButtons.get(DataCollectionMode.DECISION_CYCLES).isSelected());
            periodMillis.setEnabled(modeButtons.get(DataCollectionMode.ELAPSED_TIME).isSelected());
        }
    };
    al.actionPerformed(null);

    modeButtons.get(DataCollectionMode.DECISION_CYCLES).addActionListener(al);
    modeButtons.get(DataCollectionMode.ELAPSED_TIME).addActionListener(al);

    builder.appendSeparator("file");
    file = properties.get(SoarProperties.DATA_FILE);
    fileLabel = new JLabel();
    updateFileLabel();
    chooser = new JButton("...");
    builder.append("Data file", fileLabel);
    builder.append("Click to pick data file:");
    builder.append(chooser);

    cancel = new JButton("Cancel");
    builder.append(cancel);

    ok = new JButton("OK");
    builder.append(ok);

    panel = builder.getPanel();
}

From source file:edu.umich.robot.SoarParametersView.java

License:Open Source License

public SoarParametersView(PropertyManager properties) {
    this.properties = properties;

    FormLayout layout = new FormLayout("right:pref, 4dlu, 100dlu", "");

    DefaultFormBuilder builder = new DefaultFormBuilder(layout);
    builder.setDefaultDialogBorder();// ww  w  .  j  a va 2  s. c om

    builder.appendSeparator(AgentProperties.LEARN.toString());
    ButtonGroup learnGroup = new ButtonGroup();
    for (LearnSetting s : LearnSetting.values()) {
        JRadioButton b = new JRadioButton();
        b.setSelected(properties.get(AgentProperties.LEARN) == s);
        learnButtons.put(s, b);
        learnGroup.add(b);
        builder.append(s.toString().toLowerCase(), b);
    }

    builder.appendSeparator("epmem, smem");

    epmemLearn.setSelected(properties.get(AgentProperties.EPMEM_LEARNING));
    builder.append(AgentProperties.EPMEM_LEARNING.toString(), epmemLearn);

    smemLearn.setSelected(properties.get(AgentProperties.SMEM_LEARNING));
    builder.append(AgentProperties.SMEM_LEARNING.toString(), smemLearn);

    Joiner joiner = Joiner.on(" ");
    epmemExclusions.setText(joiner.join(properties.get(AgentProperties.EPMEM_EXCLUSIONS)));
    builder.append(AgentProperties.EPMEM_EXCLUSIONS.toString(), epmemExclusions);

    builder.appendSeparator("working memory parameters");

    addSpField(builder, AgentProperties.DEFAULT_STORAGE_AREA_ID);
    addSpField(builder, AgentProperties.AREAS_HELD_IN);
    addSpField(builder, AgentProperties.OBJECTS_HELD_IN);
    addSpField(builder, AgentProperties.LOOK_AHEAD_PLANNING);
    addSpField(builder, AgentProperties.SEARCH_CONTROL_GO_TO_GATEWAY);
    addSpField(builder, AgentProperties.DELETE_OLD_AREAS);

    builder.appendSeparator("working memory parameters: mission");

    ButtonGroup missionGroup = new ButtonGroup();
    for (Mission s : Mission.values()) {
        JRadioButton b = new JRadioButton();
        b.setSelected(properties.get(AgentProperties.MISSION) == s);
        missionButtons.put(s, b);
        missionGroup.add(b);
        builder.append(s.toString(), b);
    }

    builder.appendSeparator("miscellaneous commands");

    misc.setRows(4);
    joiner = Joiner.on("\n");
    misc.setText(joiner.join(properties.get(AgentProperties.MISC_COMMANDS)));
    builder.append(new JScrollPane(misc), 3);

    cancel = new JButton("Cancel");
    ok = new JButton("OK");

    builder.append(cancel);
    builder.append(ok);

    panel = builder.getPanel();
}

From source file:edu.umich.robot.SoarParametersView.java

License:Open Source License

private void addSpField(DefaultFormBuilder builder, PropertyKey<String> key) {
    JTextField spField = new JTextField(properties.get(key));
    builder.append(key.toString(), spField);
    spFields.put(key, spField);//from  w  w w . j a  v a 2s.co m
}

From source file:etomica.virial.cluster2.mvc.view.ClusterWizardPage1.java

License:Mozilla Public License

protected JComponent globalSection() {

    FormLayout layout = new FormLayout("right:max(100dlu;pref), 6dlu, 80dlu");
    DefaultFormBuilder builder = new DefaultFormBuilder(layout);
    builder.setBorder(new EmptyBorder(0, 0, 0, 0));
    builder.setOpaque(false);/*from  w w  w  . j ava 2s .co  m*/

    edClusterName = createText("NewCluster");
    spTotalNodes = createSpinner(new SpinnerNumberModel(4, 1, 13, 1), true, true);
    spRootNodes = createSpinner(new SpinnerNumberModel(2, 0, 4, 1), true, true);
    spFieldNodes = createSpinner(new SpinnerNumberModel(2, 0, 4, 1), false, false);
    ChangeListener listener = new ChangeListener() {

        public void stateChanged(ChangeEvent e) {

            if (spinnerChanging) {
                return;
            }
            spinnerChanging = true;
            try {
                JSpinner spinner = (JSpinner) e.getSource();
                SpinnerNumberModel totalModel = (SpinnerNumberModel) spTotalNodes.getModel();
                SpinnerNumberModel fieldModel = (SpinnerNumberModel) spFieldNodes.getModel();
                SpinnerNumberModel rootModel = (SpinnerNumberModel) spRootNodes.getModel();
                Integer totalValue = (Integer) totalModel.getValue();
                if (spinner == spTotalNodes) {
                    rootModel.setMaximum(totalValue);
                    if (totalValue < (Integer) rootModel.getValue()) {
                        rootModel.setValue(totalValue);
                    }
                }
                fieldModel.setValue(totalValue - (Integer) rootModel.getValue());
                fieldModel.setMaximum(totalModel.getMaximum());
            } finally {
                spinnerChanging = false;
            }
        }

    };
    spTotalNodes.addChangeListener(listener);
    spRootNodes.addChangeListener(listener);
    ckIsomorphFree = createCheckBox("isomorph-free cluster");
    cbColorScheme = createComboBox(new String[] { DEFVAL_MONOCHROMATIC, DEFVAL_MULTICOLORED }, true);
    builder.append("Cluster &Name:", buildGrid(edClusterName));
    builder.append("&Total Nodes:", buildGrid(spTotalNodes));
    builder.append("&Root Nodes:", buildGrid(spRootNodes));
    builder.append("Field Nodes:", buildGrid(spFieldNodes));
    builder.append("Colors Sc&heme:", buildGrid(cbColorScheme));
    builder.append("&Isomorphism:", buildButtonRow(ckIsomorphFree, true, true, false, false));
    return builder.getPanel();
}

From source file:eu.crisis_economics.abm.dashboard.Page_Parameters.java

License:Open Source License

private void appendMinimumWidthHintToPresentation(final DefaultFormBuilder formBuilder, final int widthInPt) {
    formBuilder.append(new JLabel("<html><div style=\"margin: 0pt; display: block; width:" + widthInPt
            + "pt; height:0pt\"></div></html>") {
        private static final long serialVersionUID = -722208290456978697L;
    }, 3);/*  ww  w  . ja v a  2s.  c  om*/
}

From source file:eu.crisis_economics.abm.dashboard.Page_Parameters.java

License:Open Source License

private void appendTextToPresentation(DefaultFormBuilder formBuilder, final String text) {
    if (text == null || text.isEmpty())
        return;//  ww w .  ja  v a2s  .  co m
    /*
     * Subclass JLabel to lie about the with of the component. We understate the preferred 
     * width to avoid that this component influences the width of the columns. It is unclear 
     * why we need to use colspan = 3 here.
     */
    formBuilder.append(new JLabel("<html><div style=\"margin-bottom: 8pt; margin-left: 4pt; margin-top: 12pt;"
            + "line-height:1.5; color:#555555\"><i>" + text.replace("\n", "<br/>") + "</i></div></html>") {
        private static final long serialVersionUID = 1L;

        @Override
        public Dimension getPreferredSize() {
            Dimension preferredSize = super.getPreferredSize();
            return new Dimension(10, preferredSize.height);
        }
    }, 3);
}

From source file:eu.crisis_economics.abm.dashboard.Page_Parameters.java

License:Open Source License

private void appendImageToPresentation(DefaultFormBuilder formBuilder, final String imageFilename) {
    if (imageFilename == null || imageFilename.isEmpty())
        return;//from ww w.j  av a 2s.c om
    ImageIcon icon = null;
    try {
        final ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
        final InputStream imageStream = classLoader.getResourceAsStream(imageFilename);
        final Image image = ImageIO.read(imageStream);
        icon = new ImageIcon(image);
    } catch (final IOException e) {
        icon = new ImageIcon(imageFilename);
    }

    final JLabel component = new JLabel("<html><div style=\"margin: 8pt\"></div></html>");
    component.setIcon(icon);
    formBuilder.append(component, 3);
}

From source file:eu.crisis_economics.abm.dashboard.Page_Parameters.java

License:Open Source License

private void appendHeaderTextToPresentation(DefaultFormBuilder formBuilder, final String text) {
    if (text == null || text.isEmpty())
        return;/*from w w  w  . ja v a  2 s .com*/

    formBuilder.append(new JLabel("<html><div style=\"margin-bottom: 8pt; margin-left: 4pt; margin-top: 12pt;"
            + " display: block; color:#666666; display: block\"><i>" + text.replace("\n", "<br/>")
            + "</i></div></html>") {
        private static final long serialVersionUID = 1L;

        @Override
        public Dimension getPreferredSize() {
            Dimension preferredSize = super.getPreferredSize();
            return new Dimension(10, preferredSize.height);
        }
    }, 3);
}

From source file:eu.crisis_economics.abm.dashboard.Page_Parameters.java

License:Open Source License

private void appendVerticalSpaceToPresentation(DefaultFormBuilder formBuilder) {
    formBuilder.append("", new JPanel());
}

From source file:eu.crisis_economics.abm.dashboard.Page_Parameters.java

License:Open Source License

private void appendCheckBoxFieldToPresentation(DefaultFormBuilder formBuilder, final String fieldText,
        final JCheckBox checkBox) {
    formBuilder.append("<html><div style=\"margin-bottom: 4pt; margin-top: 6pt; margin-left: 4pt\">" + fieldText
            + "</div></html>", checkBox);
}