Example usage for com.jgoodies.forms.builder PanelBuilder nextColumn

List of usage examples for com.jgoodies.forms.builder PanelBuilder nextColumn

Introduction

In this page you can find the example usage for com.jgoodies.forms.builder PanelBuilder nextColumn.

Prototype

public final void nextColumn(int columns) 

Source Link

Document

Moves to the next column.

Usage

From source file:de.htwk_leipzig.naoteam.motion.editor.gui.action.ActionCreateCalcKeyFrame.java

License:Open Source License

private void createUI(final NaoFrame[] frames, final int srcPos, final int toPos) {
    final JDialog dialog = new JDialog(app.getMainWindow(), "Select Frame", true);
    dialog.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);

    final JSlider slider = new JSlider(0, frames.length - 1);
    slider.setValue(0);/*  ww w . j  a  v  a 2  s . co  m*/
    slider.addChangeListener(new ChangeListener() {

        public void stateChanged(ChangeEvent e) {
            try {
                comm.playFrame(frames[slider.getValue()]);
            } catch (Exception e1) {
                e1.printStackTrace();
            }
        }
    });

    final JButton btnOk = new JButton("Ok");
    btnOk.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            app.getFrameList().add(toPos, frames[slider.getValue()]);
            dialog.setVisible(false);
            dialog.dispose();
        }
    });

    final JButton btnCancel = new JButton("Cancel");
    btnCancel.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            dialog.setVisible(false);
            dialog.dispose();
        }
    });

    FormLayout layout = new FormLayout("left:pref, $lcgap, fill:640px:grow", "pref, $lgap, pref");
    PanelBuilder builder = new PanelBuilder(layout /*, new FormDebugPanel() */);
    builder.addLabel("Frame:");
    builder.nextColumn(2);
    builder.add(slider);
    builder.nextRow(2);
    builder.add(ButtonBarFactory.buildOKCancelBar(btnOk, btnCancel));
    builder.setDefaultDialogBorder();

    dialog.add(builder.getPanel());
    dialog.pack();

    final Dimension paneSize = dialog.getSize();
    final Dimension screenSize = dialog.getToolkit().getScreenSize();
    dialog.setLocation((screenSize.width - paneSize.width) / 2,
            (int) ((screenSize.height - paneSize.height) * 0.45));

    dialog.setVisible(true);
}

From source file:edu.udo.scaffoldhunter.gui.dataimport.ImportDialog.java

License:Open Source License

private JPanel buildDatasetNamePanel() {
    PanelBuilder builder = new PanelBuilder(
            new FormLayout("p,3dlu, p:g(0.5),10dlu,p,3dlu,p:g(1.0)", "max(p;60dlu)"));

    builder.addLabel(_("DataImport.DatasetName"));
    builder.nextColumn(2);
    datasetName = new JTextField();
    datasetName.setDocument(importProcess.getDatasetNameDocument());
    datasetName.getDocument().addDocumentListener(this);
    datasetName.setColumns(20);/*  w ww  .j  a  va  2s . com*/
    SelectAllOnFocus.addTo(datasetName);
    builder.add(datasetName);
    builder.nextColumn(2);
    builder.addLabel(_("DataImport.DatasetDescription"));
    builder.nextColumn(2);
    datasetDescription = new JTextArea(importProcess.getDatasetDescriptionDocument());
    datasetDescription.setLineWrap(true);
    /*
     * set preferredSize und minimumSize explicitly. Otherwise the textarea
     * will grow but won't shrink again as the preferred size would have
     * grown
     */
    JScrollPane p = new JScrollPane(datasetDescription);
    p.setMinimumSize(p.getMinimumSize());
    p.setPreferredSize(p.getPreferredSize());
    builder.add(p, CC.xy(7, 1, "f, f"));

    return builder.getPanel();
}

From source file:org.cds06.speleograph.graph.ValueAxisEditor.java

License:Open Source License

