Example usage for org.eclipse.swt.widgets Button setText

List of usage examples for org.eclipse.swt.widgets Button setText

Introduction

In this page you can find the example usage for org.eclipse.swt.widgets Button setText.

Prototype

public void setText(String text) 

Source Link

Document

Sets the receiver's text.

Usage

From source file:msi.gama.gui.swt.controls.SWTChartEditor.java

/**
 * Creates a new editor.//  w ww .ja  v a 2  s  .c  o  m
 * 
 * @param display the display.
 * @param chart2edit the chart to edit.
 */
public SWTChartEditor(final Display display, final JFreeChart chart2edit, final Point position) {
    this.shell = new Shell(display, SWT.APPLICATION_MODAL | SWT.NO_TRIM);
    this.shell.setSize(400, 500);
    this.shell.setBackground(Display.getDefault().getSystemColor(SWT.COLOR_BLACK));
    // this.shell.setAlpha(140);
    this.chart = chart2edit;
    this.shell.setText("Chart properties");
    this.shell.setLocation(position);
    GridLayout layout = new GridLayout(2, false);
    layout.marginLeft = layout.marginTop = layout.marginRight = layout.marginBottom = 5;
    this.shell.setLayout(layout);
    Composite main = new Composite(this.shell, SWT.NONE);
    main.setLayout(new FillLayout());
    main.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 2, 1));

    TabFolder tab = new TabFolder(main, SWT.BORDER);
    // build first tab
    TabItem item1 = new TabItem(tab, SWT.NONE);
    item1.setText(" " + "Title" + " ");
    this.titleEditor = new SWTTitleEditor(tab, SWT.NONE, this.chart.getTitle());
    item1.setControl(this.titleEditor);
    // build second tab
    TabItem item2 = new TabItem(tab, SWT.NONE);
    item2.setText(" " + "Plot" + " ");
    this.plotEditor = new SWTPlotEditor(tab, SWT.NONE, this.chart.getPlot());
    item2.setControl(this.plotEditor);
    // build the third tab
    TabItem item3 = new TabItem(tab, SWT.NONE);
    item3.setText(" " + "Other" + " ");
    this.otherEditor = new SWTOtherEditor(tab, SWT.NONE, this.chart);
    item3.setControl(this.otherEditor);

    // ok and cancel buttons
    Button cancel = new Button(this.shell, SWT.PUSH);
    cancel.setText(" Cancel ");
    cancel.setLayoutData(new GridData(SWT.RIGHT, SWT.FILL, false, false));
    cancel.pack();
    cancel.addSelectionListener(new SelectionAdapter() {

        @Override
        public void widgetSelected(final SelectionEvent e) {
            SWTChartEditor.this.shell.dispose();
        }
    });
    Button ok = new Button(this.shell, SWT.PUSH | SWT.OK);
    ok.setText(" Ok ");
    ok.setLayoutData(new GridData(SWT.RIGHT, SWT.FILL, false, false));
    ok.pack();
    ok.addSelectionListener(new SelectionAdapter() {

        @Override
        public void widgetSelected(final SelectionEvent e) {
            updateChart(SWTChartEditor.this.chart);
            SWTChartEditor.this.shell.dispose();
        }
    });

}

From source file:org.eclipse.swt.examples.texteditor.TextEditor.java

