Example usage for org.eclipse.jface.resource ImageDescriptor createImage

List of usage examples for org.eclipse.jface.resource ImageDescriptor createImage

Introduction

In this page you can find the example usage for org.eclipse.jface.resource ImageDescriptor createImage.

Prototype

public Image createImage() 

Source Link

Document

Creates and returns a new SWT image for this image descriptor.

Usage

From source file:com.buildml.eclipse.actions.ActionsEditorLabelCol1Provider.java

License:Open Source License

/**
 * Construct a new ActionsEditorLabelCol1Provider object, which provides text and image
 * labels for the FilesEditor class.//w  w  w .  j  a v  a2 s. c  o m
 * @param editor The editor that we're providing text/images for.
 * @param actionMgr The FileMgr object we're graphically representing.
 */
public ActionsEditorLabelCol1Provider(ISubEditor editor, IActionMgr actionMgr) {

    this.actionMgr = actionMgr;
    this.buildStore = actionMgr.getBuildStore();
    this.fileMgr = this.buildStore.getFileMgr();

    /* all entries in the first column have an icon - precache it now */
    ImageDescriptor descr = Activator.getImageDescriptor("images/action_icon.gif");
    actionImage = descr.createImage();

    actionMgr.getRootAction("root");
}

From source file:com.buildml.eclipse.ImportSubEditor.java

License:Open Source License

@Override
public Image getEditorImage() {

    /* ask the subeditor instance where its image is (if it has one) */
    String path = getEditorImagePath();
    if (path != null) {

        /* //ww  w.  j a  v  a 2  s .  co m
         * Create a descriptor, and perhaps a new image, if it's not already
         * available in this plugin's image registry.
         */
        ImageDescriptor imageDescr = Activator.getImageDescriptor(path);
        ImageRegistry pluginImageRegistry = Activator.getDefault().getImageRegistry();
        Image iconImage = pluginImageRegistry.get(imageDescr.toString());
        if (iconImage == null) {
            iconImage = imageDescr.createImage();
            pluginImageRegistry.put(imageDescr.toString(), iconImage);
        }
        return iconImage;
    }

    /* no icon for this editor */
    else {
        return null;
    }
}

From source file:com.buildml.eclipse.utils.EclipsePartUtils.java

License:Open Source License

/**
 * Create an SWT Image, given the plug-in relative path of the image file (such as a .gif).
 * If possible, the image is retrieved from a cache of existing images.
 * @param plugInPath The image file's path, relative to the plug-in root.
 * @return An Image object, or null if the image couldn't be created.
 *///w ww  . j  a v  a2  s.  c  om
public static Image getImage(String plugInPath) {
    /* first, check if the image is already in the registry (a cache of images) */
    ImageRegistry pluginImageRegistry = Activator.getDefault().getImageRegistry();
    ImageDescriptor imageDescr = Activator.getImageDescriptor(plugInPath);
    Image iconImage = pluginImageRegistry.get(imageDescr.toString());

    /* 
     * If not, proceed to create the image (as a new object) and store it in the
     * registry for future use.
     */
    if (iconImage == null) {
        iconImage = imageDescr.createImage();
        if (iconImage == null) {
            return null;
        }
        pluginImageRegistry.put(imageDescr.toString(), iconImage);
    }
    return iconImage;
}

From source file:com.buildml.eclipse.utils.EclipsePartUtils.java

License:Open Source License

/**
 * Choose a suitable icon, based on a file name's extension. For example, a foo.c file
 * will have a suitable graph image indicating that it's C language.
 * /*from w  w  w  .  ja  va  2  s  .c om*/
 * @param name The name of the file.
 * @return An Image that relates to this file.
 */
public static Image getImageFromFileType(String name) {
    IEditorRegistry editorImageRegistry = PlatformUI.getWorkbench().getEditorRegistry();
    ImageDescriptor imageDescr = editorImageRegistry.getImageDescriptor(name);

    /* can we get this image from the plugin's cache? */
    ImageRegistry pluginImageRegistry = Activator.getDefault().getImageRegistry();
    Image iconImage = pluginImageRegistry.get(imageDescr.toString());
    if (iconImage == null) {
        iconImage = imageDescr.createImage();
        pluginImageRegistry.put(imageDescr.toString(), iconImage);
    }
    return iconImage;
}

From source file:com.centurylink.mdw.plugin.designer.dialogs.LoginDialog.java

License:Apache License

