Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'bundles/org.eclipse.wst.xml.ui/src-validation/org/eclipse/wst/xml/ui/internal/validation/core/errorinfo/ReferencedFileErrorDialog.java')
-rw-r--r--bundles/org.eclipse.wst.xml.ui/src-validation/org/eclipse/wst/xml/ui/internal/validation/core/errorinfo/ReferencedFileErrorDialog.java285
1 files changed, 0 insertions, 285 deletions
diff --git a/bundles/org.eclipse.wst.xml.ui/src-validation/org/eclipse/wst/xml/ui/internal/validation/core/errorinfo/ReferencedFileErrorDialog.java b/bundles/org.eclipse.wst.xml.ui/src-validation/org/eclipse/wst/xml/ui/internal/validation/core/errorinfo/ReferencedFileErrorDialog.java
deleted file mode 100644
index dc465c6985..0000000000
--- a/bundles/org.eclipse.wst.xml.ui/src-validation/org/eclipse/wst/xml/ui/internal/validation/core/errorinfo/ReferencedFileErrorDialog.java
+++ /dev/null
@@ -1,285 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.internal.validation.core.errorinfo;
-
-import java.util.List;
-import com.ibm.icu.util.StringTokenizer;
-
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.StyleRange;
-import org.eclipse.swt.custom.StyledText;
-import org.eclipse.swt.events.MouseEvent;
-import org.eclipse.swt.events.MouseMoveListener;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.wst.xml.core.internal.validation.core.ValidationMessage;
-import org.eclipse.wst.xml.ui.internal.validation.XMLValidationUIMessages;
-
-
-public class ReferencedFileErrorDialog extends Dialog
-{
- protected TaskListTableViewer tableViewer;
- protected List errorList;
- protected String markedUpDetailsMessage;
- protected String contextFile;
- protected String referencedFile;
- protected StyledText styledText;
- protected Text fullFileNameField;
-
- public ReferencedFileErrorDialog(Shell parentShell, List errorList, String contextFile, String referencedFile)
- {
- super(parentShell);
-
- int styleBits = getShellStyle() | SWT.RESIZE;
- styleBits &= ~SWT.APPLICATION_MODAL;
-
- setShellStyle(styleBits);
- this.errorList = errorList;
-
- this.referencedFile = referencedFile;
- this.contextFile = contextFile;
- this.markedUpDetailsMessage = getMarkedUpDetailsMessage();
- }
-
- public int createAndOpen()
- {
- create();
- getShell().setText(XMLValidationUIMessages._UI_REF_FILE_ERROR_DETAILS);
-
- setBlockOnOpen(false);
- return open();
- }
-
-
- protected Control createButtonBar(Composite parent)
- {
- Composite composite = new Composite(parent, SWT.NONE);
- composite.setLayout(new GridLayout(2, false));
- composite.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-
- fullFileNameField = new Text(composite, SWT.NONE);
- fullFileNameField.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
- fullFileNameField.setBackground(parent.getBackground());
- fullFileNameField.setEditable(false);
-
- super.createButtonBar(composite);
-
- return composite;
- }
-
- protected Control createDialogArea(Composite parent)
- {
- Composite dialogArea = (Composite) super.createDialogArea(parent);
- dialogArea.setLayout(new GridLayout());
-
- Composite c = new Composite(dialogArea, SWT.NONE);
- c.setLayout(new GridLayout());
- c.setLayoutData(createGridData(true, -1, 200));
-
- styledText = new StyledText(c, SWT.MULTI | SWT.WRAP);
- styledText.setBackground(c.getBackground());
- setStyledText(styledText, markedUpDetailsMessage);
- styledText.setEditable(false);
- styledText.setLayoutData(createGridData(false, 650, -1));
-
- MouseListener mouseListener = new MouseListener();
- styledText.addMouseMoveListener(mouseListener);
-
- tableViewer = new TaskListTableViewer(c, 10);
- tableViewer.setInput(errorList);
- tableViewer.addSelectionChangedListener(new InternalSelectionListener());
- tableViewer.getControl().setLayoutData(createGridData(true, 700, -1));
- return dialogArea;
- }
-
- String getFullURI(int offset)
- {
- String uri = ""; //$NON-NLS-1$
- int index = getIndex(offset);
- if (index != -1)
- {
- if (index == 0 || index == 2 || index == 3)
- {
- uri = referencedFile;
- }
- else
- {
- uri = contextFile;
- }
- }
- return uri;
- }
-
- private int getIndex(int offset)
- {
- int result = -1;
- StyleRange[] range = styledText.getStyleRanges();
- for (int i = 0; i < range.length; i++)
- {
- int l = range[i].start;
- int r = l + range[i].length;
- if (l <= offset && r >= offset)
- {
- result = i;
- break;
- }
- }
- return result;
- }
-
- class MouseListener implements MouseMoveListener
- {
- public void mouseMove(MouseEvent event)
- {
- String toolTipText = ""; //$NON-NLS-1$
- try
- {
-
- int offset = styledText.getOffsetAtLocation(new Point(event.x, event.y));
- toolTipText = getFullURI(offset);
-
- }
- catch (Exception e)
- {
- // Do nothing.
- }
- styledText.setToolTipText(toolTipText);
- if (toolTipText != null && toolTipText.length() > 0)
- {
- fullFileNameField.setText(toolTipText);
- }
- }
- }
-
- private String getMarkedUpDetailsMessage()
- {
- String detailsMessage = ""; //$NON-NLS-1$
- // TODO... need to move '_UI_REF_FILE_ERROR_DESCRIPTION' to this plugin's properties file
- //
- String string = XMLValidationUIMessages._UI_REF_FILE_ERROR_DESCRIPTION;
- // TODO... need to edit the properties file to remove "'" characters from the string
- // I'm using these characters to markup the bold font. It's safer if I add these programtically.
- //
- string = removePattern(string, "'"); //$NON-NLS-1$
-
- String c = "'" + getLastSegment(contextFile) + "'"; //$NON-NLS-1$ //$NON-NLS-2$
- String r = "'" + getLastSegment(referencedFile) + "'"; //$NON-NLS-1$ //$NON-NLS-2$
-
- detailsMessage = NLS.bind(string, new Object[] { r, c, r, c });
- return detailsMessage;
- }
-
- private String removePattern(String string, String pattern)
- {
- while (true)
- {
- int index = string.indexOf(pattern);
- if (index != -1)
- {
- string = string.substring(0, index) + string.substring(index + pattern.length());
- }
- else
- {
- break;
- }
- }
- return string;
- }
-
- private void setStyledText(StyledText styledText, String text)
- {
- String visibleMessage = ""; //$NON-NLS-1$
- for (StringTokenizer st = new StringTokenizer(markedUpDetailsMessage, "'", false); st.hasMoreTokens();) //$NON-NLS-1$
- {
- String token = st.nextToken();
- visibleMessage += token;
- }
-
- styledText.setText(visibleMessage);
- //dw Font font = styledText.getFont();
-
- boolean inQuote = false;
- int position = 0;
- for (StringTokenizer st = new StringTokenizer(markedUpDetailsMessage, "'", true); st.hasMoreTokens();) //$NON-NLS-1$
- {
- String token = st.nextToken();
-
- if (token.equals("'")) //$NON-NLS-1$
- {
- inQuote = !inQuote;
- }
- else
- {
- if (inQuote)
- {
- try
- {
-
- StyleRange style = new StyleRange(position, token.length(), styledText.getForeground(), styledText.getBackground(), SWT.BOLD);
- styledText.setStyleRange(style);
- }
- catch (Exception e)
- {
- e.printStackTrace();
- }
- }
- position = position + token.length();
- }
- }
- }
-
- private static GridData createGridData(boolean fillBoth, int w, int h)
- {
- GridData gd = new GridData(fillBoth ? GridData.FILL_BOTH : GridData.FILL_HORIZONTAL);
- gd.widthHint = w;
- gd.heightHint = h;
- return gd;
- }
-
- private static String getLastSegment(String uri)
- {
- String result = uri;
- int index = Math.max(uri.lastIndexOf("/"), uri.lastIndexOf("\\")); //$NON-NLS-1$ //$NON-NLS-2$
- if (index != -1)
- {
- result = uri.substring(index + 1);
- }
- return result;
- }
-
- protected class InternalSelectionListener implements ISelectionChangedListener
- {
- public void selectionChanged(SelectionChangedEvent event)
- {
- ISelection selection = event.getSelection();
- if (selection instanceof StructuredSelection)
- {
- ValidationMessage validationMessage = (ValidationMessage) ((StructuredSelection) selection).getFirstElement();
- if (validationMessage != null)
- {
- String uristring = validationMessage.getUri();
- ReferencedFileErrorUtility.openEditorAndGotoError(uristring, validationMessage.getLineNumber(), validationMessage.getColumnNumber());
- }
- }
- }
- }
-} \ No newline at end of file

Back to the top