void createMenuBar() {
    Menu menu = new Menu(shell, SWT.BAR);
    shell.setMenuBar(menu);//from w  ww. j  av a 2 s  .c o m

    MenuItem fileItem = new MenuItem(menu, SWT.CASCADE);
    Menu fileMenu = new Menu(shell, SWT.DROP_DOWN);
    fileItem.setText(getResourceString("File_menuitem")); //$NON-NLS-1$
    fileItem.setMenu(fileMenu);

    MenuItem openItem = new MenuItem(fileMenu, SWT.PUSH);
    openItem.setText(getResourceString("Open_menuitem")); //$NON-NLS-1$
    openItem.addSelectionListener(widgetSelectedAdapter(event -> {
        FileDialog dialog = new FileDialog(shell, SWT.OPEN);
        dialog.setFilterNames(new String[] { getResourceString("Text_Documents") }); //$NON-NLS-1$
        dialog.setFilterExtensions(new String[] { "*.txt" }); //$NON-NLS-1$
        String name = dialog.open();
        if (name == null)
            return;
        fileName = name;
        try (FileInputStream file = new FileInputStream(name);) {
            styledText.setText(openFile(file));
        } catch (IOException e) {
            showError(getResourceString("Error"), e.getMessage()); //$NON-NLS-1$
        }
    }));

    final MenuItem saveItem = new MenuItem(fileMenu, SWT.PUSH);
    saveItem.setText(getResourceString("Save_menuitem")); //$NON-NLS-1$
    saveItem.addSelectionListener(widgetSelectedAdapter(event -> saveFile()));

    fileMenu.addMenuListener(new MenuAdapter() {
        @Override
        public void menuShown(MenuEvent event) {
            saveItem.setEnabled(fileName != null);
        }
    });

    MenuItem saveAsItem = new MenuItem(fileMenu, SWT.PUSH);
    saveAsItem.setText(getResourceString("SaveAs_menuitem")); //$NON-NLS-1$
    saveAsItem.addSelectionListener(widgetSelectedAdapter(event -> {
        FileDialog dialog = new FileDialog(shell, SWT.SAVE);
        dialog.setFilterNames(new String[] { getResourceString("Text_Documents") }); //$NON-NLS-1$
        dialog.setFilterExtensions(new String[] { "*.txt" }); //$NON-NLS-1$
        if (fileName != null)
            dialog.setFileName(fileName);
        String name = dialog.open();
        if (name != null) {
            fileName = name;
            saveFile();
        }
    }));

    new MenuItem(fileMenu, SWT.SEPARATOR);

    MenuItem exitItem = new MenuItem(fileMenu, SWT.PUSH);
    exitItem.setText(getResourceString("Exit_menuitem")); //$NON-NLS-1$
    exitItem.addSelectionListener(widgetSelectedAdapter(event -> shell.dispose()));

    MenuItem editItem = new MenuItem(menu, SWT.CASCADE);
    final Menu editMenu = new Menu(shell, SWT.DROP_DOWN);
    editItem.setText(getResourceString("Edit_menuitem")); //$NON-NLS-1$
    editItem.setMenu(editMenu);
    final MenuItem cutItem = new MenuItem(editMenu, SWT.PUSH);
    cutItem.setText(getResourceString("Cut_menuitem")); //$NON-NLS-1$
    cutItem.setImage(iCut);
    cutItem.setAccelerator(SWT.MOD1 | 'x');
    cutItem.addSelectionListener(widgetSelectedAdapter(event -> styledText.cut()));

    final MenuItem copyItem = new MenuItem(editMenu, SWT.PUSH);
    copyItem.setText(getResourceString("Copy_menuitem")); //$NON-NLS-1$
    copyItem.setImage(iCopy);
    copyItem.setAccelerator(SWT.MOD1 | 'c');
    copyItem.addSelectionListener(widgetSelectedAdapter(event -> styledText.copy()));

    MenuItem pasteItem = new MenuItem(editMenu, SWT.PUSH);
    pasteItem.setText(getResourceString("Paste_menuitem")); //$NON-NLS-1$
    pasteItem.setImage(iPaste);
    pasteItem.setAccelerator(SWT.MOD1 | 'v');
    pasteItem.addSelectionListener(widgetSelectedAdapter(event -> styledText.paste()));

    new MenuItem(editMenu, SWT.SEPARATOR);
    final MenuItem selectAllItem = new MenuItem(editMenu, SWT.PUSH);
    selectAllItem.setText(getResourceString("SelectAll_menuitem")); //$NON-NLS-1$
    selectAllItem.setAccelerator(SWT.MOD1 | 'a');
    selectAllItem.addSelectionListener(widgetSelectedAdapter(event -> styledText.selectAll()));

    editMenu.addMenuListener(menuShownAdapter(event -> {
        int selectionCount = styledText.getSelectionCount();
        cutItem.setEnabled(selectionCount > 0);
        copyItem.setEnabled(selectionCount > 0);
        selectAllItem.setEnabled(selectionCount < styledText.getCharCount());
    }));

    MenuItem wrapItem = new MenuItem(editMenu, SWT.CHECK);
    wrapItem.setText(getResourceString("Wrap_menuitem")); //$NON-NLS-1$
    wrapItem.addSelectionListener(widgetSelectedAdapter(event -> {
        MenuItem item = (MenuItem) event.widget;
        boolean enabled = item.getSelection();
        styledText.setWordWrap(enabled);
        editMenu.getItem(6).setEnabled(enabled);
        editMenu.getItem(8).setEnabled(enabled);
        leftAlignmentItem.setEnabled(enabled);
        centerAlignmentItem.setEnabled(enabled);
        rightAlignmentItem.setEnabled(enabled);
        justifyAlignmentItem.setEnabled(enabled);
        blockSelectionItem.setEnabled(!enabled);
    }));

    MenuItem justifyItem = new MenuItem(editMenu, SWT.CHECK);
    justifyItem.setText(getResourceString("Justify_menuitem")); //$NON-NLS-1$
    justifyItem.addSelectionListener(widgetSelectedAdapter(event -> {
        MenuItem item = (MenuItem) event.widget;
        styledText.setJustify(item.getSelection());
        updateToolBar();
    }));
    justifyItem.setEnabled(false);

    MenuItem setFontItem = new MenuItem(editMenu, SWT.PUSH);
    setFontItem.setText(getResourceString("SetFont_menuitem")); //$NON-NLS-1$
    setFontItem.addSelectionListener(widgetSelectedAdapter(event -> {
        FontDialog fontDialog = new FontDialog(shell);
        fontDialog.setFontList(styledText.getFont().getFontData());
        FontData data = fontDialog.open();
        if (data != null) {
            Font newFont = new Font(display, data);
            styledText.setFont(newFont);
            if (font != null)
                font.dispose();
            font = newFont;
            updateToolBar();
        }
    }));

    MenuItem alignmentItem = new MenuItem(editMenu, SWT.CASCADE);
    alignmentItem.setText(getResourceString("Alignment_menuitem")); //$NON-NLS-1$
    Menu alignmentMenu = new Menu(shell, SWT.DROP_DOWN);
    alignmentItem.setMenu(alignmentMenu);
    final MenuItem leftAlignmentItem = new MenuItem(alignmentMenu, SWT.RADIO);
    leftAlignmentItem.setText(getResourceString("Left_menuitem")); //$NON-NLS-1$
    leftAlignmentItem.setSelection(true);
    leftAlignmentItem.addSelectionListener(widgetSelectedAdapter(event -> {
        styledText.setAlignment(SWT.LEFT);
        updateToolBar();
    }));
    alignmentItem.setEnabled(false);

    final MenuItem centerAlignmentItem = new MenuItem(alignmentMenu, SWT.RADIO);
    centerAlignmentItem.setText(getResourceString("Center_menuitem")); //$NON-NLS-1$
    centerAlignmentItem.addSelectionListener(widgetSelectedAdapter(event -> {
        styledText.setAlignment(SWT.CENTER);
        updateToolBar();
    }));

    MenuItem rightAlignmentItem = new MenuItem(alignmentMenu, SWT.RADIO);
    rightAlignmentItem.setText(getResourceString("Right_menuitem")); //$NON-NLS-1$
    rightAlignmentItem.addSelectionListener(widgetSelectedAdapter(event -> {
        styledText.setAlignment(SWT.RIGHT);
        updateToolBar();
    }));

    MenuItem editOrientationItem = new MenuItem(editMenu, SWT.CASCADE);
    editOrientationItem.setText(getResourceString("Orientation_menuitem")); //$NON-NLS-1$
    Menu editOrientationMenu = new Menu(shell, SWT.DROP_DOWN);
    editOrientationItem.setMenu(editOrientationMenu);

    MenuItem leftToRightItem = new MenuItem(editOrientationMenu, SWT.RADIO);
    leftToRightItem.setText(getResourceString("LeftToRight_menuitem")); //$NON-NLS-1$
    leftToRightItem
            .addSelectionListener(widgetSelectedAdapter(event -> styledText.setOrientation(SWT.LEFT_TO_RIGHT)));
    leftToRightItem.setSelection(true);

    MenuItem rightToLeftItem = new MenuItem(editOrientationMenu, SWT.RADIO);
    rightToLeftItem.setText(getResourceString("RightToLeft_menuitem")); //$NON-NLS-1$
    rightToLeftItem
            .addSelectionListener(widgetSelectedAdapter(event -> styledText.setOrientation(SWT.RIGHT_TO_LEFT)));

    new MenuItem(editMenu, SWT.SEPARATOR);
    MenuItem insertObjectItem = new MenuItem(editMenu, SWT.CASCADE);
    insertObjectItem.setText(getResourceString("InsertObject_menuitem")); //$NON-NLS-1$
    Menu insertObjectMenu = new Menu(shell, SWT.DROP_DOWN);
    insertObjectItem.setMenu(insertObjectMenu);

    MenuItem insertControlItem = new MenuItem(insertObjectMenu, SWT.CASCADE);
    insertControlItem.setText(getResourceString("Controls_menuitem")); //$NON-NLS-1$
    Menu controlChoice = new Menu(shell, SWT.DROP_DOWN);
    insertControlItem.setMenu(controlChoice);

    MenuItem buttonItem = new MenuItem(controlChoice, SWT.PUSH);
    buttonItem.setText(getResourceString("Button_menuitem")); //$NON-NLS-1$
    MenuItem comboItem = new MenuItem(controlChoice, SWT.PUSH);
    comboItem.setText(getResourceString("Combo_menuitem")); //$NON-NLS-1$

    buttonItem.addSelectionListener(widgetSelectedAdapter(event -> {
        Button button = new Button(styledText, SWT.PUSH);
        button.setText(getResourceString("Button_menuitem")); //$NON-NLS-1$
        addControl(button);
    }));

    comboItem.addSelectionListener(widgetSelectedAdapter(event -> {
        Combo combo = new Combo(styledText, SWT.NONE);
        combo.setText(getResourceString("Combo_menuitem")); //$NON-NLS-1$
        addControl(combo);
    }));

    MenuItem insertImageItem = new MenuItem(insertObjectMenu, SWT.PUSH);
    insertImageItem.setText(getResourceString("Image_menuitem")); //$NON-NLS-1$

    insertImageItem.addSelectionListener(widgetSelectedAdapter(event -> {
        FileDialog fileDialog = new FileDialog(shell, SWT.OPEN);
        String fileName = fileDialog.open();
        if (fileName != null) {
            try {
                Image image = new Image(display, fileName);
                addImage(image);
            } catch (Exception e) {
                showError(getResourceString("Bad_image"), e.getMessage()); //$NON-NLS-1$
            }
        }
    }));

    if (SAMPLE_TEXT) {
        new MenuItem(editMenu, SWT.SEPARATOR);
        MenuItem loadProfileItem = new MenuItem(editMenu, SWT.CASCADE);
        loadProfileItem.setText(getResourceString("LoadProfile_menuitem")); //$NON-NLS-1$
        Menu loadProfileMenu = new Menu(shell, SWT.DROP_DOWN);
        loadProfileItem.setMenu(loadProfileMenu);
        SelectionListener adapter = widgetSelectedAdapter(event -> {
            int profile = Integer.parseInt((String) event.widget.getData());
            loadProfile(profile);
        });

        MenuItem profileItem = new MenuItem(loadProfileMenu, SWT.PUSH);
        profileItem.setText(getResourceString("Profile1_menuitem")); //$NON-NLS-1$
        profileItem.setData("1"); //$NON-NLS-1$
        profileItem.addSelectionListener(adapter);
        profileItem = new MenuItem(loadProfileMenu, SWT.PUSH);
        profileItem.setText(getResourceString("Profile2_menuitem")); //$NON-NLS-1$
        profileItem.setData("2"); //$NON-NLS-1$
        profileItem.addSelectionListener(adapter);
        profileItem = new MenuItem(loadProfileMenu, SWT.PUSH);
        profileItem.setText(getResourceString("Profile3_menuitem")); //$NON-NLS-1$
        profileItem.setData("3"); //$NON-NLS-1$
        profileItem.addSelectionListener(adapter);
        profileItem = new MenuItem(loadProfileMenu, SWT.PUSH);
        profileItem.setText(getResourceString("Profile4_menuitem")); //$NON-NLS-1$
        profileItem.setData("4"); //$NON-NLS-1$
        profileItem.addSelectionListener(adapter);
    }
}