/**
 * {@inheritDoc}//from   ww  w . j a  v a2s .  com
 */
@Override
protected void setup() {
    PanelBuilder builder = new PanelBuilder(getFormLayout(), getPanel());
    CellConstraints cc = new CellConstraints();

    Dimension d = maxModifier.getPreferredSize();
    maxModifier.setPreferredSize(new Dimension(d.width + 50, d.height));
    d = minModifier.getPreferredSize();
    minModifier.setPreferredSize(new Dimension(d.width + 50, d.height));

    {
        builder.add(new JLabel("Titre de l'axe :"));
        final JTextField axisTitleField = new JTextField();
        axisTitleField.setText(axis.getLabel());
        builder.nextColumn(2);
        builder.add(axisTitleField, cc.xyw(3, 1, 5));
        addListenerOnSuccess(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                String text = axisTitleField.getText();
                if (text != null && !text.equals(""))
                    axis.setLabel(axisTitleField.getText());
            }
        });
    }

    {
        builder.nextLine(2);
        builder.add(new JLabel("Valeur min. :"));
        builder.nextColumn(2);
        builder.add(lowField);
        addListenerOnSuccess(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                try {
                    Double value = Double.valueOf(lowField.getText());
                    if (isApply) {
                        axis.setLowerBound(value);
                    } else if (isCancel && oldLowValue != null)
                        axis.setLowerBound(oldLowValue);
                } catch (NumberFormatException e1) {
                    canClose = false;
                    JOptionPane.showMessageDialog(ValueAxisEditor.this.getParent(),
                            "'" + lowField.getText() + "' n'est pas un nombre", "Erreur",
                            JOptionPane.ERROR_MESSAGE);
                }
            }
        });
        builder.nextColumn(2);
        builder.add(new JLabel("+"));
        builder.nextColumn(2);
        builder.add(minModifier);
    }

    {
        builder.nextLine(2);
        builder.add(new JLabel("Valeur max. :"));
        builder.nextColumn(2);
        builder.add(maxField);
        addListenerOnSuccess(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                try {
                    Double value = Double.valueOf(maxField.getText());
                    if (isApply) {
                        axis.setUpperBound(value);
                    } else if (isCancel && oldHighValue != null)
                        axis.setUpperBound(oldHighValue);
                } catch (NumberFormatException e1) {
                    canClose = false;
                    JOptionPane.showMessageDialog(ValueAxisEditor.this.getParent(),
                            "'" + maxField.getText() + "' n'est pas un nombre", "Erreur",
                            JOptionPane.ERROR_MESSAGE);
                }
            }
        });
        builder.nextColumn(2);
        builder.add(new JLabel("+"));
        builder.nextColumn(2);
        builder.add(maxModifier);
    }

    {
        builder.nextLine(2);
        builder.add(new JLabel("<HTML><strong>Sries associes  l'axe</strong></HTML>"), cc.xyw(1, 7, 3));
        String linkedSeries = "<html><ul>";
        for (Series series : Series.getInstances()) {
            if (series.getAxis().equals(axis))
                linkedSeries += "<li>" + series.toString(true) + "</li>";
        }
        linkedSeries += "</ul></html>";

        builder.add(new JLabel(linkedSeries), cc.xyw(1, 8, 3));
    }

    JPanel buttonPanel = new JPanel();
    ButtonBarBuilder buttonBuilder = new ButtonBarBuilder(buttonPanel);
    buttonBuilder.addGlue();
    {
        buttonBuilder.addButton(new AbstractAction() {

            {
                putValue(NAME, I18nSupport.translate("cancel"));
            }

            @Override
            public void actionPerformed(ActionEvent e) {
                isCancel = true;
                isApply = false;
                canClose = true;
                validateForm();
            }
        });
    }

    {
        buttonBuilder.addButton(new AbstractAction() {

            {
                putValue(NAME, I18nSupport.translate("apply"));
            }

            @Override
            public void actionPerformed(ActionEvent e) {
                isCancel = false;
                isApply = true;
                canClose = false;
                validateForm();
            }
        });
    }

    {
        buttonBuilder.addButton(new AbstractAction() {

            {
                putValue(NAME, I18nSupport.translate("ok"));
            }

            @Override
            public void actionPerformed(ActionEvent e) {
                isCancel = false;
                isApply = true;
                canClose = true;
                validateForm();
            }
        });
    }

    buttonBuilder.build();
    buttonPanel.setVisible(true);
    builder.add(buttonBuilder.getPanel(), cc.xyw(1, 10, 10));

    {
        translateSlider.setToolTipText("Translation des axes");
        translateSlider.addChangeListener(new ChangeListener() {
            @Override
            public void stateChanged(ChangeEvent e) {
                int maxValue = -translateSlider.getValue();
                maxModifier.setText(String.valueOf(maxValue));
                int lowValue = -translateSlider.getValue();
                minModifier.setText(String.valueOf(lowValue));
            }
        });
        builder.add(translateSlider, cc.xywh(9, 1, 1, 8));
    }
    {
        homotSlider.setToolTipText("Homothtie sur les axes");
        homotSlider.addChangeListener(new ChangeListener() {
            @Override
            public void stateChanged(ChangeEvent e) {
                int maxValue = -homotSlider.getValue();
                maxModifier.setText(String.valueOf(maxValue));
                int lowValue = homotSlider.getValue();
                minModifier.setText(String.valueOf(lowValue));
            }
        });
        builder.add(homotSlider, cc.xywh(10, 1, 1, 8));
    }

    builder.build();

    getPanel().setBorder(BorderFactory.createEmptyBorder(2, 2, 2, 2));

    addListenerOnSuccess(new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent e) {
            if (canClose)
                setVisible(false);
        }
    });
}

