Example usage for org.eclipse.jface.viewers ComboViewer setLabelProvider

List of usage examples for org.eclipse.jface.viewers ComboViewer setLabelProvider

Introduction

In this page you can find the example usage for org.eclipse.jface.viewers ComboViewer setLabelProvider.

Prototype

@Override
public void setLabelProvider(IBaseLabelProvider labelProvider) 

Source Link

Document

The list viewer implementation of this Viewer framework method ensures that the given label provider is an instance of ILabelProvider.

Usage

From source file:org.eclipse.swtbot.generator.jdt.editor.JDTRecorderDialog.java

License:Open Source License

/**
 * Create contents of the dialog./* www  . jav  a  2 s .  c o m*/
 *
 * @param parent
 */
@Override
protected Control createDialogArea(Composite parent) {
    Composite container = (Composite) super.createDialogArea(parent);
    container.setLayout(new GridLayout(1, false));
    container.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));

    Composite generatorSelectionContainer = new Composite(container, SWT.NONE);
    generatorSelectionContainer.setLayout(new GridLayout(2, false));
    Label selectorLabel = new Label(generatorSelectionContainer, SWT.NONE);
    selectorLabel.setText("Target Bot API:");
    selectorLabel.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, false, false));

    ComboViewer generatorSelectionCombo = new ComboViewer(generatorSelectionContainer);
    generatorSelectionCombo.setContentProvider(new ArrayContentProvider());
    generatorSelectionCombo.setLabelProvider(new LabelProvider() {
        @Override
        public String getText(Object o) {
            return ((Generator) o).getLabel();
        }
    });
    generatorSelectionCombo.setInput(this.availableGenerators);
    generatorSelectionCombo.setSelection(new StructuredSelection(this.recorder.getCurrentGenerator()));

    generatorSelectionCombo.addSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(SelectionChangedEvent event) {
            Generator newGenerator = (Generator) ((IStructuredSelection) event.getSelection())
                    .getFirstElement();
            recorder.setGenerator(newGenerator);
            updateAnnotationToolBar();
            Image image = newGenerator.getImage();
            if (image != null) {
                image = new Image(Display.getDefault(), image.getImageData().scaledTo(80, 80));
                setTitleImage(image);
            } else {
                setTitleImage(null);
            }

        }
    });

    classTabFolder = new CTabFolder(container, SWT.CLOSE | SWT.BORDER);
    classTabFolder.setUnselectedCloseVisible(false);
    classTabFolder.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    ToolBar addClassToolbar = new ToolBar(classTabFolder, SWT.HORIZONTAL);
    classTabFolder.setTopRight(addClassToolbar);
    ToolItem addClassItem = new ToolItem(addClassToolbar, SWT.NONE);
    addClassItem.setText("+");
    addClassItem.setToolTipText("Add class");
    addClassItem.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            openClassShell();
        }
    });

    createTabItem(classTabFolder, "RecordedTestCase");

    classTabFolder.addSelectionListener(new SelectionAdapter() {
        public void widgetSelected(org.eclipse.swt.events.SelectionEvent event) {
            SourceViewer viewer = tabViewer.get(classTabFolder.getSelection());
            ClassDocument doc = (ClassDocument) viewer.getDocument();
            if (doc.getActiveMethod() == null) {
                recorder.setRecording(false);
                recordPauseButton.setText("Start Recording");
            }
            updateAnnotationToolBar();
        }
    });

    Composite actionsComposite = new Composite(container, SWT.NONE);
    actionsComposite.setLayout(new RowLayout(SWT.HORIZONTAL));
    recordPauseButton = new Button(actionsComposite, SWT.PUSH);
    recordPauseButton.setText("Start Recording");
    final Button copyButton = new Button(actionsComposite, SWT.PUSH);
    copyButton.setText("Copy");

    recordPauseButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            if (recorder.isRecording()) {
                recorder.setRecording(false);
                recordPauseButton.setText("Start Recording");
            } else {
                SourceViewer viewer = tabViewer.get(classTabFolder.getSelection());
                ClassDocument doc = (ClassDocument) viewer.getDocument();
                if (doc.getActiveMethod() == null) {
                    openMethodShell(true);
                } else {
                    recorder.setRecording(true);
                    recordPauseButton.setText("Pause");
                }
            }
        }
    });

    this.recorder.addListener(new CodeGenerationListener() {
        public void handleCodeGenerated(GenerationRule code) {
            SourceViewer viewer = tabViewer.get(classTabFolder.getSelection());
            ClassDocument doc = (ClassDocument) viewer.getDocument();
            doc.addGenerationRule(code);
            viewer.setTopIndex(((ClassDocument) viewer.getDocument()).getLastOffset() - 4);
        }
    });
    copyButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            final Clipboard cb = new Clipboard(Display.getDefault());
            TextTransfer textTransfer = TextTransfer.getInstance();
            SourceViewer viewer = tabViewer.get(classTabFolder.getSelection());
            cb.setContents(new Object[] { viewer.getDocument().get() }, new Transfer[] { textTransfer });
            cb.dispose();
        }
    });

    return container;
}

