Example usage for org.eclipse.jface.layout GridDataFactory span

List of usage examples for org.eclipse.jface.layout GridDataFactory span

Introduction

In this page you can find the example usage for org.eclipse.jface.layout GridDataFactory span.

Prototype

public GridDataFactory span(int hSpan, int vSpan) 

Source Link

Document

Sets the GridData span.

Usage

From source file:com.google.eclipse.elt.view.preferences.ColorsAndFontsPreferencePage.java

License:Open Source License

@Override
protected Control createContents(Composite parent) {
    Composite contents = new Composite(parent, SWT.NONE);
    contents.setLayout(new GridLayout(1, false));

    Label lblDescription = new Label(contents, SWT.NONE);
    lblDescription.setText(colorsAndFontsTitle);

    GridDataFactory gridDataFactory = fillDefaults().align(SWT.FILL, SWT.CENTER).grab(true, false).span(1, 1);

    Composite controls = new Composite(contents, SWT.NONE);
    gridDataFactory.applyTo(controls);/*w  ww  .  ja  va 2 s  . c  om*/
    controls.setLayout(new GridLayout(1, false));

    Group grpColors = new Group(controls, SWT.NONE);
    gridDataFactory.applyTo(grpColors);
    grpColors.setLayout(new GridLayout(2, false));

    Label lblBackground = new Label(grpColors, SWT.NONE);
    lblBackground.setText(backgroundPrompt);

    backgroundColorSelector = new ColorSelector(grpColors);

    Label lblForeground = new Label(grpColors, SWT.NONE);
    lblForeground.setText(foregroundPrompt);

    foregroundColorSelector = new ColorSelector(grpColors);

    Group grpFont = new Group(controls, SWT.NONE);
    gridDataFactory.applyTo(grpFont);
    grpFont.setLayout(new GridLayout(2, false));

    SelectionListener fontButtonSelectionListener = new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            boolean useTextFont = btnUseTextFont.getSelection();
            btnChangeFont.setEnabled(!useTextFont);
            if (useTextFont) {
                updateFontDataWithTextFont();
            }
        }
    };

    btnUseTextFont = new Button(grpFont, SWT.RADIO);
    gridDataFactory.span(2, 1).applyTo(btnUseTextFont);
    btnUseTextFont.setText(useTextFont);
    btnUseTextFont.addSelectionListener(fontButtonSelectionListener);

    Link changeTextFontLink = new Link(grpFont, SWT.NONE);
    changeTextFontLink.setText(textFontLink);
    GridData gridData = new GridData(SWT.FILL, SWT.BEGINNING, true, false);
    gridData.widthHint = 150; // only expand further if anyone else requires it
    gridData.horizontalSpan = 2;
    changeTextFontLink.setLayoutData(gridData);
    changeTextFontLink.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            if ("org.eclipse.ui.preferencePages.ColorsAndFonts".equals(e.text)) {
                createPreferenceDialogOn(getShell(), e.text, null, TEXT_FONT);
            }
        }
    });

    btnUseCustomFont = new Button(grpFont, SWT.RADIO);
    gridDataFactory.applyTo(btnUseCustomFont);
    btnUseCustomFont.setText(useCustomFont);
    btnUseCustomFont.addSelectionListener(fontButtonSelectionListener);

    lblFontData = new Label(grpFont, SWT.NONE);
    gridDataFactory.span(1, 1).applyTo(lblFontData);
    lblFontData.setText("");

    btnChangeFont = new Button(grpFont, SWT.NONE);
    btnChangeFont.setText(change);
    btnChangeFont.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            FontDialog fontDialog = new FontDialog(getShell());
            fontDialog.setFontList(new FontData[] { fontData });
            FontData newFontData = fontDialog.open();
            if (newFontData != null) {
                updateFontData(newFontData);
            }
        }
    });

    Label lblPreview = new Label(contents, SWT.NONE);
    lblPreview.setText(previewPrompt);

    previewer = new ProjectionViewer(contents, null, null, false, SWT.V_SCROLL | SWT.H_SCROLL);
    previewer.setEditable(false);
    previewer.setDocument(new Document(loadContentsFrom("ColorSettingPreviewText.txt")));

    StyledText previewerText = previewer.getTextWidget();
    gridDataFactory.align(SWT.FILL, SWT.FILL).grab(true, true);
    gridDataFactory.applyTo(previewerText);
    Cursor arrowCursor = previewerText.getDisplay().getSystemCursor(SWT.CURSOR_ARROW);
    previewerText.setCursor(arrowCursor);

    backgroundColorSelector.addListener(new ColorChangeListener() {
        @Override
        void onColorChanged(RGB newValue) {
            validateInput();
            if (isValid()) {
                previewer.getTextWidget().setBackground(newColor(newValue));
            }
        }
    });

    foregroundColorSelector.addListener(new ColorChangeListener() {
        @Override
        void onColorChanged(RGB newValue) {
            validateInput();
            if (isValid()) {
                previewer.setTextColor(newColor(newValue));
            }
        }
    });

    textFontChangeListener = new IPropertyChangeListener() {
        @Override
        public void propertyChange(PropertyChangeEvent event) {
            if (TEXT_FONT.equals(event.getProperty()) && btnUseTextFont.getSelection()) {
                updateFontDataWithTextFont();
            }
        }
    };
    JFaceResources.getFontRegistry().addListener(textFontChangeListener);

    updateContents();
    return contents;
}

