Example usage for org.eclipse.jface.viewers DelegatingStyledCellLabelProvider DelegatingStyledCellLabelProvider

List of usage examples for org.eclipse.jface.viewers DelegatingStyledCellLabelProvider DelegatingStyledCellLabelProvider

Introduction

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

Prototype

public DelegatingStyledCellLabelProvider(IStyledLabelProvider labelProvider) 

Source Link

Document

Creates a DelegatingStyledCellLabelProvider that delegates the requests for the styled labels and the images to a IStyledLabelProvider .

Usage

From source file:au.gov.ga.earthsci.layer.ui.LayerTreePart.java

License:Apache License

protected void createOrderViewer(Composite parent, EMenuService menuService, CTabItem tabItem) {
    orderViewer = new TreeViewer(parent, SWT.MULTI);
    tabItem.setControl(orderViewer.getControl());
    orderViewer.getTree().setBackgroundImage(ImageRegistry.getInstance().get(ImageRegistry.ICON_TRANSPARENT));
    orderViewer.setAutoExpandLevel(2);/*from  w  w  w .j a  v  a 2s.c  om*/

    drawOrderModel.setInput(model.getRootNode());

    //create a bean list property associated with ILayerTreeNode's children property
    IBeanListProperty<DrawOrderModel.IDrawOrderModelElement, DrawOrderModel.IDrawOrderModelElement> childrenProperty = BeanProperties
            .list(DrawOrderModel.IDrawOrderModelElement.class, "children", //$NON-NLS-1$
                    DrawOrderModel.IDrawOrderModelElement.class);
    //setup a factory for creating observables observing ILayerTreeNodes
    IObservableFactory<DrawOrderModel.IDrawOrderModelElement, IObservableList<DrawOrderModel.IDrawOrderModelElement>> observableFactory = childrenProperty
            .listFactory();

    //create a content provider that listens for changes to any children in the tree
    ObservableListTreeContentProvider<DrawOrderModel.IDrawOrderModelElement> contentProvider = new ObservableListTreeContentProvider<DrawOrderModel.IDrawOrderModelElement>(
            observableFactory, null);

    DrawOrderLabelProvider labelProvider = new DrawOrderLabelProvider();

    //set the viewer's providers
    orderViewer.setContentProvider(contentProvider);
    orderViewer.setLabelProvider(new DelegatingStyledCellLabelProvider(labelProvider));

    //set the viewer and listener inputs
    orderViewer.setInput(drawOrderModel.getRoot());

    //add drag and drop support
    int ops = DND.DROP_MOVE;
    orderViewer.addDragSupport(ops, new Transfer[] { LocalLayerTransfer.getInstance() },
            new DrawOrderDragSourceListener(orderViewer));
    orderViewer.addDropSupport(ops, new Transfer[] { LocalLayerTransfer.getInstance() },
            new DrawOrderDropAdapter(orderViewer));
}

From source file:ccw.editors.outline.ClojureOutlinePage.java

License:Open Source License

@Override
public void createControl(Composite parent) {
    super.createControl(parent);
    treeViewer = getTreeViewer();//w ww. ja  va 2 s  .  c  o  m
    treeViewer.setContentProvider(new ITreeContentProvider() {

        public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {

        }

        public void dispose() {

        }

        public Object[] getElements(Object input) {
            return ((List<?>) input).toArray();
        }

        public boolean hasChildren(Object arg0) {
            return false;
        }

        public Object getParent(Object arg0) {
            return null;
        }

        public Object[] getChildren(Object arg0) {
            // TODO: handle children? Granularity, Bindings?
            return null;
        }
    });
    treeViewer.setLabelProvider(new DelegatingStyledCellLabelProvider(new OutlineLabelProvider()));
    treeViewer.addSelectionChangedListener(this);
    treeViewer.setInput(forms);
    treeSelectionChangedListener = new TreeSelectionChangedListener();
    treeViewer.addSelectionChangedListener(treeSelectionChangedListener);

    IPostSelectionProvider selectionProvider = (IPostSelectionProvider) editor.getSelectionProvider();
    editorSelectionChangedListener = new EditorSelectionChangedListener(treeViewer);
    selectionProvider.addPostSelectionChangedListener(editorSelectionChangedListener);
    ISelection selection = selectionProvider.getSelection();
    selectInOutline(selection);

    registerToolbarActions();
}

From source file:com.atlassian.connector.eclipse.ui.commons.ResourceSelectionTree.java

License:Open Source License

