X-Git-Url: http://secure.phpeclipse.com diff --git a/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/ui/wizards/dialogfields/Separator.java b/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/ui/wizards/dialogfields/Separator.java new file mode 100644 index 0000000..08f587d --- /dev/null +++ b/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/ui/wizards/dialogfields/Separator.java @@ -0,0 +1,93 @@ +/******************************************************************************* + * Copyright (c) 2000, 2003 IBM Corporation and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Common Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/cpl-v10.html + * + * Contributors: + * IBM Corporation - initial API and implementation + *******************************************************************************/ +package net.sourceforge.phpdt.internal.ui.wizards.dialogfields; + +import org.eclipse.swt.SWT; +import org.eclipse.swt.layout.GridData; +import org.eclipse.swt.widgets.Composite; +import org.eclipse.swt.widgets.Control; +import org.eclipse.swt.widgets.Label; + +/** + * Dialog field describing a separator. + */ +public class Separator extends DialogField { + + private Label fSeparator; + private int fStyle; + + public Separator() { + this(SWT.NONE); + } + + /** + * @param style of the separator. See Label for possible + * styles. + */ + public Separator(int style) { + super(); + fStyle= style; + } + + // ------- layout helpers + + /** + * Creates the separator and fills it in a MGridLayout. + * @param height The heigth of the separator + */ + public Control[] doFillIntoGrid(Composite parent, int nColumns, int height) { + assertEnoughColumns(nColumns); + + Control separator= getSeparator(parent); + separator.setLayoutData(gridDataForSeperator(nColumns, height)); + + return new Control[] { separator }; + } + + /* + * @see DialogField#doFillIntoGrid + */ + public Control[] doFillIntoGrid(Composite parent, int nColumns) { + return doFillIntoGrid(parent, nColumns, 4); + } + + /* + * @see DialogField#getNumberOfControls + */ + public int getNumberOfControls() { + return 1; + } + + protected static GridData gridDataForSeperator(int span, int height) { + GridData gd= new GridData(); + gd.horizontalAlignment= GridData.FILL; + gd.verticalAlignment= GridData.BEGINNING; + gd.heightHint= height; + gd.horizontalSpan= span; + return gd; + } + + // ------- ui creation + + /** + * Creates or returns the created separator. + * @param parent The parent composite or null if the widget has + * already been created. + */ + public Control getSeparator(Composite parent) { + if (fSeparator == null) { + assertCompositeNotNull(parent); + fSeparator= new Label(parent, fStyle); + } + return fSeparator; + } + +}