@Override
protected Control createDialogArea(Composite parent) {
    parent.getShell().setText("MDW Login");
    ImageDescriptor imageDescriptor = MdwPlugin.getImageDescriptor("icons/designer.gif");
    Image iconImage = imageDescriptor.createImage();
    parent.getShell().setImage(iconImage);

    Composite container = new Composite(parent, SWT.NONE);
    container.setBackgroundMode(SWT.INHERIT_DEFAULT);
    imageDescriptor = MdwPlugin.getImageDescriptor("splash.png");
    container.setBackgroundImage(imageDescriptor.createImage());
    container.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    GridLayout layout = new GridLayout(3, false);
    container.setLayout(layout);/*from  w ww . j a v a 2 s .c  o m*/

    GridData gridData = new GridData();
    gridData.minimumWidth = gridData.widthHint = 455;
    gridData.minimumHeight = gridData.heightHint = 295;
    container.setLayoutData(gridData);

    createMessageSection(container);
    createInputSection(container);
    createButtonsSection(container);
    parent.getShell().setDefaultButton(okButton);

    return container;
}

From source file:com.centurylink.mdw.plugin.designer.model.Transition.java

License:Apache License

public static List<Image> getLinkStyleImages() {
    List<Image> linkStyleImages = new ArrayList<Image>();
    for (String styleIcon : Link.styleIcons) {
        ImageDescriptor descriptor = MdwPlugin.getImageDescriptor("icons/" + styleIcon);
        linkStyleImages.add(descriptor.createImage());
    }/*from   w  w w. j a  v  a 2s  .c  om*/
    return linkStyleImages;
}

From source file:com.centurylink.mdw.plugin.designer.model.WorkflowElement.java

License:Apache License

public Image getIconImage(String icon) {
    if (icons.get(icon) == null) {
        ImageDescriptor imageDescriptor = MdwPlugin.getImageDescriptor("icons/" + icon);
        Image iconImage = imageDescriptor.createImage();
        icons.put(icon, iconImage);// ww w.ja  v a2  s .  com
    }
    return icons.get(icon);
}

From source file:com.centurylink.mdw.plugin.designer.ProcessCanvasWrapper.java

License:Apache License

/**
 * Needs to run on the SWT UI thread.//from  www  .  j a  va2 s . c o  m
 */