private void createControls() {
    GridLayout layout = new GridLayout(2, false);
    layout.marginHeight = 0;/*ww w. j ava  2 s  .c  o  m*/
    layout.marginWidth = 0;
    layout.horizontalSpacing = 0;
    layout.verticalSpacing = 0;
    setLayout(layout);
    GridData layoutData = new GridData(GridData.FILL_BOTH);
    layoutData.widthHint = 500;
    setLayoutData(layoutData);

    ViewForm viewerPane = new ViewForm(this, SWT.BORDER | SWT.FLAT);
    layoutData = new GridData(SWT.FILL, SWT.FILL, true, true, 2, 1);
    layoutData.widthHint = 500;
    viewerPane.setLayoutData(layoutData);

    CLabel toolbarLabel = new CLabel(viewerPane, SWT.NONE) {
        @Override
        public Point computeSize(int wHint, int hHint, boolean changed) {
            return super.computeSize(wHint, Math.max(24, hHint), changed);
        }
    };

    if (label != null) {
        toolbarLabel.setText(label);
    }
    viewerPane.setTopLeft(toolbarLabel);

    int buttonGroupColumns = 1;
    if (toolbarControlCreator != null) {
        buttonGroupColumns = buttonGroupColumns + toolbarControlCreator.getControlCount();
    }

    ToolBar toolbar = new ToolBar(viewerPane, SWT.FLAT);
    viewerPane.setTopCenter(toolbar);

    ToolBarManager toolbarManager = new ToolBarManager(toolbar);

    if (toolbarControlCreator != null) {
        toolbarControlCreator.createToolbarControls(toolbarManager);
        toolbarManager.add(new Separator());
    }

    flatAction = new Action("Flat Mode", IAction.AS_RADIO_BUTTON) {
        @Override
        public void run() {
            mode = TreeViewMode.MODE_FLAT;
            settingsProvider.setTreeViewMode(mode);
            treeAction.setChecked(false);
            compressedAction.setChecked(false);
            refresh();
        }
    };
    //      flatAction.setImageDescriptor(AtlassianImages.IMG_FLAT_MODE);
    toolbarManager.add(flatAction);

    treeAction = new Action("Tree Mode", IAction.AS_RADIO_BUTTON) {
        @Override
        public void run() {
            mode = TreeViewMode.MODE_TREE;
            settingsProvider.setTreeViewMode(mode);
            flatAction.setChecked(false);
            compressedAction.setChecked(false);
            refresh();
        }
    };
    //      treeAction.setImageDescriptor(AtlassianImages.IMG_TREE_MODE);
    toolbarManager.add(treeAction);

    compressedAction = new Action("Compressed Folders Mode", IAction.AS_RADIO_BUTTON) {
        @Override
        public void run() {
            mode = TreeViewMode.MODE_COMPRESSED_FOLDERS;
            settingsProvider.setTreeViewMode(mode);
            treeAction.setChecked(false);
            flatAction.setChecked(false);
            refresh();
        }
    };
    //      compressedAction.setImageDescriptor(AtlassianImages.IMG_COMPRESSED_FOLDER_MODE);
    toolbarManager.add(compressedAction);

    toolbarManager.update(true);

    switch (mode) {
    case MODE_COMPRESSED_FOLDERS:
        compressedAction.setChecked(true);
        break;
    case MODE_FLAT:
        flatAction.setChecked(true);
        break;
    case MODE_TREE:
        treeAction.setChecked(true);
        break;
    default:
        compressedAction.setChecked(true);
        mode = TreeViewMode.MODE_COMPRESSED_FOLDERS;
        settingsProvider.setTreeViewMode(mode);
        break;
    }

    treeViewer = new CheckboxTreeViewer(viewerPane, SWT.SINGLE);

    tree = treeViewer.getTree();
    layoutData = new GridData(SWT.FILL, SWT.FILL, true, true);
    layoutData.widthHint = 500;
    tree.setLayoutData(layoutData);
    viewerPane.setContent(tree);

    final DelegatingStyledCellLabelProvider labelProvider = new DelegatingStyledCellLabelProvider(
            new ResourceSelectionLabelProvider());

    treeViewer.setLabelProvider(labelProvider);
    treeViewer.setContentProvider(resourceSelectionContentProvider);
    treeViewer.setUseHashlookup(true);
    layoutData = new GridData(SWT.FILL, SWT.FILL, true, true);
    layoutData.heightHint = 125;
    layoutData.widthHint = TREE_WIDTH;
    treeViewer.getControl().setLayoutData(layoutData);
    treeViewer.setInput(this);

    treeViewer.expandAll();

    setAllChecked(true);
    if (mode == TreeViewMode.MODE_TREE) {
        treeViewer.collapseAll();
    }
    treeViewer.addCheckStateListener(new ICheckStateListener() {
        public void checkStateChanged(CheckStateChangedEvent event) {
            handleCheckStateChange(event);
        }
    });

    MenuManager menuMgr = new MenuManager();
    Menu menu = menuMgr.createContextMenu(treeViewer.getTree());
    menuMgr.addMenuListener(new IMenuListener() {
        public void menuAboutToShow(IMenuManager menuMgr) {
            fillTreeMenu(menuMgr);
        }
    });
    menuMgr.setRemoveAllWhenShown(true);
    treeViewer.getTree().setMenu(menu);
}

