diff options
Diffstat (limited to 'org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ConsoleViewer.java')
-rw-r--r-- | org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ConsoleViewer.java | 489 |
1 files changed, 0 insertions, 489 deletions
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ConsoleViewer.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ConsoleViewer.java deleted file mode 100644 index a6fc96850..000000000 --- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ConsoleViewer.java +++ /dev/null @@ -1,489 +0,0 @@ -///******************************************************************************* -// * Copyright (c) 2000, 2004 IBM Corporation and others. -// * All rights reserved. This program and the accompanying materials -// * are made available under the terms of the Common Public License v1.0 -// * which accompanies this distribution, and is available at -// * http://www.eclipse.org/legal/cpl-v10.html -// * -// * Contributors: -// * IBM Corporation - initial API and implementation -// *******************************************************************************/ -//package org.eclipse.debug.internal.ui.views.console; -// -// -//import org.eclipse.debug.internal.ui.DebugUIPlugin; -//import org.eclipse.debug.internal.ui.IInternalDebugUIConstants; -//import org.eclipse.debug.internal.ui.preferences.IDebugPreferenceConstants; -//import org.eclipse.debug.ui.console.IConsoleColorProvider; -//import org.eclipse.debug.ui.console.IConsoleHyperlink; -//import org.eclipse.jface.resource.JFaceResources; -//import org.eclipse.jface.text.BadLocationException; -//import org.eclipse.jface.text.BadPositionCategoryException; -//import org.eclipse.jface.text.DocumentEvent; -//import org.eclipse.jface.text.IDocument; -//import org.eclipse.jface.text.IDocumentListener; -//import org.eclipse.jface.text.IDocumentPartitioner; -//import org.eclipse.jface.text.IRegion; -//import org.eclipse.jface.text.ITypedRegion; -//import org.eclipse.jface.text.Position; -//import org.eclipse.jface.text.TextViewer; -//import org.eclipse.jface.util.IPropertyChangeListener; -//import org.eclipse.jface.util.PropertyChangeEvent; -//import org.eclipse.swt.SWT; -//import org.eclipse.swt.custom.LineStyleEvent; -//import org.eclipse.swt.custom.LineStyleListener; -//import org.eclipse.swt.custom.StyleRange; -//import org.eclipse.swt.custom.StyledText; -//import org.eclipse.swt.events.MouseEvent; -//import org.eclipse.swt.events.MouseListener; -//import org.eclipse.swt.events.MouseMoveListener; -//import org.eclipse.swt.events.MouseTrackListener; -//import org.eclipse.swt.events.PaintEvent; -//import org.eclipse.swt.events.PaintListener; -//import org.eclipse.swt.events.VerifyEvent; -//import org.eclipse.swt.graphics.Color; -//import org.eclipse.swt.graphics.Cursor; -//import org.eclipse.swt.graphics.FontMetrics; -//import org.eclipse.swt.graphics.Point; -//import org.eclipse.swt.widgets.Composite; -//import org.eclipse.swt.widgets.Control; -//import org.eclipse.swt.widgets.Event; -//import org.eclipse.swt.widgets.Listener; -//import org.eclipse.ui.console.IConsoleConstants; -// -//public class ConsoleViewer extends TextViewer implements IPropertyChangeListener, MouseTrackListener, MouseMoveListener, MouseListener, PaintListener, LineStyleListener, Listener { -// -// /** -// * Hand cursor -// */ -// private Cursor fHandCursor; -// -// /** -// * Text cursor -// */ -// private Cursor fTextCursor; -// -// /** -// * The active hyperlink, or <code>null</code> -// */ -// private IConsoleHyperlink fHyperLink = null; -// -// protected InternalDocumentListener fInternalDocumentListener= new InternalDocumentListener(); -// -// /** -// * Whether the console scrolls as output is appended. -// */ -// private boolean fAutoScroll = true; -// -// /** -// * Internal document listener. -// */ -// class InternalDocumentListener implements IDocumentListener { -// /** -// * @see IDocumentListener#documentAboutToBeChanged(DocumentEvent) -// */ -// public void documentAboutToBeChanged(DocumentEvent e) { -// } -// -// /** -// * @see IDocumentListener#documentChanged(DocumentEvent) -// */ -// public void documentChanged(DocumentEvent e) { -// ConsoleDocument doc= (ConsoleDocument)getDocument(); -// if (doc == null) { -// getTextWidget().setEditable(false); -// return; -// } -// getTextWidget().setEditable(!doc.isReadOnly()); -// revealEndOfDocument(); -// } -// } -// -// /** -// * Creates a new console viewer and adds verification checking -// * to only allow text modification if the text is being modified -// * in the editable portion of the underlying document. -// * -// * @see org.eclipse.swt.events.VerifyListener -// */ -// public ConsoleViewer(Composite parent) { -// super(parent, getSWTStyles()); -// -// getTextWidget().setDoubleClickEnabled(true); -// -// DebugUIPlugin.getDefault().getPreferenceStore().addPropertyChangeListener(this); -// JFaceResources.getFontRegistry().addListener(this); -// -// getTextWidget().setFont(JFaceResources.getFont(IConsoleConstants.CONSOLE_FONT)); -// getTextWidget().addMouseTrackListener(this); -// getTextWidget().addPaintListener(this); -// getTextWidget().addLineStyleListener(this); -// getTextWidget().addListener(SWT.KeyUp, this); -// getTextWidget().setTabs(DebugUIPlugin.getDefault().getPluginPreferences().getInt(IDebugPreferenceConstants.CONSOLE_TAB_WIDTH)); -// } -// -// /** -// * Returns the SWT style flags used when instantiating this viewer -// */ -// private static int getSWTStyles() { -// int styles= SWT.H_SCROLL | SWT.V_SCROLL; -// return styles; -// } -// -// /** -// * Reveals (makes visible) the end of the current document -// */ -// protected void revealEndOfDocument() { -// if (isAutoScroll()) { -// IDocument doc = getDocument(); -// int lines = doc.getNumberOfLines(); -// try { -// // lines are 0-based -// int lineStartOffset = doc.getLineOffset(lines - 1); -// StyledText widget= getTextWidget(); -// if (lineStartOffset > 0) { -// widget.setCaretOffset(lineStartOffset); -// widget.showSelection(); -// } -// int lineEndOffset = lineStartOffset + doc.getLineLength(lines - 1); -// if (lineEndOffset > 0) { -// widget.setCaretOffset(lineEndOffset); -// } -// } catch (BadLocationException e) { -// } -// } -// } -// -// /** -// * @see ITextViewer#setDocument(IDocument) -// */ -// public void setDocument(IDocument doc) { -// IDocument oldDoc= getDocument(); -// IDocument document= doc; -// if (oldDoc == null && document == null) { -// return; -// } -// if (oldDoc != null) { -// oldDoc.removeDocumentListener(fInternalDocumentListener); -// if (oldDoc.equals(document)) { -// document.addDocumentListener(fInternalDocumentListener); -// return; -// } -// } -// -// super.setDocument(document); -// if (document != null) { -// revealEndOfDocument(); -// document.addDocumentListener(fInternalDocumentListener); -// } -// } -// -// /** -// * @see IPropertyChangeListener#propertyChange(PropertyChangeEvent) -// */ -// public void propertyChange(PropertyChangeEvent event) { -// String propertyName= event.getProperty(); -// if (propertyName.equals(IDebugPreferenceConstants.CONSOLE_SYS_IN_COLOR) || -// propertyName.equals(IDebugPreferenceConstants.CONSOLE_SYS_OUT_COLOR) || -// propertyName.equals(IDebugPreferenceConstants.CONSOLE_SYS_ERR_COLOR)) { -// getTextWidget().redraw(); -// } else if (propertyName.equals(IConsoleConstants.CONSOLE_FONT)) { -// getTextWidget().setFont(JFaceResources.getFont(IConsoleConstants.CONSOLE_FONT)); -// } else if (propertyName.equals(IDebugPreferenceConstants.CONSOLE_TAB_WIDTH)) { -// getTextWidget().setTabs(DebugUIPlugin.getDefault().getPluginPreferences().getInt(IDebugPreferenceConstants.CONSOLE_TAB_WIDTH)); -// } else if (propertyName.equals(IInternalDebugUIConstants.PREF_CONSOLE_SCROLL_LOCK)) { -// setAutoScroll(!DebugUIPlugin.getDefault().getPluginPreferences().getBoolean(IInternalDebugUIConstants.PREF_CONSOLE_SCROLL_LOCK)); -// } -// } -// -// /** -// * Dispose this viewer and resources -// */ -// public void dispose() { -// Control control = getTextWidget(); -// if (control != null) { -// control.removeMouseTrackListener(this); -// control.removePaintListener(this); -// } -// if (fHandCursor != null) { -// fHandCursor.dispose(); -// } -// if (fTextCursor != null) { -// fTextCursor.dispose(); -// } -// DebugUIPlugin.getDefault().getPreferenceStore().removePropertyChangeListener(this); -// JFaceResources.getFontRegistry().removeListener(this); -// } -// -// /** -// * Only allow text to be typed at the end of the document. -// * -// * @see org.eclipse.swt.events.VerifyListener#verifyText(org.eclipse.swt.events.VerifyEvent) -// */ -// protected void handleVerifyEvent(VerifyEvent e) { -// ConsoleDocument doc= (ConsoleDocument)getDocument(); -// if (doc != null) { -// if (doc.isReadOnly()) { -// e.doit = false; -// return; -// } -// IDocumentPartitioner partitioner = doc.getDocumentPartitioner(); -// if (partitioner != null) { -// int length = doc.getLength(); -// ITypedRegion[] partitions = partitioner.computePartitioning(length, 0); -// if (partitions.length == 0) { -// } else { -// ITypedRegion partition = partitions[partitions.length - 1]; -// if (partition.getType().equals(InputPartition.INPUT_PARTITION_TYPE)) { -// // > 1 char in the input buffer -// e.doit = (e.start >= partition.getOffset()) && (e.end <= (partition.getLength() + partition.getOffset())); -// } else { -// // first character in the input buffer -// e.doit = length == e.start; -// } -// } -// } -// } -// } -// -// /** -// * @see org.eclipse.swt.events.MouseTrackListener#mouseEnter(org.eclipse.swt.events.MouseEvent) -// */ -// public void mouseEnter(MouseEvent e) { -// getTextWidget().addMouseMoveListener(this); -// } -// -// /** -// * @see org.eclipse.swt.events.MouseTrackListener#mouseExit(org.eclipse.swt.events.MouseEvent) -// */ -// public void mouseExit(MouseEvent e) { -// getTextWidget().removeMouseMoveListener(this); -// if (fHyperLink != null) { -// linkExited(fHyperLink); -// } -// } -// -// /** -// * @see org.eclipse.swt.events.MouseTrackListener#mouseHover(org.eclipse.swt.events.MouseEvent) -// */ -// public void mouseHover(MouseEvent e) { -// } -// -// /** -// * @see org.eclipse.swt.events.MouseMoveListener#mouseMove(org.eclipse.swt.events.MouseEvent) -// */ -// public void mouseMove(MouseEvent e) { -// int offset = -1; -// try { -// Point p = new Point(e.x, e.y); -// offset = getTextWidget().getOffsetAtLocation(p); -// } catch (IllegalArgumentException ex) { -// // out of the document range -// } -// updateLinks(offset); -// } -// -// public IConsoleHyperlink getHyperlink(int offset) { -// if (offset >= 0 && getDocument() != null) { -// Position[] positions = null; -// try { -// positions = getDocument().getPositions(HyperlinkPosition.HYPER_LINK_CATEGORY); -// } catch (BadPositionCategoryException ex) { -// // no links have been added -// return null; -// } -// for (int i = 0; i < positions.length; i++) { -// Position position = positions[i]; -// if (offset >= position.getOffset() && offset <= (position.getOffset() + position.getLength())) { -// return ((HyperlinkPosition)position).getHyperLink(); -// } -// } -// } -// return null; -// } -// -// protected void linkEntered(IConsoleHyperlink link) { -// Control control = getTextWidget(); -// control.setRedraw(false); -// if (fHyperLink != null) { -// linkExited(fHyperLink); -// } -// fHyperLink = link; -// fHyperLink.linkEntered(); -// control.setCursor(getHandCursor()); -// control.setRedraw(true); -// control.redraw(); -// control.addMouseListener(this); -// } -// -// protected void linkExited(IConsoleHyperlink link) { -// link.linkExited(); -// fHyperLink = null; -// Control control = getTextWidget(); -// control.setCursor(getTextCursor()); -// control.redraw(); -// control.removeMouseListener(this); -// } -// /** -// * @see org.eclipse.swt.events.PaintListener#paintControl(org.eclipse.swt.events.PaintEvent) -// */ -// public void paintControl(PaintEvent e) { -// if (fHyperLink != null) { -// IDocument doc = getDocument(); -// if (doc == null) { -// return; -// } -// ConsoleDocumentPartitioner partitioner = (ConsoleDocumentPartitioner)doc.getDocumentPartitioner(); -// if (partitioner == null) { -// return; -// } -// IRegion linkRegion = partitioner.getRegion(fHyperLink); -// if (linkRegion != null) { -// int start = linkRegion.getOffset(); -// int end = start + linkRegion.getLength(); -// IConsoleColorProvider colorProvider = partitioner.getColorProvider(); -// try { -// ITypedRegion partition = doc.getPartition(start); -// Color fontColor = e.gc.getForeground(); -// if (partition instanceof StreamPartition) { -// StreamPartition streamPartition = (StreamPartition)partition; -// fontColor = colorProvider.getColor(streamPartition.getStreamIdentifier()); -// } -// int startLine = doc.getLineOfOffset(start); -// int endLine = doc.getLineOfOffset(end); -// for (int i = startLine; i <= endLine; i++) { -// IRegion lineRegion = doc.getLineInformation(i); -// int lineStart = lineRegion.getOffset(); -// int lineEnd = lineStart + lineRegion.getLength(); -// Color color = e.gc.getForeground(); -// e.gc.setForeground(fontColor); -// if (lineStart < end) { -// lineStart = Math.max(start, lineStart); -// lineEnd = Math.min(end, lineEnd); -// Point p1 = getTextWidget().getLocationAtOffset(lineStart); -// Point p2 = getTextWidget().getLocationAtOffset(lineEnd); -// FontMetrics metrics = e.gc.getFontMetrics(); -// int height = metrics.getHeight(); -// e.gc.drawLine(p1.x, p1.y + height, p2.x, p2.y + height); -// } -// e.gc.setForeground(color); -// } -// } catch (BadLocationException ex) { -// } -// } -// } -// } -// -// protected Cursor getHandCursor() { -// if (fHandCursor == null) { -// fHandCursor = new Cursor(DebugUIPlugin.getStandardDisplay(), SWT.CURSOR_HAND); -// } -// return fHandCursor; -// } -// -// protected Cursor getTextCursor() { -// if (fTextCursor == null) { -// fTextCursor = new Cursor(DebugUIPlugin.getStandardDisplay(), SWT.CURSOR_IBEAM); -// } -// return fTextCursor; -// } -// -// /** -// * @see org.eclipse.swt.events.MouseListener#mouseDoubleClick(org.eclipse.swt.events.MouseEvent) -// */ -// public void mouseDoubleClick(MouseEvent e) { -// } -// -// /** -// * @see org.eclipse.swt.events.MouseListener#mouseDown(org.eclipse.swt.events.MouseEvent) -// */ -// public void mouseDown(MouseEvent e) { -// } -// -// /** -// * @see org.eclipse.swt.events.MouseListener#mouseUp(org.eclipse.swt.events.MouseEvent) -// */ -// public void mouseUp(MouseEvent e) { -// if (fHyperLink != null) { -// String selection = getTextWidget().getSelectionText(); -// if (selection.length() <= 0) { -// if (e.button == 1) { -// fHyperLink.linkActivated(); -// } -// } -// } -// } -// -// /** -// * @see org.eclipse.swt.custom.LineStyleListener#lineGetStyle(org.eclipse.swt.custom.LineStyleEvent) -// */ -// public void lineGetStyle(LineStyleEvent event) { -// IDocument document = getDocument(); -// if (document != null) { -// ConsoleDocumentPartitioner partitioner = (ConsoleDocumentPartitioner)document.getDocumentPartitioner(); -// if (partitioner != null) { -// IConsoleColorProvider colorProvider = partitioner.getColorProvider(); -// ITypedRegion[] regions = partitioner.computePartitioning(event.lineOffset, event.lineOffset + event.lineText.length()); -// StyleRange[] styles = new StyleRange[regions.length]; -// for (int i = 0; i < regions.length; i++) { -// StreamPartition partition = (StreamPartition)regions[i]; -// Color color = colorProvider.getColor(partition.getStreamIdentifier()); -// styles[i] = new StyleRange(partition.getOffset(), partition.getLength(), color, null); -// } -// event.styles = styles; -// } -// } -// } -// -// /** -// * Sets whether this viewer should auto-scroll as output is appended to the -// * document. -// * -// * @param scroll -// */ -// public void setAutoScroll(boolean scroll) { -// fAutoScroll = scroll; -// } -// -// /** -// * Returns whether this viewer should auto-scroll as output is appended to -// * the document. -// */ -// public boolean isAutoScroll() { -// return fAutoScroll; -// } -// -// /** -// * On KeyUp events, see if we need to enter/exit a link. -// * -// * @see org.eclipse.swt.widgets.Listener#handleEvent(org.eclipse.swt.widgets.Event) -// */ -// public void handleEvent(Event event) { -// int offset = getTextWidget().getCaretOffset(); -// updateLinks(offset); -// } -// -// /** -// * The cursor has just be moved to the given offset, the mouse has -// * hovered over the given offset. Update link rendering. -// * -// * @param offset -// */ -// protected void updateLinks(int offset) { -// if (offset >= 0) { -// IConsoleHyperlink link = getHyperlink(offset); -// if (link != null) { -// if (link.equals(fHyperLink)) { -// return; -// } -// linkEntered(link); -// return; -// } -// } -// if (fHyperLink != null) { -// linkExited(fHyperLink); -// } -// } -// -//} -// |