From source file:gov.redhawk.ide.spd.internal.ui.editor.wizard.DependencyWizardPage.java

License:Open Source License

private void createPropertyRefGroup(final Composite parent) {
    final GridDataFactory fieldTextFactory = GridDataFactory.fillDefaults().grab(true, false).span(1, 1);

    this.propertyRefGroup = new Group(parent, SWT.BORDER);
    this.propertyRefGroup.setText("Property Reference");
    this.propertyRefGroup.setLayout(new GridLayout(DependencyWizardPage.NUM_COLUMNS, false));

    Label label = new Label(this.propertyRefGroup, SWT.NULL);
    label.setText("RefId:");
    this.refIdText = new Text(this.propertyRefGroup, SWT.BORDER);
    this.refIdText.setLayoutData(fieldTextFactory.create());

    final Button propertyRefBrowse = new Button(this.propertyRefGroup, SWT.PUSH);
    propertyRefBrowse.setText("Browse...");
    propertyRefBrowse.addSelectionListener(new SelectionAdapter() {

        @Override//  w  ww.  j ava  2 s .  co  m
        public void widgetSelected(final SelectionEvent e) {

            final PropertyElementSelectorDialog dialog = new PropertyElementSelectorDialog(getShell());
            final int result = dialog.open();
            if (result == Window.OK) {
                final Simple sel = (Simple) dialog.getFirstResult();
                if (sel != null) {
                    DependencyWizardPage.this.refIdText.setText(sel.getId());
                }
            }
        }

    });

    label = new Label(this.propertyRefGroup, SWT.None);
    label.setText("Name:");
    this.propNameText = new Text(this.propertyRefGroup, SWT.BORDER | SWT.READ_ONLY);
    this.propNameText.setEnabled(false);
    this.propNameText.setLayoutData(fieldTextFactory.span(2, 1).create());

    label = new Label(this.propertyRefGroup, SWT.NULL);
    label.setText("Value:");
    this.valueText = new Text(this.propertyRefGroup, SWT.BORDER);
    this.valueText.setLayoutData(fieldTextFactory.span(2, 1).create());
}

From source file:melnorme.util.swt.components.AbstractFieldExt.java

License:Open Source License

protected GridData layoutLastControl(Control lastControl, int numColumns, boolean expandLast) {
    GridDataFactory gdf = expandLast ? GridDataFactory.fillDefaults() : GridDataFactory.swtDefaults();
    GridData gridData = gdf.span(numColumns, 1).create();
    lastControl.setLayoutData(gridData);
    return gridData;
}

From source file:org.carrot2.workbench.editors.impl.numeric.NumericRangeEditorBase.java

License:Open Source License

