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

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

Introduction

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

Prototype

public DefaultFormBuilder(FormLayout layout, StringResourceAccessor localizer) 

Source Link

Document

Constructs a DefaultFormBuilder for the given layout and resource bundle.

Usage

From source file:jgnash.ui.budget.AccountRowFooterPanel.java

License:Open Source License

private void layoutMainPanel() {
    FormLayout layout = new FormLayout("d:g", "d");

    DefaultFormBuilder builder = new DefaultFormBuilder(layout, this);

    setLayout(layout);// w  w w .j  av a2 s  .  c om

    table = new SummaryTable(summaryModel);
    table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
    table.setFocusable(false);
    table.setCellSelectionEnabled(false);

    JTableHeader tableHeader = new JTableHeader(table.getColumnModel());
    tableHeader.setReorderingAllowed(false);
    tableHeader.setResizingAllowed(false);
    tableHeader.setTable(table);

    builder.add(table, CC.xy(1, 1));

    header = buildHeader(tableHeader);
    footer = buildFooter();

    setBorder(ShadowBorder.getCompondShadowBorder());

    JTableUtils.packTables(table, footerTable);

    ToolTipManager.sharedInstance().unregisterComponent(table);
    ToolTipManager.sharedInstance().unregisterComponent(tableHeader);
}

From source file:jgnash.ui.budget.AccountRowFooterPanel.java

License:Open Source License

public JComponent buildFooter() {
    FormLayout layout = new FormLayout("d:g", "d");

    DefaultFormBuilder builder = new DefaultFormBuilder(layout, new JXPanel());

    NumberFormat format = CommodityFormat.getShortNumberFormat(resultsModel.getBaseCurrency());

    footerTable = new BudgetResultsTable(new FooterModel(), format);
    footerTable.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
    footerTable.setFocusable(false);/*  w w  w.  j  a  va2 s.co  m*/
    footerTable.setCellSelectionEnabled(false);

    builder.add(footerTable, CC.xy(1, 1));

    builder.setBorder(ShadowBorder.getCompondShadowBorder());

    return builder.getPanel();
}

From source file:jgnash.ui.budget.AccountRowHeaderPanel.java

License:Open Source License

private void layoutMainPanel() {
    FormLayout layout = new FormLayout("pref:g", "t:d:g");

    DefaultFormBuilder builder = new DefaultFormBuilder(layout, this);

    setLayout(layout);/*w  ww . j  a v a2  s  .  c  o  m*/

    table = new AccountTable(tableModel);
    table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);

    // can only handle one selection at a time
    table.getSelectionModel().setSelectionMode(ListSelectionModel.SINGLE_SELECTION);

    // add a double click listener to edit an account
    table.addMouseListener(new MouseAdapter() {

        @Override
        public void mouseClicked(final MouseEvent e) {
            if (e.getClickCount() == 2) {
                int rowIndex = ((JTable) e.getSource()).getSelectedRow();

                Account account = tableModel.get(rowIndex);

                if (!account.isLocked() && !account.isPlaceHolder()) {
                    showBudgetGoalDialog(account);
                }
            }
        }
    });

    builder.add(table, CC.xy(1, 1));

    setBorder(ShadowBorder.getCompondShadowBorder());
}

From source file:jgnash.ui.budget.AccountRowHeaderPanel.java

License:Open Source License

public JComponent getFooter() {
    FormLayout layout = new FormLayout("d:g", "d");

    DefaultFormBuilder builder = new DefaultFormBuilder(layout, new JPanel());

    JTable table = new JTable(new GroupTableModel());
    table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
    table.setFocusable(false);//  www .j av a  2s .c o m
    table.setCellSelectionEnabled(false);

    builder.add(table, CC.xy(1, 1));

    builder.setBorder(ShadowBorder.getCompondShadowBorder());

    return builder.getPanel();
}

From source file:jgnash.ui.budget.BudgetColumnFooter.java

License:Open Source License

private void layoutMainPanel() {
    FormLayout layout = new FormLayout("d", "d, 1dlu");

    DefaultFormBuilder builder = new DefaultFormBuilder(layout, this);

    builder.add(panels.get(0).getPeriodFooter(), CC.xy(1, 1));

    for (int i = 1; i < panels.size(); i++) {
        builder.appendColumn("d");

        builder.add(panels.get(i).getPeriodFooter(), CC.xy(i + 1, 1));
    }/*w  w w. j  a  v  a  2  s. c  o  m*/
}

From source file:jgnash.ui.budget.BudgetColumnHeader.java

License:Open Source License