From source file:org.eclipse.swt.examples.controlexample.Tab.java

/**
 * Append the Set/Get API controls to the "Other" group.
 *//*w  w  w  .  j  ava2 s . com*/
void createSetGetGroup() {
    /*
     * Create the button to access set/get API functionality.
     */
    final String[] methodNames = getMethodNames();
    if (methodNames != null) {
        final Button setGetButton = new Button(otherGroup, SWT.PUSH);
        setGetButton.setText(ControlExample.getResourceString("Set_Get"));
        setGetButton.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false));
        setGetButton.addSelectionListener(widgetSelectedAdapter(e -> {
            if (getExampleWidgets().length > 0) {
                if (setGetDialog == null) {
                    setGetDialog = createSetGetDialog(methodNames);
                }
                Point pt = setGetButton.getLocation();
                pt = display.map(setGetButton.getParent(), null, pt);
                setGetDialog.setLocation(pt.x, pt.y);
                setGetDialog.open();
            }
        }));
    }
}

From source file:org.eclipse.swt.examples.controlexample.Tab.java

/**
 * Creates the "Colors and Fonts" group. This is typically
 * a child of the "Control" group. Subclasses override
 * this method to customize color and font settings.
 *///from  w w  w  . ja  v a 2s  . c om
void createColorAndFontGroup() {
    /* Create the group. */
    colorGroup = new Group(controlGroup, SWT.NONE);
    colorGroup.setLayout(new GridLayout(2, true));
    colorGroup.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false));
    colorGroup.setText(ControlExample.getResourceString("Colors"));
    colorAndFontTable = new Table(colorGroup, SWT.BORDER | SWT.V_SCROLL);
    colorAndFontTable.setLayoutData(new GridData(SWT.FILL, SWT.BEGINNING, true, false, 2, 1));
    TableItem item = new TableItem(colorAndFontTable, SWT.None);
    item.setText(ControlExample.getResourceString("Foreground_Color"));
    colorAndFontTable.setSelection(0);
    item = new TableItem(colorAndFontTable, SWT.None);
    item.setText(ControlExample.getResourceString("Background_Color"));
    item = new TableItem(colorAndFontTable, SWT.None);
    item.setText(ControlExample.getResourceString("Font"));
    Button changeButton = new Button(colorGroup, SWT.PUSH);
    changeButton.setText(ControlExample.getResourceString("Change"));
    changeButton.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false));
    Button defaultsButton = new Button(colorGroup, SWT.PUSH);
    defaultsButton.setText(ControlExample.getResourceString("Defaults"));
    defaultsButton.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false));

    /* Add listeners to set/reset colors and fonts. */
    colorDialog = new ColorDialog(shell);
    fontDialog = new FontDialog(shell);
    colorAndFontTable.addSelectionListener(
            widgetDefaultSelectedAdapter(event -> changeFontOrColor(colorAndFontTable.getSelectionIndex())));
    changeButton.addSelectionListener(
            widgetSelectedAdapter(event -> changeFontOrColor(colorAndFontTable.getSelectionIndex())));
    defaultsButton.addSelectionListener(widgetSelectedAdapter(e -> resetColorsAndFonts()));
    shell.addDisposeListener(event -> {
        if (foregroundColor != null)
            foregroundColor.dispose();
        if (backgroundColor != null)
            backgroundColor.dispose();
        if (font != null)
            font.dispose();
        foregroundColor = null;
        backgroundColor = null;
        font = null;
        if (colorAndFontTable != null && !colorAndFontTable.isDisposed()) {
            TableItem[] items = colorAndFontTable.getItems();
            for (TableItem currentItem : items) {
                Image image = currentItem.getImage();
                if (image != null)
                    image.dispose();
            }
        }
    });
}

From source file:org.eclipse.swt.examples.controlexample.Tab.java

/**
 * Creates the "Listeners" group.  The "Listeners" group
 * goes below the "Example" and "Control" groups.
 *///from  w  w w  . j  av a  2  s  .  c  o m
void createListenersGroup() {
    listenersGroup = new Group(tabFolderPage, SWT.NONE);
    listenersGroup.setLayout(new GridLayout(4, false));
    listenersGroup.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 2, 1));
    listenersGroup.setText(ControlExample.getResourceString("Listeners"));

    /*
     * Create the button to access the 'Listeners' dialog.
     */
    Button listenersButton = new Button(listenersGroup, SWT.PUSH);
    listenersButton.setText(ControlExample.getResourceString("Select_Listeners"));
    listenersButton.addSelectionListener(widgetSelectedAdapter(e -> {
        createListenerSelectionDialog();
        recreateExampleWidgets();
    }));

    /*
     * Create the checkbox to specify whether typed or untyped events are displayed in the log.
     */
    final Button untypedEventsCheckbox = new Button(listenersGroup, SWT.CHECK);
    untypedEventsCheckbox.setText(ControlExample.getResourceString("UntypedEvents"));
    untypedEventsCheckbox.addSelectionListener(
            widgetSelectedAdapter(e -> untypedEvents = untypedEventsCheckbox.getSelection()));

    /*
     * Create the checkbox to add/remove listeners to/from the example widgets.
     */
    final Button listenCheckbox = new Button(listenersGroup, SWT.CHECK);
    listenCheckbox.setText(ControlExample.getResourceString("Listen"));
    listenCheckbox.addSelectionListener(widgetSelectedAdapter(e -> {
        logging = listenCheckbox.getSelection();
        recreateExampleWidgets();
    }));

    /*
     * Create the button to clear the text.
     */
    Button clearButton = new Button(listenersGroup, SWT.PUSH);
    clearButton.setText(ControlExample.getResourceString("Clear"));
    clearButton.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_END));
    clearButton.addSelectionListener(widgetSelectedAdapter(e -> eventConsole.setText("")));

    /* Initialize the eventsFilter to log all events. */
    int customEventCount = getCustomEventNames().length;
    eventsFilter = new boolean[EVENT_INFO.length + customEventCount];
    for (int i = 0; i < EVENT_INFO.length + customEventCount; i++) {
        eventsFilter[i] = true;
    }

    /* Create the event console Text. */
    eventConsole = new Text(listenersGroup, SWT.BORDER | SWT.MULTI | SWT.V_SCROLL | SWT.H_SCROLL);
    GridData data = new GridData(GridData.FILL_BOTH);
    data.horizontalSpan = 4;
    data.heightHint = 80;
    eventConsole.setLayoutData(data);
    createEventConsolePopup();
    eventConsole.addKeyListener(new KeyAdapter() {
        @Override
        public void keyPressed(KeyEvent e) {
            if ((e.keyCode == 'A' || e.keyCode == 'a') && (e.stateMask & SWT.MOD1) != 0) {
                eventConsole.selectAll();
                e.doit = false;
            }
        }
    });
}

From source file:org.eclipse.swt.examples.controlexample.Tab.java