From source file:se.streamsource.streamflow.client.ui.administration.surface.AccessPointView.java

License:Apache License

public AccessPointView(@Service ApplicationContext appContext, @Uses final AccessPointModel model,
        @Structure Module module) {/*  w w  w  . ja  v a 2s. c om*/
    this.model = model;
    this.labels = module.objectBuilderFactory().newObjectBuilder(CaseLabelsView.class)
            .use(model.getLabelsModel()).newInstance();

    setLayout(new BorderLayout());
    setActionMap(appContext.getActionMap(this));

    RefreshComponents refreshComponents = new RefreshComponents();
    model.addObserver(refreshComponents);

    actionBinder = module.objectBuilderFactory().newObjectBuilder(ActionBinder.class).use(getActionMap())
            .newInstance();
    valueBinder = module.objectBuilderFactory().newObject(ValueBinder.class);
    actionBinder.setResourceMap(appContext.getResourceMap(getClass()));
    LinkValueConverter linkValueConverter = new LinkValueConverter();

    FormLayout layout = new FormLayout("90dlu, 5dlu, 150:grow",
            "pref, 2dlu, pref, 2dlu, pref, 2dlu, pref, 2dlu, pref, 2dlu, "
                    + "pref, 12dlu, pref, 2dlu, pref, 12dlu, pref, 2dlu, default:grow");

    JPanel panel = new JPanel(layout);
    DefaultFormBuilder builder = new DefaultFormBuilder(layout, panel);
    builder.setBorder(Borders.createEmptyBorder(Sizes.DLUY8, Sizes.DLUX4, Sizes.DLUY2, Sizes.DLUX8));

    CellConstraints cc = new CellConstraints();

    MacOsUIWrapper.convertAccelerators(appContext.getActionMap(AccessPointView.class, this));

    selectedProject.setFont(selectedProject.getFont().deriveFont(Font.BOLD));

    selectedCaseType.setFont(selectedCaseType.getFont().deriveFont(Font.BOLD));

    selectedForm.setFont(selectedForm.getFont().deriveFont(Font.BOLD));

    selectedTemplate.getLabel().setFont(selectedTemplate.getLabel().getFont().deriveFont(Font.BOLD));

    ActionMap am = getActionMap();

    // Select project
    javax.swing.Action projectAction = am.get("project");
    projectButton = new StreamflowButton(projectAction);
    projectButton.registerKeyboardAction(projectAction,
            (KeyStroke) projectAction.getValue(javax.swing.Action.ACCELERATOR_KEY),
            JComponent.WHEN_IN_FOCUSED_WINDOW);
    projectButton.setHorizontalAlignment(SwingConstants.LEFT);

    builder.add(projectButton, cc.xy(1, 1));

    builder.add(valueBinder.bind("project", selectedProject, linkValueConverter), new CellConstraints(3, 1, 1,
            1, CellConstraints.LEFT, CellConstraints.CENTER, new Insets(5, 0, 0, 0)));

    // Select case type
    javax.swing.Action caseTypeAction = am.get("casetype");
    caseTypeButton = new StreamflowButton(caseTypeAction);
    caseTypeButton.registerKeyboardAction(caseTypeAction,
            (KeyStroke) caseTypeAction.getValue(javax.swing.Action.ACCELERATOR_KEY),
            JComponent.WHEN_IN_FOCUSED_WINDOW);
    caseTypeButton.setHorizontalAlignment(SwingConstants.LEFT);

    builder.add(caseTypeButton, cc.xy(1, 3));

    builder.add(valueBinder.bind("caseType", selectedCaseType, linkValueConverter), new CellConstraints(3, 3, 1,
            1, CellConstraints.LEFT, CellConstraints.CENTER, new Insets(5, 0, 0, 0)));

    // Select labels
    javax.swing.Action labelAction = labels.getActionMap().get("addLabel");
    labelButton = new StreamflowButton(labelAction);

    labelButton.registerKeyboardAction(labelAction,
            (KeyStroke) labelAction.getValue(javax.swing.Action.ACCELERATOR_KEY),
            JComponent.WHEN_IN_FOCUSED_WINDOW);

    labelButton.setHorizontalAlignment(SwingConstants.LEFT);

    builder.add(labelButton, cc.xy(1, 5, CellConstraints.FILL, CellConstraints.TOP));

    labels.setPreferredSize(new Dimension(500, 60));
    labels.setTextBold(true);
    labels.setButtonRelation(labelButton);
    builder.add(labels,
            new CellConstraints(3, 5, 1, 1, CellConstraints.LEFT, CellConstraints.TOP, new Insets(5, 0, 0, 0)));

    // Select form
    javax.swing.Action formAction = am.get("form");
    formButton = new StreamflowButton(formAction);

    formButton.registerKeyboardAction(formAction,
            (KeyStroke) formAction.getValue(javax.swing.Action.ACCELERATOR_KEY),
            JComponent.WHEN_IN_FOCUSED_WINDOW);

    formButton.setHorizontalAlignment(SwingConstants.LEFT);

    builder.add(formButton, cc.xy(1, 7, CellConstraints.FILL, CellConstraints.TOP));

    // Open replace selection field value editor
    javax.swing.Action replaceSelectionFieldValueAction = am.get("openReplaceSelectionFieldValueEditor");
    replaceSelectionFieldValueEditButton = new StreamflowButton(replaceSelectionFieldValueAction);

    /*replaceSelectionFieldValueEditButton.registerKeyboardAction( replaceSelectionFieldValueAction, (KeyStroke) replaceSelectionFieldValueAction
       .getValue( javax.swing.Action.ACCELERATOR_KEY ),
       JComponent.WHEN_IN_FOCUSED_WINDOW ); */

    replaceSelectionFieldValueEditButton.setHorizontalAlignment(SwingConstants.RIGHT);
    PanelBuilder panelBuilder = new PanelBuilder(new FormLayout("150dlu,5dlu,250:grow", "pref"));
    panelBuilder.add(valueBinder.bind("form", selectedForm, linkValueConverter));
    panelBuilder.nextColumn(2);
    panelBuilder.add(replaceSelectionFieldValueEditButton, new CellConstraints(3, 1, 1, 1,
            CellConstraints.RIGHT, CellConstraints.CENTER, new Insets(0, 0, 0, 0)));
    //panelBuilder.setBorder(BorderFactory.createLineBorder(Color.RED));

    builder.add(panelBuilder.getPanel()/*valueBinder.bind( "form", selectedForm, linkValueConverter )*/,
            new CellConstraints(3, 7, 1, 1, CellConstraints.LEFT, CellConstraints.CENTER,
                    new Insets(5, 0, 0, 0)));

    // Select template
    javax.swing.Action templateAction = am.get("template");
    templateButton = new StreamflowButton(templateAction);

    templateButton.registerKeyboardAction(templateAction,
            (KeyStroke) templateAction.getValue(javax.swing.Action.ACCELERATOR_KEY),
            JComponent.WHEN_IN_FOCUSED_WINDOW);

    templateButton.setHorizontalAlignment(SwingConstants.LEFT);

    builder.add(templateButton, cc.xy(1, 9, CellConstraints.FILL, CellConstraints.TOP));

    builder.add(valueBinder.bind("template", actionBinder.bind("removeTemplate", selectedTemplate)),
            new CellConstraints(3, 9, 1, 1, CellConstraints.LEFT, CellConstraints.CENTER,
                    new Insets(3, 0, 0, 0)));

    builder.add(new JLabel(text(AdministrationResources.cookieExpirationHours)),
            cc.xy(1, 13, CellConstraints.LEFT, CellConstraints.BOTTOM));
    builder.add(
            valueBinder.bind("cookieExpirationHours",
                    actionBinder.bind("changeCookieExpirationHours", cookieExpiration = new JTextField())),
            new CellConstraints(3, 13, 1, 1, CellConstraints.FILL, CellConstraints.BOTTOM,
                    new Insets(3, 0, 0, 0)));

    mailSelectionLabel.setText(text(AdministrationResources.changeMailSelectionMessage));
    mailSelectionLabel.setToolTipText(text(AdministrationResources.changeMailSelectionMessageHint));
    builder.add(mailSelectionLabel, cc.xy(1, 15, CellConstraints.LEFT, CellConstraints.BOTTOM));

    builder.add(
            valueBinder.bind("mailSelectionMessage",
                    actionBinder.bind("changeMailSelectionMessage", mailSelectionField)),
            new CellConstraints(3, 15, 1, 1, CellConstraints.FILL, CellConstraints.BOTTOM,
                    new Insets(3, 0, 0, 0)));

    PanelBuilder signPanel = new PanelBuilder(new FormLayout("180dlu, 15dlu, 180dlu", "default:grow"));
    CellConstraints signPanelCc = new CellConstraints();

    PanelBuilder primarySignPanel = new PanelBuilder(new FormLayout("180dlu",
            "pref, 2dlu, pref, 2dlu, pref, 2dlu, pref, 2dlu, pref, 2dlu, pref, 2dlu, default:grow"));
    CellConstraints primaryCc = new CellConstraints();

    primarySignPanel.addSeparator(text(AdministrationResources.signature_1), primaryCc.xy(1, 1));

    primarySignPanel.add(valueBinder.bind("primarysign",
            actionBinder.bind("setSignActive1",
                    signActive1 = new JCheckBox(text(AdministrationResources.active))),
            new ValueBinder.Converter<RequiredSignatureValue, Boolean>() {
                public Boolean toComponent(RequiredSignatureValue value) {
                    return value != null ? value.active().get() : Boolean.FALSE;
                }
            }), primaryCc.xy(1, 3));

    primarySignPanel.addLabel(text(AdministrationResources.name_label), primaryCc.xy(1, 5));

    primarySignPanel.add(
            valueBinder.bind("primarysign", actionBinder.bind("setSignName1", signName1 = new JTextField()),
                    new ValueBinder.Converter<RequiredSignatureValue, String>() {
                        public String toComponent(RequiredSignatureValue value) {
                            return value != null ? value.name().get() : "";
                        }
                    }),
            primaryCc.xy(1, 7));
    refreshComponents.enabledOn("updateprimarysign", signName1);

    primarySignPanel.add(new JLabel(text(AdministrationResources.description_label)), primaryCc.xy(1, 9));

    primarySignPanel.add(valueBinder.bind("primarysign",
            actionBinder.bind("setSignDescription1", signDescription1 = new JTextField()),
            new ValueBinder.Converter<RequiredSignatureValue, String>() {
                public String toComponent(RequiredSignatureValue value) {
                    return value != null ? value.description().get() : "";
                }
            }), primaryCc.xy(1, 11));
    refreshComponents.enabledOn("updateprimarysign", signDescription1);

    signPanel.add(primarySignPanel.getPanel(), signPanelCc.xy(1, 1, CellConstraints.LEFT, CellConstraints.TOP));

    PanelBuilder secondarySignPanel = new PanelBuilder(new FormLayout("180dlu",
            "pref, 2dlu, pref, 2dlu, pref, 2dlu, pref, 2dlu, pref, 2dlu, pref, 2dlu, pref, 2dlu, pref, 12dlu, pref, 2dlu, pref, 2dlu, default:grow"));

    CellConstraints secondaryCc = new CellConstraints();

    secondarySignPanel.addSeparator(text(AdministrationResources.signature_2), secondaryCc.xy(1, 1));

    PanelBuilder secondaryOptionsPanel = new PanelBuilder(new FormLayout("70dlu,5dlu,70dlu,pref:grow", "pref"));
    secondaryOptionsPanel.add(valueBinder.bind("secondarysign",
            actionBinder.bind("setSignActive2",
                    signActive2 = new JCheckBox(text(AdministrationResources.active))),
            new ValueBinder.Converter<RequiredSignatureValue, Boolean>() {
                public Boolean toComponent(RequiredSignatureValue value) {
                    return value != null ? value.active().get() : Boolean.FALSE;
                }
            }), secondaryCc.xy(1, 1));
    refreshComponents.enabledOn("updatesecondarysignactive", signActive2);

    secondaryOptionsPanel.add(valueBinder.bind("secondarysign",
            actionBinder.bind("setSecondMandatory",
                    mandatory2 = new JCheckBox(text(AdministrationResources.mandatory))),
            new ValueBinder.Converter<RequiredSignatureValue, Boolean>() {
                public Boolean toComponent(RequiredSignatureValue value) {
                    return value != null ? value.mandatory().get() : Boolean.FALSE;
                }
            }), secondaryCc.xy(3, 1));
    refreshComponents.enabledOn("updatesecondarysign", mandatory2);

    secondarySignPanel.add(secondaryOptionsPanel.getPanel(), secondaryCc.xy(1, 3));

    secondarySignPanel.add(new JLabel(text(AdministrationResources.name_label)), secondaryCc.xy(1, 5));

    secondarySignPanel.add(
            valueBinder.bind("secondarysign", actionBinder.bind("setSignName2", signName2 = new JTextField()),
                    new ValueBinder.Converter<RequiredSignatureValue, String>() {
                        public String toComponent(RequiredSignatureValue value) {
                            return value != null ? value.name().get() : "";
                        }
                    }),
            secondaryCc.xy(1, 7));
    refreshComponents.enabledOn("updatesecondarysign", signName2);

    secondarySignPanel.add(new JLabel(text(AdministrationResources.description_label)), secondaryCc.xy(1, 9));

    secondarySignPanel.add(valueBinder.bind("secondarysign",
            actionBinder.bind("setSignDescription2", signDescription2 = new JTextField()),
            new ValueBinder.Converter<RequiredSignatureValue, String>() {
                public String toComponent(RequiredSignatureValue value) {
                    return value != null ? value.description().get() : "";
                }
            }), secondaryCc.xy(1, 11));
    refreshComponents.enabledOn("updatesecondarysign", signDescription2);

    // Select form
    javax.swing.Action form2Action = am.get("setSecondForm");
    form2Button = new StreamflowButton(form2Action);

    form2Button.registerKeyboardAction(form2Action,
            (KeyStroke) form2Action.getValue(javax.swing.Action.ACCELERATOR_KEY),
            JComponent.WHEN_IN_FOCUSED_WINDOW);

    form2Button.setHorizontalAlignment(SwingConstants.LEFT);
    refreshComponents.enabledOn("updatesecondarysign", form2Button);

    PanelBuilder form2ButtonPanel = new PanelBuilder(new FormLayout("70dlu, 5dlu, 150dlu:grow", "pref"));
    CellConstraints form2ButtonPanelCc = new CellConstraints();

    form2ButtonPanel.add(form2Button, form2ButtonPanelCc.xy(1, 1, CellConstraints.FILL, CellConstraints.TOP));

    form2ButtonPanel.add(valueBinder.bind("secondarysign", selectedForm2 = new JLabel(),
            new ValueBinder.Converter<RequiredSignatureValue, String>() {
                public String toComponent(RequiredSignatureValue value) {
                    return value != null ? value.formdescription().get() : "";
                }
            }), form2ButtonPanelCc.xy(3, 1, CellConstraints.LEFT, CellConstraints.CENTER));

    secondarySignPanel.add(form2ButtonPanel.getPanel(), secondaryCc.xy(1, 13));

    secondarySignPanel.add(new JLabel(text(AdministrationResources.question_label)), secondaryCc.xy(1, 17));

    secondarySignPanel.add(valueBinder.bind("secondarysign",
            actionBinder.bind("setQuestion", formQuestion2 = new JTextField()),
            new ValueBinder.Converter<RequiredSignatureValue, String>() {
                public String toComponent(RequiredSignatureValue value) {
                    return value != null ? value.question().get() : "";
                }
            }), secondaryCc.xy(1, 19));
    refreshComponents.enabledOn("updatesecondarysign", formQuestion2);

    signPanel.add(secondarySignPanel.getPanel(),
            signPanelCc.xy(3, 1, CellConstraints.LEFT, CellConstraints.TOP));

    builder.add(signPanel.getPanel(), new CellConstraints(1, 17, 3, 1, CellConstraints.FILL,
            CellConstraints.FILL, new Insets(0, 0, 0, 0)));

    JPanel templatePanel = new JPanel();
    templatePanel.setVisible(false);
    FormLayout templateFormLayout = new FormLayout("75dlu, 5dlu, fill:p:grow", "pref, pref, fill:p:grow, pref");
    DefaultFormBuilder templateFormBuilder = new DefaultFormBuilder(templateFormLayout, templatePanel);
    templateFormBuilder.addSeparator(text(AdministrationResources.emailTemplates));
    templateFormBuilder.nextLine();
    templateFormBuilder.append(text(AdministrationResources.subject),
            valueBinder.bind("subject", actionBinder.bind("changeSubject", subject = new JTextField())));
    templateFormBuilder.nextLine();
    templateFormBuilder.append(new JScrollPane(emailTemplateList));
    templateFormBuilder.append(new JScrollPane(actionBinder.bind("save", emailTemplateText)));
    templateFormBuilder.nextLine();

    emailTemplateList.addListSelectionListener(new ListSelectionListener() {
        public void valueChanged(ListSelectionEvent e) {
            if (!e.getValueIsAdjusting()) {
                if (emailTemplateList.getSelectedIndex() != -1) {
                    emailTemplateText.setText(model.getAccessPointValue().messages().get()
                            .get(emailTemplateList.getSelectedValue()));
                }
            }
        }
    });

    refreshComponents.visibleOn("updatesecondarysign", templatePanel);

    builder.add(templatePanel, new CellConstraints(1, 19, 3, 1, CellConstraints.FILL, CellConstraints.FILL,
            new Insets(0, 0, 0, 0)));
    add(new JScrollPane(panel), BorderLayout.CENTER);

    new RefreshWhenShowing(this, this);
}