From source file:com.boothen.jsonedit.outline.JsonContentOutlinePage.java

License:Open Source License

@Override
public void createControl(Composite parent) {

    super.createControl(parent);

    TreeViewer viewer = getTreeViewer();
    viewer.setContentProvider(fContentProvider);
    DelegatingStyledCellLabelProvider delegatingStyledCellLabelProvider = new DelegatingStyledCellLabelProvider(
            new JsonLabelProvider());
    viewer.setLabelProvider(delegatingStyledCellLabelProvider);
    getSite().getPage().addPostSelectionListener(this);

    if (fInput != null) {
        viewer.setInput(fInput);//from   w ww. j a v  a2 s .c om
        fContentProvider.setInput(fInput);

    }
}

From source file:com.boothen.jsonedit.quickoutline.QuickOutlinePopup.java

License:Open Source License

private void createTreeViewer(Composite parent) {
    Tree tree = new Tree(parent, SWT.SINGLE);
    GridData gd = new GridData(GridData.FILL_BOTH);
    gd.heightHint = tree.getItemHeight() * 12;
    tree.setLayoutData(gd);/*from   www .j  a va 2  s. com*/
    tree.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetDefaultSelected(SelectionEvent e) {
            gotoSelectedElement();
        }
    });

    applyInfoColor(tree);

    treeViewer = new TreeViewer(tree);
    treeViewer.setContentProvider(contentProvider);
    treeViewer.setAutoExpandLevel(AbstractTreeViewer.ALL_LEVELS);
    // wrap in DSCLP to forward the styled text to the tree viewer
    treeViewer.setLabelProvider(new DelegatingStyledCellLabelProvider(labelProvider));
}

From source file:com.cisco.yangide.editor.editors.YangContentOutlinePage.java

License:Open Source License

@Override
public void createControl(Composite parent) {
    super.createControl(parent);
    getTreeViewer().setContentProvider(new YangOutlineContentProvider());
    getTreeViewer()/*ww w  .  j av a2s. co m*/
            .setLabelProvider(new DelegatingStyledCellLabelProvider(new YangOutlineStyledLabelProvider()));
    getTreeViewer().setInput(getOutlineRoot());
}

From source file:com.ebmwebsourcing.petals.common.internal.provisional.swt.StyledFilteredList.java

License:Open Source License

/**
 * Constructs a new filtered list.//from ww w  .  ja v a2  s .c  om
 * @param parent
 * @param style
 * @param labelProvider
 */
public StyledFilteredList(Composite parent, int style, IStyledLabelProvider labelProvider) {

    super(parent, SWT.NONE);
    GridLayout layout = new GridLayout();
    layout.marginHeight = 0;
    layout.marginWidth = 0;
    setLayout(layout);

    Table table = new Table(this, style);
    table.setLayoutData(new GridData(GridData.FILL_BOTH));
    table.addDisposeListener(new DisposeListener() {
        @Override
        public void widgetDisposed(DisposeEvent e) {
            StyledFilteredList.this.labelProvider.dispose();
            if (StyledFilteredList.this.fUpdateJob != null)
                StyledFilteredList.this.fUpdateJob.cancel();
        }
    });

    this.viewer = new TableViewer(table);
    this.viewer.setContentProvider(new ArrayContentProvider());
    this.labelProvider = new DelegatingStyledCellLabelProvider(labelProvider);
    this.viewer.setLabelProvider(this.labelProvider);

    this.viewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            StyledFilteredList.this.selectedElements.clear();
            Object[] sel = ((IStructuredSelection) event.getSelection()).toArray();
            StyledFilteredList.this.selectedElements.addAll(Arrays.asList(sel));
        }
    });
}