From source file:org.eclipse.swtbot.generator.ui.RecorderDialog.java

License:Open Source License

/**
 * Create contents of the dialog.// w  w  w . j  a v a 2  s .c  o  m
 * @param parent
 */
@Override
protected Control createDialogArea(Composite parent) {
    setTitle("SWTBot Test Recorder");
    Composite container = (Composite) super.createDialogArea(parent);
    container.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    container.setLayout(new GridLayout(1, false));

    Composite generatorSelectionContainer = new Composite(container, SWT.NONE);
    generatorSelectionContainer.setLayout(new GridLayout(2, false));
    Label selectorLabel = new Label(generatorSelectionContainer, SWT.NONE);
    selectorLabel.setText("Target Bot API:");
    selectorLabel.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, false, false));
    ComboViewer comboViewer = new ComboViewer(generatorSelectionContainer);
    comboViewer.setContentProvider(new ArrayContentProvider());
    comboViewer.setLabelProvider(new LabelProvider() {
        @Override
        public String getText(Object o) {
            return ((Generator) o).getLabel();
        }
    });
    comboViewer.setInput(this.availableGenerators);
    comboViewer.setSelection(new StructuredSelection(this.recorder.getCurrentGenerator()));
    comboViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(SelectionChangedEvent event) {
            Generator newGenerator = (Generator) ((IStructuredSelection) event.getSelection())
                    .getFirstElement();
            recorder.setGenerator(newGenerator);
            recorder.useStacks(newGenerator.useStacks());
        }
    });

    final Text generatedCode = new Text(container, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER);
    generatedCode.setText("// Generated code goes there\n");
    generatedCode.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    Composite actionsComposite = new Composite(container, SWT.NONE);
    actionsComposite.setLayout(new RowLayout(SWT.HORIZONTAL));

    final Button recordPauseButton = new Button(actionsComposite, SWT.PUSH);
    recordPauseButton.setText(this.recorder.isRecording() ? "Pause" : "Start Recording");
    final Button copyButton = new Button(actionsComposite, SWT.PUSH);
    copyButton.setToolTipText("Copy");
    copyButton.setImage(PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_TOOL_COPY));

    recordPauseButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            recorder.switchRecording();
            recordPauseButton.setText(recorder.isRecording() ? "Pause" : "Start Recording");
        }
    });
    this.recorder.addListener(new CodeGenerationListener() {
        public void handleCodeGenerated(String code) {
            generatedCode.setText(generatedCode.getText() + code + ";\n");
        }
    });
    copyButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            final Clipboard cb = new Clipboard(Display.getCurrent());
            TextTransfer textTransfer = TextTransfer.getInstance();
            cb.setContents(new Object[] { generatedCode.getText() }, new Transfer[] { textTransfer });
            cb.dispose();
        }
    });

    return container;
}

From source file:org.eclipse.ui.internal.dialogs.cpd.CustomizePerspectiveDialog.java

License:Open Source License