From source file:se.streamsource.streamflow.client.ui.workspace.cases.conversations.MessageDraftAttachmentsView.java

License:Apache License

public MessageDraftAttachmentsView(@Service ApplicationContext context, @Uses AttachmentsModel model) {
    this.model = model;
    am = context.getActionMap(this);
    setLayout(new BorderLayout());

    FormLayout formLayout = new FormLayout("pref,4dlu,pref:grow", "40dlu");
    PanelBuilder builder = new PanelBuilder(formLayout);

    StreamflowButton addButton = new StreamflowButton(am.get("add"));
    builder.add(addButton);/*  w w  w  . j  a  v a 2 s . c  om*/
    builder.nextColumn(2);

    attachmentsPanel = new JPanel(new WrapLayout(FlowLayout.LEFT));

    JScrollPane scroll = new JScrollPane();
    scroll.setBorder(BorderFactory.createEmptyBorder());
    scroll.setViewportView(attachmentsPanel);

    builder.add(scroll);

    add(builder.getPanel(), BorderLayout.CENTER);
    new RefreshWhenShowing(this, this);
}

From source file:se.streamsource.streamflow.client.ui.workspace.cases.conversations.MessageDraftView.java

License:Apache License

public MessageDraftView(@Service final ApplicationContext context, @Structure Module module,
        @Uses MessageDraftModel model) {
    this.model = model;
    setActionMap(context.getActionMap(this));
    setLayout(new BorderLayout());
    setPreferredSize(new Dimension(100, 250));

    // NEWMESSAGE
    JScrollPane messageScroll = new JScrollPane();

    newMessage = new JTextPane();
    newMessage.setContentType("text/plain");
    newMessage.setEditable(true);/*from   ww  w.  j a  v a2 s.c o  m*/
    messageScroll.getViewport().add(newMessage);

    valueBinder = module.objectBuilderFactory().newObject(ValueBinder.class);
    valueBinder.bind("string", newMessage);

    FormLayout formLayout = new FormLayout("fill:pref:grow, 4dlu, min", "pref");
    PanelBuilder panelBuilder = new PanelBuilder(formLayout);

    attachmentsView = module.objectBuilderFactory().newObjectBuilder(MessageDraftAttachmentsView.class)
            .use(model.newMessageDraftAttachmentsModel()).newInstance();

    panelBuilder.add(attachmentsView);
    panelBuilder.nextColumn(2);

    JPanel buttonPanel = new JPanel(new FlowLayout(FlowLayout.RIGHT));
    // fetch the send action as proxy action from a parent container
    javax.swing.Action createMessageAction = context.getActionMap().get("createMessage");
    StreamflowButton createMessage = new StreamflowButton(createMessageAction);
    createMessage.registerKeyboardAction(createMessageAction,
            (KeyStroke) createMessageAction.getValue(javax.swing.Action.ACCELERATOR_KEY),
            JComponent.WHEN_IN_FOCUSED_WINDOW);

    javax.swing.Action cancelAction = context.getActionMap().get("cancelNewMessage");
    StreamflowButton cancel = new StreamflowButton(cancelAction);

    buttonPanel.add(createMessage);
    buttonPanel.add(cancel);

    panelBuilder.add(buttonPanel);

    add(messageScroll, BorderLayout.CENTER);
    add(panelBuilder.getPanel(), BorderLayout.SOUTH);

    new ActionBinder(getActionMap()).bind("changeMessage", newMessage);

    new RefreshWhenShowing(this, this);
}