List of usage examples for org.eclipse.jface.dialogs MessageDialog open
public int open()
From source file:eu.modelwriter.marker.command.MarkHandler.java
License:Open Source License
@Override public Object execute(final ExecutionEvent event) throws ExecutionException { if (AlloyUtilities.isExists()) { createMarker();//from ww w .ja v a 2s .c om refresh(); } else { final MessageDialog infoDialog = new MessageDialog(MarkerActivator.getShell(), "System Information", null, "You dont have any registered alloy file to system.", MessageDialog.INFORMATION, new String[] { "OK" }, 0); infoDialog.open(); } return null; }
From source file:eu.modelwriter.marker.command.MarkWithTypeHandler.java
License:Open Source License
@Override public Object execute(final ExecutionEvent event) throws ExecutionException { if (AlloyUtilities.isExists()) { return markWithType(); } else {/* ww w . ja v a 2 s . c o m*/ final MessageDialog infoDialog = new MessageDialog(MarkerActivator.getShell(), "System Information", null, "You dont have any registered alloy file to system.", MessageDialog.INFORMATION, new String[] { "OK" }, 0); infoDialog.open(); } return null; }
From source file:eu.modelwriter.marker.command.MarkWithTypeHandler.java
License:Open Source License
private Object markWithType() { file = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActiveEditor() .getEditorInput().getAdapter(IFile.class); selection = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getSelectionService().getSelection(); editor = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActiveEditor(); if (!MarkerPage.isParsed()) { final MessageDialog dialog = new MessageDialog(MarkerActivator.getShell(), "Type Information", null, "You dont have any marker type registered to system! \n" + "Please parse an alloy file first", MessageDialog.INFORMATION, new String[] { "OK" }, 0); dialog.open(); return null; }/*from w ww . j a v a 2s . c o m*/ final IMarker selectedMarker = getMarker(); if (selectedMarker != null) { final MessageDialog dialog = new MessageDialog(MarkerActivator.getShell(), "Mark Information", null, "In these area, there is already a marker", MessageDialog.WARNING, new String[] { "OK" }, 0); dialog.open(); return null; } else if (selection instanceof ITextSelection && ((ITextSelection) selection).getLength() == 0) { final MessageDialog dialog = new MessageDialog(MarkerActivator.getShell(), "Mark Information", null, "Please make a valid selection", MessageDialog.WARNING, new String[] { "OK" }, 0); dialog.open(); return null; } final MarkerWizard markerWizard = new MarkerWizard(selection, file); final WizardDialog dialog = new WizardDialog(MarkerActivator.getShell(), markerWizard); dialog.open(); Visualization.showViz(); return null; }
From source file:eu.modelwriter.marker.internal.MarkerFactory.java
License:Open Source License
/** * Creates a Marker from TextSelection/*from w w w .ja va 2 s .c o m*/ */ public static IMarker createMarker(final IResource resource, final ITextSelection selection) { try { IMarker createdMarker = null; if (selection != null && !selection.getText().isEmpty()) { if (MarkerFactory.findMarkerWithAbsolutePosition(resource, selection.getOffset(), selection.getOffset() + selection.getLength()) != null) { final MessageDialog dialog = new MessageDialog(MarkerActivator.getShell(), "Mark Information", null, "In these area, there is already a marker", MessageDialog.WARNING, new String[] { "OK" }, 0); dialog.open(); return null; } final int start = selection.getOffset(); final int end = selection.getOffset() + selection.getLength(); final HashMap<String, Object> map = new HashMap<>(); MarkerUtilities.setLineNumber(map, selection.getStartLine()); MarkerUtilities.setMessage(map, "Marker Type : non-type"); MarkerUtilities.setCharStart(map, start); MarkerUtilities.setCharEnd(map, end); map.put(IMarker.TEXT, selection.getText()); map.put(IMarker.LOCATION, selection.getStartLine()); map.put(IMarker.SOURCE_ID, MarkerFactory.generateId()); map.put(MarkUtilities.MARKER_TYPE, null); MarkerUtilities.createMarker(resource, map, MarkerFactory.MARKER_MARKING); createdMarker = MarkerFactory.findMarkerWithAbsolutePosition(resource, start, end); } else { final MessageDialog dialog = new MessageDialog(MarkerActivator.getShell(), "Mark Information", null, "Please perform a valid selection", MessageDialog.WARNING, new String[] { "OK" }, 0); dialog.open(); } return createdMarker; } catch (final CoreException e) { e.printStackTrace(); } return null; }
From source file:eu.modelwriter.marker.internal.MarkerFactory.java
License:Open Source License
/** * Creates a Marker from TreeSelection/* w w w .j a v a 2 s.c o m*/ */ @SuppressWarnings({ "resource" }) public static IMarker createMarker(final IResource res, final ITreeSelection selection) { if (selection == null) { final MessageDialog dialog = new MessageDialog(MarkerActivator.getShell(), "Mark Information", null, "Please perform a valid selection", MessageDialog.WARNING, new String[] { "OK" }, 0); dialog.open(); return null; } else if (MarkerFactory.findMarkerByTreeSelection(selection, res) != null) { final MessageDialog dialog = new MessageDialog(MarkerActivator.getShell(), "Mark Information", null, "In these area, there is already a marker", MessageDialog.WARNING, new String[] { "OK" }, 0); dialog.open(); return null; } // Fetch IResource final IWorkbench workbench = PlatformUI.getWorkbench(); final IWorkbenchWindow window = workbench.getActiveWorkbenchWindow(); final IWorkbenchPage page = window.getActivePage(); final IEditorPart editor = page.getActiveEditor(); final IFileEditorInput input = (IFileEditorInput) editor.getEditorInput(); final IFile file = input.getFile(); IMarker marker = null; if (MarkerActivator.getEditor() instanceof EcoreEditor && selection.getFirstElement() instanceof ENamedElement && ((ENamedElement) selection.getFirstElement()).getName() != null && !((ENamedElement) selection.getFirstElement()).getName().isEmpty()) { marker = MarkerFactory.createEcoreMarker(selection, file, res, editor); } else if (editor instanceof EcoreEditor && selection.getFirstElement() != null) { marker = MarkerFactory.createInstanceMarker(selection, file, res, editor); } else if (editor instanceof CompilationUnitEditor) { final Object element = selection.getFirstElement(); String content = null; try { content = new Scanner(file.getContents()).useDelimiter("\\Z").next(); } catch (final CoreException e1) { e1.printStackTrace(); } int startOffset = 0; int length = 0; if (element instanceof IField) { final IField field = (IField) element; try { final ISourceRange nameRange = field.getNameRange(); final int nameStartOffset = nameRange.getOffset(); final int nameEndOffset = nameStartOffset + nameRange.getLength(); final ISourceRange sourceRange = field.getSourceRange(); startOffset = field.getJavadocRange().getOffset() + field.getJavadocRange().getLength() + 1; if (nameEndOffset + 1 == sourceRange.getOffset() + sourceRange.getLength()) { length = sourceRange.getOffset() + sourceRange.getLength() - startOffset; } else { final int indexOfAssignment = content.indexOf("=", nameEndOffset); length = indexOfAssignment - startOffset; } } catch (final JavaModelException e) { e.printStackTrace(); } } else if (element instanceof IInitializer) { final IInitializer initializer = (IInitializer) element; try { final ISourceRange sourceRange = initializer.getSourceRange(); startOffset = initializer.getJavadocRange().getOffset() + initializer.getJavadocRange().getLength() + 1; length = sourceRange.getLength(); } catch (final JavaModelException e) { e.printStackTrace(); } } else if (element instanceof IMethod) { final IMethod method = (IMethod) element; try { final ISourceRange nameRange = method.getNameRange(); final int nameStartOffset = nameRange.getOffset(); final int nameEndOffset = nameStartOffset + nameRange.getLength(); final ISourceRange sourceRange = method.getSourceRange(); startOffset = method.getJavadocRange().getOffset() + method.getJavadocRange().getLength() + 1; if (content.toCharArray()[sourceRange.getOffset() + sourceRange.getLength() - 1] == '}') { final int indexOfParanthesis = content.indexOf("{", nameEndOffset); length = indexOfParanthesis - startOffset; } else if (content.toCharArray()[sourceRange.getOffset() + sourceRange.getLength() - 1] == ';') { length = sourceRange.getLength(); } } catch (final JavaModelException e) { e.printStackTrace(); } } else if (element instanceof IType) { final IType type = (IType) element; try { final ISourceRange nameRange = type.getNameRange(); final int nameStartOffset = nameRange.getOffset(); final int nameEndOffset = nameStartOffset + nameRange.getLength(); final int indexOfParanthesis = content.indexOf("{", nameEndOffset); startOffset = type.getJavadocRange().getOffset() + type.getJavadocRange().getLength() + 1; length = indexOfParanthesis - startOffset; } catch (final JavaModelException e) { e.printStackTrace(); } } final IDocument document = new Document(content); final TextSelection textSelection = new TextSelection(document, startOffset, length); return MarkerFactory.createMarker(file, textSelection); } else { final MessageDialog dialog = new MessageDialog(MarkerActivator.getShell(), "Mark Information", null, "Please perform a valid selection", MessageDialog.WARNING, new String[] { "OK" }, 0); dialog.open(); } return marker; }
From source file:eu.modelwriter.marker.ui.internal.hyperlinkdetectors.MarkerMappingActionHyperlink.java
License:Open Source License
@Override public void open() { final IFile file = MarkerActivator.getEditor().getEditorInput().getAdapter(IFile.class); final int start = this.fUrlRegion.getOffset(); final int end = this.fUrlRegion.getOffset() + this.fUrlRegion.getLength(); final IMarker beMapped = MarkerFactory.findMarkerWithAbsolutePosition(file, start, end); if (beMapped != null) { MarkerMapping.getInstance().runWithMarker(beMapped); } else {/*from www . java 2 s .c o m*/ final MessageDialog dialog = new MessageDialog(MarkerActivator.getShell(), "Mark Information", null, "Something goes wrong with this text fragments", MessageDialog.WARNING, new String[] { "OK" }, 0); dialog.open(); } }
From source file:eu.modelwriter.marker.ui.internal.preferences.MarkerTypePreferencePage.java
License:Open Source License
@Override protected Control createContents(final Composite parent) { final Composite container = new Composite(parent, SWT.NULL); final TreeViewer treeViewer = new TreeViewer(container, SWT.BORDER); final Tree tree = treeViewer.getTree(); tree.setBounds(10, 32, 232, 280);//from w w w. j av a 2 s .com final MarkerTreeViewContentProvider treeViewerContentProvider = new MarkerTreeViewContentProvider(); treeViewer.setLabelProvider(new MarkerTreeViewLabelProvider()); treeViewer.setContentProvider(treeViewerContentProvider); final TableViewer tableViewer = new TableViewer(container, SWT.BORDER | SWT.FULL_SELECTION); this.table = tableViewer.getTable(); this.table.setBounds(254, 32, 365, 280); tableViewer.setContentProvider(ArrayContentProvider.getInstance()); new RefColumn().addColumnTo(tableViewer); final Button btnParseAlloy = new Button(container, SWT.NONE); btnParseAlloy.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(final SelectionEvent e) { final MessageDialog warningdialog = new MessageDialog(MarkerActivator.getShell(), "Mark Information", null, "If new alloy file will be parsed , your all marker type will be lost !", MessageDialog.WARNING, new String[] { "OK", "Cancel" }, 0); if (warningdialog.open() == 1) { return; } final FileDialog dialog = new FileDialog( PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), SWT.OPEN); dialog.setFilterExtensions(new String[] { "*.mw", "*.als" }); final String result = dialog.open(); if (result == null) { return; } for (final IResource iResource : ResourcesPlugin.getWorkspace().getRoot().getProjects()) { boolean isClosed = false; try { if (!((IProject) iResource).isOpen()) { isClosed = true; ((IProject) iResource).open(new NullProgressMonitor()); } for (final IMarker iMarker : MarkerFactory.findMarkersAsArrayList(iResource)) { if (MarkUtilities.getType(iMarker) != null) { MarkUtilities.setType(iMarker, null); } } if (isClosed == true) { ((IProject) iResource).close(new NullProgressMonitor()); } } catch (final CoreException e1) { e1.printStackTrace(); } } MarkerPage.settings.put("alloyFile", result); final AlloyParser parser = new AlloyParser(result); final ArrayList<MarkerTypeElement> roots = parser.getTypes(); final ArrayList<String> rels = parser.getRels(); final MarkerTypeElement systemRoot = new MarkerTypeElement("universe"); for (final MarkerTypeElement root : roots) { systemRoot.getChildren().add(root); } try { MarkerPage.settings.put("universe", Serialization.getInstance().toString(systemRoot)); final Object[] array = new Object[1]; array[0] = systemRoot; treeViewer.setInput(array); treeViewer.expandAll(); MarkerPage.settings.put("rels", Serialization.getInstance().toString(rels)); tableViewer.setInput(rels); // auto size columns final TableColumn[] columns = tableViewer.getTable().getColumns(); for (int i = 0; i < columns.length; i++) { columns[i].pack(); } MarkerTypePreferencePage.this.lblNewLabel.setText(result); MarkerTypePreferencePage.this.lblNewLabel.setToolTipText(result); } catch (final IOException e1) { e1.printStackTrace(); } } }); btnParseAlloy.setBounds(10, 320, 75, 25); btnParseAlloy.setText("Specification"); final Label lblMarkerTypes = new Label(container, SWT.NONE); lblMarkerTypes.setBounds(10, 10, 75, 15); lblMarkerTypes.setText("Sets"); final Label lblRelations = new Label(container, SWT.NONE); lblRelations.setBounds(254, 10, 55, 15); lblRelations.setText("Relations"); this.lblNewLabel = new Label(container, SWT.WRAP); this.lblNewLabel.setBounds(91, 325, 498, 72); if (MarkerPage.settings.get("alloyFile") != null) { this.lblNewLabel.setText(MarkerPage.settings.get("alloyFile")); } this.lblNewLabel.setToolTipText(MarkerPage.settings.get("alloyFile")); try { final String savedTree = MarkerPage.settings.get("universe"); if (savedTree != null) { final Object[] array = new Object[1]; array[0] = Serialization.getInstance().fromString(savedTree); treeViewer.setInput(array); treeViewer.expandAll(); } final String rels = MarkerPage.settings.get("rels"); if (rels != null) { tableViewer.setInput(Serialization.getInstance().fromString(rels)); // auto size columns final TableColumn[] columns = tableViewer.getTable().getColumns(); for (int i = 0; i < columns.length; i++) { columns[i].pack(); } } } catch (final IOException e1) { e1.printStackTrace(); } catch (final ClassNotFoundException e) { e.printStackTrace(); } return container; }
From source file:eu.modelwriter.marker.ui.internal.views.visualizationview.commands.AddRemoveTypeCommand.java
License:Open Source License
private void addRemoveType() { if (!MarkerPage.isParsed()) { final MessageDialog parseCtrlDialog = new MessageDialog(Activator.getShell(), "Type Information", null, "You dont have any marker type registered to system! \n" + "Please parse an alloy file first", MessageDialog.INFORMATION, new String[] { "OK" }, 0); parseCtrlDialog.open(); return;//from w w w. ja va 2 s . c o m } final ActionSelectionDialog actionSelectionDialog = new ActionSelectionDialog(Activator.getShell()); actionSelectionDialog.open(); if (actionSelectionDialog.getReturnCode() == IDialogConstants.CANCEL_ID) { return; } IMarker selectedMarker = this.marker; selectedMarker = MarkUtilities.getLeaderOfMarker(selectedMarker); if (selectedMarker != null && selectedMarker.exists()) { this.findCandidateToTypeChangingMarkers(selectedMarker); if (actionSelectionDialog.getReturnCode() == IDialogConstants.YES_ID) { AddRemoveTypeCommand.addType(selectedMarker); } else if (actionSelectionDialog.getReturnCode() == IDialogConstants.NO_ID) { final MessageDialog warningDialog = new MessageDialog(Activator.getShell(), "Warning!", null, "If you remove marker's type, all relations of this marker has been removed! Do you want to continue to remove marker's type?", MessageDialog.WARNING, new String[] { "YES", "NO" }, 0); final int returnCode = warningDialog.open(); if (returnCode != 0) { return; } this.removeType(selectedMarker); } } else { final MessageDialog dialog = new MessageDialog(Activator.getShell(), "There is no marker in this position", null, "Please select valid marker", MessageDialog.INFORMATION, new String[] { "OK" }, 0); dialog.open(); return; } }
From source file:eu.modelwriter.marker.ui.internal.views.visualizationview.commands.AddRemoveTypeCommand.java
License:Open Source License
private void removeType(IMarker selectedMarker) { selectedMarker = AnnotationFactory.convertAnnotationType(selectedMarker, true, true, AlloyUtilities.getTotalTargetCount(selectedMarker)); IMarker marker = null;//from ww w. j a va 2 s .co m for (int i = 1; i < this.candidateToTypeChanging.size(); i++) { marker = this.candidateToTypeChanging.get(i); AnnotationFactory.convertAnnotationType(marker, true, MarkUtilities.compare(marker, selectedMarker), AlloyUtilities.getTotalTargetCount(marker)); } AlloyUtilities.removeAllRelationsOfMarker(selectedMarker); AlloyUtilities.removeRelationOfMarker(selectedMarker); if (MarkUtilities.getGroupId(selectedMarker) != null) { final List<IMarker> group = MarkerFactory.findMarkersByGroupId(selectedMarker.getResource(), MarkUtilities.getGroupId(selectedMarker)); for (final IMarker iMarker : group) { AlloyUtilities.removeTypeFromMarker(iMarker); MarkUtilities.setType(iMarker, null); } } else { AlloyUtilities.removeTypeFromMarker(selectedMarker); MarkUtilities.setType(selectedMarker, null); } final MessageDialog removeSuccessDialog = new MessageDialog(Activator.getShell(), "Removing Type Action", null, "Selected marker's type has been removed.", MessageDialog.INFORMATION, new String[] { "OK" }, 0); removeSuccessDialog.open(); }
From source file:eu.modelwriter.marker.ui.internal.views.visualizationview.commands.AddRemoveTypeCommand.java
License:Open Source License
@Override public void run() { if (AlloyUtilities.isExists()) { this.candidateToTypeChanging = new ArrayList<IMarker>(); this.addRemoveType(); } else {/*from www. jav a 2 s. c o m*/ final MessageDialog infoDialog = new MessageDialog(Activator.getShell(), "System Information", null, "You dont have any registered alloy file to system.", MessageDialog.INFORMATION, new String[] { "OK" }, 0); infoDialog.open(); } }