private Composite createShortCutsPage(Composite parent) {
    GridData data;//w  ww  . ja va  2  s.  c  o  m

    Composite menusComposite = new Composite(parent, SWT.NONE);
    GridLayout layout = new GridLayout();
    menusComposite.setLayout(layout);

    // Select... label
    Label label = new Label(menusComposite, SWT.WRAP);
    label.setText(NLS.bind(WorkbenchMessages.Shortcuts_selectShortcutsLabel, perspective.getDesc().getLabel()));
    data = new GridData(SWT.FILL, SWT.CENTER, true, false);
    label.setLayoutData(data);

    Label sep = new Label(menusComposite, SWT.HORIZONTAL | SWT.SEPARATOR);
    sep.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));

    SashForm sashComposite = new SashForm(menusComposite, SWT.HORIZONTAL);
    data = new GridData(SWT.FILL, SWT.FILL, true, true);
    sashComposite.setLayoutData(data);

    // Menus List
    Composite menusGroup = new Composite(sashComposite, SWT.NONE);
    layout = new GridLayout();
    layout.marginHeight = 0;
    layout.marginWidth = 0;
    menusGroup.setLayout(layout);
    menusGroup.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));

    label = new Label(menusGroup, SWT.WRAP);
    label.setText(WorkbenchMessages.Shortcuts_availableMenus);
    label.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));

    Combo menusCombo = new Combo(menusGroup, SWT.READ_ONLY);
    menusCombo.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
    ComboViewer menusViewer = new ComboViewer(menusCombo);
    menusViewer.setContentProvider(TreeManager.getTreeContentProvider());
    menusViewer.setLabelProvider(TreeManager.getLabelProvider());

    // Categories Tree
    label = new Label(menusGroup, SWT.WRAP);
    label.setText(WorkbenchMessages.Shortcuts_availableCategories);
    label.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));

    final CheckboxTreeViewer menuCategoriesViewer = new CheckboxTreeViewer(menusGroup);
    menuCategoriesViewer.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    menuCategoriesViewer.setLabelProvider(TreeManager.getLabelProvider());
    menuCategoriesViewer.setContentProvider(TreeManager.getTreeContentProvider());
    menuCategoriesViewer.setComparator(new WorkbenchViewerComparator());
    menuCategoriesViewer.setCheckStateProvider(new CategoryCheckProvider());
    menuCategoriesViewer.addCheckStateListener(new ICheckStateListener() {
        @Override
        public void checkStateChanged(CheckStateChangedEvent event) {
            Category category = (Category) event.getElement();
            category.setItemsState(event.getChecked());
            updateCategoryAndParents(menuCategoriesViewer, category);
        }
    });

    treeManager.addListener(new CheckListener() {
        @Override
        public void checkChanged(TreeItem changedItem) {
            if (changedItem instanceof Category) {
                menuCategoriesViewer.update(changedItem, null);
            } else if (changedItem instanceof ShortcutItem) {
                ShortcutItem item = (ShortcutItem) changedItem;
                if (item.getCategory() != null) {
                    item.getCategory().update();
                    updateCategoryAndParents(menuCategoriesViewer, item.getCategory());
                }
            }
        }
    });

    // Menu items list
    Composite menuItemsGroup = new Composite(sashComposite, SWT.NONE);
    layout = new GridLayout();
    layout.marginHeight = 0;
    layout.marginWidth = 0;
    menuItemsGroup.setLayout(layout);
    menuItemsGroup.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));

    label = new Label(menuItemsGroup, SWT.WRAP);
    label.setText(WorkbenchMessages.Shortcuts_allShortcuts);
    label.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));

    final CheckboxTableViewer menuItemsViewer = CheckboxTableViewer.newCheckList(menuItemsGroup,
            SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL);
    Table menuTable = menuItemsViewer.getTable();
    menuTable.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    menuItemsViewer.setLabelProvider(new ShortcutLabelProvider());
    menuItemsViewer.setCheckStateProvider(TreeManager.getCheckStateProvider());
    menuItemsViewer.addCheckStateListener(treeManager.getViewerCheckStateListener());
    treeManager.getCheckListener(menuItemsViewer);

    menuItemsViewer.setContentProvider(new TreeManager.TreeItemContentProvider() {
        @Override
        public Object[] getChildren(Object parentElement) {
            if (parentElement instanceof Category) {
                return ((Category) parentElement).getContributionItems().toArray();
            }
            return super.getChildren(parentElement);
        }
    });
    menuItemsViewer.setComparator(new WorkbenchViewerComparator());

    // update menuCategoriesViewer, and menuItemsViewer on a change to
    // menusViewer
    menusViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            Category category = (Category) ((IStructuredSelection) event.getSelection()).getFirstElement();
            menuCategoriesViewer.setInput(category);
            menuItemsViewer.setInput(category);
            if (category.getChildrenCount() != 0) {
                setSelectionOn(menuCategoriesViewer, category.getChildren().get(0));
            }
        }
    });

    // update menuItemsViewer on a change to menuCategoriesViewer
    menuCategoriesViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            Category category = (Category) ((IStructuredSelection) event.getSelection()).getFirstElement();
            menuItemsViewer.setInput(category);
        }
    });

    menuTable.setHeaderVisible(true);
    int[] columnWidths = new int[shortcutMenuColumnWidths.length];
    for (int i = 0; i < shortcutMenuColumnWidths.length; i++) {
        columnWidths[i] = convertHorizontalDLUsToPixels(shortcutMenuColumnWidths[i]);
    }
    for (int i = 0; i < shortcutMenuColumnHeaders.length; i++) {
        TableColumn tc = new TableColumn(menuTable, SWT.NONE, i);
        tc.setResizable(true);
        tc.setText(shortcutMenuColumnHeaders[i]);
        tc.setWidth(columnWidths[i]);
    }
    sashComposite.setWeights(new int[] { 30, 70 });

    menusViewer.setInput(shortcuts);

    if (shortcuts.getChildrenCount() > 0) {
        setSelectionOn(menusViewer, shortcuts.getChildren().get(0));
    }

    return menusComposite;
}

