List of usage examples for javax.swing Spring sum
public static Spring sum(Spring s1, Spring s2)
s1+s2
: a spring representing s1
and s2
in series. From source file:SpringDemo4.java
public static void main(String[] args) { JFrame frame = new JFrame("SpringDemo4"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // Set up the content pane. Container contentPane = frame.getContentPane(); SpringLayout layout = new SpringLayout(); contentPane.setLayout(layout);/*from w w w . j a v a 2 s . com*/ // Create and add the components. JLabel label = new JLabel("Label: "); JTextField textField = new JTextField("Text field", 15); contentPane.add(label); contentPane.add(textField); // Adjust constraints for the label so it's at (5,5). SpringLayout.Constraints labelCons = layout.getConstraints(label); labelCons.setX(Spring.constant(5)); labelCons.setY(Spring.constant(5)); // Adjust constraints for the text field so it's at // (<label's right edge> + 5, 5). SpringLayout.Constraints textFieldCons = layout.getConstraints(textField); textFieldCons.setX(Spring.sum(Spring.constant(5), labelCons.getConstraint(SpringLayout.EAST))); textFieldCons.setY(Spring.constant(5)); // Adjust constraints for the content pane. setContainerSize(contentPane, 5); // Display the window. frame.pack(); frame.setVisible(true); }
From source file:Main.java
/** * @param base spring used to create spring that will get returned * @param spr springs to get summed with the minimum size * @return summed spring/*w w w . ja va 2 s.c om*/ */ public static Spring springSum(Spring base, Spring... spr) { Spring ret = base; for (Spring aSpr : spr) { ret = ret.sum(ret, aSpr); } return ret; }
From source file:Main.java
/** * @param minimumSize minimum size -- used to insantiate returned Spring * @param spr springs to get summed with the minimum size * @return summed spring// ww w . j a v a 2s. c om */ public static Spring springSum(int minimumSize, Spring... spr) { Spring ret = Spring.constant(minimumSize); for (Spring aSpr : spr) { ret = ret.sum(ret, aSpr); } return ret; }
From source file:Main.java
/** * Aligns the first <code>rows</code> <code>cols</code> components of <code>parent</code> in a grid. Each component in * a column is as wide as the maximum preferred width of the components in that column; height is similarly determined * for each row. The parent is made just big enough to fit them all. * //from w w w. j a va2 s . c o m * @param rows * number of rows * @param cols * number of columns * @param initialX * x location to start the grid at * @param initialY * y location to start the grid at * @param xPad * x padding between cells * @param yPad * y padding between cells */ public static void makeCompactGrid(Container parent, int rows, int cols, int initialX, int initialY, int xPad, int yPad) { parent.setMaximumSize(new Dimension(Integer.MAX_VALUE, parent.getPreferredSize().height)); SpringLayout layout; try { layout = (SpringLayout) parent.getLayout(); } catch (ClassCastException exc) { System.err.println("The first argument to makeCompactGrid must use SpringLayout."); return; } // Align all cells in each column and make them the same width. Spring x = Spring.constant(initialX); for (int c = 0; c < cols; c++) { Spring width = Spring.constant(0); for (int r = 0; r < rows; r++) { width = Spring.max(width, getConstraintsForCell(r, c, parent, cols).getWidth()); } for (int r = 0; r < rows; r++) { SpringLayout.Constraints constraints = getConstraintsForCell(r, c, parent, cols); constraints.setX(x); constraints.setWidth(width); } x = Spring.sum(x, Spring.sum(width, Spring.constant(xPad))); } // Align all cells in each row and make them the same height. Spring y = Spring.constant(initialY); for (int r = 0; r < rows; r++) { Spring height = Spring.constant(0); for (int c = 0; c < cols; c++) { height = Spring.max(height, getConstraintsForCell(r, c, parent, cols).getHeight()); } for (int c = 0; c < cols; c++) { SpringLayout.Constraints constraints = getConstraintsForCell(r, c, parent, cols); constraints.setY(y); constraints.setHeight(height); } y = Spring.sum(y, Spring.sum(height, Spring.constant(yPad))); } // Set the parent's size. SpringLayout.Constraints pCons = layout.getConstraints(parent); pCons.setConstraint(SpringLayout.SOUTH, y); pCons.setConstraint(SpringLayout.EAST, x); }
From source file:MainClass.java
public SpringLayoutPanel() { SpringLayout layout = new SpringLayout(); setLayout(layout);/*from www . ja v a2 s . co m*/ JButton[] buttons = new JButton[6]; for (int i = 0; i < buttons.length; i++) { buttons[i] = new JButton("Press " + (i + 1)); add(buttons[i]); } Spring xSpring = Spring.constant(5, 15, 25); Spring ySpring = Spring.constant(10, 30, 50); Spring wSpring = Spring.constant(30, 80, 130); SpringLayout.Constraints buttonConstr = layout.getConstraints(buttons[0]); buttonConstr.setX(xSpring); buttonConstr.setY(ySpring); for (int i = 0; i < buttons.length; i++) { buttonConstr = layout.getConstraints(buttons[i]); buttonConstr.setHeight(ySpring); buttonConstr.setWidth(wSpring); if (i > 0) { layout.putConstraint(SpringLayout.WEST, buttons[i], xSpring, SpringLayout.EAST, buttons[i - 1]); layout.putConstraint(SpringLayout.NORTH, buttons[i], ySpring, SpringLayout.SOUTH, buttons[i - 1]); } } SpringLayout.Constraints constr = layout.getConstraints(this); constr.setConstraint(SpringLayout.EAST, Spring.sum(buttonConstr.getConstraint(SpringLayout.EAST), Spring.constant(15))); constr.setConstraint(SpringLayout.SOUTH, Spring.sum(buttonConstr.getConstraint(SpringLayout.SOUTH), Spring.constant(10))); }
From source file:layout.SpringDemo4.java
/** * Create the GUI and show it. For thread safety, * this method should be invoked from the * event-dispatching thread./*www . ja v a2 s .c om*/ */ private static void createAndShowGUI() { //Create and set up the window. JFrame frame = new JFrame("SpringDemo4"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //Set up the content pane. Container contentPane = frame.getContentPane(); SpringLayout layout = new SpringLayout(); contentPane.setLayout(layout); //Create and add the components. JLabel label = new JLabel("Label: "); JTextField textField = new JTextField("Text field", 15); contentPane.add(label); contentPane.add(textField); //Adjust constraints for the label so it's at (5,5). SpringLayout.Constraints labelCons = layout.getConstraints(label); labelCons.setX(Spring.constant(5)); labelCons.setY(Spring.constant(5)); //Adjust constraints for the text field so it's at //(<label's right edge> + 5, 5). SpringLayout.Constraints textFieldCons = layout.getConstraints(textField); textFieldCons.setX(Spring.sum(Spring.constant(5), labelCons.getConstraint(SpringLayout.EAST))); textFieldCons.setY(Spring.constant(5)); //Adjust constraints for the content pane. setContainerSize(contentPane, 5); //Display the window. frame.pack(); frame.setVisible(true); }
From source file:CompassButtons.java
public CompassButtons(String terrain) { super("SpringLayout Compass Demo"); setSize(500, 300);/*from w ww.j a va2 s . c o m*/ setDefaultCloseOperation(EXIT_ON_CLOSE); SpringLayout sl = new SpringLayout(); Container c = getContentPane(); c.setLayout(sl); int offset = 50; // gap between buttons and outside edge int w = 80; // width of buttons int h = 26; // height of buttons int border = 3; // border around viewport Spring offsetS = Spring.constant(offset); Spring borderS = Spring.constant(border); Spring widthS = Spring.constant(w); Spring halfWidthS = FractionSpring.half(widthS); Spring heightS = Spring.constant(h); Spring halfHeightS = FractionSpring.half(heightS); Spring leftEdgeS = sl.getConstraint(SpringLayout.WEST, c); Spring topEdgeS = sl.getConstraint(SpringLayout.NORTH, c); Spring rightEdgeS = sl.getConstraint(SpringLayout.EAST, c); Spring bottomEdgeS = sl.getConstraint(SpringLayout.SOUTH, c); Spring xCenterS = FractionSpring.half(rightEdgeS); Spring yCenterS = FractionSpring.half(bottomEdgeS); Spring leftBorder = Spring.sum(leftEdgeS, borderS); Spring topBorder = Spring.sum(topEdgeS, borderS); Spring northX = Spring.sum(xCenterS, Spring.minus(halfWidthS)); Spring southY = Spring.sum(bottomEdgeS, Spring.minus(Spring.sum(heightS, offsetS))); Spring eastX = Spring.sum(rightEdgeS, Spring.minus(Spring.sum(widthS, offsetS))); Spring eastY = Spring.sum(yCenterS, Spring.minus(halfHeightS)); c.add(nb, new SpringLayout.Constraints(northX, offsetS, widthS, heightS)); c.add(sb, new SpringLayout.Constraints(northX, southY, widthS, heightS)); c.add(wb); sl.getConstraints(wb).setX(offsetS); sl.getConstraints(wb).setY(eastY); sl.getConstraints(wb).setWidth(widthS); sl.getConstraints(wb).setHeight(heightS); c.add(eb); sl.getConstraints(eb).setX(eastX); sl.getConstraints(eb).setY(eastY); sl.getConstraints(eb).setWidth(widthS); sl.getConstraints(eb).setHeight(heightS); c.add(viewport); // this sets a bounds of (0,0,pref_width,pref_height) // The order here is important...need to have a valid width and height // in place before binding the (x,y) location sl.putConstraint(SpringLayout.SOUTH, viewport, Spring.minus(borderS), SpringLayout.SOUTH, c); sl.putConstraint(SpringLayout.EAST, viewport, Spring.minus(borderS), SpringLayout.EAST, c); sl.putConstraint(SpringLayout.NORTH, viewport, topBorder, SpringLayout.NORTH, c); sl.putConstraint(SpringLayout.WEST, viewport, leftBorder, SpringLayout.WEST, c); ImageIcon icon = new ImageIcon(getClass().getResource(terrain)); viewport.setView(new JLabel(icon)); // Hook up the buttons. See the CompassScroller class (on-line) for // details // on controlling the viewport. nb.setActionCommand(CompassScroller.NORTH); sb.setActionCommand(CompassScroller.SOUTH); wb.setActionCommand(CompassScroller.WEST); eb.setActionCommand(CompassScroller.EAST); CompassScroller scroller = new CompassScroller(viewport); nb.addActionListener(scroller); sb.addActionListener(scroller); eb.addActionListener(scroller); wb.addActionListener(scroller); setVisible(true); }
From source file:SpringDemo4.java
/** * Create the GUI and show it. For thread safety, this method should be * invoked from the event-dispatching thread. *//* ww w .j a v a2s . c o m*/ private static void createAndShowGUI() { //Make sure we have nice window decorations. JFrame.setDefaultLookAndFeelDecorated(true); //Create and set up the window. JFrame frame = new JFrame("SpringDemo4"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //Set up the content pane. Container contentPane = frame.getContentPane(); SpringLayout layout = new SpringLayout(); contentPane.setLayout(layout); //Create and add the components. JLabel label = new JLabel("Label: "); JTextField textField = new JTextField("Text field", 15); contentPane.add(label); contentPane.add(textField); //Adjust constraints for the label so it's at (5,5). SpringLayout.Constraints labelCons = layout.getConstraints(label); labelCons.setX(Spring.constant(5)); labelCons.setY(Spring.constant(5)); //Adjust constraints for the text field so it's at //(<label's right edge> + 5, 5). SpringLayout.Constraints textFieldCons = layout.getConstraints(textField); textFieldCons.setX(Spring.sum(Spring.constant(5), labelCons.getConstraint(SpringLayout.EAST))); textFieldCons.setY(Spring.constant(5)); //Adjust constraints for the content pane. setContainerSize(contentPane, 5); //Display the window. frame.pack(); frame.setVisible(true); }
From source file:Main.java
/** * Aligns the first <code>rows</code> * <code>cols</code> components of <code>parent</code> in a grid. Each * component in a column is as wide as the maximum preferred width of the components in that column; height is * similarly determined for each row. The parent is made just big enough to fit them all. * /*from ww w.j a v a2s .c o m*/ * @param parent * * @param rows * number of rows * @param cols * number of columns * @param initialX * x location to start the grid at * @param initialY * y location to start the grid at * @param xPad * x padding between cells * @param yPad * y padding between cells */ private static void makeSpringCompactGrid(Container parent, int rows, int cols, int initialX, int initialY, int xPad, int yPad) { SpringLayout layout = new SpringLayout(); parent.setLayout(layout); // Align all cells in each column and make them the same width. Spring x = Spring.constant(initialX); for (int c = 0; c < cols; c++) { Spring width = Spring.constant(0); for (int r = 0; r < rows; r++) { width = Spring.max(width, getConstraintsForCell(r, c, parent, cols).getWidth()); } for (int r = 0; r < rows; r++) { SpringLayout.Constraints constraints = getConstraintsForCell(r, c, parent, cols); constraints.setX(x); constraints.setWidth(width); } x = Spring.sum(x, Spring.sum(width, Spring.constant(xPad))); } // Align all cells in each row and make them the same height. Spring y = Spring.constant(initialY); for (int r = 0; r < rows; r++) { Spring height = Spring.constant(0); for (int c = 0; c < cols; c++) { height = Spring.max(height, getConstraintsForCell(r, c, parent, cols).getHeight()); } for (int c = 0; c < cols; c++) { SpringLayout.Constraints constraints = getConstraintsForCell(r, c, parent, cols); constraints.setY(y); constraints.setHeight(height); } y = Spring.sum(y, Spring.sum(height, Spring.constant(yPad))); } // Set the parent's size. SpringLayout.Constraints pCons = layout.getConstraints(parent); pCons.setConstraint(SpringLayout.SOUTH, y); pCons.setConstraint(SpringLayout.EAST, x); }
From source file:SpringDemo4.java
public static void setContainerSize(Container parent, int pad) { SpringLayout layout = (SpringLayout) parent.getLayout(); Component[] components = parent.getComponents(); Spring maxHeightSpring = Spring.constant(0); SpringLayout.Constraints pCons = layout.getConstraints(parent); // Set the container's right edge to the right edge // of its rightmost component + padding. Component rightmost = components[components.length - 1]; SpringLayout.Constraints rCons = layout.getConstraints(rightmost); pCons.setConstraint(SpringLayout.EAST, Spring.sum(Spring.constant(pad), rCons.getConstraint(SpringLayout.EAST))); // Set the container's bottom edge to the bottom edge // of its tallest component + padding. for (int i = 0; i < components.length; i++) { SpringLayout.Constraints cons = layout.getConstraints(components[i]); maxHeightSpring = Spring.max(maxHeightSpring, cons.getConstraint(SpringLayout.SOUTH)); }//from ww w . j a v a 2 s. c o m pCons.setConstraint(SpringLayout.SOUTH, Spring.sum(Spring.constant(pad), maxHeightSpring)); }