Example usage for java.awt GridLayout GridLayout

List of usage examples for java.awt GridLayout GridLayout

Introduction

In this page you can find the example usage for java.awt GridLayout GridLayout.

Prototype

public GridLayout(int rows, int cols) 

Source Link

Document

Creates a grid layout with the specified number of rows and columns.

Usage

From source file:joinery.impl.Display.java

public static <C extends Container, V> C draw(final DataFrame<V> df, final C container, final PlotType type) {
    final List<XChartPanel> panels = new LinkedList<>();
    final DataFrame<Number> numeric = df.numeric().fillna(0);
    final int rows = (int) Math.ceil(Math.sqrt(numeric.size()));
    final int cols = numeric.size() / rows + 1;

    final List<Object> xdata = new ArrayList<>(df.length());
    final Iterator<Object> it = df.index().iterator();
    for (int i = 0; i < df.length(); i++) {
        final Object value = it.hasNext() ? it.next() : i;
        if (value instanceof Number || value instanceof Date) {
            xdata.add(value);/*from  w  ww  .j a va2 s  . c  o  m*/
        } else if (PlotType.BAR.equals(type)) {
            xdata.add(String.valueOf(value));
        } else {
            xdata.add(i);
        }
    }

    if (EnumSet.of(PlotType.GRID, PlotType.GRID_WITH_TREND).contains(type)) {
        for (final Object col : numeric.columns()) {
            final Chart chart = new ChartBuilder().chartType(chartType(type)).width(800 / cols)
                    .height(800 / cols).title(String.valueOf(col)).build();
            final Series series = chart.addSeries(String.valueOf(col), xdata, numeric.col(col));
            if (type == PlotType.GRID_WITH_TREND) {
                addTrend(chart, series, xdata);
                series.setLineStyle(SeriesLineStyle.NONE);
            }
            chart.getStyleManager().setLegendVisible(false);
            chart.getStyleManager().setDatePattern(dateFormat(xdata));
            panels.add(new XChartPanel(chart));
        }
    } else {
        final Chart chart = new ChartBuilder().chartType(chartType(type)).build();

        chart.getStyleManager().setDatePattern(dateFormat(xdata));
        switch (type) {
        case SCATTER:
        case SCATTER_WITH_TREND:
        case LINE_AND_POINTS:
            break;
        default:
            chart.getStyleManager().setMarkerSize(0);
            break;
        }

        for (final Object col : numeric.columns()) {
            final Series series = chart.addSeries(String.valueOf(col), xdata, numeric.col(col));
            if (type == PlotType.SCATTER_WITH_TREND) {
                addTrend(chart, series, xdata);
                series.setLineStyle(SeriesLineStyle.NONE);
            }
        }

        panels.add(new XChartPanel(chart));
    }

    if (panels.size() > 1) {
        container.setLayout(new GridLayout(rows, cols));
    }
    for (final XChartPanel p : panels) {
        container.add(p);
    }

    return container;
}

From source file:TrackFocusDemo.java

public TrackFocusDemo() {
    super(new BorderLayout());

    JPanel mugshots = new JPanel(new GridLayout(2, 3));
    pic1 = new Picture(createImageIcon("images/" + mayaString + ".jpg", mayaString).getImage());
    pic1.setName("1");
    mugshots.add(pic1);// www .j  a va2  s  .  co  m
    pic2 = new Picture(createImageIcon("images/" + anyaString + ".jpg", anyaString).getImage());
    pic2.setName("2");
    mugshots.add(pic2);
    pic3 = new Picture(createImageIcon("images/" + laineString + ".jpg", laineString).getImage());
    pic3.setName("3");
    mugshots.add(pic3);
    pic4 = new Picture(createImageIcon("images/" + cosmoString + ".jpg", cosmoString).getImage());
    pic4.setName("4");
    mugshots.add(pic4);
    pic5 = new Picture(createImageIcon("images/" + adeleString + ".jpg", adeleString).getImage());
    pic5.setName("5");
    mugshots.add(pic5);
    pic6 = new Picture(createImageIcon("images/" + alexiString + ".jpg", alexiString).getImage());
    pic6.setName("6");
    mugshots.add(pic6);

    info = new JLabel("Nothing selected");

    setPreferredSize(new Dimension(450, 350));
    add(mugshots, BorderLayout.CENTER);
    add(info, BorderLayout.PAGE_END);
    setBorder(BorderFactory.createEmptyBorder(20, 20, 20, 20));

    KeyboardFocusManager focusManager = KeyboardFocusManager.getCurrentKeyboardFocusManager();
    focusManager.addPropertyChangeListener(new PropertyChangeListener() {
        public void propertyChange(PropertyChangeEvent e) {
            String prop = e.getPropertyName();
            if (("focusOwner".equals(prop)) && (e.getNewValue() != null)
                    && ((e.getNewValue()) instanceof Picture)) {

                Component comp = (Component) e.getNewValue();
                String name = comp.getName();
                Integer num = new Integer(name);
                int index = num.intValue();
                if (index < 0 || index > comments.length) {
                    index = 0;
                }
                info.setText(comments[index]);
            }
        }
    });
}