From source file:org.eclipse.ui.internal.dialogs.CustomizePerspectiveDialog.java

License:Open Source License

private Composite createShortCutsPage(Composite parent) {
    GridData data;//  ww w  .ja  v a2  s.co m

    Composite menusComposite = new Composite(parent, SWT.NONE);
    GridLayout layout = new GridLayout();
    menusComposite.setLayout(layout);

    // Select... label
    Label label = new Label(menusComposite, SWT.WRAP);
    label.setText(NLS.bind(WorkbenchMessages.Shortcuts_selectShortcutsLabel, perspective.getDesc().getLabel()));
    data = new GridData(SWT.FILL, SWT.CENTER, true, false);
    label.setLayoutData(data);

    Label sep = new Label(menusComposite, SWT.HORIZONTAL | SWT.SEPARATOR);
    sep.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));

    SashForm sashComposite = new SashForm(menusComposite, SWT.HORIZONTAL);
    data = new GridData(SWT.FILL, SWT.FILL, true, true);
    sashComposite.setLayoutData(data);

    // Menus List
    Composite menusGroup = new Composite(sashComposite, SWT.NONE);
    layout = new GridLayout();
    layout.marginHeight = 0;
    layout.marginWidth = 0;
    menusGroup.setLayout(layout);
    menusGroup.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));

    label = new Label(menusGroup, SWT.WRAP);
    label.setText(WorkbenchMessages.Shortcuts_availableMenus);
    label.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));

    Combo menusCombo = new Combo(menusGroup, SWT.READ_ONLY);
    menusCombo.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
    ComboViewer menusViewer = new ComboViewer(menusCombo);
    menusViewer.setContentProvider(TreeManager.getTreeContentProvider());
    menusViewer.setLabelProvider(TreeManager.getLabelProvider());

    // Categories Tree
    label = new Label(menusGroup, SWT.WRAP);
    label.setText(WorkbenchMessages.Shortcuts_availableCategories);
    label.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));

    final CheckboxTreeViewer menuCategoriesViewer = new CheckboxTreeViewer(menusGroup);
    menuCategoriesViewer.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    menuCategoriesViewer.setLabelProvider(TreeManager.getLabelProvider());
    menuCategoriesViewer.setContentProvider(TreeManager.getTreeContentProvider());
    menuCategoriesViewer.setComparator(new WorkbenchViewerComparator());
    menuCategoriesViewer.setCheckStateProvider(new CategoryCheckProvider());
    menuCategoriesViewer.addCheckStateListener(new ICheckStateListener() {
        public void checkStateChanged(CheckStateChangedEvent event) {
            Category category = (Category) event.getElement();
            category.setItemsState(event.getChecked());
            updateCategoryAndParents(menuCategoriesViewer, category);
        }
    });

    treeManager.addListener(new CheckListener() {
        public void checkChanged(TreeItem changedItem) {
            if (changedItem instanceof Category) {
                menuCategoriesViewer.update(changedItem, null);
            } else if (changedItem instanceof ShortcutItem) {
                ShortcutItem item = (ShortcutItem) changedItem;
                if (item.getCategory() != null) {
                    item.getCategory().update();
                    updateCategoryAndParents(menuCategoriesViewer, item.getCategory());
                }
            }
        }
    });

    // Menu items list
    Composite menuItemsGroup = new Composite(sashComposite, SWT.NONE);
    layout = new GridLayout();
    layout.marginHeight = 0;
    layout.marginWidth = 0;
    menuItemsGroup.setLayout(layout);
    menuItemsGroup.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));

    label = new Label(menuItemsGroup, SWT.WRAP);
    label.setText(WorkbenchMessages.Shortcuts_allShortcuts);
    label.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));

    final CheckboxTableViewer menuItemsViewer = CheckboxTableViewer.newCheckList(menuItemsGroup,
            SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL);
    Table menuTable = menuItemsViewer.getTable();
    menuTable.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    menuItemsViewer.setLabelProvider(new ShortcutLabelProvider());
    menuItemsViewer.setCheckStateProvider(TreeManager.getCheckStateProvider());
    menuItemsViewer.addCheckStateListener(treeManager.getViewerCheckStateListener());
    treeManager.getCheckListener(menuItemsViewer);

    menuItemsViewer.setContentProvider(new TreeManager.TreeItemContentProvider() {
        public Object[] getChildren(Object parentElement) {
            if (parentElement instanceof Category)
                return ((Category) parentElement).getContributionItems().toArray();
            return super.getChildren(parentElement);
        }
    });
    menuItemsViewer.setComparator(new WorkbenchViewerComparator());

    // update menuCategoriesViewer, and menuItemsViewer on a change to
    // menusViewer
    menusViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(SelectionChangedEvent event) {
            Category category = (Category) ((IStructuredSelection) event.getSelection()).getFirstElement();
            menuCategoriesViewer.setInput(category);
            menuItemsViewer.setInput(category);
            if (category.getChildren().size() != 0) {
                setSelectionOn(menuCategoriesViewer, category.getChildren().get(0));
            }
        }
    });

    // update menuItemsViewer on a change to menuCategoriesViewer
    menuCategoriesViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(SelectionChangedEvent event) {
            Category category = (Category) ((IStructuredSelection) event.getSelection()).getFirstElement();
            menuItemsViewer.setInput(category);
        }
    });

    menuTable.setHeaderVisible(true);
    int[] columnWidths = new int[shortcutMenuColumnWidths.length];
    for (int i = 0; i < shortcutMenuColumnWidths.length; i++) {
        columnWidths[i] = convertHorizontalDLUsToPixels(shortcutMenuColumnWidths[i]);
    }
    for (int i = 0; i < shortcutMenuColumnHeaders.length; i++) {
        TableColumn tc = new TableColumn(menuTable, SWT.NONE, i);
        tc.setResizable(true);
        tc.setText(shortcutMenuColumnHeaders[i]);
        tc.setWidth(columnWidths[i]);
    }
    sashComposite.setWeights(new int[] { 30, 70 });

    menusViewer.setInput(shortcuts);

    if (shortcuts.getChildren().size() > 0) {
        setSelectionOn(menusViewer, shortcuts.getChildren().get(0));
    }

    return menusComposite;
}

