Bug 208160 [JFace] Request for RowLayoutFactory
bundles/org.eclipse.jface/src/org/eclipse/jface/layout/GridDataFactory.java
*/
    public GridDataFactory align(int hAlign, int vAlign) {
    	if (hAlign != SWT.BEGINNING && hAlign != SWT.CENTER && hAlign != GridData.CENTER && hAlign != SWT.END && hAlign != GridData.END && hAlign != SWT.FILL && hAlign != SWT.LEFT && hAlign != SWT.RIGHT) {
    		throw new IllegalArgumentException();
    	}
    	if (vAlign != SWT.BEGINNING && vAlign != SWT.CENTER && vAlign != GridData.CENTER && vAlign != SWT.END && vAlign != GridData.END && vAlign != SWT.FILL && vAlign != SWT.TOP && vAlign != SWT.BOTTOM) {
    		throw new IllegalArgumentException();
    	}
        data.horizontalAlignment = hAlign;
        data.verticalAlignment = vAlign;
        return this;
    }
    /**
     * Sets the indent of the control within the cell. Moves the position of the control
     * by the given number of pixels. Positive values move toward the lower-right, negative
     * values move toward the upper-left.
     * 
     * @param hIndent distance to move to the right (negative values move left)
     * @param vIndent distance to move down (negative values move up)
     * @return this
     */
    public GridDataFactory indent(int hIndent, int vIndent) {
        data.horizontalIndent = hIndent;
        data.verticalIndent = vIndent;
        return this;
    }
    /**
     * Sets the indent of the control within the cell. Moves the position of the control
     * by the given number of pixels. Positive values move toward the lower-right, negative
     * values move toward the upper-left.