List of usage examples for org.eclipse.jface.dialogs MessageDialog openWarning
public static void openWarning(Shell parent, String title, String message)
From source file:com.centurylink.mdw.plugin.designer.views.ProcessExplorerContentProvider.java
License:Apache License
public Object[] getChildren(Object parentElement) { if (parentElement instanceof WorkflowProject) { final WorkflowProject workflowProject = (WorkflowProject) parentElement; if (!workflowProject.isLoaded()) { try { IRunnableWithProgress loader = new IRunnableWithProgress() { public void run(IProgressMonitor monitor) throws InvocationTargetException, InterruptedException { ProgressMonitor progressMonitor = new SwtProgressMonitor(monitor); progressMonitor.start("Loading " + workflowProject.getLabel()); progressMonitor.progress(5); try { workflowProject.initialize(progressMonitor); if (workflowProject.getDataAccess() != null) { workflowProject.getTopLevelUserVisiblePackages(progressMonitor); workflowProject.getArchivedUserVisiblePackagesFolder(progressMonitor); progressMonitor.done(); }//from www .j av a 2s. co m } catch (Exception ex) { throw new InvocationTargetException(ex); } } }; ProgressMonitorDialog progMonDlg = new MdwProgressMonitorDialog(MdwPlugin.getShell()); progMonDlg.run(true, false, loader); } catch (InvocationTargetException itx) { if (itx.getCause() instanceof DataUnavailableException) { PluginMessages.log(itx); MessageDialog.openWarning(MdwPlugin.getShell(), "Load Workflow Project", itx.getCause().getMessage()); } else if (itx.getCause() instanceof DataAccessOfflineException) { PluginMessages.log(itx); MessageDialog.openError(MdwPlugin.getShell(), "Load Workflow Project", itx.getCause().getMessage()); return new WorkflowPackage[0]; } else { PluginMessages.uiError(itx, "Load Workflow Project", workflowProject); return new WorkflowPackage[0]; } } catch (Exception ex) { PluginMessages.uiError(ex, "Load Workflow Project", workflowProject); return new WorkflowPackage[0]; } } if (workflowProject.getDataAccess() == null) return new WorkflowPackage[0]; List<WorkflowPackage> topLevelPackages = workflowProject.getTopLevelUserVisiblePackages(); Folder archivedPackageFolder = workflowProject.getArchivedUserVisiblePackagesFolder(); int size = topLevelPackages.size(); boolean showArchived = isShowArchivedItems(workflowProject); if (showArchived) size++; AutomatedTestSuite testSuite = workflowProject.getLegacyTestSuite(); if (testSuite != null && !testSuite.isEmpty()) size++; Object[] objects = new Object[size]; for (int i = 0; i < topLevelPackages.size(); i++) objects[i] = topLevelPackages.get(i); int cur = topLevelPackages.size(); if (showArchived) { objects[cur] = archivedPackageFolder; cur++; } if (testSuite != null && !testSuite.isEmpty()) objects[cur] = testSuite; return objects; } else if (parentElement instanceof WorkflowPackage) { WorkflowPackage packageVersion = (WorkflowPackage) parentElement; if (packageVersion.isArchived() && packageVersion.hasDescendantPackageVersions()) { return packageVersion.getDescendantPackageVersions().toArray(new WorkflowPackage[0]); } else { List<WorkflowElement> elements = new ArrayList<WorkflowElement>(); IPreferenceStore prefsStore = MdwPlugin.getDefault().getPreferenceStore(); if (!prefsStore.getBoolean(PreferenceConstants.PREFS_FILTER_PROCESSES_IN_PEX)) elements.addAll(packageVersion.getProcesses()); if (!prefsStore.getBoolean(PreferenceConstants.PREFS_FILTER_WORKFLOW_ASSETS_IN_PEX)) elements.addAll(packageVersion.getAssets()); if (!prefsStore.getBoolean(PreferenceConstants.PREFS_FILTER_EVENT_HANDLERS_IN_PEX)) elements.addAll(packageVersion.getExternalEvents()); if (prefsStore.getBoolean(PreferenceConstants.PREFS_SHOW_ACTIVITY_IMPLEMENTORS_IN_PEX)) elements.addAll(packageVersion.getActivityImpls()); if (!prefsStore.getBoolean(PreferenceConstants.PREFS_FILTER_TASK_TEMPLATES_IN_PEX)) elements.addAll(packageVersion.getTaskTemplates()); elements.addAll(packageVersion.getChildFolders()); if (isSortPackageContentsAtoZ()) { Collections.sort(elements, new Comparator<WorkflowElement>() { public int compare(WorkflowElement e1, WorkflowElement e2) { return e1.getLabel().compareToIgnoreCase(e2.getLabel()); } }); } return elements.toArray(new Object[0]); } } else if (parentElement instanceof WorkflowProcess) { WorkflowProcess processVersion = (WorkflowProcess) parentElement; if (processVersion.hasDescendantProcessVersions()) { return processVersion.getDescendantProcessVersions().toArray(new WorkflowProcess[0]); } else { return EMPTY_ARRAY; } } else if (parentElement instanceof Folder) { Folder folder = (Folder) parentElement; return folder.getChildren().toArray(new WorkflowElement[0]); } else if (parentElement instanceof AutomatedTestSuite) { AutomatedTestSuite testSuite = (AutomatedTestSuite) parentElement; return testSuite.getTestCases().toArray(new AutomatedTestCase[0]); } else if (parentElement instanceof AutomatedTestCase) { AutomatedTestCase testCase = (AutomatedTestCase) parentElement; if (!testCase.isLegacy()) return EMPTY_ARRAY; List<LegacyExpectedResults> expectedResults = testCase.getLegacyExpectedResults(); List<File> files = testCase.getFiles(); Object[] objects = new Object[expectedResults.size() + files.size()]; for (int i = 0; i < expectedResults.size(); i++) objects[i] = expectedResults.get(i); for (int i = expectedResults.size(); i < objects.length; i++) objects[i] = files.get(i - expectedResults.size()); return objects; } else { return EMPTY_ARRAY; } }
From source file:com.centurylink.mdw.plugin.designer.views.ProcessExplorerDropTarget.java
License:Apache License
/** * @param processInfo//from ww w . j a va 2 s . co m * @param targetPackage * @param operation * @return */ private boolean handleDropProcess(String processInfo, WorkflowPackage targetPackage, int operation) { String processName = getProcessName(processInfo); String version = getProcessVersion(processInfo); WorkflowProject targetProject = targetPackage.getProject(); WorkflowPackage sourcePackage = targetProject.getPackage(getPackageName(processInfo)); DesignerProxy designerProxy = targetProject.getDesignerProxy(); if (operation == DND.DROP_COPY) { String workflowProjectName = getWorkflowProjectName(processInfo); WorkflowProcess existing = targetProject.getProcess(processName, version); if (!targetPackage.getProject().getName().equals(workflowProjectName)) { // copying from remote project if (existing != null) { MessageDialog.openError(getViewer().getControl().getShell(), "Copy Foreign Process", "' " + processName + " v" + version + "' already exists in workflow project '" + targetPackage.getProject().getLabel() + "'."); return false; } WorkflowProject sourceProject = WorkflowProjectManager.getInstance() .getWorkflowProject(workflowProjectName); designerProxy.copyForeignProcess(processName, version, sourceProject, targetPackage); WorkflowProcess newCopy = targetProject.getProcess(processName, "0.1"); if (newCopy != null) { newCopy.addElementChangeListener(targetProject); newCopy.fireElementChangeEvent(ChangeType.ELEMENT_CREATE, newCopy); } ((TreeViewer) getViewer()).refresh(targetPackage, true); return true; } else { // is there a dirty editor open? if (existing != null) { IEditorPart editor = findOpenEditor(existing); if (editor != null && editor.isDirty()) { MessageDialog.openWarning(getViewer().getControl().getShell(), "Copy Process", "' " + processName + " v" + version + "' is currently open in an editor.\nPlease save or close before copying."); return false; } } CopyDialog copyDialog = new CopyDialog(getViewer().getControl().getShell(), existing, processName, version, targetPackage); if (copyDialog.open() == Dialog.OK) { String newName = copyDialog.getNewName(); designerProxy.copyProcess(processName, version, newName, targetPackage); WorkflowProcess newCopy = targetProject.getProcess(newName, "0.1"); if (newCopy != null) { newCopy.addElementChangeListener(targetProject); newCopy.fireElementChangeEvent(ChangeType.ELEMENT_CREATE, newCopy); } ((TreeViewer) getViewer()).refresh(targetPackage, true); return true; } } return false; } else if (operation == DND.DROP_MOVE) { // don't allow multiple versions of the same process in a package if (!targetPackage.isDefaultPackage()) { if (targetPackage.getProcess(processName) != null) { MessageDialog.openError(MdwPlugin.getShell(), "Process Exists", "Process '" + processName + "' already exists in package '" + targetPackage.getName() + "'."); return false; } } if (targetPackage.isDefaultPackage()) { designerProxy.removeProcessFromPackage(processName, version, sourcePackage); } else { designerProxy.moveProcessToPackage(processName, version, targetPackage); } ((TreeViewer) getViewer()).refresh(targetPackage.getProject(), true); if (sourcePackage != null) ((TreeViewer) getViewer()).refresh(sourcePackage.getProject(), true); return true; } else { return false; } }
From source file:com.centurylink.mdw.plugin.designer.views.ToolboxView.java
License:Apache License
public void handleFilter() { if (isDirty()) { MessageDialog.openWarning(getSite().getShell(), "Please Save", "Please save or abandon outstanding changes before filtering"); return;//from w w w .j a va2s . c o m } WorkflowProject project = getProject(); try { ToolboxFilterDialog filterDlg = new ToolboxFilterDialog(getSite().getShell(), project, project.getSuppressedActivityImplementors()); int res = filterDlg.open(); if (res == Dialog.OK) { project.setSuppressedActivityImplementors(filterDlg.getSuppressedImplementors()); toolboxWrapper.update(); actionGroup.getDeleteAction().setEnabled(false); } } catch (IOException ex) { PluginMessages.uiError(ex, "Filter Implementors", project); } }
From source file:com.centurylink.mdw.plugin.designer.views.ToolboxView.java
License:Apache License
public void handleNew() { if (isDirty()) { MessageDialog.openWarning(getSite().getShell(), "Please Save", "Please save or abandon outstanding changes before creating a new implementor"); return;//from www.ja va 2s .c o m } else { IWorkbench workbench = PlatformUI.getWorkbench(); NewWizard wizard = new NewWizard(); wizard.setCategoryId("mdw.codegen.activity"); wizard.init(workbench, new StructuredSelection(getProject())); IDialogSettings workbenchSettings = IDEWorkbenchPlugin.getDefault().getDialogSettings(); IDialogSettings wizardSettings = workbenchSettings.getSection("NewWizardAction"); if (wizardSettings == null) wizardSettings = workbenchSettings.addNewSection("NewWizardAction"); wizardSettings.put("NewWizardSelectionPage.STORE_SELECTED_ID", "mdw.codegen.general.activity"); wizard.setDialogSettings(wizardSettings); wizard.setForcePreviousAndNextButtons(true); WizardDialog dialog = new WizardDialog(null, wizard); dialog.create(); if (dialog.open() != Dialog.CANCEL) toolboxWrapper.update(); } }
From source file:com.centurylink.mdw.plugin.designer.views.ToolboxView.java
License:Apache License
public void handleDiscover() { if (isDirty()) { MessageDialog.openWarning(getSite().getShell(), "Please Save", "Please save or abandon outstanding changes before discovering new assets"); return;//from ww w.j a v a 2 s . c o m } else { IWorkbench workbench = PlatformUI.getWorkbench(); ImportPackageWizard wiz = new ImportPackageWizard(); wiz.init(workbench, new StructuredSelection(getProject())); WizardDialog dlg = new WizardDialog(getSite().getShell(), wiz); if (dlg.open() != Dialog.CANCEL) toolboxWrapper.update(); } }
From source file:com.centurylink.mdw.plugin.designer.views.ToolboxView.java
License:Apache License
public void handleDelete() { ActivityImpl activityImpl = getSelection(); if (activityImpl == null) { MessageDialog.openWarning(getSite().getShell(), "No Selection", "Please select an Activity Implementor To Delete"); return;/*from w ww.ja va2 s .c om*/ } if (isDirty()) { MessageDialog.openWarning(getSite().getShell(), "Please Save", "Please save or abandon outstanding changes before deleting"); return; } else { new WorkflowElementActionHandler().delete(new WorkflowElement[] { activityImpl }); toolboxWrapper.update(); dirtyStateChanged(false); actionGroup.getDeleteAction().setEnabled(false); } }
From source file:com.centurylink.mdw.plugin.project.assembly.ExtensionModulesUpdater.java
License:Apache License
private void doAdd(final ExtensionModule module, final Shell shell) { try {/* ww w . j a v a2 s .c o m*/ ProgressMonitorDialog pmDialog = new MdwProgressMonitorDialog(shell); pmDialog.run(true, true, new IRunnableWithProgress() { public void run(IProgressMonitor monitor) throws InvocationTargetException, InterruptedException { monitor.beginTask("Adding Extension Module: " + module.getName(), 105); monitor.worked(5); try { if (module.addTo(project, monitor)) project.addExtension(module); WorkflowProjectManager.getInstance().save(project); monitor.done(); } catch (InterruptedException ex) { throw ex; } catch (Exception ex) { PluginMessages.log(ex); throw new InvocationTargetException(ex); } } }); } catch (InvocationTargetException ex) { PluginMessages.uiError(shell, ex, "Add Extension Module", project); } catch (InterruptedException ex) { PluginMessages.log(ex); MessageDialog.openWarning(shell, "Add Extension Module", "Operation cancelled"); } }
From source file:com.centurylink.mdw.plugin.project.assembly.ExtensionModulesUpdater.java
License:Apache License
private void doRemove(final ExtensionModule module, final Shell shell) { try {// www . ja v a 2 s . co m ProgressMonitorDialog pmDialog = new MdwProgressMonitorDialog(shell); pmDialog.run(true, true, new IRunnableWithProgress() { public void run(IProgressMonitor monitor) throws InvocationTargetException, InterruptedException { monitor.beginTask("Removing Extension Module: " + module.getName(), 105); monitor.worked(5); try { if (module.removeFrom(project, monitor)) project.removeExtension(module); WorkflowProjectManager.getInstance().save(project); monitor.done(); } catch (InterruptedException ex) { throw ex; } catch (Exception ex) { PluginMessages.log(ex); throw new InvocationTargetException(ex); } } }); } catch (InvocationTargetException ex) { PluginMessages.uiError(shell, ex, "Remove Extension Module", project); } catch (InterruptedException ex) { PluginMessages.log(ex); MessageDialog.openWarning(shell, "Remove Extension Module", "Operation cancelled"); } }
From source file:com.centurylink.mdw.plugin.project.assembly.ExtensionModulesUpdater.java
License:Apache License
private void doUpdate(final ExtensionModule module, final Shell shell) { try {//from w w w . j a v a 2 s. co m ProgressMonitorDialog pmDialog = new MdwProgressMonitorDialog(shell); pmDialog.run(true, true, new IRunnableWithProgress() { public void run(IProgressMonitor monitor) throws InvocationTargetException, InterruptedException { monitor.beginTask("Updating Extension Module: " + module.getName(), 105); monitor.worked(5); try { module.update(project, monitor); monitor.done(); } catch (InterruptedException ex) { throw ex; } catch (Exception ex) { PluginMessages.log(ex); throw new InvocationTargetException(ex); } } }); } catch (InvocationTargetException ex) { PluginMessages.uiError(shell, ex, "Update Extension Module", project); } catch (InterruptedException ex) { PluginMessages.log(ex); MessageDialog.openWarning(shell, "Update Extension Module", "Operation cancelled"); } }
From source file:com.centurylink.mdw.plugin.project.WorkflowProjectManager.java
License:Apache License
public void deleteProject(IProject project) { WorkflowProject workflowProject = getWorkflowProject(project); if (workflowProject != null) { deleteProject(workflowProject);// w w w . j av a 2 s . co m } else { try { project.delete(true, true, null); } catch (CoreException ex) { if (ex instanceof ResourceException && ex.getMessage().startsWith("Problems encountered while deleting")) MessageDialog.openWarning(MdwPlugin.getShell(), "Problems Deleting", "Not all resources under project '" + project.getName() + "' could be deleted.\nPlease delete the project manually on the file system."); else PluginMessages.uiError(ex, "Delete Project", workflowProject); } } }