From source file:org.eclipse.ui.internal.editors.text.SpellingConfigurationBlock.java

License:Open Source License

private ComboViewer createProviderViewer() {
    /* list viewer */
    final ComboViewer viewer = new ComboViewer(fProviderCombo);
    viewer.setContentProvider(new IStructuredContentProvider() {

        /*//from   w w w. j  a v a  2s. co  m
         * @see org.eclipse.jface.viewers.IContentProvider#dispose()
         */
        public void dispose() {
        }

        /*
         * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer, java.lang.Object, java.lang.Object)
         */
        public void inputChanged(Viewer v, Object oldInput, Object newInput) {
        }

        /*
         * @see org.eclipse.jface.viewers.IStructuredContentProvider#getElements(java.lang.Object)
         */
        public Object[] getElements(Object inputElement) {
            return fProviderDescriptors.values().toArray();
        }
    });
    viewer.setLabelProvider(new LabelProvider() {
        /*
         * @see org.eclipse.jface.viewers.LabelProvider#getImage(java.lang.Object)
         */
        public Image getImage(Object element) {
            return null;
        }

        /*
         * @see org.eclipse.jface.viewers.LabelProvider#getText(java.lang.Object)
         */
        public String getText(Object element) {
            return ((SpellingEngineDescriptor) element).getLabel();
        }
    });
    viewer.addSelectionChangedListener(new ISelectionChangedListener() {

        public void selectionChanged(SelectionChangedEvent event) {
            IStructuredSelection sel = (IStructuredSelection) event.getSelection();
            if (sel.isEmpty())
                return;
            if (fCurrentBlock != null && fStatusMonitor.getStatus() != null
                    && fStatusMonitor.getStatus().matches(IStatus.ERROR))
                if (isPerformRevert()) {
                    ISafeRunnable runnable = new ISafeRunnable() {
                        public void run() throws Exception {
                            fCurrentBlock.performRevert();
                        }

                        public void handleException(Throwable x) {
                        }
                    };
                    SafeRunner.run(runnable);
                } else {
                    revertSelection();
                    return;
                }
            fStore.setValue(SpellingService.PREFERENCE_SPELLING_ENGINE,
                    ((SpellingEngineDescriptor) sel.getFirstElement()).getId());
            updateListDependencies();
        }

        private boolean isPerformRevert() {
            Shell shell = viewer.getControl().getShell();
            MessageDialog dialog = new MessageDialog(shell,
                    TextEditorMessages.SpellingConfigurationBlock_error_title, null,
                    TextEditorMessages.SpellingConfigurationBlock_error_message, MessageDialog.QUESTION,
                    new String[] { IDialogConstants.YES_LABEL, IDialogConstants.NO_LABEL }, 1);
            return dialog.open() == 0;
        }

        private void revertSelection() {
            try {
                viewer.removeSelectionChangedListener(this);
                SpellingEngineDescriptor desc = EditorsUI.getSpellingService()
                        .getActiveSpellingEngineDescriptor(fStore);
                if (desc != null)
                    viewer.setSelection(new StructuredSelection(desc), true);
            } finally {
                viewer.addSelectionChangedListener(this);
            }
        }
    });
    viewer.setInput(fProviderDescriptors);
    viewer.refresh();

    return viewer;
}

