Example usage for org.eclipse.jface.action GroupMarker GroupMarker

List of usage examples for org.eclipse.jface.action GroupMarker GroupMarker

Introduction

In this page you can find the example usage for org.eclipse.jface.action GroupMarker GroupMarker.

Prototype

public GroupMarker(String groupName) 

Source Link

Document

Create a new group marker with the given name.

Usage

From source file:net.karlmartens.ui.widget.Table.java

License:Apache License

public IMenuManager getMenuManager() {
    if (_menuManager == null) {
        final MenuManager mm = new MenuManager();
        mm.add(new GroupMarker(GROUP_COMMAND));
        mm.add(new Separator(GROUP_EDIT));
        mm.add(new Separator(GROUP_DATA));

        setMenu(mm.createContextMenu(this));
        _menuManager = mm;/*from w  w  w.  j av a  2 s . co m*/
    }
    return _menuManager;
}

From source file:net.refractions.udig.catalog.ui.browse.ServiceTypeView.java

License:Open Source License

private void createContextMenu() {
    final MenuManager contextMenu = new MenuManager();

    contextMenu.setRemoveAllWhenShown(true);
    contextMenu.addMenuListener(new IMenuListener() {

        public void menuAboutToShow(IMenuManager mgr) {
            contextMenu.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS));
            contextMenu.add(new Separator());
            //contextMenu.add(removeAction);
            IWorkbenchWindow window = getSite().getWorkbenchWindow();
            //IAction action = ActionFactory.IMPORT.create(window);
            //contextMenu.add(action);
            //contextMenu.add(new Separator());
            contextMenu.add(/*from ww w.  j av a 2 s .co  m*/
                    UiPlugin.getDefault().getOperationMenuFactory().getContextMenu(treeviewer.getSelection()));
            contextMenu.add(new Separator());
            //contextMenu.add(ActionFactory.EXPORT.create(getSite().getWorkbenchWindow()));
        }

    });

    // Create menu.
    Menu menu = contextMenu.createContextMenu(treeviewer.getControl());
    treeviewer.getControl().setMenu(menu);

    // Register menu for extension.
    getSite().registerContextMenu(contextMenu, treeviewer);

}

From source file:net.refractions.udig.internal.ui.operations.OperationMenuFactory.java

License:Open Source License

/**
 * Creates a menu manager with actions that will enable 
 * based on the current workbench selection.
 * /*from  ww  w  .  j av  a  2  s. co  m*/
 * @return a menu manager with all the Operation Actions.
 */
public MenuManager getMenu() {
    if (menuManager == null) {
        menuManager = new MenuManager(getMenuText());
        for (OperationCategory category : categories.values()) {
            if (category.getItems().length > 0) {
                menuManager.add(category);
            }
        }
        for (OpAction action : actions) {
            menuManager.add(action);
        }
        menuManager.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS));
    }
    return menuManager;
}

From source file:net.refractions.udig.project.ui.internal.FeatureEditorExtensionProcessor.java

License:Open Source License

/**
 * Creates the edit feature action/*ww  w  . ja  v  a 2 s .  c o  m*/
 * 
 * @return the edit feature action
 */
public IContributionItem getEditFeatureAction(final ISelection selection) {
    if (selection.isEmpty())
        return new GroupMarker("editAction"); //$NON-NLS-1$

    if (!(selection instanceof IStructuredSelection))
        return new GroupMarker("editAction"); //$NON-NLS-1$
    IStructuredSelection structuredSelection = (IStructuredSelection) selection;
    if (!sameFeatureTypes(structuredSelection))
        return new GroupMarker("editAction"); //$NON-NLS-1$

    SimpleFeature feature = (SimpleFeature) structuredSelection.getFirstElement();
    IContributionItem item = selectedEditors.get(feature.getFeatureType());
    if (item != null)
        return item;

    FeatureEditorLoader loader = getClosestMatch(selection);
    if (loader != null)
        return createEditAction(loader, selection, feature);

    return new GroupMarker("editAction"); //$NON-NLS-1$
}

From source file:net.refractions.udig.project.ui.internal.FeatureEditorExtensionProcessor.java

License:Open Source License

/**
 * Creates the edit/editWith menu items if the current selection is a feature.
 * // ww  w  .j  a  v  a2s  .  co  m
 * @return the edit/editWith menu items if the current selection is a feature.
 */
