From 63628b58a1b9ec7b3dca5fde489c82a67a7c8a76 Mon Sep 17 00:00:00 2001 From: Mikhail Khodjaiants Date: Tue, 6 May 2003 16:33:03 +0000 Subject: [PATCH] Ruler tooltips in the dissassembly editor. --- debug/org.eclipse.cdt.debug.ui/ChangeLog | 5 ++ .../ui/editors/DisassemblyEditor.java | 2 + .../DisassemblySourceViewerConfiguration.java | 61 +++++++++++++++++++ 3 files changed, 68 insertions(+) create mode 100644 debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/editors/DisassemblySourceViewerConfiguration.java diff --git a/debug/org.eclipse.cdt.debug.ui/ChangeLog b/debug/org.eclipse.cdt.debug.ui/ChangeLog index d2d0eb8584b..e030ba1c747 100644 --- a/debug/org.eclipse.cdt.debug.ui/ChangeLog +++ b/debug/org.eclipse.cdt.debug.ui/ChangeLog @@ -1,3 +1,8 @@ +2003-05-06 Mikhail Khodjaiants + Ruler tooltips in the dissassembly editor. + * DisassemblyEditor.java + * DisassemblySourceViewerConfiguration.java: new + 2003-05-05 Mikhail Khodjaiants New implementation of overlayed images. * OverlayImageDescriptor.java: new diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/editors/DisassemblyEditor.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/editors/DisassemblyEditor.java index a5453ee5b13..8b0fca0c0d6 100644 --- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/editors/DisassemblyEditor.java +++ b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/editors/DisassemblyEditor.java @@ -7,6 +7,7 @@ package org.eclipse.cdt.debug.internal.ui.editors; import org.eclipse.cdt.debug.ui.CDebugUIPlugin; import org.eclipse.cdt.internal.ui.editor.asm.AsmTextEditor; +import org.eclipse.cdt.ui.CUIPlugin; /** * Enter type comment. @@ -24,6 +25,7 @@ public class DisassemblyEditor extends AsmTextEditor { super(); setDocumentProvider( CDebugUIPlugin.getDefault().getDisassemblyDocumentProvider() ); + setSourceViewerConfiguration( new DisassemblySourceViewerConfiguration( CUIPlugin.getDefault().getAsmTextTools(), this ) ); setEditorContextMenuId("#DisassemblyEditorContext"); //$NON-NLS-1$ setRulerContextMenuId("#DisassemblyEditorRulerContext"); //$NON-NLS-1$ } diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/editors/DisassemblySourceViewerConfiguration.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/editors/DisassemblySourceViewerConfiguration.java new file mode 100644 index 00000000000..d1830a2e38b --- /dev/null +++ b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/editors/DisassemblySourceViewerConfiguration.java @@ -0,0 +1,61 @@ +/* + *(c) Copyright QNX Software Systems Ltd. 2002. + * All Rights Reserved. + * + */ + +package org.eclipse.cdt.debug.internal.ui.editors; + +import org.eclipse.cdt.internal.ui.editor.asm.AsmSourceViewerConfiguration; +import org.eclipse.cdt.internal.ui.editor.asm.AsmTextEditor; +import org.eclipse.cdt.internal.ui.editor.asm.AsmTextTools; +import org.eclipse.cdt.internal.ui.text.CAnnotationHover; +import org.eclipse.cdt.internal.ui.text.HTMLTextPresenter; +import org.eclipse.jface.text.DefaultInformationControl; +import org.eclipse.jface.text.IInformationControl; +import org.eclipse.jface.text.IInformationControlCreator; +import org.eclipse.jface.text.source.IAnnotationHover; +import org.eclipse.jface.text.source.ISourceViewer; +import org.eclipse.swt.SWT; +import org.eclipse.swt.widgets.Shell; + +/** + * Enter type comment. + * + * @since May 5, 2003 + */ +public class DisassemblySourceViewerConfiguration extends AsmSourceViewerConfiguration +{ + public DisassemblySourceViewerConfiguration( AsmTextTools tools, AsmTextEditor editor ) + { + super( tools, editor ); + } + + /* (non-Javadoc) + * @see org.eclipse.jface.text.source.SourceViewerConfiguration#getAnnotationHover(org.eclipse.jface.text.source.ISourceViewer) + */ + public IAnnotationHover getAnnotationHover(ISourceViewer sourceViewer) + { + return new CAnnotationHover(); + } + + /* (non-Javadoc) + * @see org.eclipse.jface.text.source.SourceViewerConfiguration#getInformationControlCreator(org.eclipse.jface.text.source.ISourceViewer) + */ + public IInformationControlCreator getInformationControlCreator( ISourceViewer sourceViewer ) + { + return getInformationControlCreator( sourceViewer, true ); + } + + public IInformationControlCreator getInformationControlCreator( ISourceViewer sourceViewer, final boolean cutDown ) + { + return new IInformationControlCreator() + { + public IInformationControl createInformationControl( Shell parent ) + { + int style = cutDown ? SWT.NONE : ( SWT.V_SCROLL | SWT.H_SCROLL ); + return new DefaultInformationControl( parent, style, new HTMLTextPresenter( cutDown ) ); + } + }; + } +}