private Menu buildPopupMenu(final int x, final int y) {
    if (popupMenu != null)
        popupMenu.dispose();

    popupMenu = new Menu(getParent().getShell(), SWT.POP_UP);

    if (!isInstance()) {
        if (designerCanvasSelection instanceof WorkflowProcess) {
            if (process.getPackage() != null && process.isUserAuthorized(UserRoleVO.ASSET_DESIGN)) {
                // save as
                MenuItem saveAsItem = new MenuItem(popupMenu, SWT.PUSH);
                saveAsItem.setText("Save as...");
                ImageDescriptor propsImageDescForSave = MdwPlugin.getImageDescriptor("icons/save.gif");
                saveAsItem.setImage(propsImageDescForSave.createImage());
                saveAsItem.addSelectionListener(new SelectionAdapter() {
                    public void widgetSelected(SelectionEvent e) {
                        saveProcessAs();
                    }
                });
            }

            MenuItem exportAsItem = new MenuItem(popupMenu, SWT.PUSH);
            exportAsItem.setText("Export as...");
            ImageDescriptor exportAsDesc = MdwPlugin.getImageDescriptor("icons/export_as.gif");
            exportAsItem.setImage(exportAsDesc.createImage());
            exportAsItem.addSelectionListener(new SelectionAdapter() {
                public void widgetSelected(SelectionEvent e) {
                    exportAs(ProcessCanvasWrapper.this.getDisplay().getActiveShell());
                }
            });
        }
        if (!process.isReadOnly()) {
            if (designerCanvasSelection instanceof WorkflowProcess) {
                if (process.isInRuleSet()) {
                    // notes
                    MenuItem noteItem = new MenuItem(popupMenu, SWT.PUSH);
                    noteItem.setText("Add Note");
                    ImageDescriptor noteImageDesc = MdwPlugin.getImageDescriptor("icons/doc.gif");
                    noteItem.setImage(noteImageDesc.createImage());
                    noteItem.addSelectionListener(new SelectionAdapter() {
                        public void widgetSelected(SelectionEvent e) {
                            addNote(x, y);
                        }
                    });
                }

                // paste
                MenuItem pasteItem = new MenuItem(popupMenu, SWT.PUSH);
                pasteItem.setText("Paste\tCtrl+V");
                ImageDescriptor pasteImageDesc = MdwPlugin.getImageDescriptor("icons/paste.gif");
                pasteItem.setImage(pasteImageDesc.createImage());
                pasteItem.setEnabled(GraphClipboard.getInstance().get() != null);
                pasteItem.addSelectionListener(new SelectionAdapter() {
                    public void widgetSelected(SelectionEvent e) {
                        pasteSelection();
                    }
                });
            } else {
                // cut
                MenuItem cutItem = new MenuItem(popupMenu, SWT.PUSH);
                cutItem.setText("Cut\tCtrl+X");
                ImageDescriptor cutImageDesc = MdwPlugin.getImageDescriptor("icons/cut.gif");
                cutItem.setImage(cutImageDesc.createImage());
                cutItem.addSelectionListener(new SelectionAdapter() {
                    public void widgetSelected(SelectionEvent e) {
                        cutSelection();
                    }
                });
            }
        }

        if (!(designerCanvasSelection instanceof WorkflowProcess)) {
            // copy
            MenuItem copyItem = new MenuItem(popupMenu, SWT.PUSH);
            copyItem.setText("Copy\tCtrl+C");
            ImageDescriptor copyImageDesc = MdwPlugin.getImageDescriptor("icons/copy.gif");
            copyItem.setImage(copyImageDesc.createImage());
            copyItem.addSelectionListener(new SelectionAdapter() {
                public void widgetSelected(SelectionEvent e) {
                    copySelection();
                }
            });

            // delete
            if (!process.isReadOnly()) {
                MenuItem deleteItem = new MenuItem(popupMenu, SWT.PUSH);
                deleteItem.setText("Delete\tDel");
                ImageDescriptor deleteImageDesc = MdwPlugin.getImageDescriptor("icons/delete.gif");
                deleteItem.setImage(deleteImageDesc.createImage());
                deleteItem.addSelectionListener(new SelectionAdapter() {
                    public void widgetSelected(SelectionEvent e) {
                        deleteSelection();
                    }
                });
            }
        }
    }

    // properties
    MenuItem propsItem = new MenuItem(popupMenu, SWT.PUSH);
    propsItem.setText("Show Properties");
    ImageDescriptor propsImageDesc = MdwPlugin.getImageDescriptor("icons/properties.gif");
    propsItem.setImage(propsImageDesc.createImage());
    propsItem.addSelectionListener(new SelectionAdapter() {
        public void widgetSelected(SelectionEvent e) {
            showPropertiesView();
        }
    });

    // documentation
    if (!isInstance()) {
        MenuItem docsItem = new MenuItem(popupMenu, SWT.PUSH);
        docsItem.setText("Documentation");
        ImageDescriptor docsImageDesc = MdwPlugin.getImageDescriptor("icons/word.gif");
        docsItem.setImage(docsImageDesc.createImage());
        docsItem.addSelectionListener(new SelectionAdapter() {
            public void widgetSelected(SelectionEvent e) {
                openDocumentation();
            }
        });
    }

    // process definition xml
    if (!isInstance() && (designerCanvasSelection instanceof WorkflowProcess) && getProcess().isInRuleSet()) {
        MenuItem defXmlItem = new MenuItem(popupMenu, SWT.PUSH);
        defXmlItem.setText("Definition Doc");
        ImageDescriptor docsImageDesc = MdwPlugin.getImageDescriptor("icons/doc.gif");
        defXmlItem.setImage(docsImageDesc.createImage());
        defXmlItem.addSelectionListener(new SelectionAdapter() {
            public void widgetSelected(SelectionEvent e) {
                openDefinitionXml();
            }
        });
    }

    // open subprocess
    boolean isSubProcessActivity = designerCanvasSelection instanceof Activity
            && ((Activity) designerCanvasSelection).isSubProcessInvoke();
    if (!isInstance() && isSubProcessActivity) {
        final Activity subProcessActivity = (Activity) designerCanvasSelection;
        if (!subProcessActivity.isHeterogeneousSubProcInvoke()) {
            MenuItem subProcItem = new MenuItem(popupMenu, SWT.PUSH);
            subProcItem.setText("Open Subprocess");
            ImageDescriptor subProcImageDesc = MdwPlugin.getImageDescriptor("icons/designer.gif");
            subProcItem.setImage(subProcImageDesc.createImage());
            subProcItem.addSelectionListener(new SelectionAdapter() {
                public void widgetSelected(SelectionEvent e) {
                    openSubProcess(subProcessActivity);
                }
            });
        }
    }

    // edit script
    boolean isScript = designerCanvasSelection instanceof Activity
            && ((Activity) designerCanvasSelection).isScript();
    if (!isInstance() && isScript) {
        final Activity scriptActivity = (Activity) designerCanvasSelection;
        MenuItem editScriptItem = new MenuItem(popupMenu, SWT.PUSH);
        String artifactTitle = "Script";
        if (scriptActivity.isRule())
            artifactTitle = "Rule";
        else if (TransformEditorValueProvider.isTransformActivity(scriptActivity))
            artifactTitle = "Transform";
        else if (scriptActivity.getAttribute("Rule") != null)
            artifactTitle += " *";
        if (process.isReadOnly())
            editScriptItem.setText("View " + artifactTitle);
        else
            editScriptItem.setText("Edit " + artifactTitle);
        ImageDescriptor scriptImageDesc = MdwPlugin.getImageDescriptor("icons/script.gif");
        editScriptItem.setImage(scriptImageDesc.createImage());
        editScriptItem.addSelectionListener(new SelectionAdapter() {
            public void widgetSelected(SelectionEvent e) {
                openScript(scriptActivity);
            }
        });
    }

    // edit java
    boolean isJava = designerCanvasSelection instanceof Activity
            && ((Activity) designerCanvasSelection).isDynamicJava();
    if (!isInstance() && isJava) {
        final Activity javaActivity = (Activity) designerCanvasSelection;
        MenuItem editJavaItem = new MenuItem(popupMenu, SWT.PUSH);
        String artifactTitle = "Java";
        if (process.isReadOnly())
            editJavaItem.setText("View " + artifactTitle);
        else
            editJavaItem.setText("Edit " + artifactTitle);
        ImageDescriptor javaImageDesc = MdwPlugin.getImageDescriptor("icons/java.gif");
        editJavaItem.setImage(javaImageDesc.createImage());
        editJavaItem.addSelectionListener(new SelectionAdapter() {
            public void widgetSelected(SelectionEvent e) {
                openJava(javaActivity);
            }
        });
    }

    // open task instance or process instance
    if (isInstance() && designerCanvasSelection instanceof Activity) {
        final Activity activity = (Activity) designerCanvasSelection;
        if (activity.isManualTask()) {
            if (activity.getTaskInstances() != null && !activity.getTaskInstances().isEmpty()) {
                MenuItem viewTaskItem = new MenuItem(popupMenu, SWT.PUSH);
                viewTaskItem.setText("View Task");
                viewTaskItem.setImage(MdwPlugin.getImageDescriptor("icons/taskmgr.gif").createImage());
                viewTaskItem.addSelectionListener(new SelectionAdapter() {
                    public void widgetSelected(SelectionEvent e) {
                        TaskInstanceVO taskInstanceVO = null;
                        for (TaskInstanceVO taskInstance : activity.getTaskInstances()) {
                            if (taskInstanceVO == null
                                    || taskInstance.getTaskInstanceId() > taskInstanceVO.getTaskInstanceId())
                                taskInstanceVO = taskInstance;
                        }
                        boolean assigned = activity.getProject().getUser().getUsername()
                                .equals(taskInstanceVO.getTaskClaimUserCuid());
                        String taskInstParams = activity.getProject()
                                .getTaskInstancePath(taskInstanceVO.getTaskInstanceId(), assigned);
                        WorkflowPackage packageVersion = activity.getPackage();
                        String packageParam = packageVersion.isDefaultPackage() ? ""
                                : "&packageName=" + packageVersion.getName();
                        WebApp webapp = activity.getProject().checkRequiredVersion(5, 5) ? WebApp.MdwHub
                                : WebApp.TaskManager;
                        WebLaunchActions.getLaunchAction(activity.getProject(), webapp)
                                .launch(activity.getProject(), taskInstParams + packageParam);
                    }
                });
            }
        } else if (activity.isSubProcessInvoke()) {
            if (activity.getSubProcessInstances() != null && !activity.getSubProcessInstances().isEmpty()
                    && activity.getSubProcessInstances().size() < 50) {
                MenuItem subMenuItem = new MenuItem(popupMenu, SWT.CASCADE);
                subMenuItem.setText("SubProcesses");
                subMenuItem.setImage(MdwPlugin.getImageDescriptor("icons/processfolder.gif").createImage());
                Menu subMenu = new Menu(subMenuItem);
                subMenuItem.setMenu(subMenu);
                for (final ProcessInstanceVO subProcInst : activity.getSubProcessInstances()) {
                    MenuItem subProcItem = new MenuItem(subMenu, SWT.PUSH);
                    subProcItem.setText("Instance " + subProcInst.getId());
                    subProcItem.setImage(MdwPlugin.getImageDescriptor("icons/process.gif").createImage());
                    subProcItem.addSelectionListener(new SelectionAdapter() {
                        public void widgetSelected(SelectionEvent e) {
                            openProcessInstance(subProcInst);
                        }
                    });
                }
            }
        }
    }

    // launch process, lock, show instances, find calling processes
    if (!isInstance() && designerCanvasSelection instanceof WorkflowProcess) {
        if (designerCanvasSelection.isUserAuthorized(UserRoleVO.PROCESS_EXECUTION)) {
            MenuItem runItem = new MenuItem(popupMenu, SWT.PUSH);
            runItem.setText("Run...");
            ImageDescriptor runImageDesc = MdwPlugin.getImageDescriptor("icons/run.gif");
            runItem.setImage(runImageDesc.createImage());
            runItem.addSelectionListener(new SelectionAdapter() {
                public void widgetSelected(SelectionEvent e) {
                    launchProcess((WorkflowProcess) designerCanvasSelection, false);
                }
            });
            MenuItem runPageItem = new MenuItem(popupMenu, SWT.PUSH);
            runPageItem.setText("Run Start Page...");
            ImageDescriptor runPageImageDesc = MdwPlugin.getImageDescriptor("icons/run.gif");
            runPageItem.setImage(runPageImageDesc.createImage());
            runPageItem.addSelectionListener(new SelectionAdapter() {
                public void widgetSelected(SelectionEvent e) {
                    launchProcessPage((WorkflowProcess) designerCanvasSelection);
                }
            });

            if (!MdwPlugin.isRcp()) {
                MenuItem debugItem = new MenuItem(popupMenu, SWT.PUSH);
                debugItem.setText("Debug...");
                ImageDescriptor debugImageDesc = MdwPlugin.getImageDescriptor("icons/debug.gif");
                debugItem.setImage(debugImageDesc.createImage());
                debugItem.addSelectionListener(new SelectionAdapter() {
                    public void widgetSelected(SelectionEvent e) {
                        launchProcess((WorkflowProcess) designerCanvasSelection, true);
                    }
                });
            }
        }

        if (isLockAllowed()) {
            MenuItem lockItem = new MenuItem(popupMenu, SWT.PUSH);
            lockItem.setText(getProcess().isLockedToUser() ? "Unlock Process" : "Lock Process");
            ImageDescriptor lockImageDesc = MdwPlugin.getImageDescriptor("icons/lock.gif");
            lockItem.setImage(lockImageDesc.createImage());
            lockItem.addSelectionListener(new SelectionAdapter() {
                public void widgetSelected(SelectionEvent e) {
                    toggleProcessLock(!((WorkflowProcess) designerCanvasSelection).isLockedToUser());
                }
            });
        }

        if (getProcess().getProject().isPureMdw52()) {
            MenuItem callersItem = new MenuItem(popupMenu, SWT.PUSH);
            callersItem.setText("Find Calling Processes");
            ImageDescriptor callersImageDesc = MdwPlugin.getImageDescriptor("icons/process.gif");
            callersItem.setImage(callersImageDesc.createImage());
            callersItem.addSelectionListener(new SelectionAdapter() {
                public void widgetSelected(SelectionEvent e) {
                    actionHandler.findCallers(designerCanvasSelection);
                }
            });

            if (getProject().isFilePersist()) {
                MenuItem hierarchyItem = new MenuItem(popupMenu, SWT.PUSH);
                hierarchyItem.setText("Process Hierarchy");
                ImageDescriptor hierarchyImageDesc = MdwPlugin.getImageDescriptor("icons/hierarchy.gif");
                hierarchyItem.setImage(hierarchyImageDesc.createImage());
                hierarchyItem.addSelectionListener(new SelectionAdapter() {
                    public void widgetSelected(SelectionEvent e) {
                        actionHandler.showHierarchy(designerCanvasSelection);
                    }
                });
            }
        }

        MenuItem instancesItem = new MenuItem(popupMenu, SWT.PUSH);
        instancesItem.setText("View Instances");
        ImageDescriptor instancesImageDesc = MdwPlugin.getImageDescriptor("icons/list.gif");
        instancesItem.setImage(instancesImageDesc.createImage());
        instancesItem.addSelectionListener(new SelectionAdapter() {
            public void widgetSelected(SelectionEvent e) {
                showProcessInstances((WorkflowProcess) designerCanvasSelection);
            }
        });
    }

    // launch activity
    if (!isInstance() && designerCanvasSelection instanceof Activity) {
        if (((Activity) designerCanvasSelection).getProcess().isUserAuthorized(UserRoleVO.PROCESS_EXECUTION)) {
            MenuItem runItem = new MenuItem(popupMenu, SWT.PUSH);
            runItem.setText("Run from Here...");
            ImageDescriptor runImageDesc = MdwPlugin.getImageDescriptor("icons/run.gif");
            runItem.setImage(runImageDesc.createImage());
            runItem.addSelectionListener(new SelectionAdapter() {
                public void widgetSelected(SelectionEvent e) {
                    launchProcess((Activity) designerCanvasSelection, false);
                }
            });

            if (!MdwPlugin.isRcp()) {
                MenuItem debugItem = new MenuItem(popupMenu, SWT.PUSH);
                debugItem.setText("Debug from Here...");
                ImageDescriptor debugImageDesc = MdwPlugin.getImageDescriptor("icons/debug.gif");
                debugItem.setImage(debugImageDesc.createImage());
                debugItem.addSelectionListener(new SelectionAdapter() {
                    public void widgetSelected(SelectionEvent e) {
                        launchProcess((Activity) designerCanvasSelection, true);
                    }
                });
            }
        }
    }

    // refresh
    if (designerCanvasSelection instanceof WorkflowProcess) {
        MenuItem refreshItem = new MenuItem(popupMenu, SWT.PUSH);
        refreshItem.setText("Refresh");
        ImageDescriptor refreshImageDesc = MdwPlugin.getImageDescriptor("icons/refresh.gif");
        refreshItem.setImage(refreshImageDesc.createImage());
        refreshItem.addSelectionListener(new SelectionAdapter() {
            public void widgetSelected(SelectionEvent e) {
                refresh();
            }
        });
    }

    // process definition and open calling process instance
    if (isInstance() && designerCanvasSelection instanceof WorkflowProcess) {
        final WorkflowProcess processInstVersion = (WorkflowProcess) designerCanvasSelection;

        MenuItem procDefItem = new MenuItem(popupMenu, SWT.PUSH);
        procDefItem.setText("Process Definition");
        ImageDescriptor procDefImageDesc = MdwPlugin.getImageDescriptor("icons/process.gif");
        procDefItem.setImage(procDefImageDesc.createImage());
        procDefItem.addSelectionListener(new SelectionAdapter() {
            public void widgetSelected(SelectionEvent e) {
                openProcessDefinition(new WorkflowProcess(processInstVersion));
            }
        });

        if (OwnerType.PROCESS_INSTANCE.equals(processInstVersion.getProcessInstance().getOwner())) {
            MenuItem callingInstanceItem = new MenuItem(popupMenu, SWT.PUSH);
            callingInstanceItem.setText("Calling Process Instance");
            ImageDescriptor callerImageDesc = MdwPlugin.getImageDescriptor("icons/launch.gif");
            callingInstanceItem.setImage(callerImageDesc.createImage());
            callingInstanceItem.addSelectionListener(new SelectionAdapter() {
                public void widgetSelected(SelectionEvent e) {
                    openCallingInstance();
                }
            });
        }

        MenuItem instanceHierarchyItem = new MenuItem(popupMenu, SWT.PUSH);
        instanceHierarchyItem.setText("Instance Hierarchy");
        ImageDescriptor hierarchyImageDesc = MdwPlugin.getImageDescriptor("icons/hierarchy.gif");
        instanceHierarchyItem.setImage(hierarchyImageDesc.createImage());
        instanceHierarchyItem.addSelectionListener(new SelectionAdapter() {
            public void widgetSelected(SelectionEvent e) {
                actionHandler.showHierarchy(designerCanvasSelection);
            }
        });

        if (OwnerType.ERROR.equals(processInstVersion.getProcessInstance().getOwner())) {
            MenuItem errorTriggerItem = new MenuItem(popupMenu, SWT.PUSH);
            errorTriggerItem.setText("Triggering Process");
            ImageDescriptor errorImageDesc = MdwPlugin.getImageDescriptor("icons/error.gif");
            errorTriggerItem.setImage(errorImageDesc.createImage());
            errorTriggerItem.addSelectionListener(new SelectionAdapter() {
                public void widgetSelected(SelectionEvent e) {
                    openTriggeringInstance();
                }
            });
        }
    }

    // retry and skip
    if (isInstance() && designerCanvasSelection instanceof Activity
            && ((Activity) designerCanvasSelection).hasInstanceInfo() && ((Activity) designerCanvasSelection)
                    .getProcess().isUserAuthorized(UserRoleVO.PROCESS_EXECUTION)) {
        MenuItem retryItem = new MenuItem(popupMenu, SWT.PUSH);
        retryItem.setText("Retry");
        ImageDescriptor retryImageDesc = MdwPlugin.getImageDescriptor("icons/retry.gif");
        retryItem.setImage(retryImageDesc.createImage());
        retryItem.addSelectionListener(new SelectionAdapter() {
            public void widgetSelected(SelectionEvent e) {
                PanelBusyIndicator pbi = new PanelBusyIndicator(getDisplay(), getCanvas());
                try {
                    pbi.busyWhile(new Runnable() {
                        public void run() {
                            Activity activity = (Activity) designerCanvasSelection;
                            Shell shell = MdwPlugin.getActiveWorkbenchWindow().getShell();
                            ActivityInstanceVO actInstVO = activity.getInstances()
                                    .get(activity.getInstances().size() - 1);
                            ActivityInstanceDialog actInstDlg = new ActivityInstanceDialog(shell, activity,
                                    actInstVO, Mode.RETRY);
                            actInstDlg.open();
                        }
                    });
                } catch (InvocationTargetException ex) {
                    PluginMessages.uiError(ex, "Retry Activity", getProject());
                }
            }
        });

        MenuItem skipItem = new MenuItem(popupMenu, SWT.PUSH);
        skipItem.setText("Proceed");
        ImageDescriptor skipImageDesc = MdwPlugin.getImageDescriptor("icons/skip.gif");
        skipItem.setImage(skipImageDesc.createImage());
        skipItem.addSelectionListener(new SelectionAdapter() {
            public void widgetSelected(SelectionEvent e) {
                PanelBusyIndicator pbi = new PanelBusyIndicator(getDisplay(), getCanvas());
                try {
                    pbi.busyWhile(new Runnable() {
                        public void run() {
                            Activity activity = (Activity) designerCanvasSelection;
                            Shell shell = MdwPlugin.getActiveWorkbenchWindow().getShell();
                            ActivityInstanceVO actInstVO = activity.getInstances()
                                    .get(activity.getInstances().size() - 1);
                            ActivityInstanceDialog actInstDlg = new ActivityInstanceDialog(shell, activity,
                                    actInstVO, Mode.SKIP);
                            actInstDlg.open();
                        }
                    });
                } catch (InvocationTargetException ex) {
                    PluginMessages.uiError(ex, "Skip Activity", getProject());
                }
            }
        });
    }

    // view owning document
    if (isInstance() && designerCanvasSelection instanceof WorkflowProcess
            && (OwnerType.DOCUMENT.equals(getProcess().getProcessInstance().getOwner())
                    || OwnerType.TESTER.equals(getProcess().getProcessInstance().getOwner()))) {
        MenuItem docItem = new MenuItem(popupMenu, SWT.PUSH);
        docItem.setText("View Owning Document");
        ImageDescriptor docImageDesc = MdwPlugin.getImageDescriptor("icons/doc.gif");
        docItem.setImage(docImageDesc.createImage());
        docItem.addSelectionListener(new SelectionAdapter() {
            public void widgetSelected(SelectionEvent e) {
                PanelBusyIndicator pbi = new PanelBusyIndicator(getDisplay(), getCanvas());
                try {
                    pbi.busyWhile(new Runnable() {

                        public void run() {
                            IStorage storage = new DocumentStorage(getProject(), new DocumentReference(
                                    getProcess().getProcessInstance().getOwnerId(), null));
                            final IStorageEditorInput input = new StorageEditorInput(storage);
                            final IWorkbenchPage page = MdwPlugin.getActivePage();
                            if (page != null) {
                                try {
                                    page.openEditor(input, "org.eclipse.ui.DefaultTextEditor");
                                } catch (PartInitException ex) {
                                    PluginMessages.uiError(ex, "View Document", getProject());
                                }
                            }
                        }
                    });
                } catch (InvocationTargetException ex) {
                    PluginMessages.uiError(ex, "View Document", getProject());
                }
            }
        });
    }

    return popupMenu;
}