private void layoutMainPanel() {

    FormLayout layout = new FormLayout("d", "d");

    DefaultFormBuilder builder = new DefaultFormBuilder(layout, this);

    builder.add(panels.get(0).getPeriodHeader(), CC.xy(1, 1));

    for (int i = 1; i < panels.size(); i++) {
        builder.appendColumn("d");

        builder.add(panels.get(i).getPeriodHeader(), CC.xy(i + 1, 1));
    }//  ww w  . j  ava2 s . c o m
}

From source file:jgnash.ui.budget.BudgetGoalDialog.java

License:Open Source License

private void layoutMainPanel() {
    FormLayout contentLayout = new FormLayout("fill:p:g, $lcgap, fill:p", "f:p:g, $ugap, f:p");
    JPanel contentPanel = new JPanel(contentLayout);
    DefaultFormBuilder contentBuilder = new DefaultFormBuilder(contentLayout, contentPanel);
    contentBuilder.setDefaultDialogBorder();

    FormLayout layout = new FormLayout("right:d, $lcgap, fill:p:g", "f:p, $rgap, d, $ugap, f:p:g");
    DefaultFormBuilder builder = new DefaultFormBuilder(layout);

    cancelButton = new JButton(rb.getString("Button.Cancel"));
    okButton = new JButton(rb.getString("Button.Ok"));

    historicalButton = new JButton(rb.getString("Button.HistoricalFill"));

    fillAmountField = new JFloatField(account.getCurrencyNode());
    fillAmountField.setDecimal(BigDecimal.ZERO);
    fillPatternAmountField = new JFloatField(account.getCurrencyNode());
    fillPatternAmountField.setDecimal(BigDecimal.ZERO);

    fillButton = new JButton(rb.getString("Button.Enter"));
    fillPatternEnterButton = new JButton(rb.getString("Button.Enter"));

    budgetPeriodCombo = new JComboBox<>();
    budgetPeriodCombo.setModel(new DefaultComboBoxModel<>(BudgetPeriod.values()));
    budgetPeriodCombo.setSelectedItem(getBudgetGoal().getBudgetPeriod());

    patternComboBox = new JComboBox<>();
    patternComboBox.setModel(new DefaultComboBoxModel<>(Pattern.values()));

    int max = getDescriptors().size();

    startRowSpinner = new JSpinner(new SpinnerNumberModel(1, 1, max, 1));
    endRowSpinner = new JSpinner(new SpinnerNumberModel(max, 1, max, 1));

    builder.append(new JLabel(rb.getString("Label.Period")), budgetPeriodCombo);
    builder.nextLine();//from  w ww  .  j a v a 2 s. co m
    builder.nextLine();

    builder.append(new JLabel(rb.getString("Label.Currency")),
            new JLabel(account.getCurrencyNode().getSymbol()));
    builder.nextLine();
    builder.nextLine();

    JTable table = new GoalTable(model);
    table.getSelectionModel().setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
    table.putClientProperty("terminateEditOnFocusLost", Boolean.TRUE); // save entry if focus is lost
    ToolTipManager.sharedInstance().unregisterComponent(table);

    JScrollPane scrollPane = new JScrollPane(table);
    scrollPane.setPreferredSize(new Dimension(SCROLLPANE_WIDTH, SCROLLPANE_HEIGHT)); // force it something small so it will resize correctly

    builder.append(scrollPane, 3);

    JPanel patternPanel = new JPanel();
    patternPanel.setLayout(new FormLayout(
            new ColumnSpec[] { FormFactory.DEFAULT_COLSPEC, FormFactory.RELATED_GAP_COLSPEC,
                    ColumnSpec.decode("default:grow"), },
            new RowSpec[] { FormFactory.RELATED_GAP_ROWSPEC, FormFactory.DEFAULT_ROWSPEC,
                    FormFactory.RELATED_GAP_ROWSPEC, FormFactory.DEFAULT_ROWSPEC,
                    FormFactory.RELATED_GAP_ROWSPEC, FormFactory.DEFAULT_ROWSPEC,
                    FormFactory.RELATED_GAP_ROWSPEC, FormFactory.DEFAULT_ROWSPEC,
                    FormFactory.RELATED_GAP_ROWSPEC, FormFactory.DEFAULT_ROWSPEC, }));

    patternPanel.add(new JLabel(rb.getString("Label.Pattern")), "1, 2, right, default");
    patternPanel.add(patternComboBox, "3, 2, fill, default");
    patternPanel.add(new JLabel(rb.getString("Label.StartRow")), "1, 4, right, default");
    patternPanel.add(startRowSpinner, "3, 4");
    patternPanel.add(new JLabel(rb.getString("Label.EndRow")), "1, 6, right, default");
    patternPanel.add(endRowSpinner, "3, 6");
    patternPanel.add(new JLabel(rb.getString("Label.Amount")), "1, 8, right, default");
    patternPanel.add(fillPatternAmountField, "3, 8, fill, default");
    patternPanel.add(ButtonBarFactory.buildOKBar(fillPatternEnterButton), "3, 10");

    FormLayout fillLayout = new FormLayout("right:d, $lcgap, fill:max(48dlu;min):g, $lcgap, d",
            "d, $rgap, d, $rgap, d, $rgap, d, $rgap, d");
    DefaultFormBuilder fillBuilder = new DefaultFormBuilder(fillLayout);
    fillBuilder.setBorder(new TitledBorder(rb.getString("Title.SmartFill")));

    fillBuilder.append(historicalButton, 5);
    fillBuilder.nextLine();
    fillBuilder.nextLine();
    fillBuilder.appendSeparator();
    fillBuilder.nextLine();
    fillBuilder.nextLine();
    fillBuilder.append(new JLabel(rb.getString("Label.FillAll")), fillAmountField, fillButton);
    fillBuilder.nextLine();
    fillBuilder.nextLine();
    fillBuilder.appendSeparator();
    fillBuilder.nextLine();
    fillBuilder.nextLine();
    fillBuilder.append(patternPanel, 5);

    budgetPeriodCombo.addActionListener(this);
    cancelButton.addActionListener(this);
    okButton.addActionListener(this);

    historicalButton.addActionListener(this);
    fillButton.addActionListener(this);
    fillPatternEnterButton.addActionListener(this);

    contentBuilder.append(builder.getPanel(), fillBuilder.getPanel());
    contentBuilder.nextLine();
    contentBuilder.nextLine();
    contentBuilder.append(ButtonBarFactory.buildOKCancelBar(okButton, cancelButton), 3);

    getContentPane().add(contentBuilder.getPanel());

    pack();
    setMinimumSize(getSize());
    DialogUtils.addBoundsListener(this);

    JTableUtils.packGenericTable(table); // pack columns for better default appearance
}