@Override
public void createEditor(Composite parent, int gridColumns) {
    final GridDataFactory factory = GUIFactory.editorGridData();

    final GridData spinnerLayoutData = factory.create();
    spinnerLayoutData.horizontalSpan = 1;
    spinnerLayoutData.grabExcessHorizontalSpace = false;
    spinnerLayoutData.verticalAlignment = SWT.CENTER;

    final GridData scaleLayoutData = factory.span(gridColumns - 1, 1).grab(true, false).create();

    if (minBounded && maxBounded) {
        createScale(parent);//  w  w  w  .  j a v  a  2s .c o m
        scale.setLayoutData(scaleLayoutData);
    } else {
        spinnerLayoutData.horizontalSpan = 2;
        spinnerLayoutData.grabExcessHorizontalSpace = true;
    }

    createSpinner(parent);

    spinner.setSelection(spinner.getMaximum());
    spinnerLayoutData.widthHint = maxSpinnerWidth;
    spinnerLayoutData.horizontalAlignment = SWT.FILL;

    spinner.setLayoutData(spinnerLayoutData);
}

From source file:org.eclipse.cdt.internal.ui.workingsets.WorkingSetConfigurationBlock.java

License:Open Source License

/**
 * Creates the "working set configurations" pane in the upper part of the sash form.
 * // w w  w  .  j a  v  a 2 s  .  c  o m
 * @param parent
 *            the parent composite
 * @param layoutFactory
 *            a layout-factory to use to lay out the composite in a grid, possibly pre-configured. Its use
 *            is optional
 * 
 * @return the working set configurations pane
 */
protected Composite createWorkingSetConfigsArea(Composite parent, GridLayoutFactory layoutFactory) {
    Composite result = new Composite(parent, SWT.NONE);
    layoutFactory.numColumns(2).applyTo(result);

    GridDataFactory layoutDataFactory = GridDataFactory.fillDefaults();

    Label label = new Label(result, SWT.NONE);
    label.setText(WorkingSetMessages.WSConfigDialog_wsTree_label);
    layoutDataFactory.span(2, 1).applyTo(label);

    controller = new WorkingSetConfigsController(workspace, initialSelection);

    TreeViewer tree = new TreeViewer(result);
    layoutDataFactory.span(1, 1).align(SWT.FILL, SWT.FILL).grab(true, true).hint(250, SWT.DEFAULT)
            .applyTo(tree.getControl());

    tree.setContentProvider(new WSConfigsContentProvider());
    tree.setLabelProvider(new WSConfigsLabelProvider(tree));
    controller.setTreeViewer(tree);

    tree.setComparator(new ViewerComparator() {
        @Override
        public int category(Object element) {
            if (element instanceof IWorkingSetConfiguration.ISnapshot) {
                IWorkingSetConfiguration.ISnapshot config = (IWorkingSetConfiguration.ISnapshot) element;
                if (config.isReadOnly()) {
                    return 0;
                }
            }
            return 1;
        }
    });

    tree.getTree().getAccessible().addAccessibleListener(new AccessibleAdapter() {
        @Override
        public void getName(AccessibleEvent e) {
            e.result = WorkingSetMessages.WSConfigDialog_wsTree_accessible_name;
        }
    });

    Composite buttons = new Composite(result, SWT.NONE);
    layoutDataFactory.grab(false, false).hint(SWT.DEFAULT, SWT.DEFAULT).applyTo(buttons);
    layoutFactory.numColumns(1).extendedMargins(0, 0, 0, 0).applyTo(buttons);

    Button button = new Button(buttons, SWT.PUSH);
    layoutDataFactory.align(SWT.FILL, SWT.BEGINNING).applyTo(button);
    button.setText(WorkingSetMessages.WSConfigDialog_add_label);
    controller.setAddButton(button);

    button = new Button(buttons, SWT.PUSH);
    layoutDataFactory.applyTo(button);
    button.setText(WorkingSetMessages.WSConfigDialog_remove_label);
    controller.setRemoveButton(button);

    button = new Button(buttons, SWT.PUSH);
    layoutDataFactory.applyTo(button);
    button.setText(WorkingSetMessages.WSConfigDialog_rename_label);
    controller.setRenameButton(button);

    button = new Button(buttons, SWT.PUSH);
    layoutDataFactory.applyTo(button);
    button.setText(WorkingSetMessages.WSConfigDialog_activate_label);
    controller.setActivateButton(button);

    button = new Button(buttons, SWT.PUSH);
    layoutDataFactory.applyTo(button);
    button.setText(WorkingSetMessages.WSConfigDialog_build_label);
    controller.setBuildButton(button);

    return result;
}

