Class RowDataFactory

java.lang.Object
org.eclipse.jface.layout.RowDataFactory

public final class RowDataFactory extends Object
This class provides a convenient shorthand for creating and initialising RowData. This offers several benefits over creating RowData the normal way:
  • The same factory can be used many times to create several RowData instances
  • The setters on RowDataFactory all return "this", allowing them to be chained
Since:
3.5
  • Method Details

    • swtDefaults

      public static RowDataFactory swtDefaults()
      Creates a new RowDataFactory initialized with the SWT defaults.

      Initial values are:

      • exclude(false)
      • hint(SWT.DEFAULT, SWT.DEFAULT)
      Returns:
      a new GridDataFactory instance
    • createFrom

      public static RowDataFactory createFrom(RowData data)
      Creates a new RowDataFactory that creates copies of the given RowData by default.
      Parameters:
      data - RowData to copy
      Returns:
      a new RowDataFactory that creates copies of the argument by default
    • copyData

      public static RowData copyData(RowData data)
      Returns a copy of the given RowData
      Parameters:
      data - RowData to copy
      Returns:
      a copy of the argument
    • exclude

      public RowDataFactory exclude(boolean shouldExclude)
      Instructs the GridLayout to ignore this control when performing layouts.
      Parameters:
      shouldExclude - true iff the control should be excluded from layouts
      Returns:
      this
    • create

      public RowData create()
      Creates a new GridData instance. All attributes of the GridData instance will be initialised by the factory.
      Returns:
      a new GridData instance
    • copy

      public RowDataFactory copy()
      Creates a copy of the receiver.
      Returns:
      a copy of the receiver
    • applyTo

      public void applyTo(Control control)
      Sets the layout data on the given control. Creates a new RowData instance and assigns it to the control by calling control.setLayoutData.
      Parameters:
      control - control whose layout data will be initialised
    • hint

      public RowDataFactory hint(int xHint, int yHint)
      Sets the width and height hints. The width and height hints override the control's preferred size. If either hint is set to SWT.DEFAULT, the control's preferred size is used.
      Parameters:
      xHint - horizontal hint (pixels), or SWT.DEFAULT to use the control's preferred size
      yHint - vertical hint (pixels), or SWT.DEFAULT to use the control's preferred size
      Returns:
      this
    • hint

      public RowDataFactory hint(Point hint)
      Sets the width and height hints. The width and height hints override the control's preferred size. If either hint is set to SWT.DEFAULT, the control's preferred size is used.
      Parameters:
      hint - size (pixels) to be used instead of the control's preferred size. If the x or y values are set to SWT.DEFAULT, the control's computeSize() method will be used to obtain that dimension of the preferred size.
      Returns:
      this