From source file:org.eclipse.ui.internal.ide.ExtendedFileEditorsPreferencePage.java

License:Open Source License

@Override
protected Composite createContents(Composite parent) {
    Composite res = (Composite) super.createContents(parent);

    final UnassociatedEditorStrategyRegistry registry = IDEWorkbenchPlugin.getDefault()
            .getUnassociatedEditorStrategyRegistry();
    Composite defaultStrategyComposite = new Composite(res, SWT.NONE);
    defaultStrategyComposite.setLayout(new GridLayout(2, false));
    GridData layoutData = new GridData(SWT.FILL, SWT.CENTER, true, false, 2, 1);
    layoutData.verticalIndent = 20;//from  w  w  w. j av a 2s  .co  m
    defaultStrategyComposite.setLayoutData(layoutData);
    Label unknownTypeStrategyLabel = new Label(defaultStrategyComposite, SWT.NONE);
    unknownTypeStrategyLabel.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, false, false));
    unknownTypeStrategyLabel
            .setText(IDEWorkbenchMessages.ExtendedFileEditorsPreferencePage_strategyForUnassociatedFiles);
    ComboViewer viewer = new ComboViewer(defaultStrategyComposite);
    viewer.setLabelProvider(new LabelProvider() {
        @Override
        public String getText(Object o) {
            String id = (String) o;
            String label = registry.getLabel(id);
            if (label != null) {
                return label;
            }
            IDEWorkbenchPlugin.log("Could not resolve unknownEditorStrategy '" + id + "'"); //$NON-NLS-1$ //$NON-NLS-2$
            return NLS.bind(IDEWorkbenchMessages.ExtendedFileEditorsPreferencePage_labelNotResolved, id);
        }
    });
    viewer.setContentProvider(new ArrayContentProvider());
    viewer.setInput(registry.retrieveAllStrategies());
    this.idePreferenceStore = IDEWorkbenchPlugin.getDefault().getPreferenceStore();
    viewer.setSelection(new StructuredSelection(
            this.idePreferenceStore.getString(IDE.UNASSOCIATED_EDITOR_STRATEGY_PREFERENCE_KEY)));
    viewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            idePreferenceStore.setValue(IDE.UNASSOCIATED_EDITOR_STRATEGY_PREFERENCE_KEY,
                    (String) ((IStructuredSelection) event.getSelection()).getFirstElement());
        }
    });

    return res;
}