public IContributionItem getEditWithFeatureMenu(ISelection selection) {
    if (selection.isEmpty())
        return new GroupMarker("editWithMenu"); //$NON-NLS-1$
    MenuManager editWithMenu = new MenuManager(Messages.FeatureEditorExtensionProcessor_editWithMenu);
    for (FeatureEditorLoader loader : editorLoaders) {
        IAction editorAction = loader.getAction(selection);
        if (editorAction != null)
            editWithMenu.add(editorAction);
    }
    editWithMenu.setVisible(true);
    if (editWithMenu.getItems().length == 0)
        return new GroupMarker("editWithMenu"); //$NON-NLS-1$
    return editWithMenu;
}

From source file:net.refractions.udig.project.ui.internal.LayersView.java

License:Open Source License

/**
 * Creates a context menu//w  w w .j a  va2 s .  co  m
 * 
 * @param viewer2
 */
private void createContextMenuFor(final Viewer viewer2) {
    final MenuManager contextMenu = new MenuManager();

    contextMenu.setRemoveAllWhenShown(true);
    contextMenu.addMenuListener(new IMenuListener() {

        public void menuAboutToShow(IMenuManager mgr) {
            contextMenu.add(ApplicationGIS.getToolManager().getCOPYAction(LayersView.this));
            contextMenu.add(ApplicationGIS.getToolManager().getPASTEAction(LayersView.this));
            contextMenu.add(getDeleteAction());
            contextMenu.add(new Separator());
            contextMenu.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS));
            // LayerApplicabilityMenuCreator creator = getApplicabilityMenu();
            // if (creator != null)
            // contextMenu.add(creator.getMenuManager());
            contextMenu.add(ApplicationGIS.getToolManager().createOperationsContextMenu(viewer.getSelection()));
            contextMenu.add(new Separator());
            contextMenu.add(ActionFactory.EXPORT.create(getSite().getWorkbenchWindow()));
            contextMenu.add(new Separator());
            if (viewer.getTree().getSelectionCount() == 1)
                contextMenu.add(getPropertiesAction());
        }

        private LayerApplicabilityMenuCreator applicabilityCreator;

        private LayerApplicabilityMenuCreator getApplicabilityMenu() {
            if (applicabilityCreator == null) {
                applicabilityCreator = new LayerApplicabilityMenuCreator();
            }

            IStructuredSelection selection = (IStructuredSelection) viewer2.getSelection();
            for (Iterator iter = selection.iterator(); iter.hasNext();) {
                Object element = iter.next();
                if (!(element instanceof Layer))
                    return null;
            }

            return applicabilityCreator;
        }

    });

    // Create menu.
    Menu menu = contextMenu.createContextMenu(viewer2.getControl());
    viewer2.getControl().setMenu(menu);

    // Register menu for extension.
    getSite().registerContextMenu(contextMenu, viewer2);

}

From source file:net.refractions.udig.project.ui.internal.MapEditor.java

License:Open Source License

/**
 * @see org.eclipse.ui.IWorkbenchPart#createPartControl(org.eclipse.swt.widgets.Composite)
 *///from   ww  w . jav a2 s .  c  o m
