blob: 41de2220d70533d89c0579c1086b1d8dc3678024 [file] [log] [blame]
/*
* Copyright (c) 2007 Borland Software Corporation and others.
* 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
*
* Contributors:
* Borland Software Corporation - initial API and implementation
*/
package org.eclipse.gmf.graphdef.editor.sheet;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.gef.EditPart;
import org.eclipse.gmf.runtime.diagram.ui.properties.sections.AbstractModelerPropertySection;
import org.eclipse.gmf.runtime.notation.View;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.StructuredSelection;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.CCombo;
import org.eclipse.swt.custom.CLabel;
import org.eclipse.swt.events.ModifyEvent;
import org.eclipse.swt.events.ModifyListener;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.events.SelectionListener;
import org.eclipse.swt.graphics.Image;
import org.eclipse.swt.graphics.Point;
import org.eclipse.swt.layout.FormAttachment;
import org.eclipse.swt.layout.FormData;
import org.eclipse.swt.layout.FormLayout;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.DateTime;
import org.eclipse.swt.widgets.Group;
import org.eclipse.swt.widgets.Layout;
import org.eclipse.swt.widgets.Spinner;
import org.eclipse.swt.widgets.Text;
import org.eclipse.swt.widgets.Widget;
import org.eclipse.ui.IWorkbenchPart;
import org.eclipse.ui.forms.events.ExpansionEvent;
import org.eclipse.ui.forms.events.IExpansionListener;
import org.eclipse.ui.forms.widgets.ExpandableComposite;
import org.eclipse.ui.views.properties.tabbed.ITabbedPropertyConstants;
import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage;
public abstract class AbstractCustomSectionParent extends AbstractModelerPropertySection {
public abstract void doCreateControls(Composite parent, TabbedPropertySheetPage tabbedPropertySheetPage);
public abstract void doDispose();
protected abstract ModelUpdater createModelUpdater();
protected static final String EMPTY_STRING = ""; //$NON-NLS-1$
private TabbedPropertySheetPage myTabbedPropertySheetPage;
private boolean areControlsCreated;
private IExpansionListener myExpansionListener;
private ModelUpdater myListener;
private Collection mySavedSelection = new ArrayList();
public void createControls(Composite parent, TabbedPropertySheetPage tabbedPropertySheetPage) {
super.createControls(parent, tabbedPropertySheetPage);
myTabbedPropertySheetPage = tabbedPropertySheetPage;
doCreateControls(parent, tabbedPropertySheetPage);
areControlsCreated = true;
}
public void dispose() {
if (areControlsCreated) {
doDispose();
areControlsCreated = false;
}
super.dispose();
}
public boolean shouldUseExtraSpace() {
return true;
}
// XXX [artem] revisit - what's the reason to save copy of selection when it's available from super?
protected final Collection getSavedSelection() {
//StructuredSelection structured = (StructuredSelection) super.getSelection();
//return structured.toList();
return mySavedSelection;
}
public void setInput(IWorkbenchPart part, ISelection selection) {
if (selection.isEmpty() || false == selection instanceof StructuredSelection) {
super.setInput(part, selection);
return;
}
final StructuredSelection structuredSelection = ((StructuredSelection) selection);
ArrayList transformedSelection = new ArrayList(structuredSelection.size());
for (Iterator it = structuredSelection.iterator(); it.hasNext();) {
Object r = transformSelection(it.next());
if (r != null) {
transformedSelection.add(r);
}
}
mySavedSelection = transformedSelection;
super.setInput(part, new StructuredSelection(transformedSelection));
}
protected Object transformSelection(Object selected) {
if (selected instanceof EditPart) {
Object model = ((EditPart) selected).getModel();
return model instanceof View ? ((View) model).getElement() : null;
}
if (selected instanceof View) {
return ((View) selected).getElement();
}
if (selected instanceof IAdaptable) {
View view = (View) ((IAdaptable) selected).getAdapter(View.class);
if (view != null) {
return view.getElement();
}
}
return selected;
}
protected EObject getEObject() {
if (getSavedSelection() != null && !getSavedSelection().isEmpty()) {
return (EObject) getSavedSelection().iterator().next();
}
return super.getEObject();
}
protected ModelUpdater getListener() {
if (myListener == null) {
myListener = createModelUpdater();
}
return myListener;
}
public static abstract class ModelUpdater implements ModifyListener, SelectionListener {
public abstract void applyChangesFrom(Widget widget);
private boolean nonUserChange;
public boolean isNonUserChange() {
return nonUserChange;
}
public void modifyText(ModifyEvent e) {
if (!isNonUserChange()) {
applyChangesFrom(e.widget);
}
}
public void widgetDefaultSelected(SelectionEvent e) {
widgetSelected(e);
}
public void widgetSelected(SelectionEvent e) {
if (!isNonUserChange()) {
applyChangesFrom(e.widget);
}
}
public void startListeningTo(Spinner spinner) {
spinner.addModifyListener(this);
spinner.addSelectionListener(this);
}
public void stopListeningTo(Spinner spinner) {
if (!spinner.isDisposed()) {
spinner.removeModifyListener(this);
spinner.removeSelectionListener(this);
}
}
public void startListeningTo(DateTime dateTime) {
dateTime.addSelectionListener(this);
}
public void stopListeningTo(DateTime dateTime) {
if (!dateTime.isDisposed()) {
dateTime.removeSelectionListener(this);
}
}
public void startListeningTo(CCombo combo) {
combo.addSelectionListener(this);
}
public void stopListeningTo(CCombo combo) {
if (!combo.isDisposed()) {
combo.removeSelectionListener(this);
}
}
public void startListeningTo(Text text) {
text.addModifyListener(this);
text.addSelectionListener(this);
}
public void stopListeningTo(Text text) {
if (!text.isDisposed()) {
text.removeModifyListener(this);
text.removeSelectionListener(this);
}
}
public void startListeningTo(Button button) {
button.addSelectionListener(this);
}
public void stopListeningTo(Button button) {
if (!button.isDisposed()) {
button.removeSelectionListener(this);
}
}
public void startNonUserChange() {
nonUserChange = true;
}
public void finishNonUserChange() {
nonUserChange = false;
}
}
protected IExpansionListener getExpansionListener(final Composite parent) {
if (myExpansionListener == null) {
myExpansionListener = new IExpansionListener() {
public void expansionStateChanged(ExpansionEvent e) {
relayoutExpandBar(parent);
}
public void expansionStateChanging(ExpansionEvent e) {
}
};
}
return myExpansionListener;
}
protected void relayoutExpandBar(Composite expandBar) {
Control control = myTabbedPropertySheetPage.getControl();
Point size = control.getSize();
control.setSize(size.x - 1, size.y - 1);
control.setSize(size.x, size.y);
}
// helpers used by old handwritten custom sections
protected Layout createStandardFormLayout() {
FormLayout layout = new FormLayout();
layout.marginWidth = ITabbedPropertyConstants.HSPACE + 2;
layout.marginHeight = ITabbedPropertyConstants.VSPACE;
layout.spacing = ITabbedPropertyConstants.VMARGIN + 1;
return layout;
}
protected static FormData createFormData(Control leftControl, Control topControl, boolean lowermost) {
return createFormData(leftControl, topControl, null, lowermost);
}
protected static FormData createFormData(Control leftControl, Control topControl, Control rightControl, boolean lowermost) {
return createFormData(leftControl, topControl, rightControl, null, true, true, lowermost, false);
}
protected static FormData createFormData(Control leftControl, Control topControl, Control rightControl, Control bottomControl, boolean defaultIsLeft, boolean defaultIsTop, boolean lowermost, boolean rightmost) {
FormData data = new FormData();
if (leftControl != null) {
data.left = new FormAttachment(leftControl);
} else if (defaultIsLeft) {
data.left = new FormAttachment(0);
}
if (leftControl == null && topControl != null && !defaultIsLeft) {
Object sd = topControl.getLayoutData();
if (sd instanceof FormData) {
FormData topData = (FormData) sd;
FormAttachment topLeft = topData.left;
if (topLeft != null && !(topLeft.control instanceof CLabel && (topControl instanceof Spinner || topControl instanceof Text))) {
data.left = topLeft;
}
}
}
if (topControl != null) {
data.top = new FormAttachment(topControl);
if (topControl instanceof Spinner || topControl instanceof Text) {
Object sd = topControl.getLayoutData();
if (sd instanceof FormData) {
FormData topData = (FormData) sd;
FormAttachment topLeft = topData.left;
if (topLeft != null && topLeft.control instanceof CLabel) {
data.top = topLeft;
}
}
}
} else if (defaultIsTop) {
data.top = new FormAttachment(0);
}
if (topControl == null && leftControl != null && !defaultIsTop) {
Object sd = leftControl.getLayoutData();
if (sd instanceof FormData) {
FormData topData = (FormData) sd;
FormAttachment leftTop = topData.top;
if (leftTop != null) {
data.top = leftTop;
if (leftTop.control instanceof Spinner || leftTop.control instanceof Text) {
Object sd2 = leftTop.control.getLayoutData();
if (sd2 instanceof FormData) {
FormData topDataLeftTop = (FormData) sd2;
FormAttachment topLeft = topDataLeftTop.left;
if (topLeft != null && topLeft.control instanceof CLabel) {
data.top = topLeft;
}
}
}
}
}
}
if (rightControl != null) {
data.right = new FormAttachment(rightControl);
} else if (rightmost) {
data.right = new FormAttachment(100);
}
if (bottomControl != null) {
data.bottom = new FormAttachment(bottomControl);
} else if (lowermost) {
data.bottom = new FormAttachment(100);
}
return data;
}
protected static FormData createFillFormData(Control leftControl, Control topControl, Control rightControl, Control bottomControl, boolean defaultIsLeft, boolean defaultIsTop, boolean lowermost, boolean rightmost, boolean fillHorizonral, boolean fillVertical) {
FormData data = new FormData();
data.left = new FormAttachment(0);
data.right = new FormAttachment(100);
data.top = new FormAttachment(0);
data.bottom = new FormAttachment(100);
return data;
}
protected Composite createFlatFormComposite(Composite parent, int leftPosition) {
return createFlatFormComposite(parent, leftPosition, false);
}
protected Composite createFlatFormComposite(Composite parent, int leftPosition, boolean noData) {
return createFlatFormComposite(parent, null, null, null, null, false, true, false, true, leftPosition, noData);
}
protected Composite createFlatFormComposite(Composite parent, Control leftControl, Control topControl, Control rightControl, Control bottomControl, boolean defaultIsLeft, boolean defaultIsTop, boolean lowermost, boolean rightmost, int leftPosition, boolean noData) {
Composite pane = getWidgetFactory().createFlatFormComposite(parent);
if (!noData) {
FormData data = createFormData(leftControl, topControl, rightControl, bottomControl, defaultIsLeft, defaultIsTop, lowermost, rightmost);
if (leftPosition != SWT.DEFAULT) {
data.left = new FormAttachment(leftPosition);
}
pane.setLayoutData(data);
}
return pane;
}
protected ExpandableComposite createLayoutParamsExpandableComposite(Composite parent, String label, Control topControl, boolean rightmost) {
return createExpandableComposite(parent, label, null, topControl, false, rightmost);
}
protected ExpandableComposite createExpandableComposite(Composite parent, String label, Control leftControl, Control topControl, boolean lowermost, boolean rightmost) {
ExpandableComposite expandable = getWidgetFactory().createExpandableComposite(parent, ExpandableComposite.TWISTIE | ExpandableComposite.CLIENT_INDENT | ExpandableComposite.TITLE_BAR);
expandable.setText(label);
expandable.setBackground(getWidgetFactory().getHyperlinkGroup().getBackground());
expandable.setActiveToggleColor(getWidgetFactory().getHyperlinkGroup().getActiveForeground());
expandable.setTitleBarForeground(getWidgetFactory().getHyperlinkGroup().getForeground());
FormData data = createFormData(leftControl, topControl, null, null, true, true, lowermost, rightmost);
expandable.setLayoutData(data);
return expandable;
}
protected Group createGroup(Composite parent, String label) {
return createGroup(parent, label, false);
}
protected Group createGroup(Composite parent, String label, boolean noData) {
return createGroup(parent, label, null, null, noData);
}
protected Group createGroup(Composite parent, String label, Control leftComposite, Control topComposite) {
return createGroup(parent, label, leftComposite, topComposite, false);
}
protected Group createGroup(Composite parent, String label, Control leftComposite, Control topComposite, boolean noData) {
return createGroup(parent, label, leftComposite, topComposite, true, true, false, false, noData);
}
protected Group createGroup(Composite parent, String label, Control leftComposite, Control topComposite, boolean defaultIsTop, boolean defaultIsLeft, boolean lowermost, boolean rightmost, boolean noData) {
Group group = getWidgetFactory().createGroup(parent, label);
if (!noData) {
FormData data = createFormData(leftComposite, topComposite, null, null, defaultIsLeft, defaultIsTop, lowermost, rightmost);
group.setLayoutData(data);
}
group.setLayout(createStandardFormLayout());
return group;
}
protected Button createRadio(Composite parent, Control topControl, boolean lowermost, Image image) {
return createRadio(parent, image, EMPTY_STRING, 0, SWT.DEFAULT, topControl, 0, lowermost);
}
protected Button createRadio(Composite parent, String label, Control topControl, int rightAlignment) {
return createRadio(parent, null, label, 0, rightAlignment, topControl, SWT.DEFAULT, false);
}
protected Button createRadio(Composite parent, String label, Control topControl, boolean lowermost) {
return createRadio(parent, null, label, 0, SWT.DEFAULT, topControl, SWT.DEFAULT, lowermost);
}
protected Button createRadio(Composite parent, Image image, String label, int leftAlignment, int rightAlignment, int topAlignment, boolean lowermost) {
return createRadio(parent, image, label, leftAlignment, rightAlignment, null, topAlignment, lowermost);
}
protected Button createRadio(Composite parent, Image image, String label, int leftAlignment, int rightAlignment, Control topControl, int topAlignment, boolean lowermost) {
return createRadio(parent, image, label, null, leftAlignment, topControl, topAlignment, null, rightAlignment, true, true, lowermost, false);
}
protected Button createRadio(Composite parent, Image image, String label, Control leftControl, int leftAlignment, Control topControl, int topAlignment, Control rightControl, int rightAlignment, boolean defaultIsLeft, boolean defaultIsTop, boolean lowermost, boolean rightmost) {
Button radio = getWidgetFactory().createButton(parent, label == null ? EMPTY_STRING : label, SWT.RADIO);
if (image != null) {
radio.setImage(image);
}
FormData data = createFormData(leftControl, topControl, rightControl, null, defaultIsLeft, defaultIsTop, lowermost, rightmost);
if (leftControl == null && SWT.DEFAULT != leftAlignment) {
data.left = new FormAttachment(leftAlignment);
}
if (rightControl == null && SWT.DEFAULT != rightAlignment) {
data.right = new FormAttachment(rightAlignment);
}
if (topControl == null && SWT.DEFAULT != topAlignment) {
data.top = new FormAttachment(topAlignment);
}
radio.setLayoutData(data);
return radio;
}
protected Button createCheckbox(Composite parent, String label, Control topControl, Control leftControl) {
return createCheckbox(parent, label, topControl, leftControl, false);
}
protected Button createCheckbox(Composite parent, String label, Control topControl, Control leftControl, boolean lowermost) {
return createCheckbox(parent, label, topControl, leftControl, true, true, lowermost, SWT.DEFAULT);
}
protected Button createCheckbox(Composite parent, String label, Control topControl, Control leftControl, boolean defaultIsTop, boolean defaultIsLeft, boolean lowermost, int leftAlignment) {
Button checkbox = getWidgetFactory().createButton(parent, label, SWT.CHECK);
FormData data = createFormData(leftControl, topControl, null, null, defaultIsLeft, defaultIsTop, lowermost, false);
if (leftAlignment != SWT.DEFAULT) {
data.left = new FormAttachment(leftAlignment);
}
checkbox.setLayoutData(data);
return checkbox;
}
protected Spinner createSpinnerWidget(Composite parent, String label, Control leftWidget) {
return createSpinnerWidget(parent, label, leftWidget, null, false, false);
}
protected Spinner createSpinnerWidget(Composite parent, String label, Control leftWidget, Control topWidget, boolean rightlast, boolean horizontalNotVertical) {
return createSpinnerWidget(parent, label, leftWidget, topWidget, false, rightlast, horizontalNotVertical, 1, 999, 1, 100);
}
protected Spinner createSpinnerWidget(Composite parent, String label, Control leftControl, Control topControl, boolean lowermost, boolean rightmost, boolean horizontalNotVertical, int min, int max, int inc, int pageInc) {
Spinner spinner = new Spinner(parent, SWT.BORDER | (horizontalNotVertical ? SWT.H_SCROLL : SWT.V_SCROLL));
spinner.setMinimum(min);
spinner.setMaximum(max);
spinner.setIncrement(inc);
spinner.setPageIncrement(pageInc);
spinner.setBackground(parent.getBackground());
spinner.setForeground(parent.getForeground());
Control leftWidget = leftControl;
if (label != null && label.length() != 0) {
leftWidget = createLabelWidget(parent, label, leftControl, topControl);
}
FormData data = createFormData(leftWidget, topControl, null, null, true, true, lowermost, rightmost);
spinner.setLayoutData(data);
return spinner;
}
protected Text createText(Composite parent, String label, Control leftWidget, Control topWidget, String initialText) {
return createText(parent, label, leftWidget, topWidget, initialText, true, true, false, true);
}
protected Text createText(Composite parent, String label, Control leftControl, Control topControl, String initialText, boolean defaultIsTop, boolean defaultIsLeft, boolean lowermost, boolean rightmost) {
Text text = getWidgetFactory().createText(parent, initialText, SWT.BORDER);
Control leftWidget = leftControl;
if (label != null && label.length() != 0) {
leftWidget = createLabelWidget(parent, label, leftControl, topControl);
}
FormData data = createFormData(leftWidget, topControl, null, null, defaultIsLeft, defaultIsTop, lowermost, rightmost);
text.setLayoutData(data);
return text;
}
protected Text createExtendedText(Composite parent, String label, Control leftControl, Control topControl, String initialText, boolean defaultIsTop, boolean defaultIsLeft, boolean lowermost, boolean rightmost) {
Control leftWidget = leftControl;
if (label != null && label.length() != 0) {
leftWidget = createLabelWidget(parent, label, leftControl, topControl);
}
Text text = getWidgetFactory().createText(parent, initialText, SWT.BORDER | SWT.MULTI | SWT.V_SCROLL | SWT.H_SCROLL | SWT.WRAP);
FormData data = createFormData(leftWidget, topControl, null, null, true, true, true, true);
text.setLayoutData(data);
return text;
}
protected CLabel createLabelWidget(Composite parent, String labelText, Control leftWidget) {
return createLabelWidget(parent, labelText, leftWidget, null);
}
protected CLabel createLabelWidget(Composite parent, String labelText, Control leftWidget, Control topWidget) {
CLabel label = getWidgetFactory().createCLabel(parent, labelText);
FormData data = createFormData(leftWidget, topWidget, null, false);
label.setLayoutData(data);
return label;
}
private DateTime createDate(Composite parent, String label, Control leftControl, Control topControl, boolean defaultIsTop, boolean defaultIsLeft, boolean lowermost, boolean rightmost) {
DateTime date = new DateTime(parent, SWT.DATE);
date.setBackground(parent.getBackground());
date.setForeground(parent.getForeground());
getWidgetFactory().adapt(date);
Control leftWidget = leftControl;
if (label != null && label.length() != 0) {
leftWidget = createLabelWidget(parent, label, leftControl, topControl);
}
FormData data = createFormData(leftWidget, topControl, null, null, defaultIsLeft, defaultIsTop, lowermost, rightmost);
date.setLayoutData(data);
return date;
}
private DateTime createTime(Composite parent, String label, Control leftControl, Control topControl, boolean defaultIsTop, boolean defaultIsLeft, boolean lowermost, boolean rightmost) {
DateTime time = new DateTime(parent, SWT.TIME);
time.setBackground(parent.getBackground());
time.setForeground(parent.getForeground());
getWidgetFactory().adapt(time);
Control leftWidget = leftControl;
if (label != null && label.length() != 0) {
leftWidget = createLabelWidget(parent, label, leftControl, topControl);
}
FormData data = createFormData(leftWidget, topControl, null, null, defaultIsLeft, defaultIsTop, lowermost, rightmost);
time.setLayoutData(data);
return time;
}
private CCombo createCombo(Composite parent, String label, Control leftControl, Control topControl, boolean defaultIsTop, boolean defaultIsLeft, boolean lowermost, boolean rightmost) {
CCombo combo = getWidgetFactory().createCCombo(parent, SWT.NONE);
Control leftWidget = leftControl;
if (label != null && label.length() != 0) {
leftWidget = createLabelWidget(parent, label, leftControl, topControl);
}
FormData data = createFormData(leftWidget, topControl, null, null, defaultIsLeft, defaultIsTop, lowermost, rightmost);
combo.setLayoutData(data);
return combo;
}
// these ones are used in model customization example templates!
public Composite createMainWidget(Composite parent) {
return createFlatFormComposite(parent, 0, true);
}
public Composite createCompositeWidget(Composite parent, String label, Control leftControl, Control topControl, Control rightControl, Control bottomControl, boolean defaultIsLeft, boolean defaultIsTop, boolean lowermost, boolean rightmost) {
return createFlatFormComposite(parent, leftControl, topControl, rightControl, bottomControl, defaultIsLeft, defaultIsTop, lowermost, rightmost, SWT.DEFAULT, false);
}
public ExpandableComposite createExpandableComposite(Composite parent, String label, Control leftControl, Control topControl, Control rightControl, Control bottomControl, boolean defaultIsLeft, boolean defaultIsTop, boolean lowermost, boolean rightmost) {
return createExpandableComposite(parent, label, leftControl, topControl, lowermost, rightmost);
}
public Group createGroupWidget(Composite parent, String label, Control leftControl, Control topControl, Control rightControl, Control bottomControl, boolean defaultIsLeft, boolean defaultIsTop, boolean lowermost, boolean rightmost) {
Group group = createGroup(parent, label, leftControl, topControl, defaultIsTop, defaultIsLeft, lowermost, rightmost, false);
return group;
}
public Button createRadioButton(Composite parent, String label, Control leftControl, Control topControl, Control rightControl, Control bottomControl, boolean defaultIsLeft, boolean defaultIsTop, boolean lowermost, boolean rightmost) {
return createRadio(parent, null, label, leftControl, SWT.DEFAULT, topControl, SWT.DEFAULT, rightControl, SWT.DEFAULT, defaultIsLeft, defaultIsTop, lowermost, rightmost);
}
public Button createCheckboxButton(Composite parent, String label, Control leftControl, Control topControl, Control rightControl, Control bottomControl, boolean defaultIsLeft, boolean defaultIsTop, boolean lowermost, boolean rightmost) {
return createCheckbox(parent, label, topControl, leftControl, defaultIsTop, defaultIsLeft, lowermost, SWT.DEFAULT);
}
public Spinner createSpinnerWidget(Composite parent, String label, int min, int max, int inc, int pageInc, Control leftControl, Control topControl, Control rightControl, Control bottomControl, boolean defaultIsLeft, boolean defaultIsTop, boolean lowermost, boolean rightmost) {
return createSpinnerWidget(parent, label, leftControl, topControl, lowermost, rightmost, false, min, max, inc, pageInc);
}
public Text createTextWidget(Composite parent, String label, Control leftControl, Control topControl, Control rightControl, Control bottomControl, boolean defaultIsLeft, boolean defaultIsTop, boolean lowermost, boolean rightmost) {
return createText(parent, label, leftControl, topControl, EMPTY_STRING, defaultIsTop, defaultIsLeft, lowermost, rightmost);
}
public Text createExtendedTextWidget(Composite parent, String label, Control leftControl, Control topControl, Control rightControl, Control bottomControl, boolean defaultIsLeft, boolean defaultIsTop, boolean lowermost, boolean rightmost) {
Text extendedText = createExtendedText(parent, label, leftControl, topControl, EMPTY_STRING, defaultIsTop, defaultIsLeft, lowermost, rightmost);
return extendedText;
}
public CLabel createLabelWidget(Composite parent, String label, Control leftControl, Control topControl, Control rightControl, Control bottomControl, boolean defaultIsLeft, boolean defaultIsTop, boolean lowermost, boolean rightmost) {
return createLabelWidget(parent, label, leftControl, topControl);
}
public DateTime createDateWidget(Composite parent, String label, Control leftControl, Control topControl, Control rightControl, Control bottomControl, boolean defaultIsLeft, boolean defaultIsTop, boolean lowermost, boolean rightmost) {
return createDate(parent, label, leftControl, topControl, defaultIsTop, defaultIsLeft, lowermost, rightmost);
}
public DateTime createTimeWidget(Composite parent, String label, Control leftControl, Control topControl, Control rightControl, Control bottomControl, boolean defaultIsLeft, boolean defaultIsTop, boolean lowermost, boolean rightmost) {
return createTime(parent, label, leftControl, topControl, defaultIsTop, defaultIsLeft, lowermost, rightmost);
}
public CCombo createComboBox(Composite parent, String label, Control leftControl, Control topControl, Control rightControl, Control bottomControl, boolean defaultIsLeft, boolean defaultIsTop, boolean lowermost, boolean rightmost) {
return createCombo(parent, label, leftControl, topControl, defaultIsTop, defaultIsLeft, lowermost, rightmost);
}
}