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

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

Introduction

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

Prototype

public JComponent appendSeparator(String text) 

Source Link

Document

Adds a separator with the given text that spans all columns.

Usage

From source file:org.mpn.contacts.PanelBuilderTest.java

License:Open Source License

public JPanel build() {
    FormLayout layout = new FormLayout("right:max(40dlu;pref), 3dlu, 80dlu, 7dlu, " // 1st major colum
            + "right:max(40dlu;pref), 3dlu, 80dlu", // 2nd major column
            ""); // add rows dynamically
    DefaultFormBuilder builder = new DefaultFormBuilder(layout);
    builder.setDefaultDialogBorder();// ww w .  java 2  s.c  om

    builder.appendSeparator("Flange");

    JLabel identifierField = new JLabel("identifierField");
    builder.append("Identifier", identifierField);
    builder.nextLine();

    builder.append("PTI [kW]", new JTextField());
    builder.append("Power [kW]", new JTextField());

    builder.append("s [mm]", new JTextField());
    builder.nextLine();

    builder.appendSeparator("Diameters");

    builder.append("da [mm]", new JTextField());
    builder.append("di [mm]", new JTextField());

    builder.append("da2 [mm]", new JTextField());
    builder.append("di2 [mm]", new JTextField());

    builder.append("R [mm]", new JTextField());
    builder.append("D [mm]", new JTextField());

    builder.appendSeparator("Criteria");

    builder.append("Location", new JComboBox(new Object[] { "a1", "a2", "a3" }));
    builder.append("k-factor", new JTextField());

    builder.appendSeparator("Bolts");

    builder.append("Material", new JComboBox(new Object[] { "a1", "a2", "a3" }));
    builder.nextLine();

    builder.append("Numbers", new JTextField());
    builder.nextLine();

    builder.append("ds [mm]", new JTextField());

    return builder.getPanel();
}

From source file:org.mpn.contacts.PanelBuilderTest.java

License:Open Source License

public JComponent buildPanel() {
    //        initComponents();
    JLabel name1Field = new JLabel("name1Field");
    JTextPane comment1Area = new JTextPane();
    JTextPane comment2Area = new JTextPane();
    JTextPane comment3Area = new JTextPane();
    JTextField name2Field = new JTextField();
    JTextField name3Field = new JTextField();

    FormLayout layout = new FormLayout("right:pref, 3dlu, default:grow", "");
    DefaultFormBuilder formBuilder = new DefaultFormBuilder(layout);
    formBuilder.setDefaultDialogBorder();
    formBuilder.setRowGroupingEnabled(true);

    CellConstraints cc = new CellConstraints();

    // In this approach, we add a gap and a custom row.
    // The advantage of this approach is, that we can express
    // the row spec and comment area cell constraints freely.
    // The disadvantage is the misalignment of the leading label.
    // Also the row's height may be inconsistent with other rows.
    formBuilder.appendSeparator("Single Custom Row");
    formBuilder.append("Name", name1Field);
    formBuilder.appendRow(formBuilder.getLineGapSpec());
    formBuilder.appendRow(new RowSpec("top:31dlu")); // Assumes line is 14, gap is 3
    formBuilder.nextLine(2);//  w w w . j  ava2s.c o  m
    formBuilder.append("Comment");
    formBuilder.add(new JScrollPane(comment1Area),
            cc.xy(formBuilder.getColumn(), formBuilder.getRow(), "fill, fill"));
    formBuilder.nextLine();

    // In this approach, we append a standard row with gap before it.
    // The advantage is, that the leading label is aligned well.
    // The disadvantage is that the comment area now spans
    // multiple cells and is slightly less flexible.
    // Also the row's height may be inconsistent with other rows.
    formBuilder.appendSeparator("Standard + Custom Row");
    formBuilder.append("Name", name2Field);
    formBuilder.append("Comment");
    formBuilder.appendRow(new RowSpec("17dlu")); // Assumes line is 14, gap is 3
    formBuilder.add(new JScrollPane(comment2Area),
            cc.xywh(formBuilder.getColumn(), formBuilder.getRow(), 1, 2));
    formBuilder.nextLine(2);

    // In this approach, we append two standard rows with associated gaps.
    // The advantage is, that the leading label is aligned well,
    // and the height is consistent with other rows.
    // The disadvantage is that the comment area now spans
    // multiple cells and is slightly less flexible.
    formBuilder.appendSeparator("Two Standard Rows");
    formBuilder.append("Name", name3Field);
    formBuilder.append("Comment");
    formBuilder.nextLine();
    formBuilder.append("");
    formBuilder.nextRow(-2);
    formBuilder.add(new JScrollPane(comment3Area),
            cc.xywh(formBuilder.getColumn(), formBuilder.getRow(), 1, 3));
    formBuilder.nextLine(3);

    JTable jtable1 = new JTable(
            new Object[][] { { "a", "b", "c" }, { "1", "2", "3" }, { "q", "w", "e" }, { "a", "b", "c" },
                    { "1", "2", "3" }, { "q", "w", "e" }, { "q", "w", "e" }, { "q", "w", "e" },
                    { "q", "w", "e" }, { "q", "w", "e" }, { "q", "w", "e" }, { "q", "w", "e" }, },
            new Object[] { "Text1", "Column2", "Apples" });

    JTable jtable2 = new JTable(
            new Object[][] { { "a", "b", "c" }, { "1", "2", "3" }, { "q", "w", "e" }, { "a", "b", "c" },
                    { "1", "2", "3" }, { "q", "w", "e" }, { "q", "w", "e" }, { "q", "w", "e" },
                    { "q", "w", "e" }, { "q", "w", "e" }, { "q", "w", "e" }, { "q", "w", "e" }, },
            new Object[] { "Tex", "Colum_", "_Apples" });

    formBuilder.appendSeparator("Table1");
    formBuilder.nextLine();
    formBuilder.append("Comment");
    //        formBuilder.nextRow(-2);
    formBuilder.appendRow(new RowSpec("17dlu")); // Assumes line is 14, gap is 3
    formBuilder.add(new JScrollPane(jtable1), cc.xywh(formBuilder.getColumn(), formBuilder.getRow(), 1, 2));
    formBuilder.nextLine();

    formBuilder.nextLine();
    formBuilder.appendSeparator("Table2");
    formBuilder.nextLine();
    //        formBuilder.append("Comment");
    formBuilder.appendRow(new RowSpec("100px"));
    //        formBuilder.appendRow(new RowSpec("17dlu")); // Assumes line is 14, gap is 3
    //        formBuilder.appendRow(new RowSpec("17dlu")); // Assumes line is 14, gap is 3
    //        formBuilder.nextRow(-2);
    //        formBuilder.nextLine(2);
    //        formBuilder.nextLine();
    //        formBuilder.nextLine();
    //        formBuilder.nextLine();
    formBuilder.add(new JScrollPane(jtable2), cc.xywh(formBuilder.getColumn(), formBuilder.getRow(), 3, 1));

    return formBuilder.getPanel();
}