From source file:com.ebmwebsourcing.petals.services.su.ui.ServiceOperationDialog.java

License:Open Source License

@Override
protected Control createDialogArea(Composite parent) {

    // Create the parent
    Composite bigContainer = (Composite) super.createDialogArea(parent);
    GridLayout layout = new GridLayout();
    layout.marginHeight = 0;//from w ww .ja v  a  2s .c o  m
    bigContainer.setLayout(layout);
    bigContainer.setLayoutData(new GridData(GridData.FILL_BOTH));

    Composite container = new Composite(bigContainer, SWT.NONE);
    container.setLayout(new GridLayout(2, true));
    container.setLayoutData(new GridData(GridData.FILL_BOTH));

    // Put a viewer on the left
    final TableViewer viewer = new TableViewer(container, SWT.BORDER | SWT.SINGLE | SWT.FULL_SELECTION);
    viewer.getTable().setLayoutData(new GridData(GridData.FILL_BOTH));
    viewer.setContentProvider(new ArrayContentProvider());
    viewer.setLabelProvider(new DelegatingStyledCellLabelProvider(new OperationLabelProvider()));
    viewer.setInput(this.opNameToMep.keySet());

    // Add widgets on the right
    Composite rightPart = new Composite(container, SWT.NONE);
    layout = new GridLayout(2, false);
    layout.marginHeight = 0;
    rightPart.setLayout(layout);
    rightPart.setLayoutData(new GridData(GridData.FILL_BOTH));

    final Button customOpButton = new Button(rightPart, SWT.CHECK);
    customOpButton.setText("Define a custom operation");
    GridData layoutData = new GridData();
    layoutData.horizontalSpan = 2;
    customOpButton.setLayoutData(layoutData);

    Label l = new Label(rightPart, SWT.NONE);
    l.setText("Name space:");
    l.setToolTipText("The operation's name space");

    this.nsText = new Text(rightPart, SWT.BORDER | SWT.SINGLE);
    this.nsText.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));

    l = new Label(rightPart, SWT.NONE);
    l.setText("Name:");
    l.setToolTipText("The operation's name");

    this.nameText = new Text(rightPart, SWT.BORDER | SWT.SINGLE);
    this.nameText.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));

    l = new Label(rightPart, SWT.NONE);
    l.setText("MEP:");
    l.setToolTipText("The Message Exchange Pattern");

    this.mepViewer = new ComboViewer(rightPart, SWT.BORDER | SWT.DROP_DOWN | SWT.READ_ONLY);
    this.mepViewer.getCombo().setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    this.mepViewer.setContentProvider(new ArrayContentProvider());
    this.mepViewer.setLabelProvider(new LabelProvider());
    this.mepViewer.setInput(Mep.values());

    // Complete the dialog properties
    getShell().setText("Operation Viewer");
    setTitle("Operation Viewer");
    setMessage("View and edit service operations.");

    // Add the listeners
    customOpButton.addSelectionListener(new SelectionListener() {
        public void widgetSelected(SelectionEvent e) {
            widgetDefaultSelected(e);
        }

        public void widgetDefaultSelected(SelectionEvent e) {

            ServiceOperationDialog.this.useCustomOperation = customOpButton.getSelection();
            ServiceOperationDialog.this.nsText.setEditable(customOpButton.getSelection());
            ServiceOperationDialog.this.nameText.setEditable(customOpButton.getSelection());
            ServiceOperationDialog.this.mepViewer.getCombo().setEnabled(customOpButton.getSelection());
            validate();
        }
    });

    viewer.addSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(SelectionChangedEvent event) {
            Object o = ((IStructuredSelection) viewer.getSelection()).getFirstElement();
            ServiceOperationDialog.this.nsText.setText(((QName) o).getNamespaceURI());
            ServiceOperationDialog.this.nameText.setText(((QName) o).getLocalPart());

            Mep mep = ServiceOperationDialog.this.opNameToMep.get(o);
            ServiceOperationDialog.this.mepViewer.setSelection(new StructuredSelection(mep));
        }
    });

    customOpButton.setSelection(false);
    customOpButton.notifyListeners(SWT.Selection, new Event());

    ModifyListener modifyListener = new ModifyListener() {
        public void modifyText(ModifyEvent e) {
            if ((((Text) e.widget).getStyle() & SWT.READ_ONLY) == 0)
                validate();
        }
    };

    this.nameText.addModifyListener(modifyListener);
    this.nsText.addModifyListener(modifyListener);
    this.mepViewer.getCombo().addSelectionListener(new SelectionListener() {
        public void widgetDefaultSelected(SelectionEvent e) {
            widgetSelected(e);
        }

        public void widgetSelected(SelectionEvent e) {
            if (((Combo) e.widget).isEnabled())
                validate();
        }
    });

    return bigContainer;
}