public void createPartControl(final Composite parent) {

    ShutdownTaskList.instance().addPreShutdownTask(shutdownTask);

    composite = new Composite(parent, SWT.NO_BACKGROUND);

    composite.setLayout(new FormLayout());
    composite.setFont(parent.getFont());
    setPartName(getMap().getName());

    setTitleToolTip(Messages.MapEditor_titleToolTip);
    setTitleImage(ProjectUIPlugin.getDefault().getImage(ISharedImages.MAP_OBJ));

    final IPreferenceStore preferenceStore = ProjectPlugin.getPlugin().getPreferenceStore();
    boolean istiled = preferenceStore
            .getBoolean(net.refractions.udig.project.preferences.PreferenceConstants.P_TILED_RENDERING);

    if (!istiled) {
        viewer = new MapViewer(composite, SWT.DOUBLE_BUFFERED);
    } else {
        viewer = new MapViewer(composite, SWT.MULTI | SWT.NO_BACKGROUND);
    }
    // allow the viewer to open our context menu; work with our selection proivder etc
    viewer.init(this);
    // if a map was provided as input we can ask the viewer to use it
    Map input = (Map) ((UDIGEditorInput) getEditorInput()).getProjectElement();
    if (input != null) {
        viewer.setMap(input);
    }

    FormData formdata = new FormData();
    formdata.top = new FormAttachment(0);
    formdata.bottom = new FormAttachment(100, -ScaleRatioLabel.STATUS_LINE_HEIGHT);
    formdata.left = new FormAttachment(0);
    formdata.right = new FormAttachment(100);
    viewer.getViewport().getControl().setLayoutData(formdata);

    statusLineManager.add(new GroupMarker(StatusLineManager.BEGIN_GROUP));
    statusLineManager.add(new GroupMarker(StatusLineManager.MIDDLE_GROUP));
    statusLineManager.add(new GroupMarker(StatusLineManager.END_GROUP));
    statusLineManager.createControl(composite, SWT.BORDER);
    formdata = new FormData();
    formdata.left = new FormAttachment(0);
    formdata.right = new FormAttachment(100);
    formdata.top = new FormAttachment(viewer.getViewport().getControl(), 0, SWT.BOTTOM);
    formdata.bottom = new FormAttachment(100);
    statusLineManager.getControl().setLayoutData(formdata);

    getSite().getPage().addPartListener(partlistener);
    registerFeatureFlasher();
    /*
    if (getMap().getRenderManager() == null){
    if (!istiled) {
        getMap().setRenderManagerInternal(new RenderManagerDynamic());
    } else {
        getMap().setRenderManagerInternal(new TiledRenderManagerDynamic());
    }
    }
            
    setRenderManager(getMap().getRenderManagerInternal());
    viewer.getViewport().setRenderManager(getRenderManager());
    getRenderManager().setMapDisplay(viewer.getViewport());
    */
    viewer.getViewport().addPaneListener(getMap().getViewportModelInternal());

    layerSelectionListener = new LayerSelectionListener(new LayerSelectionListener.Callback() {

        public void callback(List<Layer> layers) {
            if (composite.isDisposed()) {
                getSite().getPage().removePostSelectionListener(layerSelectionListener);
                return; // component.isVisible cannot be called on a disposed component
            } else if (!composite.isVisible())
                return;
            Layer layer = layers.get(0);
            // Second condition excludes unnecessary UI call
            if (layer.getMap() == getMap() && getMap().getEditManager().getSelectedLayer() != layer) {
                SelectLayerCommand selectLayerCommand = new SelectLayerCommand(layer);
                selectLayerCommand.setMap(getMap());
                try {
                    selectLayerCommand.run(ProgressManager.instance().get());
                } catch (Exception e) {
                    throw (RuntimeException) new RuntimeException().initCause(e);
                }
                getMap().sendCommandSync(new UndoRedoCommand(selectLayerCommand));
            }
        }

    });
    getSite().getPage().addPostSelectionListener(layerSelectionListener);

    for (Layer layer : getMap().getLayersInternal()) {
        layer.addListener(layerListener);
    }

    dropTarget = UDIGDragDropUtilities.addDropSupport(viewer.getViewport().getControl(), this);
    this.replaceableSelectionProvider = new ReplaceableSelectionProvider();
    getSite().setSelectionProvider(replaceableSelectionProvider);
    runMapOpeningInterceptor(getMap());
    mapEditorSite = new MapEditorSite(super.getSite(), this);
    updateCRS();
    updateScaleLabel();

    getMap().getViewportModel().addViewportModelListener(new IViewportModelListener() {

        public void changed(ViewportModelEvent event) {
            if (getMap() == null) {
                event.getSource().removeViewportModelListener(this);
                return;
            }
            if (event.getType() == EventType.CRS) {
                updateCRS();
            }
        }

    });

    setDirty(isMapDirty());
}

From source file:net.refractions.udig.project.ui.internal.MapEditor.java

License:Open Source License