/**
 * Creates and opens the "Listener selection" dialog.
 *//* w w  w. j  av a  2  s.  co  m*/
void createListenerSelectionDialog() {
    final Shell dialog = new Shell(shell, SWT.DIALOG_TRIM | SWT.RESIZE | SWT.APPLICATION_MODAL);
    dialog.setText(ControlExample.getResourceString("Select_Listeners"));
    dialog.setLayout(new GridLayout(2, false));
    final Table table = new Table(dialog, SWT.BORDER | SWT.V_SCROLL | SWT.CHECK);
    GridData data = new GridData(GridData.FILL_BOTH);
    data.verticalSpan = 3;
    table.setLayoutData(data);
    for (int i = 0; i < EVENT_INFO.length; i++) {
        TableItem item = new TableItem(table, SWT.NONE);
        item.setText(EVENT_INFO[i].name);
        item.setChecked(eventsFilter[i]);
    }
    final String[] customNames = getCustomEventNames();
    for (int i = 0; i < customNames.length; i++) {
        TableItem item = new TableItem(table, SWT.NONE);
        item.setText(customNames[i]);
        item.setChecked(eventsFilter[EVENT_INFO.length + i]);
    }
    Button selectAll = new Button(dialog, SWT.PUSH);
    selectAll.setText(ControlExample.getResourceString("Select_All"));
    selectAll.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_FILL));
    selectAll.addSelectionListener(widgetSelectedAdapter(e -> {
        TableItem[] items = table.getItems();
        for (int i = 0; i < EVENT_INFO.length; i++) {
            items[i].setChecked(true);
        }
        for (int i = 0; i < customNames.length; i++) {
            items[EVENT_INFO.length + i].setChecked(true);
        }
    }));
    Button deselectAll = new Button(dialog, SWT.PUSH);
    deselectAll.setText(ControlExample.getResourceString("Deselect_All"));
    deselectAll.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_FILL));
    deselectAll.addSelectionListener(widgetSelectedAdapter(e -> {
        TableItem[] items = table.getItems();
        for (int i = 0; i < EVENT_INFO.length; i++) {
            items[i].setChecked(false);
        }
        for (int i = 0; i < customNames.length; i++) {
            items[EVENT_INFO.length + i].setChecked(false);
        }
    }));
    final Button editEvent = new Button(dialog, SWT.PUSH);
    editEvent.setText(ControlExample.getResourceString("Edit_Event"));
    editEvent.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_FILL | GridData.VERTICAL_ALIGN_BEGINNING));
    editEvent.addSelectionListener(widgetSelectedAdapter(e -> {
        Point pt = editEvent.getLocation();
        pt = e.display.map(editEvent, null, pt);
        int index = table.getSelectionIndex();
        if (getExampleWidgets().length > 0 && index != -1) {
            createEditEventDialog(dialog, pt.x, pt.y, index);
        }
    }));
    editEvent.setEnabled(false);
    table.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            int fields = 0;
            int index = table.getSelectionIndex();
            if (index != -1 && index < EVENT_INFO.length) { // TODO: Allow custom widgets to specify event info
                fields = (EVENT_INFO[index].settableFields);
            }
            editEvent.setEnabled(fields != 0);
        }

        @Override
        public void widgetDefaultSelected(SelectionEvent e) {
            if (editEvent.getEnabled()) {
                Point pt = editEvent.getLocation();
                pt = e.display.map(editEvent, null, pt);
                int index = table.getSelectionIndex();
                if (getExampleWidgets().length > 0 && index != -1 && index < EVENT_INFO.length) {
                    createEditEventDialog(dialog, pt.x, pt.y, index);
                }
            }
        }
    });

    new Label(dialog, SWT.NONE); /* Filler */
    Button ok = new Button(dialog, SWT.PUSH);
    ok.setText(ControlExample.getResourceString("OK"));
    dialog.setDefaultButton(ok);
    ok.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_FILL));
    ok.addSelectionListener(widgetSelectedAdapter(e -> {
        TableItem[] items = table.getItems();
        for (int i = 0; i < EVENT_INFO.length; i++) {
            eventsFilter[i] = items[i].getChecked();
        }
        for (int i = 0; i < customNames.length; i++) {
            eventsFilter[EVENT_INFO.length + i] = items[EVENT_INFO.length + i].getChecked();
        }
        dialog.dispose();
    }));
    dialog.pack();
    /*
     * If the preferred size of the dialog is too tall for the display,
     * then reduce the height, so that the vertical scrollbar will appear.
     */
    Rectangle bounds = dialog.getBounds();
    Rectangle trim = dialog.computeTrim(0, 0, 0, 0);
    Rectangle clientArea = display.getClientArea();
    if (bounds.height > clientArea.height) {
        dialog.setSize(bounds.width, clientArea.height - trim.height);
    }
    dialog.setLocation(bounds.x, clientArea.y);
    dialog.open();
    while (!dialog.isDisposed()) {
        if (!display.readAndDispatch())
            display.sleep();
    }
}

From source file:org.eclipse.swt.examples.texteditor.TextEditor.java