From source file:com.centurylink.mdw.plugin.designer.properties.ActivityInstanceSection.java

License:Apache License

private Menu createContextMenu(Shell shell) {
    Menu menu = new Menu(shell, SWT.POP_UP);

    StructuredSelection selection = (StructuredSelection) tableEditor.getTableViewer().getSelection();
    if (selection.size() == 1 && selection.getFirstElement() instanceof ActivityInstanceVO) {
        final ActivityInstanceVO activityInstanceVO = (ActivityInstanceVO) selection.getFirstElement();

        if (activity.getProcess().isUserAuthorized(UserRoleVO.PROCESS_EXECUTION)) {
            // view details
            MenuItem detailsItem = new MenuItem(menu, SWT.PUSH);
            detailsItem.setText("View");
            ImageDescriptor detailsImageDesc = MdwPlugin.getImageDescriptor("icons/details.gif");
            detailsItem.setImage(detailsImageDesc.createImage());
            detailsItem.addSelectionListener(new SelectionAdapter() {
                public void widgetSelected(SelectionEvent e) {
                    new ActivityInstanceDialog(getShell(), activity, activityInstanceVO, Mode.VIEW).open();
                }//from w  ww .  j ava2 s .  c o m
            });

            // retry
            MenuItem retryItem = new MenuItem(menu, SWT.PUSH);
            retryItem.setText("Retry");
            ImageDescriptor retryImageDesc = MdwPlugin.getImageDescriptor("icons/retry.gif");
            retryItem.setImage(retryImageDesc.createImage());
            retryItem.addSelectionListener(new SelectionAdapter() {
                public void widgetSelected(SelectionEvent e) {
                    new ActivityInstanceDialog(getShell(), activity, activityInstanceVO, Mode.RETRY).open();
                }
            });

            // skip
            MenuItem skipItem = new MenuItem(menu, SWT.PUSH);
            skipItem.setText("Proceed");
            ImageDescriptor skipImageDesc = MdwPlugin.getImageDescriptor("icons/skip.gif");
            skipItem.setImage(skipImageDesc.createImage());
            skipItem.addSelectionListener(new SelectionAdapter() {
                public void widgetSelected(SelectionEvent e) {
                    new ActivityInstanceDialog(getShell(), activity, activityInstanceVO, Mode.SKIP).open();
                }
            });
        }
    }

    return menu;
}

