/*
* Copyright (c) 2010-2012 Research In Motion Limited. All rights reserved.
*
* This program and the accompanying materials are made available
* under the terms of the Eclipse Public License, Version 1.0,
* which accompanies this distribution and is available at
*
* http://www.eclipse.org/legal/epl-v10.html
*
*/
package net.rim.ejde.internal.ui;
/*********************************************************************
* CompositFactory.java
*
* Copyright (c) 2007 Research In Motion Inc. All rights reserved.
* This file contains confidential and proprietary information
*
* Creation date: May 3, 2007 3:44:07 PM
*
* File: CompositFactory.java
* Revision: $Revision$
* Checked in by: zqiu
* Last modified: $DateTime$
*
*********************************************************************/
import org.eclipse.swt.SWT;
import org.eclipse.swt.layout.FillLayout;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Composite;
/**
* This class is used to create different type of Composite instances.
*
*
*/
public class CompositeFactory {
/**
* Creates a Composite instance with GridLayout.
*
* @param parent
* @param numColumn
* @return
*/
public static Composite gridComposite( Composite parent, int numColumn ) {
return gridComposite( parent, numColumn, 0 );
}
/**
* Creates a Composite instance with GridLayout.
*
* @param parent
* @param numColumn
* @param marginWidth
* @return
*/
public static Composite gridComposite( Composite parent, int numColumn, int marginWidth ) {
return gridComposite( parent, numColumn, marginWidth, 0 );
}
/**
* Creates a Composite instance with GridLayout.
*
* @param parent
* @param numColum
* @param marginWidth
* @param marginHeight
* @return
*/
public static Composite gridComposite( Composite parent, int numColum, int marginWidth, int marginHeight ) {
Composite composite = new Composite( parent, SWT.NONE );
GridLayout layout = new GridLayout();
layout.marginHeight = 0;
layout.marginWidth = marginWidth;
layout.marginHeight = marginHeight;
layout.numColumns = numColum;
composite.setLayout( layout );
composite.setLayoutData( new GridData( GridData.FILL_HORIZONTAL ) );
return composite;
}
/**
* Creates a Composite instance with GridLayout and border.
*
* @param parent
* @param numColum
* @return
*/
public static Composite gridCompositeWithBorder( Composite parent, int numColum ) {
return gridCompositeWithBorder( parent, numColum, 0 );
}
/**
* Creates a Composite instance with GridLayout and border.
*
* @param parent
* @param numColum
* @param marginWidth
* @return
*/
public static Composite gridCompositeWithBorder( Composite parent, int numColum, int marginWidth ) {
Composite composite = new Composite( parent, SWT.BORDER );
GridLayout layout = new GridLayout();
layout.marginHeight = 0;
layout.marginWidth = marginWidth;
layout.numColumns = numColum;
composite.setLayout( layout );
composite.setLayoutData( new GridData( GridData.FILL_HORIZONTAL ) );
return composite;
}
/**
* Creates a Composite instance with FillLayout.
*
* @param parent
* @return
*/
public static Composite fillComposite( Composite parent ) {
Composite composite = new Composite( parent, SWT.NONE );
FillLayout layout = new FillLayout();
layout.marginHeight = 0;
layout.marginWidth = 0;
composite.setLayout( layout );
composite.setLayoutData( new GridData( GridData.FILL_HORIZONTAL ) );
return composite;
}
}