From source file:jgnash.ui.budget.BudgetOverviewPanel.java

License:Open Source License

private void layoutMainPanel() {
    Resource rb = Resource.get();

    initComponents();// ww  w .  j  av  a  2 s .  c  o m

    FormLayout layout = new FormLayout("2dlu, right:d, $lcgap, max(40dlu;d), $lcgap, d", "min");

    DefaultFormBuilder builder = new DefaultFormBuilder(layout, this);
    setLayout(layout);

    setBorder(Borders.EMPTY_BORDER);

    builder.add(new JLabel(rb.getString("Label.Year")), CC.xy(2, 1));
    builder.add(yearSpinner, CC.xy(4, 1));
    builder.add(sparklinePanel, CC.xy(6, 1));
}

From source file:jgnash.ui.budget.BudgetPeriodPanel.java

License:Open Source License

private void layoutMainPanel() {
    FormLayout layout = new FormLayout("d:g", "d");

    DefaultFormBuilder builder = new DefaultFormBuilder(layout, this);

    setLayout(layout);//from ww w.jav  a 2 s .co  m

    NumberFormat format = CommodityFormat.getShortNumberFormat(model.getCurrency());

    table = new BudgetResultsTable(model, format);
    table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
    table.setFocusable(false);
    table.setCellSelectionEnabled(false);

    JTableHeader header = new JTableHeader(table.getColumnModel());
    header.setReorderingAllowed(false);
    header.setResizingAllowed(false);
    header.setTable(table);

    buildHeader(header);
    buildFooter();

    JTableUtils.packTables(table, footerTable);

    builder.add(table, CC.xy(1, 1));

    setBorder(ShadowBorder.getCompondShadowBorder());

    ToolTipManager.sharedInstance().unregisterComponent(table);
    ToolTipManager.sharedInstance().unregisterComponent(header);
}

From source file:jgnash.ui.budget.BudgetPeriodPanel.java

License:Open Source License

private void buildFooter() {

    FormLayout layout = new FormLayout("d:g", "d");

    DefaultFormBuilder builder = new DefaultFormBuilder(layout, new JPanel());

    NumberFormat format = CommodityFormat
            .getShortNumberFormat(EngineFactory.getEngine(EngineFactory.DEFAULT).getDefaultCurrency());

    footerTable = new BudgetResultsTable(new FooterModel(), format);
    footerTable.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
    footerTable.setFocusable(false);//  ww w .  jav a 2s  .c  o  m
    footerTable.setCellSelectionEnabled(false);

    builder.add(footerTable, CC.xy(1, 1));

    builder.setBorder(ShadowBorder.getCompondShadowBorder());

    periodFooter = builder.getPanel();
}