From source file:com.ebmwebsourcing.petals.services.su.wizards.pages.SeveralConsumeWizardPage.java

License:Open Source License

@Override
public void createControl(Composite parent) {

    // First page of the wizard: force the size
    GridData layoutData = new GridData(GridData.FILL_HORIZONTAL);
    layoutData.widthHint = 500;//from  w  w w.j  a  v  a  2 s .co m
    layoutData.heightHint = 340;
    parent.setLayoutData(layoutData);

    /* create the composite container and define its layout */
    final Composite container = new Composite(parent, SWT.NONE);

    GridLayout layout = new GridLayout();
    layout.marginLeft = 15;
    layout.marginTop = 15;
    container.setLayout(layout);
    container.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));

    // Add the other widgets
    Label l = new Label(container, SWT.NONE);
    l.setText("Select the end-points to watch.");

    // The end-point table
    Composite subContainer = new Composite(container, SWT.NONE);
    layout = new GridLayout(2, false);
    layout.marginHeight = 0;
    layout.marginWidth = 0;
    subContainer.setLayout(layout);
    subContainer.setLayoutData(new GridData(GridData.FILL_BOTH));

    this.viewer = new TableViewer(subContainer, SWT.BORDER | SWT.SINGLE);
    this.viewer.getTable().setLayoutData(new GridData(GridData.FILL_BOTH));
    this.viewer.setContentProvider(new ArrayContentProvider());
    this.labelProvider = new PCStyledLabelProvider(container);
    this.viewer.setLabelProvider(new DelegatingStyledCellLabelProvider(this.labelProvider));

    // The buttons
    Composite buttonsComposite = new Composite(subContainer, SWT.NONE);
    layout = new GridLayout();
    layout.marginHeight = 0;
    buttonsComposite.setLayout(layout);
    buttonsComposite.setLayoutData(new GridData(SWT.DEFAULT, SWT.BEGINNING, false, true));

    Button addButton = new Button(buttonsComposite, SWT.PUSH);
    addButton.setText("&Add");
    addButton.setToolTipText("Displays the end-points from the Petals Services view");
    addButton.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    addButton.addSelectionListener(new SelectionListener() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            widgetDefaultSelected(e);
        }

        @Override
        public void widgetDefaultSelected(SelectionEvent e) {

            EndpointBean bean = ConsumeUtils.selectEndpointToConsume(container);
            if (bean != null) {
                SeveralConsumeWizardPage.this.edptBeans.add(bean);
                SeveralConsumeWizardPage.this.viewer.setInput(SeveralConsumeWizardPage.this.edptBeans);
                SeveralConsumeWizardPage.this.viewer.refresh();
                validate();
            }
        }
    });

    Button removeButton = new Button(buttonsComposite, SWT.PUSH);
    removeButton.setText("&Remove");
    removeButton.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    removeButton.addSelectionListener(new SelectionListener() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            widgetDefaultSelected(e);
        }

        @Override
        public void widgetDefaultSelected(SelectionEvent e) {

            if (SeveralConsumeWizardPage.this.viewer.getSelection().isEmpty())
                return;

            EndpointBean bean = (EndpointBean) ((IStructuredSelection) SeveralConsumeWizardPage.this.viewer
                    .getSelection()).getFirstElement();
            SeveralConsumeWizardPage.this.edptBeans.remove(bean);
            SeveralConsumeWizardPage.this.viewer.setInput(SeveralConsumeWizardPage.this.edptBeans);
            SeveralConsumeWizardPage.this.viewer.refresh();
            validate();
        }
    });

    // End-up correctly
    setControl(container);
    validate();
    setErrorMessage(null);
}

From source file:com.github.sdbg.debug.ui.internal.dialogs.ManageLaunchesDialog.java

License:Open Source License

