/******************************************************************************
* Copyright (c) 2007 g-Eclipse consortium
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Initial development of the original code was made for
* project g-Eclipse founded by European Union
* project number: FP6-IST-034327 http://www.geclipse.eu/
*
* Contributor(s):
*
* IBM Corporation - initial API and implementation
*
* UCY (http://www.ucy.cs.ac.cy)
* - Nicholas Loulloudes (loulloudes.n@cs.ucy.ac.cy)
*
*****************************************************************************/
package eu.geclipse.jsdl.ui.internal.pages;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.ui.forms.widgets.TableWrapLayout;
/**
* FormLayoutFactory
*
*/
public class FormLayoutFactory {
/**
*
*/
public static final int DEFAULT_CLEAR_MARGIN = 10;
/**
*
*/
public static final int CONTROL_HORIZONTAL_INDENT = 3;
/**
*
*/
public static final int FORM_BODY_MARGIN_TOP = 12;
/**
*
*/
public static final int FORM_BODY_MARGIN_BOTTOM = 12;
/**
*
*/
public static final int FORM_BODY_MARGIN_LEFT = 6;
/**
*
*/
public static final int FORM_BODY_MARGIN_RIGHT = 6;
/**
*
*/
public static final int FORM_BODY_HORIZONTAL_SPACING = 8;
/**
*
*/
public static final int FORM_BODY_VERTICAL_SPACING = 5;
/**
*
*/
public static final int FORM_BODY_MARGIN_HEIGHT = 0;
/**
*
*/
public static final int FORM_BODY_MARGIN_WIDTH = 0;
/**
*
*/
public static final int SECTION_CLIENT_MARGIN_TOP = 10;
/**
*
*/
public static final int SECTION_CLIENT_MARGIN_BOTTOM = 10;
/**
*
*/
public static final int SECTION_CLIENT_MARGIN_LEFT = 6;
/**
*
*/
public static final int SECTION_CLIENT_MARGIN_RIGHT = 6;
/**
*
*/
public static final int SECTION_CLIENT_HORIZONTAL_SPACING = 8;
/**
*
*/
public static final int SECTION_CLIENT_VERTICAL_SPACING = 8;
/**
*
*/
public static final int SECTION_CLIENT_MARGIN_HEIGHT = 0;
/**
*
*/
public static final int SECTION_CLIENT_MARGIN_WIDTH = 0;
/**
*
*/
public static final int SECTION_HEADER_VERTICAL_SPACING = 6;
/**
*
*/
public static final int CLEAR_MARGIN_TOP = DEFAULT_CLEAR_MARGIN;
/**
*
*/
public static final int CLEAR_MARGIN_BOTTOM = DEFAULT_CLEAR_MARGIN;
/**
*
*/
public static final int CLEAR_MARGIN_LEFT = DEFAULT_CLEAR_MARGIN;
/**
*
*/
public static final int CLEAR_MARGIN_RIGHT = DEFAULT_CLEAR_MARGIN;
/**
*
*/
public static final int CLEAR_HORIZONTAL_SPACING = 8;
/**
*
*/
public static final int CLEAR_VERTICAL_SPACING = 8;
/**
*
*/
public static final int CLEAR_MARGIN_HEIGHT = 0;
/**
*
*/
public static final int CLEAR_MARGIN_WIDTH = 0;
/**
*
*/
public static final int FORM_PANE_MARGIN_TOP = 0;
/**
*
*/
public static final int FORM_PANE_MARGIN_BOTTOM = 0;
/**
*
*/
public static final int FORM_PANE_MARGIN_LEFT = 0;
/**
*
*/
public static final int FORM_PANE_MARGIN_RIGHT = 0;
/**
*
*/
public static final int FORM_PANE_HORIZONTAL_SPACING = FORM_BODY_HORIZONTAL_SPACING;
/**
*
*/
public static final int FORM_PANE_VERTICAL_SPACING = FORM_BODY_VERTICAL_SPACING;
/**
*
*/
public static final int FORM_PANE_MARGIN_HEIGHT = 0;
/**
*
*/
public static final int FORM_PANE_MARGIN_WIDTH = 0;
/**
* FormLayourFactory Class Constructor
*/
private FormLayoutFactory() {
// Do Nothing
}
/**
* For form bodies.
* @param makeColumnsEqualWidth
* @param numColumns
* @return layout
*/
public static GridLayout createFormGridLayout(final boolean makeColumnsEqualWidth,
final int numColumns) {
GridLayout layout = new GridLayout();
layout.marginHeight = FORM_BODY_MARGIN_HEIGHT;
layout.marginWidth = FORM_BODY_MARGIN_WIDTH;
layout.marginTop = FORM_BODY_MARGIN_TOP;
layout.marginBottom = FORM_BODY_MARGIN_BOTTOM;
layout.marginLeft = FORM_BODY_MARGIN_LEFT;
layout.marginRight = FORM_BODY_MARGIN_RIGHT;
layout.horizontalSpacing = FORM_BODY_HORIZONTAL_SPACING;
layout.verticalSpacing = FORM_BODY_VERTICAL_SPACING;
layout.makeColumnsEqualWidth = makeColumnsEqualWidth;
layout.numColumns = numColumns;
return layout;
}
/**
* For miscellaneous grouping composites.
* For sections (as a whole - header plus client).
* @param makeColumnsEqualWidth
* @param numColumns
* @return layout
*/
public static GridLayout createClearGridLayout(final boolean makeColumnsEqualWidth,
final int numColumns) {
GridLayout layout = new GridLayout();
layout.marginHeight = CLEAR_MARGIN_HEIGHT;
layout.marginWidth = CLEAR_MARGIN_WIDTH;
layout.marginTop = CLEAR_MARGIN_TOP;
layout.marginBottom = CLEAR_MARGIN_BOTTOM;
layout.marginLeft = CLEAR_MARGIN_LEFT;
layout.marginRight = CLEAR_MARGIN_RIGHT;
layout.horizontalSpacing = CLEAR_HORIZONTAL_SPACING;
layout.verticalSpacing = CLEAR_VERTICAL_SPACING;
layout.makeColumnsEqualWidth = makeColumnsEqualWidth;
layout.numColumns = numColumns;
return layout;
}
/**
* For form bodies.
* @param makeColumnsEqualWidth
* @param numColumns
* @return layout
*/
public static TableWrapLayout createFormTableWrapLayout(
final boolean makeColumnsEqualWidth,
final int numColumns) {
TableWrapLayout layout = new TableWrapLayout();
layout.topMargin = FORM_BODY_MARGIN_TOP;
layout.bottomMargin = FORM_BODY_MARGIN_BOTTOM;
layout.leftMargin = FORM_BODY_MARGIN_LEFT;
layout.rightMargin = FORM_BODY_MARGIN_RIGHT;
layout.horizontalSpacing = FORM_BODY_HORIZONTAL_SPACING;
layout.verticalSpacing = FORM_BODY_VERTICAL_SPACING;
layout.makeColumnsEqualWidth = makeColumnsEqualWidth;
layout.numColumns = numColumns;
return layout;
}
/**
* For composites used to group sections in left and right panes.
* @param makeColumnsEqualWidth
* @param numColumns
* @return layout
*/
public static TableWrapLayout createFormPaneTableWrapLayout(
final boolean makeColumnsEqualWidth,
final int numColumns) {
TableWrapLayout layout = new TableWrapLayout();
layout.topMargin = FORM_PANE_MARGIN_TOP;
layout.bottomMargin = FORM_PANE_MARGIN_BOTTOM;
layout.leftMargin = FORM_PANE_MARGIN_LEFT;
layout.rightMargin = FORM_PANE_MARGIN_RIGHT;
layout.horizontalSpacing = FORM_PANE_HORIZONTAL_SPACING;
layout.verticalSpacing = FORM_PANE_VERTICAL_SPACING;
layout.makeColumnsEqualWidth = makeColumnsEqualWidth;
layout.numColumns = numColumns;
return layout;
}
/**
* For composites used to group sections in left and right panes.
* @param makeColumnsEqualWidth
* @param numColumns
* @return layout
*/
public static GridLayout createFormPaneGridLayout(final boolean makeColumnsEqualWidth,
final int numColumns) {
GridLayout layout = new GridLayout();
layout.marginHeight = FORM_PANE_MARGIN_HEIGHT;
layout.marginWidth = FORM_PANE_MARGIN_WIDTH;
layout.marginTop = FORM_PANE_MARGIN_TOP;
layout.marginBottom = FORM_PANE_MARGIN_BOTTOM;
layout.marginLeft = FORM_PANE_MARGIN_LEFT;
layout.marginRight = FORM_PANE_MARGIN_RIGHT;
layout.horizontalSpacing = FORM_PANE_HORIZONTAL_SPACING;
layout.verticalSpacing = FORM_PANE_VERTICAL_SPACING;
layout.makeColumnsEqualWidth = makeColumnsEqualWidth;
layout.numColumns = numColumns;
return layout;
}
/**
* For miscellaneous grouping composites.
* For sections (as a whole - header plus client).
* @param makeColumnsEqualWidth
* @param numColumns
* @return layout
*/
public static TableWrapLayout createClearTableWrapLayout(
final boolean makeColumnsEqualWidth,
final int numColumns) {
TableWrapLayout layout = new TableWrapLayout();
layout.topMargin = CLEAR_MARGIN_TOP;
layout.bottomMargin = CLEAR_MARGIN_BOTTOM;
layout.leftMargin = CLEAR_MARGIN_LEFT;
layout.rightMargin = CLEAR_MARGIN_RIGHT;
layout.horizontalSpacing = CLEAR_HORIZONTAL_SPACING;
layout.verticalSpacing = CLEAR_VERTICAL_SPACING;
layout.makeColumnsEqualWidth = makeColumnsEqualWidth;
layout.numColumns = numColumns;
return layout;
}
/**
* For composites set as section clients.
* For composites containg form text.
* @param makeColumnsEqualWidth
* @param numColumns
* @return layout
*/
public static GridLayout createSectionClientGridLayout(final boolean makeColumnsEqualWidth,
final int numColumns) {
GridLayout layout = new GridLayout();
layout.marginHeight = SECTION_CLIENT_MARGIN_HEIGHT;
layout.marginWidth = SECTION_CLIENT_MARGIN_WIDTH;
layout.marginTop = SECTION_CLIENT_MARGIN_TOP;
layout.marginBottom = SECTION_CLIENT_MARGIN_BOTTOM;
layout.marginLeft = SECTION_CLIENT_MARGIN_LEFT;
layout.marginRight = SECTION_CLIENT_MARGIN_RIGHT;
layout.horizontalSpacing = SECTION_CLIENT_HORIZONTAL_SPACING;
layout.verticalSpacing = SECTION_CLIENT_VERTICAL_SPACING;
layout.makeColumnsEqualWidth = makeColumnsEqualWidth;
layout.numColumns = numColumns;
return layout;
}
/**
* For composites set as section clients.
* For composites containg form text.
* @param makeColumnsEqualWidth
* @param numColumns
* @return layout
*/
public static TableWrapLayout createSectionClientTableWrapLayout(final boolean makeColumnsEqualWidth,
final int numColumns) {
TableWrapLayout layout = new TableWrapLayout();
layout.topMargin = SECTION_CLIENT_MARGIN_TOP;
layout.bottomMargin = SECTION_CLIENT_MARGIN_BOTTOM;
layout.leftMargin = SECTION_CLIENT_MARGIN_LEFT;
layout.rightMargin = SECTION_CLIENT_MARGIN_RIGHT;
layout.horizontalSpacing = SECTION_CLIENT_HORIZONTAL_SPACING;
layout.verticalSpacing = SECTION_CLIENT_VERTICAL_SPACING;
layout.makeColumnsEqualWidth = makeColumnsEqualWidth;
layout.numColumns = numColumns;
return layout;
}
}