void createToolBar() {
    coolBar = new CoolBar(shell, SWT.FLAT);
    ToolBar styleToolBar = new ToolBar(coolBar, SWT.FLAT);
    boldControl = new ToolItem(styleToolBar, SWT.CHECK);
    boldControl.setImage(iBold);//from ww  w .  ja v  a 2 s .c om
    boldControl.setToolTipText(getResourceString("Bold")); //$NON-NLS-1$
    boldControl.addSelectionListener(widgetSelectedAdapter(event -> setStyle(BOLD)));

    italicControl = new ToolItem(styleToolBar, SWT.CHECK);
    italicControl.setImage(iItalic);
    italicControl.setToolTipText(getResourceString("Italic")); //$NON-NLS-1$
    italicControl.addSelectionListener(widgetSelectedAdapter(event -> setStyle(ITALIC)));

    final Menu underlineMenu = new Menu(shell, SWT.POP_UP);
    underlineSingleItem = new MenuItem(underlineMenu, SWT.RADIO);
    underlineSingleItem.setText(getResourceString("Single_menuitem")); //$NON-NLS-1$
    underlineSingleItem.addSelectionListener(widgetSelectedAdapter(event -> {
        if (underlineSingleItem.getSelection()) {
            setStyle(UNDERLINE_SINGLE);
        }
    }));
    underlineSingleItem.setSelection(true);

    underlineDoubleItem = new MenuItem(underlineMenu, SWT.RADIO);
    underlineDoubleItem.setText(getResourceString("Double_menuitem")); //$NON-NLS-1$
    underlineDoubleItem.addSelectionListener(widgetSelectedAdapter(event -> {
        if (underlineDoubleItem.getSelection()) {
            setStyle(UNDERLINE_DOUBLE);
        }
    }));

    underlineSquiggleItem = new MenuItem(underlineMenu, SWT.RADIO);
    underlineSquiggleItem.setText(getResourceString("Squiggle_menuitem")); //$NON-NLS-1$
    underlineSquiggleItem.addSelectionListener(widgetSelectedAdapter(event -> {
        if (underlineSquiggleItem.getSelection()) {
            setStyle(UNDERLINE_SQUIGGLE);
        }
    }));

    underlineErrorItem = new MenuItem(underlineMenu, SWT.RADIO);
    underlineErrorItem.setText(getResourceString("Error_menuitem")); //$NON-NLS-1$
    underlineErrorItem.addSelectionListener(widgetSelectedAdapter(event -> {
        if (underlineErrorItem.getSelection()) {
            setStyle(UNDERLINE_ERROR);
        }
    }));

    MenuItem underlineColorItem = new MenuItem(underlineMenu, SWT.PUSH);
    underlineColorItem.setText(getResourceString("Color_menuitem")); //$NON-NLS-1$
    underlineColorItem.addSelectionListener(widgetSelectedAdapter(event -> {
        ColorDialog dialog = new ColorDialog(shell);
        RGB rgb = underlineColor != null ? underlineColor.getRGB() : null;
        dialog.setRGB(rgb);
        RGB newRgb = dialog.open();
        if (newRgb != null) {
            if (!newRgb.equals(rgb)) {
                disposeResource(underlineColor);
                underlineColor = new Color(display, newRgb);
            }
            if (underlineSingleItem.getSelection())
                setStyle(UNDERLINE_SINGLE);
            else if (underlineDoubleItem.getSelection())
                setStyle(UNDERLINE_DOUBLE);
            else if (underlineErrorItem.getSelection())
                setStyle(UNDERLINE_ERROR);
            else if (underlineSquiggleItem.getSelection())
                setStyle(UNDERLINE_SQUIGGLE);
        }
    }));

    final ToolItem underlineControl = new ToolItem(styleToolBar, SWT.DROP_DOWN);
    underlineControl.setImage(iUnderline);
    underlineControl.setToolTipText(getResourceString("Underline")); //$NON-NLS-1$
    underlineControl.addSelectionListener(widgetSelectedAdapter(event -> {
        if (event.detail == SWT.ARROW) {
            Rectangle rect = underlineControl.getBounds();
            Point pt = new Point(rect.x, rect.y + rect.height);
            underlineMenu.setLocation(display.map(underlineControl.getParent(), null, pt));
            underlineMenu.setVisible(true);
        } else {
            if (underlineSingleItem.getSelection())
                setStyle(UNDERLINE_SINGLE);
            else if (underlineDoubleItem.getSelection())
                setStyle(UNDERLINE_DOUBLE);
            else if (underlineErrorItem.getSelection())
                setStyle(UNDERLINE_ERROR);
            else if (underlineSquiggleItem.getSelection())
                setStyle(UNDERLINE_SQUIGGLE);
        }
    }));

    ToolItem strikeoutControl = new ToolItem(styleToolBar, SWT.DROP_DOWN);
    strikeoutControl.setImage(iStrikeout);
    strikeoutControl.setToolTipText(getResourceString("Strikeout")); //$NON-NLS-1$
    strikeoutControl.addSelectionListener(widgetSelectedAdapter(event -> {
        if (event.detail == SWT.ARROW) {
            ColorDialog dialog = new ColorDialog(shell);
            RGB rgb = strikeoutColor != null ? strikeoutColor.getRGB() : null;
            dialog.setRGB(rgb);
            RGB newRgb = dialog.open();
            if (newRgb == null)
                return;
            if (!newRgb.equals(rgb)) {
                disposeResource(strikeoutColor);
                strikeoutColor = new Color(display, newRgb);
            }
        }
        setStyle(STRIKEOUT);
    }));

    final Menu borderMenu = new Menu(shell, SWT.POP_UP);
    borderSolidItem = new MenuItem(borderMenu, SWT.RADIO);
    borderSolidItem.setText(getResourceString("Solid")); //$NON-NLS-1$
    borderSolidItem.addSelectionListener(widgetSelectedAdapter(event -> {
        if (borderSolidItem.getSelection()) {
            setStyle(BORDER_SOLID);
        }
    }));
    borderSolidItem.setSelection(true);

    borderDashItem = new MenuItem(borderMenu, SWT.RADIO);
    borderDashItem.setText(getResourceString("Dash")); //$NON-NLS-1$
    borderDashItem.addSelectionListener(widgetSelectedAdapter(event -> {
        if (borderDashItem.getSelection()) {
            setStyle(BORDER_DASH);
        }
    }));

    borderDotItem = new MenuItem(borderMenu, SWT.RADIO);
    borderDotItem.setText(getResourceString("Dot")); //$NON-NLS-1$
    borderDotItem.addSelectionListener(widgetSelectedAdapter(event -> {
        if (borderDotItem.getSelection()) {
            setStyle(BORDER_DOT);
        }
    }));

    MenuItem borderColorItem = new MenuItem(borderMenu, SWT.PUSH);
    borderColorItem.setText(getResourceString("Color_menuitem")); //$NON-NLS-1$
    borderColorItem.addSelectionListener(widgetSelectedAdapter(event -> {
        ColorDialog dialog = new ColorDialog(shell);
        RGB rgb = borderColor != null ? borderColor.getRGB() : null;
        dialog.setRGB(rgb);
        RGB newRgb = dialog.open();
        if (newRgb != null) {
            if (!newRgb.equals(rgb)) {
                disposeResource(borderColor);
                borderColor = new Color(display, newRgb);
            }
            if (borderDashItem.getSelection())
                setStyle(BORDER_DASH);
            else if (borderDotItem.getSelection())
                setStyle(BORDER_DOT);
            else if (borderSolidItem.getSelection())
                setStyle(BORDER_SOLID);
        }
    }));

    final ToolItem borderControl = new ToolItem(styleToolBar, SWT.DROP_DOWN);
    borderControl.setImage(iBorderStyle);
    borderControl.setToolTipText(getResourceString("Box")); //$NON-NLS-1$
    borderControl.addSelectionListener(widgetSelectedAdapter(event -> {
        if (event.detail == SWT.ARROW) {
            Rectangle rect = borderControl.getBounds();
            Point pt = new Point(rect.x, rect.y + rect.height);
            borderMenu.setLocation(display.map(borderControl.getParent(), null, pt));
            borderMenu.setVisible(true);
        } else {
            if (borderDashItem.getSelection())
                setStyle(BORDER_DASH);
            else if (borderDotItem.getSelection())
                setStyle(BORDER_DOT);
            else if (borderSolidItem.getSelection())
                setStyle(BORDER_SOLID);
        }
    }));

    ToolItem foregroundItem = new ToolItem(styleToolBar, SWT.DROP_DOWN);
    foregroundItem.setImage(iTextForeground);
    foregroundItem.setToolTipText(getResourceString("TextForeground")); //$NON-NLS-1$
    foregroundItem.addSelectionListener(widgetSelectedAdapter(event -> {
        if (event.detail == SWT.ARROW || textForeground == null) {
            ColorDialog dialog = new ColorDialog(shell);
            RGB rgb = textForeground != null ? textForeground.getRGB() : null;
            dialog.setRGB(rgb);
            RGB newRgb = dialog.open();
            if (newRgb == null)
                return;
            if (!newRgb.equals(rgb)) {
                disposeResource(textForeground);
                textForeground = new Color(display, newRgb);
            }
        }
        setStyle(FOREGROUND);
    }));

    ToolItem backgroundItem = new ToolItem(styleToolBar, SWT.DROP_DOWN);
    backgroundItem.setImage(iTextBackground);
    backgroundItem.setToolTipText(getResourceString("TextBackground")); //$NON-NLS-1$
    backgroundItem.addSelectionListener(widgetSelectedAdapter(event -> {
        if (event.detail == SWT.ARROW || textBackground == null) {
            ColorDialog dialog = new ColorDialog(shell);
            RGB rgb = textBackground != null ? textBackground.getRGB() : null;
            dialog.setRGB(rgb);
            RGB newRgb = dialog.open();
            if (newRgb == null)
                return;
            if (!newRgb.equals(rgb)) {
                disposeResource(textBackground);
                textBackground = new Color(display, newRgb);
            }
        }
        setStyle(BACKGROUND);
    }));

    ToolItem baselineUpItem = new ToolItem(styleToolBar, SWT.PUSH);
    baselineUpItem.setImage(iBaselineUp);
    String tooltip = "IncreaseFont"; //$NON-NLS-1$
    if (USE_BASELINE)
        tooltip = "IncreaseBaseline"; //$NON-NLS-1$
    baselineUpItem.setToolTipText(getResourceString(tooltip));
    baselineUpItem.addSelectionListener(widgetSelectedAdapter(event -> {
        if (USE_BASELINE) {
            setStyle(BASELINE_UP);
        } else {
            adjustFontSize(1);
        }
    }));

    ToolItem baselineDownItem = new ToolItem(styleToolBar, SWT.PUSH);
    baselineDownItem.setImage(iBaselineDown);
    tooltip = "DecreaseFont"; //$NON-NLS-1$
    if (USE_BASELINE)
        tooltip = "DecreaseBaseline"; //$NON-NLS-1$
    baselineDownItem.setToolTipText(getResourceString(tooltip));
    baselineDownItem.addSelectionListener(widgetSelectedAdapter(event -> {
        if (USE_BASELINE) {
            setStyle(BASELINE_DOWN);
        } else {
            adjustFontSize(-1);
        }
    }));
    ToolItem linkItem = new ToolItem(styleToolBar, SWT.PUSH);
    linkItem.setImage(iLink);
    linkItem.setToolTipText(getResourceString("Link")); //$NON-NLS-1$
    linkItem.addSelectionListener(widgetSelectedAdapter(event -> setLink()));

    CoolItem coolItem = new CoolItem(coolBar, SWT.NONE);
    coolItem.setControl(styleToolBar);

    Composite composite = new Composite(coolBar, SWT.NONE);
    GridLayout layout = new GridLayout(2, false);
    layout.marginHeight = 1;
    composite.setLayout(layout);
    fontNameControl = new Combo(composite, SWT.DROP_DOWN | SWT.READ_ONLY);
    fontNameControl.setItems(getFontNames());
    fontNameControl.setVisibleItemCount(12);
    fontSizeControl = new Combo(composite, SWT.DROP_DOWN | SWT.READ_ONLY);
    fontSizeControl.setItems(FONT_SIZES);
    fontSizeControl.setVisibleItemCount(8);
    SelectionListener adapter = widgetSelectedAdapter(event -> {
        String name = fontNameControl.getText();
        int size = Integer.parseInt(fontSizeControl.getText());
        disposeResource(textFont);
        textFont = new Font(display, name, size, SWT.NORMAL);
        setStyle(FONT);
    });
    fontSizeControl.addSelectionListener(adapter);
    fontNameControl.addSelectionListener(adapter);
    coolItem = new CoolItem(coolBar, SWT.NONE);
    coolItem.setControl(composite);

    ToolBar alignmentToolBar = new ToolBar(coolBar, SWT.FLAT);
    blockSelectionItem = new ToolItem(alignmentToolBar, SWT.CHECK);
    blockSelectionItem.setImage(iBlockSelection);
    blockSelectionItem.setToolTipText(getResourceString("BlockSelection")); //$NON-NLS-1$
    blockSelectionItem.addSelectionListener(
            widgetSelectedAdapter(event -> styledText.invokeAction(ST.TOGGLE_BLOCKSELECTION)));

    leftAlignmentItem = new ToolItem(alignmentToolBar, SWT.RADIO);
    leftAlignmentItem.setImage(iLeftAlignment);
    leftAlignmentItem.setToolTipText(getResourceString("AlignLeft")); //$NON-NLS-1$
    leftAlignmentItem.setSelection(true);
    leftAlignmentItem.addSelectionListener(widgetSelectedAdapter(event -> {
        Point selection = styledText.getSelection();
        int lineStart = styledText.getLineAtOffset(selection.x);
        int lineEnd = styledText.getLineAtOffset(selection.y);
        styledText.setLineAlignment(lineStart, lineEnd - lineStart + 1, SWT.LEFT);
    }));
    leftAlignmentItem.setEnabled(false);

    centerAlignmentItem = new ToolItem(alignmentToolBar, SWT.RADIO);
    centerAlignmentItem.setImage(iCenterAlignment);
    centerAlignmentItem.setToolTipText(getResourceString("Center_menuitem")); //$NON-NLS-1$
    centerAlignmentItem.addSelectionListener(widgetSelectedAdapter(event -> {
        Point selection = styledText.getSelection();
        int lineStart = styledText.getLineAtOffset(selection.x);
        int lineEnd = styledText.getLineAtOffset(selection.y);
        styledText.setLineAlignment(lineStart, lineEnd - lineStart + 1, SWT.CENTER);
    }));
    centerAlignmentItem.setEnabled(false);

    rightAlignmentItem = new ToolItem(alignmentToolBar, SWT.RADIO);
    rightAlignmentItem.setImage(iRightAlignment);
    rightAlignmentItem.setToolTipText(getResourceString("AlignRight")); //$NON-NLS-1$
    rightAlignmentItem.addSelectionListener(widgetSelectedAdapter(event -> {
        Point selection = styledText.getSelection();
        int lineStart = styledText.getLineAtOffset(selection.x);
        int lineEnd = styledText.getLineAtOffset(selection.y);
        styledText.setLineAlignment(lineStart, lineEnd - lineStart + 1, SWT.RIGHT);
    }));
    rightAlignmentItem.setEnabled(false);

    justifyAlignmentItem = new ToolItem(alignmentToolBar, SWT.CHECK);
    justifyAlignmentItem.setImage(iJustifyAlignment);
    justifyAlignmentItem.setToolTipText(getResourceString("Justify")); //$NON-NLS-1$
    justifyAlignmentItem.addSelectionListener(widgetSelectedAdapter(event -> {
        Point selection = styledText.getSelection();
        int lineStart = styledText.getLineAtOffset(selection.x);
        int lineEnd = styledText.getLineAtOffset(selection.y);
        styledText.setLineJustify(lineStart, lineEnd - lineStart + 1, justifyAlignmentItem.getSelection());
    }));
    justifyAlignmentItem.setEnabled(false);

    ToolItem bulletListItem = new ToolItem(alignmentToolBar, SWT.PUSH);
    bulletListItem.setImage(iBulletList);
    bulletListItem.setToolTipText(getResourceString("BulletList")); //$NON-NLS-1$
    bulletListItem.addSelectionListener(widgetSelectedAdapter(event -> setBullet(ST.BULLET_DOT)));

    ToolItem numberedListItem = new ToolItem(alignmentToolBar, SWT.PUSH);
    numberedListItem.setImage(iNumberedList);
    numberedListItem.setToolTipText(getResourceString("NumberedList")); //$NON-NLS-1$
    numberedListItem
            .addSelectionListener(widgetSelectedAdapter(event -> setBullet(ST.BULLET_NUMBER | ST.BULLET_TEXT)));

    coolItem = new CoolItem(coolBar, SWT.NONE);
    coolItem.setControl(alignmentToolBar);
    composite = new Composite(coolBar, SWT.NONE);
    layout = new GridLayout(4, false);
    layout.marginHeight = 1;
    composite.setLayout(layout);
    Label label = new Label(composite, SWT.NONE);
    label.setText(getResourceString("Indent")); //$NON-NLS-1$
    Spinner indent = new Spinner(composite, SWT.BORDER);
    indent.addSelectionListener(widgetSelectedAdapter(event -> {
        Spinner spinner = (Spinner) event.widget;
        styledText.setIndent(spinner.getSelection());
    }));
    label = new Label(composite, SWT.NONE);
    label.setText(getResourceString("Spacing")); //$NON-NLS-1$
    Spinner spacing = new Spinner(composite, SWT.BORDER);
    spacing.addSelectionListener(widgetSelectedAdapter(event -> {
        Spinner spinner = (Spinner) event.widget;
        styledText.setLineSpacing(spinner.getSelection());
    }));

    coolItem = new CoolItem(coolBar, SWT.NONE);
    coolItem.setControl(composite);

    // Button to toggle Mouse Navigator in StyledText
    composite = new Composite(coolBar, SWT.NONE);
    composite.setLayout(new GridLayout(1, false));
    Button mouseNavigator = new Button(composite, SWT.CHECK);
    mouseNavigator.setText(getResourceString("MouseNav"));
    mouseNavigator.addSelectionListener(
            widgetSelectedAdapter(event -> styledText.setMouseNavigatorEnabled(mouseNavigator.getSelection())));
    coolItem = new CoolItem(coolBar, SWT.NONE);
    coolItem.setControl(composite);

    // Compute Size for various CoolItems
    CoolItem[] coolItems = coolBar.getItems();
    for (CoolItem item : coolItems) {
        Control control = item.getControl();
        Point size = control.computeSize(SWT.DEFAULT, SWT.DEFAULT);
        item.setMinimumSize(size);
        size = item.computeSize(size.x, size.y);
        item.setPreferredSize(size);
        item.setSize(size);
    }

    coolBar.addControlListener(ControlListener.controlResizedAdapter(event -> handleResize(event)));
}