private void createDialogUI(Composite parent) {
    GridLayoutFactory.fillDefaults().margins(12, 6).applyTo(parent);

    SashForm sashForm = new SashForm(parent, SWT.HORIZONTAL);
    GridDataFactory.fillDefaults().grab(true, true).align(SWT.FILL, SWT.FILL).hint(725, 370).applyTo(sashForm);

    Composite leftComposite = new Composite(sashForm, SWT.NONE);
    GridLayoutFactory.fillDefaults().applyTo(leftComposite);
    GridDataFactory.swtDefaults().grab(false, true).align(SWT.FILL, SWT.FILL).applyTo(leftComposite);

    ToolBarManager toolBarManager = new ToolBarManager(SWT.FLAT);
    ToolBar toolBar = toolBarManager.createControl(leftComposite);
    toolBar.setBackground(parent.getBackground());
    GridDataFactory.swtDefaults().grab(true, false).align(SWT.BEGINNING, SWT.FILL).applyTo(toolBar);

    launchesViewer = new TableViewer(leftComposite, SWT.MULTI | SWT.V_SCROLL | SWT.BORDER);
    launchesViewer.setLabelProvider(new DelegatingStyledCellLabelProvider(new LaunchConfigLabelProvider()));
    launchesViewer.setComparator(new ViewerComparator(String.CASE_INSENSITIVE_ORDER));
    launchesViewer.setContentProvider(new LaunchConfigContentProvider());
    launchesViewer.setInput(ResourcesPlugin.getWorkspace().getRoot());
    launchesViewer.getTable().setFocus();
    launchesViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override/*from   w  w  w . j  a v a  2s.  com*/
        public void selectionChanged(SelectionChangedEvent event) {
            handleSelectedConfigChanged();
        }
    });

    GridDataFactory.swtDefaults().grab(false, true).align(SWT.FILL, SWT.FILL).hint(50, 50)
            .applyTo(launchesViewer.getControl());

    ILaunchManager manager = DebugPlugin.getDefault().getLaunchManager();

    for (final ILaunchConfigurationType configType : manager.getLaunchConfigurationTypes()) {
        // remove chrome app and pub serve launch icons from toolbar, unless user has opted in
        if (!configType.getIdentifier().contains("pubServe")
                && !configType.getIdentifier().contains("chromeApp")) {
            CreateLaunchAction action = new CreateLaunchAction(this, configType);
            toolBarManager.add(action);
        } else {
            if ((configType.getIdentifier().contains("pubServe") && DartCoreDebug.ENABLE_PUB_SERVE_LAUNCH)
                    || (configType.getIdentifier().contains("chromeApp")
                            && DartCoreDebug.ENABLE_CHROME_APP_LAUNCH_CONFIG)) {

                CreateLaunchAction action = new CreateLaunchAction(this, configType);
                toolBarManager.add(action);
            }
        }
    }

    //toolBarManager.add(new Separator());
    toolBarManager.add(getDeleteAction());

    toolBarManager.update(true);

    configUI = new Composite(sashForm, SWT.NONE);
    GridLayoutFactory.fillDefaults().applyTo(configUI);
    GridDataFactory.swtDefaults().grab(true, false).align(SWT.FILL, SWT.BEGINNING).applyTo(configUI);

    toolBar.pack();
    Label toolbarSpacer = new Label(configUI, SWT.NONE);
    GridDataFactory.swtDefaults().hint(SWT.NONE, toolBar.getSize().y).applyTo(toolbarSpacer);

    Composite nameComposite = new Composite(configUI, SWT.NONE);
    GridDataFactory.swtDefaults().grab(true, false).align(SWT.FILL, SWT.FILL).applyTo(nameComposite);
    GridLayoutFactory.swtDefaults().margins(6, 0).applyTo(nameComposite);

    configNameText = new Text(nameComposite, SWT.SINGLE | SWT.BORDER);
    GridDataFactory.swtDefaults().grab(true, false).align(SWT.FILL, SWT.CENTER).applyTo(configNameText);
    configNameText.addModifyListener(new ModifyListener() {
        @Override
        public void modifyText(ModifyEvent e) {
            if (workingCopy != null) {
                workingCopy.rename(configNameText.getText());
            }
        }
    });

    launchConfigArea = new ScrolledComposite(configUI, SWT.V_SCROLL);
    GridDataFactory.swtDefaults().grab(true, true).align(SWT.FILL, SWT.FILL).applyTo(launchConfigArea);
    launchConfigArea.setExpandVertical(false);
    launchConfigArea.setExpandHorizontal(true);

    configNameText.setVisible(false);

    sashForm.setWeights(new int[] { 33, 67 });

    selectLaunchConfigFromPage();
}