From source file:com.itemanalysis.jmetrik.graph.nicc.NonparametricCurvePanel.java

private void processCommand() {
    try {/*from w  w w  .  java 2 s  . c  om*/
        names = command.getFreeOptionList("variables").getString();
        xlabel = command.getFreeOption("xvar").getString();
        ylabel = "Probability";
        if (command.getSelectOneOption("curves").isValueSelected("expected"))
            ylabel = "Expected Value";
        this.setLayout(new GridLayout(names.size() + 1, 1));
    } catch (IllegalArgumentException ex) {
        logger.fatal(ex.getMessage(), ex);
        this.firePropertyChange("error", "", "Error - Check log for details.");
    }

}

From source file:LookAndFeelDemo.java

public Component createComponents() {
    JButton button = new JButton("I'm a Swing button!");
    button.setMnemonic(KeyEvent.VK_I);
    button.addActionListener(this);
    label.setLabelFor(button);//from  ww w . j  a  v  a  2  s. com

    /*
     * An easy way to put space between a top-level container and its contents
     * is to put the contents in a JPanel that has an "empty" border.
     */
    JPanel pane = new JPanel(new GridLayout(0, 1));
    pane.add(button);
    pane.add(label);
    pane.setBorder(BorderFactory.createEmptyBorder(30, // top
            30, // left
            10, // bottom
            30) // right
    );

    return pane;
}

From source file:ContainerEventDemo.java

public ContainerEventDemo() {
    super(new GridBagLayout());
    GridBagLayout gridbag = (GridBagLayout) getLayout();
    GridBagConstraints c = new GridBagConstraints();

    //Initialize an empty list of buttons.
    buttonList = new Vector(10, 10);

    //Create all the components.
    addButton = new JButton("Add a button");
    addButton.setActionCommand(ADD);/*from ww  w.  j  a va 2 s  .  c o m*/
    addButton.addActionListener(this);

    removeButton = new JButton("Remove a button");
    removeButton.setActionCommand(REMOVE);
    removeButton.addActionListener(this);

    buttonPanel = new JPanel(new GridLayout(1, 1));
    buttonPanel.setPreferredSize(new Dimension(200, 75));
    buttonPanel.addContainerListener(this);

    display = new JTextArea();
    display.setEditable(false);
    JScrollPane scrollPane = new JScrollPane(display);
    scrollPane.setPreferredSize(new Dimension(200, 75));

    clearButton = new JButton("Clear text area");
    clearButton.setActionCommand(CLEAR);
    clearButton.addActionListener(this);

    c.fill = GridBagConstraints.BOTH; //Fill entire cell.
    c.weighty = 1.0; //Button area and message area have equal height.
    c.gridwidth = GridBagConstraints.REMAINDER; //end of row
    gridbag.setConstraints(scrollPane, c);
    add(scrollPane);

    c.weighty = 0.0;
    gridbag.setConstraints(clearButton, c);
    add(clearButton);

    c.weightx = 1.0; //Add/remove buttons have equal width.
    c.gridwidth = 1; //NOT end of row
    gridbag.setConstraints(addButton, c);
    add(addButton);

    c.gridwidth = GridBagConstraints.REMAINDER; //end of row
    gridbag.setConstraints(removeButton, c);
    add(removeButton);

    c.weighty = 1.0; //Button area and message area have equal height.
    gridbag.setConstraints(buttonPanel, c);
    add(buttonPanel);

    setPreferredSize(new Dimension(400, 400));
    setBorder(BorderFactory.createEmptyBorder(20, 20, 20, 20));
}

From source file:FocusTraversalDemo.java