From source file:org.eclipse.swt.examples.controlexample.Tab.java

void createEditEventDialog(Shell parent, int x, int y, final int index) {
    final Shell dialog = new Shell(parent, SWT.DIALOG_TRIM | SWT.RESIZE | SWT.APPLICATION_MODAL);
    dialog.setLayout(new GridLayout());
    dialog.setText(ControlExample.getResourceString("Edit_Event"));
    Label label = new Label(dialog, SWT.NONE);
    label.setText(ControlExample.getResourceString("Edit_Event_Fields", EVENT_INFO[index].name));

    Group group = new Group(dialog, SWT.NONE);
    group.setLayout(new GridLayout(2, false));
    group.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));

    final int fields = EVENT_INFO[index].settableFields;
    final int eventType = EVENT_INFO[index].type;
    setFieldsMask = EVENT_INFO[index].setFields;
    setFieldsEvent = EVENT_INFO[index].event;

    if ((fields & DOIT) != 0) {
        new Label(group, SWT.NONE).setText("doit");
        final Combo doitCombo = new Combo(group, SWT.READ_ONLY);
        doitCombo.setItems("", "true", "false");
        if ((setFieldsMask & DOIT) != 0)
            doitCombo.setText(Boolean.toString(setFieldsEvent.doit));
        doitCombo.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
        doitCombo.addSelectionListener(widgetSelectedAdapter(e -> {
            String newValue = doitCombo.getText();
            if (newValue.length() == 0) {
                setFieldsMask &= ~DOIT;
            } else {
                setFieldsEvent.type = eventType;
                setFieldsEvent.doit = newValue.equals("true");
                setFieldsMask |= DOIT;/*  w  ww .j av  a 2  s .  c  o m*/
            }
        }));
    }

    if ((fields & DETAIL) != 0) {
        new Label(group, SWT.NONE).setText("detail");
        int detailType = fields & 0xFF;
        final Combo detailCombo = new Combo(group, SWT.READ_ONLY);
        detailCombo.setItems(DETAIL_CONSTANTS[detailType]);
        detailCombo.add("", 0);
        detailCombo.setVisibleItemCount(detailCombo.getItemCount());
        if ((setFieldsMask & DETAIL) != 0)
            detailCombo.setText(DETAIL_CONSTANTS[detailType][setFieldsEvent.detail]);
        detailCombo.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
        detailCombo.addSelectionListener(widgetSelectedAdapter(e -> {
            String newValue = detailCombo.getText();
            if (newValue.length() == 0) {
                setFieldsMask &= ~DETAIL;
            } else {
                setFieldsEvent.type = eventType;
                for (int i = 0; i < DETAIL_VALUES.length; i += 2) {
                    if (newValue.equals(DETAIL_VALUES[i])) {
                        setFieldsEvent.detail = ((Integer) DETAIL_VALUES[i + 1]).intValue();
                        break;
                    }
                }
                setFieldsMask |= DETAIL;
            }
        }));
    }

    if ((fields & TEXT) != 0) {
        new Label(group, SWT.NONE).setText("text");
        final Text textText = new Text(group, SWT.BORDER);
        if ((setFieldsMask & TEXT) != 0)
            textText.setText(setFieldsEvent.text);
        textText.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
        textText.addModifyListener(e -> {
            String newValue = textText.getText();
            if (newValue.length() == 0) {
                setFieldsMask &= ~TEXT;
            } else {
                setFieldsEvent.type = eventType;
                setFieldsEvent.text = newValue;
                setFieldsMask |= TEXT;
            }
        });
    }

    if ((fields & X) != 0) {
        new Label(group, SWT.NONE).setText("x");
        final Text xText = new Text(group, SWT.BORDER);
        if ((setFieldsMask & X) != 0)
            xText.setText(Integer.toString(setFieldsEvent.x));
        xText.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
        xText.addModifyListener(e -> {
            String newValue = xText.getText();
            try {
                int newIntValue = Integer.parseInt(newValue);
                setFieldsEvent.type = eventType;
                setFieldsEvent.x = newIntValue;
                setFieldsMask |= X;
            } catch (NumberFormatException ex) {
                setFieldsMask &= ~X;
            }
        });
    }

    if ((fields & Y) != 0) {
        new Label(group, SWT.NONE).setText("y");
        final Text yText = new Text(group, SWT.BORDER);
        if ((setFieldsMask & Y) != 0)
            yText.setText(Integer.toString(setFieldsEvent.y));
        yText.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
        yText.addModifyListener(e -> {
            String newValue = yText.getText();
            try {
                int newIntValue = Integer.parseInt(newValue);
                setFieldsEvent.type = eventType;
                setFieldsEvent.y = newIntValue;
                setFieldsMask |= Y;
            } catch (NumberFormatException ex) {
                setFieldsMask &= ~Y;
            }
        });
    }

    if ((fields & WIDTH) != 0) {
        new Label(group, SWT.NONE).setText("width");
        final Text widthText = new Text(group, SWT.BORDER);
        if ((setFieldsMask & WIDTH) != 0)
            widthText.setText(Integer.toString(setFieldsEvent.width));
        widthText.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
        widthText.addModifyListener(e -> {
            String newValue = widthText.getText();
            try {
                int newIntValue = Integer.parseInt(newValue);
                setFieldsEvent.type = eventType;
                setFieldsEvent.width = newIntValue;
                setFieldsMask |= WIDTH;
            } catch (NumberFormatException ex) {
                setFieldsMask &= ~WIDTH;
            }
        });
    }

    if ((fields & HEIGHT) != 0) {
        new Label(group, SWT.NONE).setText("height");
        final Text heightText = new Text(group, SWT.BORDER);
        if ((setFieldsMask & HEIGHT) != 0)
            heightText.setText(Integer.toString(setFieldsEvent.height));
        heightText.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
        heightText.addModifyListener(e -> {
            String newValue = heightText.getText();
            try {
                int newIntValue = Integer.parseInt(newValue);
                setFieldsEvent.type = eventType;
                setFieldsEvent.height = newIntValue;
                setFieldsMask |= HEIGHT;
            } catch (NumberFormatException ex) {
                setFieldsMask &= ~HEIGHT;
            }
        });
    }

    Button ok = new Button(dialog, SWT.PUSH);
    ok.setText(ControlExample.getResourceString("OK"));
    GridData data = new GridData(70, SWT.DEFAULT);
    data.horizontalAlignment = SWT.RIGHT;
    ok.setLayoutData(data);
    ok.addSelectionListener(widgetSelectedAdapter(e -> {
        EVENT_INFO[index].setFields = setFieldsMask;
        EVENT_INFO[index].event = setFieldsEvent;
        dialog.dispose();
    }));

    dialog.setDefaultButton(ok);
    dialog.pack();
    dialog.setLocation(x, y);
    dialog.open();
}