From source file:org.objectstyle.cayenne.dataview.dvmodeler.FieldEditor.java

License:Open Source License

private JComponent buildPanel() {
    initComponents();// ww w  .j  a  v  a  2 s .  co  m

    FormLayout layout = new FormLayout("right:55dlu, 3dlu, 170dlu, 3dlu, " + "right:25dlu, 3dlu, 55dlu", "");
    DefaultFormBuilder generalBuilder = new DefaultFormBuilder(layout);
    generalBuilder.setDefaultDialogBorder();

    generalBuilder.append("Name:", fieldNameField);
    generalBuilder.append("Type:", dataTypeCombo);
    generalBuilder.append("Default:", defaultValueField);
    generalBuilder.appendUnrelatedComponentsGapRow();
    generalBuilder.nextLine(2);

    generalBuilder.append("Calc Type:", calcTypeCombo);
    generalBuilder.nextLine();
    generalBuilder.append("Attribute:", objAttributeCombo);
    generalBuilder.nextLine();

    generalBuilder.appendSeparator("Value Lookup");

    generalBuilder.append("Relationship:", objRelationshipCombo);
    generalBuilder.nextLine();
    generalBuilder.append("Lookup View:", lookupViewCombo);
    generalBuilder.nextLine();
    generalBuilder.append("Lookup Field:", lookupFieldCombo);

    layout = new FormLayout("right:55dlu, 3dlu, 170dlu, 3dlu, " + "right:25dlu, 3dlu, pref", "");
    DefaultFormBuilder displayBuilder = new DefaultFormBuilder(layout);
    displayBuilder.setDefaultDialogBorder();

    displayBuilder.append("Caption:", captionField);
    displayBuilder.append("Index:", preferredIndexField);
    displayBuilder.append("Visible:", visibleCheckBox);
    displayBuilder.nextLine();
    displayBuilder.append("Editable:", editableCheckBox);
    displayBuilder.appendUnrelatedComponentsGapRow();
    displayBuilder.nextLine(2);

    displayBuilder.append("Display Format:", displayClassField);
    displayBuilder.nextLine();
    displayBuilder.append("Display Pattern:", displayPatternField);
    displayBuilder.appendUnrelatedComponentsGapRow();
    displayBuilder.nextLine(2);

    displayBuilder.append("Edit Format:", editClassField);
    displayBuilder.nextLine();
    displayBuilder.append("Edit Pattern:", editPatternField);

    JScrollPane generalScrollPane = new JScrollPane(generalBuilder.getPanel());
    generalScrollPane.setBorder(Borders.EMPTY_BORDER);

    JScrollPane displayScrollPane = new JScrollPane(displayBuilder.getPanel());
    displayScrollPane.setBorder(Borders.EMPTY_BORDER);

    JTabbedPane fieldPane = new JTabbedPane(JTabbedPane.BOTTOM);
    fieldPane.putClientProperty(Options.NO_CONTENT_BORDER_KEY, Boolean.TRUE);

    fieldPane.addTab("General", generalScrollPane);
    fieldPane.addTab("Display", displayScrollPane);

    return fieldPane;
}

