< prev index next >

src/java.desktop/share/classes/java/awt/Dimension.java

Print this page

        

*** 27,49 **** import java.awt.geom.Dimension2D; import java.beans.Transient; /** ! * The <code>Dimension</code> class encapsulates the width and * height of a component (in integer precision) in a single object. * The class is * associated with certain properties of components. Several methods ! * defined by the <code>Component</code> class and the ! * <code>LayoutManager</code> interface return a ! * <code>Dimension</code> object. * <p> ! * Normally the values of <code>width</code> ! * and <code>height</code> are non-negative integers. * The constructors that allow you to create a dimension do * not prevent you from setting a negative value for these properties. ! * If the value of <code>width</code> or <code>height</code> is * negative, the behavior of some methods defined by other objects is * undefined. * * @author Sami Shaio * @author Arthur van Hoff --- 27,49 ---- import java.awt.geom.Dimension2D; import java.beans.Transient; /** ! * The {@code Dimension} class encapsulates the width and * height of a component (in integer precision) in a single object. * The class is * associated with certain properties of components. Several methods ! * defined by the {@code Component} class and the ! * {@code LayoutManager} interface return a ! * {@code Dimension} object. * <p> ! * Normally the values of {@code width} ! * and {@code height} are non-negative integers. * The constructors that allow you to create a dimension do * not prevent you from setting a negative value for these properties. ! * If the value of {@code width} or {@code height} is * negative, the behavior of some methods defined by other objects is * undefined. * * @author Sami Shaio * @author Arthur van Hoff
*** 90,120 **** initIDs(); } } /** ! * Creates an instance of <code>Dimension</code> with a width * of zero and a height of zero. */ public Dimension() { this(0, 0); } /** ! * Creates an instance of <code>Dimension</code> whose width * and height are the same as for the specified dimension. * * @param d the specified dimension for the ! * <code>width</code> and ! * <code>height</code> values */ public Dimension(Dimension d) { this(d.width, d.height); } /** ! * Constructs a <code>Dimension</code> and initializes * it to the specified width and specified height. * * @param width the specified width * @param height the specified height */ --- 90,120 ---- initIDs(); } } /** ! * Creates an instance of {@code Dimension} with a width * of zero and a height of zero. */ public Dimension() { this(0, 0); } /** ! * Creates an instance of {@code Dimension} whose width * and height are the same as for the specified dimension. * * @param d the specified dimension for the ! * {@code width} and ! * {@code height} values */ public Dimension(Dimension d) { this(d.width, d.height); } /** ! * Constructs a {@code Dimension} and initializes * it to the specified width and specified height. * * @param width the specified width * @param height the specified height */
*** 138,199 **** public double getHeight() { return height; } /** ! * Sets the size of this <code>Dimension</code> object to * the specified width and height in double precision. ! * Note that if <code>width</code> or <code>height</code> ! * are larger than <code>Integer.MAX_VALUE</code>, they will ! * be reset to <code>Integer.MAX_VALUE</code>. * ! * @param width the new width for the <code>Dimension</code> object ! * @param height the new height for the <code>Dimension</code> object * @since 1.2 */ public void setSize(double width, double height) { this.width = (int) Math.ceil(width); this.height = (int) Math.ceil(height); } /** ! * Gets the size of this <code>Dimension</code> object. * This method is included for completeness, to parallel the ! * <code>getSize</code> method defined by <code>Component</code>. * * @return the size of this dimension, a new instance of ! * <code>Dimension</code> with the same width and height * @see java.awt.Dimension#setSize * @see java.awt.Component#getSize * @since 1.1 */ @Transient public Dimension getSize() { return new Dimension(width, height); } /** ! * Sets the size of this <code>Dimension</code> object to the specified size. * This method is included for completeness, to parallel the ! * <code>setSize</code> method defined by <code>Component</code>. ! * @param d the new size for this <code>Dimension</code> object * @see java.awt.Dimension#getSize * @see java.awt.Component#setSize * @since 1.1 */ public void setSize(Dimension d) { setSize(d.width, d.height); } /** ! * Sets the size of this <code>Dimension</code> object * to the specified width and height. * This method is included for completeness, to parallel the ! * <code>setSize</code> method defined by <code>Component</code>. * ! * @param width the new width for this <code>Dimension</code> object ! * @param height the new height for this <code>Dimension</code> object * @see java.awt.Dimension#getSize * @see java.awt.Component#setSize * @since 1.1 */ public void setSize(int width, int height) { --- 138,199 ---- public double getHeight() { return height; } /** ! * Sets the size of this {@code Dimension} object to * the specified width and height in double precision. ! * Note that if {@code width} or {@code height} ! * are larger than {@code Integer.MAX_VALUE}, they will ! * be reset to {@code Integer.MAX_VALUE}. * ! * @param width the new width for the {@code Dimension} object ! * @param height the new height for the {@code Dimension} object * @since 1.2 */ public void setSize(double width, double height) { this.width = (int) Math.ceil(width); this.height = (int) Math.ceil(height); } /** ! * Gets the size of this {@code Dimension} object. * This method is included for completeness, to parallel the ! * {@code getSize} method defined by {@code Component}. * * @return the size of this dimension, a new instance of ! * {@code Dimension} with the same width and height * @see java.awt.Dimension#setSize * @see java.awt.Component#getSize * @since 1.1 */ @Transient public Dimension getSize() { return new Dimension(width, height); } /** ! * Sets the size of this {@code Dimension} object to the specified size. * This method is included for completeness, to parallel the ! * {@code setSize} method defined by {@code Component}. ! * @param d the new size for this {@code Dimension} object * @see java.awt.Dimension#getSize * @see java.awt.Component#setSize * @since 1.1 */ public void setSize(Dimension d) { setSize(d.width, d.height); } /** ! * Sets the size of this {@code Dimension} object * to the specified width and height. * This method is included for completeness, to parallel the ! * {@code setSize} method defined by {@code Component}. * ! * @param width the new width for this {@code Dimension} object ! * @param height the new height for this {@code Dimension} object * @see java.awt.Dimension#getSize * @see java.awt.Component#setSize * @since 1.1 */ public void setSize(int width, int height) {
*** 211,238 **** } return false; } /** ! * Returns the hash code for this <code>Dimension</code>. * ! * @return a hash code for this <code>Dimension</code> */ public int hashCode() { int sum = width + height; return sum * (sum + 1)/2 + width; } /** * Returns a string representation of the values of this ! * <code>Dimension</code> object's <code>height</code> and ! * <code>width</code> fields. This method is intended to be used only * for debugging purposes, and the content and format of the returned * string may vary between implementations. The returned string may be ! * empty but may not be <code>null</code>. * ! * @return a string representation of this <code>Dimension</code> * object */ public String toString() { return getClass().getName() + "[width=" + width + ",height=" + height + "]"; } --- 211,238 ---- } return false; } /** ! * Returns the hash code for this {@code Dimension}. * ! * @return a hash code for this {@code Dimension} */ public int hashCode() { int sum = width + height; return sum * (sum + 1)/2 + width; } /** * Returns a string representation of the values of this ! * {@code Dimension} object's {@code height} and ! * {@code width} fields. This method is intended to be used only * for debugging purposes, and the content and format of the returned * string may vary between implementations. The returned string may be ! * empty but may not be {@code null}. * ! * @return a string representation of this {@code Dimension} * object */ public String toString() { return getClass().getName() + "[width=" + width + ",height=" + height + "]"; }
< prev index next >