void createContextMenu() {
    Menu menu;/*  w w w  .  j a v a 2  s  . c  om*/
    menu = viewer.getMenu();
    if (menu == null) {
        final MenuManager contextMenu = new MenuManager();
        contextMenu.setRemoveAllWhenShown(true);
        contextMenu.addMenuListener(new IMenuListener() {
            public void menuAboutToShow(IMenuManager mgr) {
                IToolManager tm = ApplicationGIS.getToolManager();

                contextMenu.add(tm.getENTERAction());
                contextMenu.add(new Separator());

                contextMenu.add(tm.getZOOMTOSELECTEDAction());
                contextMenu.add(new Separator());
                contextMenu.add(tm.getBACKWARD_HISTORYAction());
                contextMenu.add(tm.getFORWARD_HISTORYAction());
                contextMenu.add(new Separator());
                // contextMenu.add(tm.createCUTAction(MapEditor.this));
                contextMenu.add(tm.getCOPYAction(MapEditor.this));
                contextMenu.add(tm.getPASTEAction(MapEditor.this));
                contextMenu.add(tm.getDELETEAction());

                /*
                 * Gets contributions from active modal tool if possible
                 */
                tm.contributeActiveModalTool(contextMenu);

                contextMenu.add(new Separator());
                contextMenu.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS));
                if (getMap().getEditManager().getEditFeature() != null) {
                    contextMenu.add(ProjectUIPlugin.getDefault().getFeatureEditProcessor()
                            .getEditFeatureAction(getSite().getSelectionProvider().getSelection()));

                    contextMenu.add(ProjectUIPlugin.getDefault().getFeatureEditProcessor()
                            .getEditWithFeatureMenu(getSite().getSelectionProvider().getSelection()));
                }
                contextMenu.add(ApplicationGIS.getToolManager()
                        .createOperationsContextMenu(replaceableSelectionProvider.getSelection()));
                contextMenu.add(new Separator());
                contextMenu.add(ActionFactory.EXPORT.create(getSite().getWorkbenchWindow()));
                contextMenu.add(new Separator());
                contextMenu.add(getPropertiesAction());
            }
        });

        // Create menu.
        menu = contextMenu.createContextMenu(composite);
        viewer.setMenu(menu);
        getSite().registerContextMenu(contextMenu, getSite().getSelectionProvider());
    }
}

From source file:net.refractions.udig.project.ui.internal.MapEditorWithPalette.java

License:Open Source License

/**
 * Hijacked; supposed to create a GraphicalViewer on the specified <code>Composite</code>.
 * <p>//  w w  w  .  j ava 2  s  . co  m
 * Instead we steal the composite for our MapViewer.
 * 
 * @param parent
 *            the parent composite
 */
protected void createGraphicalViewer(Composite parent) {

    // GraphicalViewer viewer = new GraphicalViewerImpl();
    // viewer.createControl(parent);
    // setGraphicalViewer(viewer);
    // configureGraphicalViewer();
    // hookGraphicalViewer();
    // initializeGraphicalViewer();

    composite = new Composite(parent, SWT.NO_BACKGROUND);

    composite.setLayout(new FormLayout());
    composite.setFont(parent.getFont());
    setPartName(getMap().getName());

    setTitleToolTip(Messages.MapEditor_titleToolTip);
    setTitleImage(ProjectUIPlugin.getDefault().getImage(ISharedImages.MAP_OBJ));

    final IPreferenceStore preferenceStore = ProjectPlugin.getPlugin().getPreferenceStore();
    boolean istiled = preferenceStore
            .getBoolean(net.refractions.udig.project.preferences.PreferenceConstants.P_TILED_RENDERING);

    if (!istiled) {
        viewer = new MapViewer(composite, SWT.DOUBLE_BUFFERED);
    } else {
        viewer = new MapViewer(composite, SWT.MULTI | SWT.NO_BACKGROUND);
    }
    // we need an edit domain for GEF
    // This represents the "Current Tool" for the Palette
    // We should not duplicate the idea of current tools so we may
    // need to delegate to getEditDomain; and just use the MapEditTool *id*
    // editDomain = new MapEditDomain(this);
    // setEditDomain( editDomain );

    // allow the viewer to open our context menu; work with our selection proivder etc
    viewer.init(this);

    // if a map was provided as input we can ask the viewer to use it
    Map input = (Map) ((UDIGEditorInput) getEditorInput()).getProjectElement();
    if (input != null) {
        viewer.setMap(input);
    }

    FormData formdata = new FormData();
    formdata.top = new FormAttachment(0);
    formdata.bottom = new FormAttachment(100, -ScaleRatioLabel.STATUS_LINE_HEIGHT);
    formdata.left = new FormAttachment(0);
    formdata.right = new FormAttachment(100);
    viewer.getViewport().getControl().setLayoutData(formdata);

    statusLineManager.add(new GroupMarker(StatusLineManager.BEGIN_GROUP));
    statusLineManager.add(new GroupMarker(StatusLineManager.MIDDLE_GROUP));
    statusLineManager.add(new GroupMarker(StatusLineManager.END_GROUP));
    statusLineManager.createControl(composite, SWT.BORDER);
    formdata = new FormData();
    formdata.left = new FormAttachment(0);
    formdata.right = new FormAttachment(100);
    formdata.top = new FormAttachment(viewer.getViewport().getControl(), 0, SWT.BOTTOM);
    formdata.bottom = new FormAttachment(100);
    statusLineManager.getControl().setLayoutData(formdata);

    getSite().getPage().addPartListener(partlistener);
    registerFeatureFlasher();
    viewer.getViewport().addPaneListener(getMap().getViewportModelInternal());

    layerSelectionListener = new LayerSelectionListener(new LayerSelectionListener.Callback() {

        public void callback(List<Layer> layers) {
            if (composite.isDisposed()) {
                getSite().getPage().removePostSelectionListener(layerSelectionListener);
                return; // component.isVisible cannot be called on a disposed component
            } else if (!composite.isVisible())
                return;
            Layer layer = layers.get(0);
            // Second condition excludes unnecessary UI call
            if (layer.getMap() == getMap() && getMap().getEditManager().getSelectedLayer() != layer) {
                SelectLayerCommand selectLayerCommand = new SelectLayerCommand(layer);
                selectLayerCommand.setMap(getMap());
                try {
                    selectLayerCommand.run(ProgressManager.instance().get());
                } catch (Exception e) {
                    throw (RuntimeException) new RuntimeException().initCause(e);
                }
                getMap().sendCommandSync(new UndoRedoCommand(selectLayerCommand));
            }
        }

    });
    getSite().getPage().addPostSelectionListener(layerSelectionListener);

    for (Layer layer : getMap().getLayersInternal()) {
        layer.addListener(layerListener);
    }

    dropTarget = UDIGDragDropUtilities.addDropSupport(viewer.getViewport().getControl(), this);
    this.replaceableSelectionProvider = new ReplaceableSelectionProvider();
    getSite().setSelectionProvider(replaceableSelectionProvider);
    runMapOpeningInterceptor(getMap());
    mapEditorSite = new MapEditorSite(super.getSite(), this);
    updateCRS();
    updateScaleLabel();

    getMap().getViewportModel().addViewportModelListener(new IViewportModelListener() {

        public void changed(ViewportModelEvent event) {
            if (getMap() == null) {
                event.getSource().removeViewportModelListener(this);
                return;
            }
            if (event.getType() == EventType.CRS) {
                updateCRS();
            }
        }

    });

    setDirty(isMapDirty());
}