From source file:org.eclipse.cdt.internal.ui.workingsets.WorkingSetConfigurationBlock.java

License:Open Source License

/**
 * Creates the "project configurations" pane in the lower part of the sash form.
 * //  w w w  .j ava2  s . c  om
 * @param parent
 *            the parent composite
 * @param layoutFactory
 *            a layout-factory to use to lay out the composite in a grid, possibly pre-configured. Its use
 *            is optional
 * 
 * @return the project configurations pane
 */
protected Composite createProjectConfigsArea(Composite parent, GridLayoutFactory layoutFactory) {
    Composite result = new Composite(parent, SWT.NONE);
    layoutFactory.numColumns(1).applyTo(result);

    GridDataFactory layoutDataFactory = GridDataFactory.fillDefaults();

    Label label = new Label(result, SWT.NONE);
    label.setText(WorkingSetMessages.WSConfigDialog_projTree_label);
    layoutDataFactory.applyTo(label);

    ProjectConfigsController projectsController = new ProjectConfigsController();
    CheckboxTreeViewer tree = new CheckboxTreeViewer(result);
    layoutDataFactory.span(1, 1).align(SWT.FILL, SWT.FILL).grab(true, true).applyTo(tree.getControl());

    controller.setProjectConfigsController(projectsController);
    projectsController.setWorkingSetConfigurationsController(controller);

    projectsController.setTreeViewer(tree);

    tree.setComparator(new ViewerComparator());

    tree.getTree().getAccessible().addAccessibleListener(new AccessibleAdapter() {
        @Override
        public void getName(AccessibleEvent e) {
            e.result = WorkingSetMessages.WSConfigDialog_projTree_accessible_name;
        }
    });

    return result;
}

From source file:skillpro.dialogs.AddInputOutputDialog.java

License:Open Source License

private void createButtonsComposite(Composite container) {
    GridDataFactory gdf = GridDataFactory.swtDefaults().align(SWT.FILL, SWT.FILL).grab(true, false).span(2, 1);

    final Label productLabel = new Label(container, SWT.NONE);
    productLabel.setText("Product: ");
    productLabel.setLayoutData(gdf.span(1, 2).create());

    Set<Product> products = new HashSet<>();
    products.addAll(SkillproService.getSkillproProvider().getProductRepo().getEntities());
    for (ProductQuantity prodQuantity : existingProductQuantities) {
        products.remove(prodQuantity.getProduct());
    }/*  w w  w  .j a va2 s . c  o m*/
    final ComboViewer productComboViewer = new ComboViewer(container);
    productComboViewer.getControl().setLayoutData(gdf.span(1, 2).create());
    productComboViewer.setContentProvider(new ArrayContentProvider());
    productComboViewer.setLabelProvider(new LabelProvider() {
        @Override
        public String getText(Object element) {
            return ((Product) element).getName();
        }
    });
    productComboViewer.addSelectionChangedListener(new ISelectionChangedListener() {

        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            product = (Product) ((IStructuredSelection) productComboViewer.getSelection()).getFirstElement();
            validate();
        }
    });
    productComboViewer.setInput(products);

    final Label quantityLabel = new Label(container, SWT.NONE);
    quantityLabel.setText("Quantity: ");
    quantityLabel.setLayoutData(gdf.span(1, 1).create());

    final Text quantityText = new Text(container, SWT.BORDER);
    quantityText.setText(String.valueOf(quantity));
    quantityText.setLayoutData(gdf.span(1, 1).create());

    final Label errorLabel = new Label(container, SWT.NONE);
    errorLabel.setText(getMessage());
    errorLabel.setForeground(getShell().getDisplay().getSystemColor(SWT.COLOR_RED));
    errorLabel.setLayoutData(GridDataFactory.fillDefaults().span(2, 1).create());
    quantityText.addModifyListener(new ModifyListener() {

        @Override
        public void modifyText(ModifyEvent e) {
            quantity = -1;
            try {
                quantity = Integer.parseInt(quantityText.getText());
            } catch (NumberFormatException ex) {
            }
            if (quantity <= 0) {
                setMessage("Quantity has to be a positive integer");
            } else {
                setMessage("");
            }
            errorLabel.setText(getMessage());
            validate();
        }
    });
}

