From 9d8f0a4a521239adc3b647aadd43862832c79f4b Mon Sep 17 00:00:00 2001 From: Mikhail Khodjaiants Date: Thu, 19 Dec 2002 02:13:39 +0000 Subject: [PATCH] Implementing the "Source Lookup" property page. --- debug/org.eclipse.cdt.debug.ui/ChangeLog | 7 ++ .../plugin.properties | 2 + debug/org.eclipse.cdt.debug.ui/plugin.xml | 9 ++ .../ui/sourcelookup/SourceLookupBlock.java | 85 +++++++++++++++++++ .../ui/sourcelookup/SourcePropertyPage.java | 39 +++++++++ 5 files changed, 142 insertions(+) create mode 100644 debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/sourcelookup/SourceLookupBlock.java create mode 100644 debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/sourcelookup/SourcePropertyPage.java diff --git a/debug/org.eclipse.cdt.debug.ui/ChangeLog b/debug/org.eclipse.cdt.debug.ui/ChangeLog index 89a52d5720d..3bc7eb495d9 100644 --- a/debug/org.eclipse.cdt.debug.ui/ChangeLog +++ b/debug/org.eclipse.cdt.debug.ui/ChangeLog @@ -1,3 +1,10 @@ +2002-12-18 Mikhail Khodjaiants + Implementing the "Source Lookup" property page. + * SourceLookupBlock.java: common control block. + * SourcePropertyPage.java: implementation + * plugin.properties: page name + * plugin.xml: contribution to ICDebugTarget properties + 2002-12-18 Mikhail Khodjaiants Do not show the source lookup dialog if file name is not specified. * CUISourceLocator.java diff --git a/debug/org.eclipse.cdt.debug.ui/plugin.properties b/debug/org.eclipse.cdt.debug.ui/plugin.properties index 854ec794cfd..a1f969f3383 100644 --- a/debug/org.eclipse.cdt.debug.ui/plugin.properties +++ b/debug/org.eclipse.cdt.debug.ui/plugin.properties @@ -46,3 +46,5 @@ DecVariableFormatAction.label=Decimal NaturalVariableFormatAction.label=Natural CDebugActionGroup.name=C/C++ Debug + +SourcePropertyPage.name=Source Lookup diff --git a/debug/org.eclipse.cdt.debug.ui/plugin.xml b/debug/org.eclipse.cdt.debug.ui/plugin.xml index 8de03082406..e7bf2045e4a 100644 --- a/debug/org.eclipse.cdt.debug.ui/plugin.xml +++ b/debug/org.eclipse.cdt.debug.ui/plugin.xml @@ -711,5 +711,14 @@ + + + + diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/sourcelookup/SourceLookupBlock.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/sourcelookup/SourceLookupBlock.java new file mode 100644 index 00000000000..c35e41306f2 --- /dev/null +++ b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/sourcelookup/SourceLookupBlock.java @@ -0,0 +1,85 @@ +/* + *(c) Copyright QNX Software Systems Ltd. 2002. + * All Rights Reserved. + * + */ +package org.eclipse.cdt.debug.ui.sourcelookup; + +import org.eclipse.jface.dialogs.Dialog; +import org.eclipse.jface.resource.JFaceResources; +import org.eclipse.swt.SWT; +import org.eclipse.swt.graphics.FontMetrics; +import org.eclipse.swt.graphics.GC; +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; + +/** + * + * Enter type comment. + * + * @since Dec 18, 2002 + */ +public class SourceLookupBlock +{ + private Composite fControl = null; + private Shell fShell = null; + private FontMetrics fFontMetrics = null; + + /** + * Constructor for SourceLookupBlock. + */ + public SourceLookupBlock() + { + super(); + } + + public void createControl( Composite parent ) + { + fShell = parent.getShell(); + fControl = new Composite( parent, SWT.NONE ); + fControl.setLayout( new GridLayout( 2, false ) ); + fControl.setLayoutData( new GridData( GridData.FILL_BOTH ) ); + fControl.setFont( JFaceResources.getDialogFont() ); + createListControl( fControl ); + createButtonBar( fControl ); + } + + public Control getControl() + { + return fControl; + } + + protected void initializeDialogUnits( Control control ) + { + // Compute and store a font metric + GC gc = new GC( control ); + gc.setFont( control.getFont() ); + fFontMetrics = gc.getFontMetrics(); + gc.dispose(); + } + + protected int convertVerticalDLUsToPixels( int dlus ) + { + if ( fFontMetrics == null ) + return 0; + return Dialog.convertVerticalDLUsToPixels( fFontMetrics, dlus ); + } + + protected int convertHorizontalDLUsToPixels( int dlus ) + { + if ( fFontMetrics == null ) + return 0; + return Dialog.convertHorizontalDLUsToPixels( fFontMetrics, dlus ); + } + + protected void createListControl( Composite parent ) + { + } + + protected void createButtonBar( Composite parent ) + { + } +} diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/sourcelookup/SourcePropertyPage.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/sourcelookup/SourcePropertyPage.java new file mode 100644 index 00000000000..c26bfac4184 --- /dev/null +++ b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/ui/sourcelookup/SourcePropertyPage.java @@ -0,0 +1,39 @@ +/* + *(c) Copyright QNX Software Systems Ltd. 2002. + * All Rights Reserved. + * + */ +package org.eclipse.cdt.debug.ui.sourcelookup; + +import org.eclipse.swt.widgets.Composite; +import org.eclipse.swt.widgets.Control; +import org.eclipse.ui.dialogs.PropertyPage; + +/** + * + * Enter type comment. + * + * @since Dec 18, 2002 + */ +public class SourcePropertyPage extends PropertyPage +{ + private SourceLookupBlock fBlock = null; + + /** + * Constructor for SourcePropertyPage. + */ + public SourcePropertyPage() + { + fBlock = new SourceLookupBlock(); + } + + /** + * @see org.eclipse.jface.preference.PreferencePage#createContents(Composite) + */ + protected Control createContents( Composite parent ) + { + fBlock.createControl( parent ); + return fBlock.getControl(); + } + +}