From source file:org.objectstyle.cayenne.modeler.dialog.datadomain.CustomRemoteEventsConfigPanel.java

License:Open Source License

protected void initView() {
    setLayout(new BorderLayout());

    STextField factoryClass = new STextField(30);
    factoryClass.setSelector(CacheSyncConfigModel.FACTORY_CLASS_SELECTOR);

    // type form/*w  w  w  . j  av  a 2  s. c o  m*/
    FormLayout layout = new FormLayout("right:150, 3dlu, left:200", "");
    DefaultFormBuilder builder = new DefaultFormBuilder(layout);
    builder.setDefaultDialogBorder();
    builder.appendSeparator("Custom EventBridge Factory");

    // "1" at the end would enforce spanning the text field to
    // the full width
    builder.append("Factory Class:", factoryClass, 1);

    add(builder.getPanel(), BorderLayout.NORTH);
}

From source file:org.objectstyle.cayenne.modeler.dialog.datadomain.JGroupsConfigPanel.java

License:Open Source License

protected void initView() {
    setLayout(new BorderLayout());

    SRadioButton useDefaultConfig = new SRadioButton(CacheSyncConfigController.JGROUPS_DEFAULT_CONTROL,
            JGroupsConfigModel.USING_DEFAULT_CONFIG_SELECTOR);

    SRadioButton useConfigFile = new SRadioButton(CacheSyncConfigController.JGROUPS_URL_CONTROL,
            JGroupsConfigModel.USING_CONFIG_FILE_SELECTOR);

    ButtonGroup group = new ButtonGroup();
    group.add(useConfigFile);/*from w  w w. j a v a2  s .  co m*/
    group.add(useDefaultConfig);

    multicastAddress = new STextField();
    multicastAddress.setSelector(JGroupsConfigModel.MCAST_ADDRESS_SELECTOR);

    multicastPort = new STextField(5);
    multicastPort.setSelector(JGroupsConfigModel.MCAST_PORT_SELECTOR);

    configURL = new STextField();
    configURL.setSelector(JGroupsConfigModel.JGROUPS_CONFIG_URL_SELECTOR);

    // type form
    FormLayout layout = new FormLayout("right:150, 3dlu, left:200", "");
    DefaultFormBuilder builder = new DefaultFormBuilder(layout);
    builder.setDefaultDialogBorder();
    builder.appendSeparator("JavaGroups Settings");

    builder.append(useDefaultConfig);
    builder.nextLine();

    // "1" at the end would enforce spanning the text field to
    // the full width
    builder.append("Multicast Address:", multicastAddress, 1);
    builder.append("Multicast Port:", multicastPort);

    builder.nextLine();
    builder.append(useConfigFile);
    builder.nextLine();
    builder.append("JGroups Config File:", configURL, 1);

    add(builder.getPanel(), BorderLayout.NORTH);
}

From source file:org.objectstyle.cayenne.modeler.dialog.datadomain.JMSConfigPanel.java

License:Open Source License

protected void initView() {
    setLayout(new BorderLayout());

    STextField topicFactory = new STextField(30);
    topicFactory.setSelector(JMSConfigModel.TOPIC_FACTORY_SELECTOR);

    // type form/* ww  w  . ja va  2 s. co m*/
    FormLayout layout = new FormLayout("right:150, 3dlu, left:200", "");
    DefaultFormBuilder builder = new DefaultFormBuilder(layout);
    builder.setDefaultDialogBorder();
    builder.appendSeparator("JMS Settings");

    // "1" at the end would enforce spanning the text field to
    // the full width
    builder.append("Connection Factory Name:", topicFactory, 1);

    add(builder.getPanel(), BorderLayout.NORTH);
}

From source file:org.objectstyle.cayenne.modeler.dialog.pref.GeneralPreferencesView.java

License:Open Source License