From source file:ImageAnalyzer.java

int showBMPDialog() {
    final int[] bmpType = new int[1];
    bmpType[0] = SWT.IMAGE_BMP;/*from   ww w . j av  a2s  . co m*/
    SelectionListener radioSelected = new SelectionAdapter() {
        public void widgetSelected(SelectionEvent event) {
            Button radio = (Button) event.widget;
            if (radio.getSelection())
                bmpType[0] = ((Integer) radio.getData()).intValue();
        }
    };
    // need to externalize strings
    final Shell dialog = new Shell(shell, SWT.DIALOG_TRIM);

    dialog.setText("Save_as");
    dialog.setLayout(new GridLayout());

    Label label = new Label(dialog, SWT.NONE);
    label.setText("Save_as");

    Button radio = new Button(dialog, SWT.RADIO);
    radio.setText("Save_as_type_no_compress");
    radio.setSelection(true);
    radio.setData(new Integer(SWT.IMAGE_BMP));
    radio.addSelectionListener(radioSelected);

    radio = new Button(dialog, SWT.RADIO);
    radio.setText("Save_as_type_rle_compress");
    radio.setData(new Integer(SWT.IMAGE_BMP_RLE));
    radio.addSelectionListener(radioSelected);

    radio = new Button(dialog, SWT.RADIO);
    radio.setText("Save_as_type_os2");
    radio.setData(new Integer(SWT.IMAGE_OS2_BMP));
    radio.addSelectionListener(radioSelected);

    label = new Label(dialog, SWT.SEPARATOR | SWT.HORIZONTAL);
    label.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));

    Button ok = new Button(dialog, SWT.PUSH);
    ok.setText("OK");
    GridData data = new GridData();
    data.horizontalAlignment = SWT.CENTER;
    data.widthHint = 75;
    ok.setLayoutData(data);
    ok.addSelectionListener(new SelectionAdapter() {
        public void widgetSelected(SelectionEvent e) {
            dialog.close();
        }
    });

    dialog.pack();
    dialog.open();
    while (!dialog.isDisposed()) {
        if (!display.readAndDispatch())
            display.sleep();
    }
    return bmpType[0];
}