From source file:skillpro.dialogs.CreateAssetDialog.java

License:Open Source License

private void createButtonsComposite(Composite container) {
    GridDataFactory buttonGD = GridDataFactory.swtDefaults().align(SWT.FILL, SWT.FILL).grab(true, false).span(2,
            1);/*from   w w  w  . j a  va  2 s .  c  o m*/
    final Button factoryButton = new Button(container, SWT.RADIO);
    factoryButton.setText("Factory");
    factoryButton.setSelection(isFactory());
    factoryButton.setLayoutData(buttonGD.create());

    final Button factoryNodeButton = new Button(container, SWT.RADIO);
    factoryNodeButton.setText("Factory Node");
    factoryNodeButton.setSelection(isFactoryNode());
    factoryNodeButton.setLayoutData(buttonGD.create());

    final Button assetButton = new Button(container, SWT.RADIO);
    assetButton.setText("Resource");
    assetButton.setSelection(isResource());
    assetButton.setLayoutData(buttonGD.create());

    final Label sep = new Label(container, SWT.SEPARATOR | SWT.HORIZONTAL);
    sep.setLayoutData(buttonGD.create());

    final Label nameLabel = new Label(container, SWT.NONE);
    nameLabel.setText("Name: ");
    nameLabel.setLayoutData(buttonGD.span(1, 1).create());

    final Text nameText = new Text(container, SWT.BORDER);
    nameText.setEditable(isNameEditable);
    nameText.setText(name);
    nameText.selectAll();
    nameText.setLayoutData(buttonGD.span(1, 1).create());

    final Label sep2 = new Label(container, SWT.SEPARATOR | SWT.HORIZONTAL);
    sep2.setLayoutData(buttonGD.create());

    final Button logicalButton = new Button(container, SWT.CHECK);
    logicalButton.setText("Logical?");
    logicalButton.setSelection(false);
    logicalButton.setEnabled(false);
    logicalButton.setLayoutData(buttonGD.create());

    factoryButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            assetType = AssetType.FACTORY;
            logicalButton.setEnabled(assetType.canBeLogical);
        }
    });

    factoryNodeButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            assetType = AssetType.FACTORY_NODE;
            logicalButton.setEnabled(assetType.canBeLogical);
        }
    });

    assetButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            assetType = AssetType.RESOURCE;
            logicalButton.setEnabled(assetType.canBeLogical);
        }
    });

    logicalButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            isLogical = logicalButton.getSelection();
        }
    });

    nameText.addModifyListener(new ModifyListener() {
        @Override
        public void modifyText(ModifyEvent e) {
            name = nameText.getText();
            getOkButton().setEnabled(name.length() > 0);
        }
    });
}

From source file:skillpro.dialogs.EditAssetDialog.java

License:Open Source License

private void createButtonsComposite(Composite container) {
    GridDataFactory buttonGD = GridDataFactory.swtDefaults().align(SWT.FILL, SWT.FILL).grab(true, false).span(2,
            1);/* w  w  w . j a  v  a 2s .c om*/

    final Label nameLabel = new Label(container, SWT.NONE);
    nameLabel.setText("Name: ");
    nameLabel.setLayoutData(buttonGD.span(1, 1).create());

    final Text nameText = new Text(container, SWT.BORDER);
    nameText.setText(factoryNode.getName());
    nameText.selectAll();
    nameText.setLayoutData(buttonGD.span(1, 1).create());

    if (isFactoryNode) {
        final Label sep2 = new Label(container, SWT.SEPARATOR | SWT.HORIZONTAL);
        sep2.setLayoutData(buttonGD.create());

        final Button logicalButton = new Button(container, SWT.CHECK);
        logicalButton.setText("Logical?");
        logicalButton.setSelection(isLogical);
        logicalButton.setEnabled(isFactoryNode);
        logicalButton.setLayoutData(buttonGD.create());

        logicalButton.addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                isLogical = logicalButton.getSelection();
            }
        });
    }

    nameText.addModifyListener(new ModifyListener() {
        @Override
        public void modifyText(ModifyEvent e) {
            name = nameText.getText();
            getOkButton().setEnabled(name.length() > 0);
        }
    });
}