public GeneralPreferencesView() {
    this.saveInterval = new JTextField();

    FormLayout layout = new FormLayout("pref, 3dlu, fill:50dlu", "");
    DefaultFormBuilder builder = new DefaultFormBuilder(layout);
    builder.setDefaultDialogBorder();/*from  w  ww.j a v  a2s  . c  o  m*/

    builder.appendSeparator("General Preferences");
    saveIntervalLabel = builder.append("Preferences Save Interval (sec.):", saveInterval);

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

From source file:org.objectstyle.cayenne.modeler.editor.DataDomainView.java

License:Open Source License

protected void initView() {

    // create widgets
    this.name = new TextAdapter(new JTextField()) {

        protected void updateModel(String text) {
            setDomainName(text);/*from w  w w. ja v  a2 s. c  om*/
        }
    };

    this.cacheSize = new TextAdapter(new JTextField(10)) {

        protected void updateModel(String text) {
            setCacheSize(text);
        }
    };

    this.objectValidation = new JCheckBox();
    this.externalTransactions = new JCheckBox();

    this.sharedCache = new JCheckBox();
    this.remoteUpdates = new JCheckBox();
    this.configRemoteUpdates = new JButton("Configure");
    configRemoteUpdates.setEnabled(false);

    // assemble

    FormLayout layout = new FormLayout("right:max(50dlu;pref), 3dlu, left:max(20dlu;pref), 3dlu, left:150", "");
    DefaultFormBuilder builder = new DefaultFormBuilder(layout);
    builder.setDefaultDialogBorder();

    builder.appendSeparator("DataDomain Configuration");
    builder.append("DataDomain Name:", name.getComponent(), 3);
    builder.append("Child DataContexts Validate Objects:", objectValidation, 3);
    builder.append("Container-Managed Transactions:", externalTransactions, 3);

    builder.appendSeparator("Cache Configuration");
    builder.append("Max. Number of Objects:", cacheSize.getComponent(), 3);
    builder.append("Use Shared Cache:", sharedCache, 3);
    builder.append("Remote Change Notifications:", remoteUpdates, configRemoteUpdates);

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

From source file:org.objectstyle.cayenne.modeler.editor.DataMapView.java

License:Open Source License

private void initView() {
    // create widgets
    name = new TextAdapter(new JTextField()) {

        protected void updateModel(String text) {
            setDataMapName(text);/*from   w  w w .  j a v  a  2s . co  m*/
        }
    };

    location = CayenneWidgetFactory.createLabel("");
    nodeSelector = CayenneWidgetFactory.createComboBox();
    nodeSelector.setRenderer(CellRenderers.listRendererWithIcons());

    updateDefaultSchema = new JButton("Update...");
    defaultSchema = new TextAdapter(new JTextField()) {

        protected void updateModel(String text) {
            setDefaultSchema(text);
        }
    };

    updateDefaultPackage = new JButton("Update...");
    defaultPackage = new TextAdapter(new JTextField()) {

        protected void updateModel(String text) {
            setDefaultPackage(text);
        }
    };

    updateDefaultSuperclass = new JButton("Update...");
    defaultSuperclass = new TextAdapter(new JTextField()) {

        protected void updateModel(String text) {
            setDefaultSuperclass(text);
        }
    };

    updateDefaultLockType = new JButton("Update");
    defaultLockType = new JCheckBox();

    // assemble
    FormLayout layout = new FormLayout("right:max(50dlu;pref), 3dlu, fill:max(110dlu;pref), 3dlu, fill:90", "");
    DefaultFormBuilder builder = new DefaultFormBuilder(layout);
    builder.setDefaultDialogBorder();

    builder.appendSeparator("DataMap Configuration");
    builder.append("DataMap Name:", name.getComponent(), 3);
    builder.append("File:", location, 3);
    builder.append("DataNode:", nodeSelector, 3);

    builder.appendSeparator("Entity Defaults");
    builder.append("DB Schema:", defaultSchema.getComponent(), updateDefaultSchema);
    builder.append("Java Package:", defaultPackage.getComponent(), updateDefaultPackage);
    builder.append("DataObject Superclass:", defaultSuperclass.getComponent(), updateDefaultSuperclass);
    builder.append("Optimistic Locking:", defaultLockType, updateDefaultLockType);

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

From source file:org.objectstyle.cayenne.modeler.editor.datanode.CustomDataSourceView.java

License:Open Source License

public CustomDataSourceView() {

    locationHint = new JTextField();

    // assemble//  w ww .  j a va2s  .c om
    FormLayout layout = new FormLayout("right:80dlu, 3dlu, fill:200dlu", "");
    DefaultFormBuilder builder = new DefaultFormBuilder(layout);
    builder.setDefaultDialogBorder();

    builder.appendSeparator("Custom Configuration");

    builder.append("Location Hint:", locationHint);

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