From source file:LayoutExample.java

/**
 * Refreshes the composite and draws all controls in the layout example.
 *//*www.  j  a v  a2s.c  o  m*/
void refreshLayoutComposite() {
    /* Remove children that are already laid out */
    children = layoutComposite.getChildren();
    for (int i = 0; i < children.length; i++) {
        children[i].dispose();
    }
    /* Add all children listed in the table */
    TableItem[] items = table.getItems();
    children = new Control[items.length];
    String[] itemValues = new String[] { LayoutExample.getResourceString("Item", new String[] { "1" }),
            LayoutExample.getResourceString("Item", new String[] { "2" }),
            LayoutExample.getResourceString("Item", new String[] { "3" }) };
    for (int i = 0; i < items.length; i++) {
        String control = items[i].getText(1);
        if (control.equals("Button")) {
            Button button = new Button(layoutComposite, SWT.PUSH);
            button.setText(LayoutExample.getResourceString("Button_Index",
                    new String[] { new Integer(i).toString() }));
            children[i] = button;
        } else if (control.equals("Canvas")) {
            Canvas canvas = new Canvas(layoutComposite, SWT.BORDER);
            children[i] = canvas;
        } else if (control.equals("Combo")) {
            Combo combo = new Combo(layoutComposite, SWT.NONE);
            combo.setItems(itemValues);
            combo.setText(
                    LayoutExample.getResourceString("Combo_Index", new String[] { new Integer(i).toString() }));
            children[i] = combo;
        } else if (control.equals("Composite")) {
            Composite composite = new Composite(layoutComposite, SWT.BORDER);
            children[i] = composite;
        } else if (control.equals("CoolBar")) {
            CoolBar coolBar = new CoolBar(layoutComposite, SWT.NONE);
            ToolBar toolBar = new ToolBar(coolBar, SWT.BORDER);
            ToolItem item = new ToolItem(toolBar, 0);
            item.setText(LayoutExample.getResourceString("Item", new String[] { "1" }));
            item = new ToolItem(toolBar, 0);
            item.setText(LayoutExample.getResourceString("Item", new String[] { "2" }));
            CoolItem coolItem1 = new CoolItem(coolBar, 0);
            coolItem1.setControl(toolBar);
            toolBar = new ToolBar(coolBar, SWT.BORDER);
            item = new ToolItem(toolBar, 0);
            item.setText(LayoutExample.getResourceString("Item", new String[] { "3" }));
            item = new ToolItem(toolBar, 0);
            item.setText(LayoutExample.getResourceString("Item", new String[] { "4" }));
            CoolItem coolItem2 = new CoolItem(coolBar, 0);
            coolItem2.setControl(toolBar);
            Point size = toolBar.computeSize(SWT.DEFAULT, SWT.DEFAULT);
            coolItem1.setSize(coolItem1.computeSize(size.x, size.y));
            coolItem2.setSize(coolItem2.computeSize(size.x, size.y));
            coolBar.setSize(coolBar.computeSize(SWT.DEFAULT, SWT.DEFAULT));
            children[i] = coolBar;
        } else if (control.equals("Group")) {
            Group group = new Group(layoutComposite, SWT.NONE);
            group.setText(
                    LayoutExample.getResourceString("Group_Index", new String[] { new Integer(i).toString() }));
            children[i] = group;
        } else if (control.equals("Label")) {
            Label label = new Label(layoutComposite, SWT.NONE);
            label.setText(
                    LayoutExample.getResourceString("Label_Index", new String[] { new Integer(i).toString() }));
            children[i] = label;
        } else if (control.equals("List")) {
            List list = new List(layoutComposite, SWT.BORDER);
            list.setItems(itemValues);
            children[i] = list;
        } else if (control.equals("ProgressBar")) {
            ProgressBar progress = new ProgressBar(layoutComposite, SWT.NONE);
            progress.setSelection(50);
            children[i] = progress;
        } else if (control.equals("Scale")) {
            Scale scale = new Scale(layoutComposite, SWT.NONE);
            children[i] = scale;
        } else if (control.equals("Slider")) {
            Slider slider = new Slider(layoutComposite, SWT.NONE);
            children[i] = slider;
        } else if (control.equals("StyledText")) {
            StyledText styledText = new StyledText(layoutComposite,
                    SWT.MULTI | SWT.BORDER | SWT.V_SCROLL | SWT.H_SCROLL);
            styledText.setText(LayoutExample.getResourceString("StyledText_Index",
                    new String[] { new Integer(i).toString() }));
            children[i] = styledText;
        } else if (control.equals("Table")) {
            Table table = new Table(layoutComposite, SWT.BORDER);
            table.setLinesVisible(true);
            TableItem item1 = new TableItem(table, 0);
            item1.setText(LayoutExample.getResourceString("Item", new String[] { "1" }));
            TableItem item2 = new TableItem(table, 0);
            item2.setText(LayoutExample.getResourceString("Item", new String[] { "2" }));
            children[i] = table;
        } else if (control.equals("Text")) {
            Text text = new Text(layoutComposite, SWT.BORDER);
            text.setText(
                    LayoutExample.getResourceString("Text_Index", new String[] { new Integer(i).toString() }));
            children[i] = text;
        } else if (control.equals("ToolBar")) {
            ToolBar toolBar = new ToolBar(layoutComposite, SWT.BORDER);
            ToolItem item1 = new ToolItem(toolBar, 0);
            item1.setText(LayoutExample.getResourceString("Item", new String[] { "1" }));
            ToolItem item2 = new ToolItem(toolBar, 0);
            item2.setText(LayoutExample.getResourceString("Item", new String[] { "2" }));
            children[i] = toolBar;
        } else {
            Tree tree = new Tree(layoutComposite, SWT.BORDER);
            TreeItem item1 = new TreeItem(tree, 0);
            item1.setText(LayoutExample.getResourceString("Item", new String[] { "1" }));
            TreeItem item2 = new TreeItem(tree, 0);
            item2.setText(LayoutExample.getResourceString("Item", new String[] { "2" }));
            children[i] = tree;
        }
    }
}