From source file:net.refractions.udig.project.ui.internal.MapEditorWithPalette.java

License:Open Source License

void createContextMenu() {
    Menu menu;/*from  w  ww .j a va2s  . c  o  m*/
    menu = viewer.getMenu();
    if (menu == null) {
        final MenuManager contextMenu = new MenuManager();
        contextMenu.setRemoveAllWhenShown(true);
        contextMenu.addMenuListener(new IMenuListener() {
            public void menuAboutToShow(IMenuManager mgr) {
                IToolManager tm = ApplicationGIS.getToolManager();

                contextMenu.add(tm.getENTERAction());
                contextMenu.add(new Separator());

                contextMenu.add(tm.getZOOMTOSELECTEDAction());
                contextMenu.add(new Separator());
                contextMenu.add(tm.getBACKWARD_HISTORYAction());
                contextMenu.add(tm.getFORWARD_HISTORYAction());
                contextMenu.add(new Separator());
                //contextMenu.add(tm.createCUTAction(MapEditorWithPalette.this));
                contextMenu.add(tm.getCOPYAction(MapEditorWithPalette.this));
                contextMenu.add(tm.getPASTEAction(MapEditorWithPalette.this));
                contextMenu.add(tm.getDELETEAction());

                /*
                 * Gets contributions from active modal tool if possible
                 */
                tm.contributeActiveModalTool(contextMenu);

                contextMenu.add(new Separator());
                contextMenu.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS));
                if (getMap().getEditManager().getEditFeature() != null) {
                    contextMenu.add(ProjectUIPlugin.getDefault().getFeatureEditProcessor()
                            .getEditFeatureAction(getSite().getSelectionProvider().getSelection()));

                    contextMenu.add(ProjectUIPlugin.getDefault().getFeatureEditProcessor()
                            .getEditWithFeatureMenu(getSite().getSelectionProvider().getSelection()));
                }
                contextMenu.add(ApplicationGIS.getToolManager()
                        .createOperationsContextMenu(replaceableSelectionProvider.getSelection()));
                contextMenu.add(new Separator());
                contextMenu.add(ActionFactory.EXPORT.create(getSite().getWorkbenchWindow()));
                contextMenu.add(new Separator());
                contextMenu.add(getPropertiesAction());
            }
        });

        // Create menu.
        menu = contextMenu.createContextMenu(composite);
        viewer.setMenu(menu);
        getSite().registerContextMenu(contextMenu, getSite().getSelectionProvider());
    }
}