public FocusTraversalDemo() {
    super(new BorderLayout());

    JTextField tf1 = new JTextField("Field 1");
    JTextField tf2 = new JTextField("A Bigger Field 2");
    JTextField tf3 = new JTextField("Field 3");
    JTextField tf4 = new JTextField("A Bigger Field 4");
    JTextField tf5 = new JTextField("Field 5");
    JTextField tf6 = new JTextField("A Bigger Field 6");
    JTable table = new JTable(4, 3);
    togglePolicy = new JCheckBox("Custom FocusTraversalPolicy");
    togglePolicy.setActionCommand("toggle");
    togglePolicy.addActionListener(this);
    togglePolicy.setFocusable(false); // Remove it from the focus cycle.
    // Note that HTML is allowed and will break this run of text
    // across two lines.
    label = new JLabel(
            "<html>Use Tab (or Shift-Tab) to navigate from component to component.Control-Tab (or Control-Shift-Tab) allows you to break out of the JTable.</html>");

    JPanel leftTextPanel = new JPanel(new GridLayout(3, 2));
    leftTextPanel.add(tf1, BorderLayout.PAGE_START);
    leftTextPanel.add(tf3, BorderLayout.CENTER);
    leftTextPanel.add(tf5, BorderLayout.PAGE_END);
    leftTextPanel.setBorder(BorderFactory.createEmptyBorder(0, 0, 5, 5));
    JPanel rightTextPanel = new JPanel(new GridLayout(3, 2));
    rightTextPanel.add(tf2, BorderLayout.PAGE_START);
    rightTextPanel.add(tf4, BorderLayout.CENTER);
    rightTextPanel.add(tf6, BorderLayout.PAGE_END);
    rightTextPanel.setBorder(BorderFactory.createEmptyBorder(0, 0, 5, 5));
    JPanel tablePanel = new JPanel(new GridLayout(0, 1));
    tablePanel.add(table, BorderLayout.CENTER);
    tablePanel.setBorder(BorderFactory.createEtchedBorder());
    JPanel bottomPanel = new JPanel(new GridLayout(2, 1));
    bottomPanel.add(togglePolicy, BorderLayout.PAGE_START);
    bottomPanel.add(label, BorderLayout.PAGE_END);

    add(leftTextPanel, BorderLayout.LINE_START);
    add(rightTextPanel, BorderLayout.CENTER);
    add(tablePanel, BorderLayout.LINE_END);
    add(bottomPanel, BorderLayout.PAGE_END);
    setBorder(BorderFactory.createEmptyBorder(20, 20, 20, 20));
    Vector<Component> order = new Vector<Component>(7);
    order.add(tf1);//from   ww w .j a  v  a 2 s  .c  om
    order.add(tf2);
    order.add(tf3);
    order.add(tf4);
    order.add(tf5);
    order.add(tf6);
    order.add(table);
    newPolicy = new MyOwnFocusTraversalPolicy(order);
}

From source file:AliasBean.java

public AliasBean() {
    aliVector = new Vector();
    aliJList = new JList();
    // XXX MUST FIX THIS
    // aliJList.setSelectionMode(JList.SINGLE_SELECTION);
    aliJList.addListSelectionListener(new ListSelectionListener() {
        public void valueChanged(ListSelectionEvent evt) {
            int i = aliJList.getSelectedIndex();
            if (i < 0)
                return;
            Alias al = (Alias) aliVector.get(i);
            nameTF.setText(al.getName());
            addrTF.setText(al.getAddress());
        }/*from  w  w w.ja  va  2s.c om*/
    });

    setLayout(new BorderLayout());
    add(BorderLayout.WEST, new JScrollPane(aliJList));

    JPanel rightPanel = new JPanel();
    add(BorderLayout.EAST, rightPanel);
    rightPanel.setLayout(new GridLayout(0, 1));

    JPanel buttons = new JPanel();
    rightPanel.add(buttons);
    buttons.setLayout(new GridLayout(0, 1, 15, 15));
    JButton b;
    buttons.add(b = new JButton("Set"));
    b.setToolTipText("Add or Change an alias");
    b.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent evt) {
            int i = aliJList.getSelectedIndex();
            if (i < 0) {
                // XXX error dialog??
                return;
            }
            setAlias(i, nameTF.getText(), addrTF.getText());
        }
    });
    buttons.add(b = new JButton("Delete"));
    b.setToolTipText("Delete the selected alias");
    b.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent evt) {
            int i = aliJList.getSelectedIndex();
            if (i < 0) {
                return;
            }
            deleteAlias(i);
        }
    });
    buttons.add(b = new JButton("Apply"));
    b.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent evt) {
            System.err.println("NOT WRITTEN YET");
        }
    });

    JPanel fields = new JPanel();
    rightPanel.add(fields);
    fields.setLayout(new GridLayout(2, 2));
    fields.add(new JLabel("Name"));
    fields.add(nameTF = new JTextField(10));
    fields.add(new JLabel("Address"));
    fields.add(addrTF = new JTextField(20));
}