From source file:org.eclipse.viatra.query.tooling.ui.queryexplorer.AbstractBackendSelectionControl.java

License:Open Source License

@Override
protected Control createControl(Composite parent) {
    final ComboViewer viewer = new ComboViewer(parent, SWT.BORDER | SWT.READ_ONLY);
    viewer.setContentProvider(new ArrayContentProvider());
    viewer.setLabelProvider(new LabelProvider() {
        @Override/*from  www  . ja v  a2  s.  co  m*/
        public String getText(Object element) {
            if (element instanceof IQueryBackendFactory) {
                return DisplayUtil.getQueryBackendName((IQueryBackendFactory) element);
            }
            return super.getText(element);
        }
    });
    viewer.setInput(Iterables.toArray(getRegisteredQueryBackendImplementations(), IQueryBackendFactory.class));
    IQueryBackendFactory queryBackendFactory = getHints().getQueryBackendFactory();
    viewer.setSelection(queryBackendFactory != null ? new StructuredSelection(queryBackendFactory)
            : new StructuredSelection());

    viewer.addSelectionChangedListener(new ISelectionChangedListener() {

        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            final ISelection select = event.getSelection();
            if (select instanceof IStructuredSelection) {
                IStructuredSelection selection = (IStructuredSelection) select;
                Object o = selection.getFirstElement();
                if (o instanceof IQueryBackendFactory) {
                    applyBackendSelection((IQueryBackendFactory) o);
                }
            }
        }
    });
    viewer.getControl().setToolTipText("Select query backend engine to be used on subsequent loads.");

    return viewer.getControl();
}

From source file:org.eclipse.viatra.query.tooling.ui.queryexplorer.BackendSelectionControl.java

License:Open Source License