From source file:com.centurylink.mdw.plugin.designer.properties.ProcessVersionsSection.java

License:Apache License

private Menu createContextMenu(Shell shell) {
    Menu menu = new Menu(shell, SWT.POP_UP);

    final StructuredSelection selection = (StructuredSelection) tableEditor.getTableViewer().getSelection();
    if (selection.size() == 1 && selection.getFirstElement() instanceof WorkflowProcess) {
        final WorkflowProcess processVer = (WorkflowProcess) selection.getFirstElement();

        MenuItem openItem = new MenuItem(menu, SWT.PUSH);
        openItem.setText("Open");
        ImageDescriptor openImageDesc = MdwPlugin.getImageDescriptor("icons/process.gif");
        openItem.setImage(openImageDesc.createImage());
        openItem.addSelectionListener(new SelectionAdapter() {
            public void widgetSelected(SelectionEvent e) {
                openProcess(processVer);
            }//w ww.  ja v a  2 s . c o  m
        });
    }
    // delete
    if (!selection.isEmpty() && !process.getProject().isProduction()
            && process.isUserAuthorized(UserRoleVO.PROCESS_EXECUTION)
            && (selection.size() == 1 && ((WorkflowProcess) selection.getFirstElement()).isLatest())
            || MdwPlugin.getSettings().isAllowDeleteArchivedProcesses()) {
        MenuItem deleteItem = new MenuItem(menu, SWT.PUSH);
        deleteItem.setText("Delete...");
        ImageDescriptor deleteImageDesc = MdwPlugin.getImageDescriptor("icons/delete.gif");
        deleteItem.setImage(deleteImageDesc.createImage());
        deleteItem.addSelectionListener(new SelectionAdapter() {
            public void widgetSelected(SelectionEvent e) {
                if (selection.size() >= 1 && selection.getFirstElement() instanceof WorkflowProcess) {
                    WorkflowProcess[] processVers = new WorkflowProcess[selection.size()];
                    int idx = 0;
                    for (Iterator<?> iter = selection.iterator(); iter.hasNext();) {
                        processVers[idx] = (WorkflowProcess) iter.next();
                        idx++;
                    }
                    WorkflowElementActionHandler actionHandler = new WorkflowElementActionHandler();
                    actionHandler.delete(processVers);
                    boolean removedSelected = false;
                    for (WorkflowProcess pv : processVers) {
                        if (pv.equals(process))
                            removedSelected = true;
                        else
                            process.remove(pv);
                    }
                    if (removedSelected) {
                        WorkflowProcess sel = null;
                        for (WorkflowProcess toSel : process.getAllProcessVersions()) {
                            if (!toSel.equals(process)) {
                                sel = toSel;
                                break;
                            }
                        }
                        setSelection(sel);
                    } else {
                        setSelection(process); // just force refresh
                    }
                }
            }
        });
    }

    return menu;
}