@Override
protected Control createControl(Composite parent) {
    final ComboViewer viewer = new ComboViewer(parent, SWT.BORDER | SWT.READ_ONLY);
    viewer.setContentProvider(new ArrayContentProvider());
    viewer.setLabelProvider(new LabelProvider() {
        @Override//from   w  w w  . j  av  a 2  s  . c  o  m
        public String getText(Object element) {
            if (element instanceof IQueryBackendFactory) {
                return DisplayUtil.getQueryBackendName((IQueryBackendFactory) element);
            }
            return super.getText(element);
        }
    });
    viewer.setInput(Iterables.toArray(getRegisteredQueryBackendImplementations(), IQueryBackendFactory.class));
    IQueryBackendFactory queryBackendFactory = getQueryExplorer().getHints().getQueryBackendFactory();
    viewer.setSelection(queryBackendFactory != null ? new StructuredSelection(queryBackendFactory)
            : new StructuredSelection());

    viewer.addSelectionChangedListener(new ISelectionChangedListener() {

        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            final ISelection select = event.getSelection();
            if (select instanceof IStructuredSelection) {
                IStructuredSelection selection = (IStructuredSelection) select;
                Object o = selection.getFirstElement();
                if (o instanceof IQueryBackendFactory) {
                    applyBackendSelection((IQueryBackendFactory) o);
                }
            }
        }
    });
    viewer.getControl().setToolTipText("Select query backend engine to be used on subsequent loads.");

    return viewer.getControl();
}

From source file:org.eclipse.viatra.query.tooling.ui.queryresult.BackendSelectionControl.java

License:Open Source License

@Override
protected Control createControl(Composite parent) {
    final ComboViewer viewer = new ComboViewer(parent, SWT.BORDER | SWT.READ_ONLY);
    viewer.setContentProvider(new ArrayContentProvider());
    viewer.setLabelProvider(new LabelProvider() {
        @Override//ww  w  .  ja  v  a 2  s.c o m
        public String getText(Object element) {
            if (element instanceof IQueryBackendFactory) {
                return QueryBackendRegistry.getInstance().getQueryBackendName((IQueryBackendFactory) element);
            }
            return super.getText(element);
        }
    });
    viewer.setInput(Iterables.toArray(getRegisteredQueryBackendImplementations(), IQueryBackendFactory.class));
    IQueryBackendFactory queryBackendFactory = getHints().getQueryBackendFactory();
    viewer.setSelection(queryBackendFactory != null ? new StructuredSelection(queryBackendFactory)
            : new StructuredSelection());

    viewer.addSelectionChangedListener(event -> {
        final ISelection select = event.getSelection();
        if (select instanceof IStructuredSelection) {
            IStructuredSelection selection = (IStructuredSelection) select;
            Object o = selection.getFirstElement();
            if (o instanceof IQueryBackendFactory) {
                applyBackendSelection((IQueryBackendFactory) o);
            }
        }
    });
    viewer.getControl().setToolTipText("Select query backend engine to be used on subsequent loads.");

    return viewer.getControl();
}

From source file:org.eclipse.viatra.transformation.debug.ui.views.transformationbrowser.TransformationBrowserConfigurationControl.java

License:Open Source License

@Override
protected Control createControl(Composite parent) {
    final ComboViewer viewer = new ComboViewer(parent, SWT.BORDER | SWT.READ_ONLY);
    viewer.setContentProvider(new ArrayContentProvider());
    viewer.setLabelProvider(new LabelProvider() {
        @Override//w w w .  j a v a2  s .  co  m
        public String getText(Object element) {
            if (element instanceof TransformationViewConfiguration) {
                return element.toString();
            }
            return super.getText(element);
        }
    });

    viewer.setInput(TransformationViewConfiguration.values());
    viewer.setSelection(new StructuredSelection(TransformationViewConfiguration.RULE_BROWSER));
    applyConfligurationSelection(TransformationViewConfiguration.RULE_BROWSER);

    viewer.addSelectionChangedListener(new ISelectionChangedListener() {

        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            final ISelection select = event.getSelection();
            if (select instanceof IStructuredSelection) {
                IStructuredSelection selection = (IStructuredSelection) select;
                Object o = selection.getFirstElement();
                if (o instanceof TransformationViewConfiguration) {
                    applyConfligurationSelection((TransformationViewConfiguration) o);
                }
            }
        }
    });
    viewer.getControl()
            .setToolTipText("Select the displayed information regarding running VIATRA transformations");

    return viewer.getControl();
}