Index:
ChangeLog =================================================================== RCS
file: /home/tools/org.eclipse.cdt.debug.ui/ChangeLog,v retrieving revision
1.93 diff -u -r1.93 ChangeLog --- ChangeLog 7 Feb 2003 18:21:19
-0000 1.93 +++ ChangeLog 7 Feb 2003 22:03:00 -0000 @@ -1,4 +1,12
@@ 2003-02-07 Mikhail Khodjaiants + The viewer type of the
'Shared Libraries' view changed to 'TableTreeViewer'. + *
CDTDebugModelPresentation.java + *
AbstractDebugEventHandler.java + * SharedLibrariesView.java + *
SharedLibrariesViewContentProvider.java + *
SharedLibrariesViewEventHandler.java + +2003-02-07 Mikhail
Khodjaiants The 'Resume Without Signal' action added to the 'Run'
menu of the workbench window. *
SignalZeroWorkbenchActionDelegate.java: new *
plugin.xml Index:
src/org/eclipse/cdt/debug/internal/ui/CDTDebugModelPresentation.java =================================================================== RCS
file:
/home/tools/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/CDTDebugModelPresentation.java,v retrieving
revision 1.40 diff -u -r1.40 CDTDebugModelPresentation.java ---
src/org/eclipse/cdt/debug/internal/ui/CDTDebugModelPresentation.java 3 Feb
2003 23:08:44 -0000 1.40 +++
src/org/eclipse/cdt/debug/internal/ui/CDTDebugModelPresentation.java 7 Feb
2003 22:03:01 -0000 @@ -505,12 +505,15 @@ IPath path =
new Path( library.getFileName() ); if ( !path.isEmpty()
) label += ( qualified ? path.toOSString() :
path.lastSegment() ); +/* String startAddress = (
library.getStartAddress() > 0 ) ?
CDebugUtils.toHexAddressString(
library.getStartAddress() ) : "Not available"; String
endAddress = ( library.getEndAddress() > 0 ) ?
CDebugUtils.toHexAddressString(
library.getEndAddress() ) : "Not available"; return label +
MessageFormat.format( " (Start address: ''{0}'' End address: ''{1}'')",
new String[] { startAddress, endAddress } ); +*/ + return
label; } /** Index:
src/org/eclipse/cdt/debug/internal/ui/views/AbstractDebugEventHandler.java =================================================================== RCS
file:
/home/tools/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/AbstractDebugEventHandler.java,v retrieving
revision 1.3 diff -u -r1.3 AbstractDebugEventHandler.java ---
src/org/eclipse/cdt/debug/internal/ui/views/AbstractDebugEventHandler.java 31
Jan 2003 22:38:15 -0000 1.3 +++
src/org/eclipse/cdt/debug/internal/ui/views/AbstractDebugEventHandler.java 7
Feb 2003 22:03:01 -0000 @@ -13,6 +13,7 @@ import
org.eclipse.jface.viewers.IBasicPropertyConstants; import
org.eclipse.jface.viewers.ITreeContentProvider; import
org.eclipse.jface.viewers.StructuredSelection; +import
org.eclipse.jface.viewers.TableTreeViewer; import
org.eclipse.jface.viewers.TableViewer; import
org.eclipse.jface.viewers.TreeViewer; import
org.eclipse.jface.viewers.Viewer; @@ -209,7 +210,7 @@ *
Returns this event handler's viewer as a table * viewer or
<code>null</code> if none. * - * @return
this event handler's viewer as a tree + * @return this event handler's
viewer as a table * viewer or <code>null</code> if
none */ protected TableViewer
getTableViewer() @@ -217,6 +218,22 @@ if ( getViewer()
instanceof TableViewer
) { return
(TableViewer)getViewer(); + } + return
null; + } + + /** + * Returns this event handler's
viewer as a table tree + * viewer or
<code>null</code> if none. + * + * @return this
event handler's viewer as a table tree + * viewer or
<code>null</code> if none + */ + protected
TableTreeViewer getTableTreeViewer() + { + if (
getViewer() instanceof TableTreeViewer
) + { + return
(TableTreeViewer)getViewer(); } return
null; } Index:
src/org/eclipse/cdt/debug/internal/ui/views/sharedlibs/SharedLibrariesView.java =================================================================== RCS
file:
/home/tools/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/sharedlibs/SharedLibrariesView.java,v retrieving
revision 1.4 diff -u -r1.4 SharedLibrariesView.java ---
src/org/eclipse/cdt/debug/internal/ui/views/sharedlibs/SharedLibrariesView.java 21
Jan 2003 22:48:37 -0000 1.4 +++
src/org/eclipse/cdt/debug/internal/ui/views/sharedlibs/SharedLibrariesView.java 7
Feb 2003 22:03:01 -0000 @@ -6,14 +6,16 @@ package
org.eclipse.cdt.debug.internal.ui.views.sharedlibs; import
org.eclipse.cdt.debug.core.ICSharedLibraryManager; +import
org.eclipse.cdt.debug.core.model.ICSharedLibrary; +import
org.eclipse.cdt.debug.internal.core.CDebugUtils; +import
org.eclipse.cdt.debug.internal.ui.CDTDebugModelPresentation; import
org.eclipse.cdt.debug.internal.ui.ICDebugHelpContextIds; +import
org.eclipse.cdt.debug.internal.ui.PixelConverter; import
org.eclipse.cdt.debug.internal.ui.views.AbstractDebugEventHandler; import
org.eclipse.cdt.debug.internal.ui.views.AbstractDebugEventHandlerView; import
org.eclipse.cdt.debug.internal.ui.views.IDebugExceptionHandler; import
org.eclipse.debug.core.DebugException; import
org.eclipse.debug.core.model.IDebugElement; -import
org.eclipse.debug.ui.DebugUITools; -import
org.eclipse.debug.ui.IDebugModelPresentation; import
org.eclipse.debug.ui.IDebugUIConstants; import
org.eclipse.jface.action.IMenuManager; import
org.eclipse.jface.action.IToolBarManager; @@ -22,10 +24,14 @@ import
org.eclipse.jface.util.PropertyChangeEvent; import
org.eclipse.jface.viewers.ISelection; import
org.eclipse.jface.viewers.IStructuredSelection; -import
org.eclipse.jface.viewers.TreeViewer; +import
org.eclipse.jface.viewers.ITableLabelProvider; +import
org.eclipse.jface.viewers.TableTreeViewer; import
org.eclipse.jface.viewers.Viewer; import
org.eclipse.swt.SWT; +import org.eclipse.swt.graphics.Image; import
org.eclipse.swt.widgets.Composite; +import
org.eclipse.swt.widgets.Table; +import
org.eclipse.swt.widgets.TableColumn; import
org.eclipse.ui.ISelectionListener; import
org.eclipse.ui.IWorkbenchActionConstants; import
org.eclipse.ui.IWorkbenchPart; @@ -40,19 +46,79
@@
IPropertyChangeListener,
IDebugExceptionHandler { - /** - *
The model presentation used as the label provider for the tree
viewer. - */ - private IDebugModelPresentation
fModelPresentation; + public class SharedLibrariesLabelProvider extends
CDTDebugModelPresentation implements
ITableLabelProvider + { + /*
(non-Javadoc) + * @see
org.eclipse.jface.viewers.ITableLabelProvider#getColumnImage(java.lang.Object,
int) + */ + public Image getColumnImage( Object
element, int columnIndex ) + { + if ( element
instanceof ICSharedLibrary && columnIndex == 1
) + { + return getImage( element
); + } + return
null; + } + + /* (non-Javadoc) + *
@see
org.eclipse.jface.viewers.ITableLabelProvider#getColumnText(java.lang.Object,
int) + */ + public String getColumnText( Object
element, int columnIndex ) + { + if ( element
instanceof ICSharedLibrary
) + { + ICSharedLibrary library =
(ICSharedLibrary)element; + switch( columnIndex
) + { + case
0: + return
""; + case
1: + return getText( element
); + case
2: + return ( library.getStartAddress()
> 0 ) ?
+ CDebugUtils.toHexAddressString(
library.getStartAddress() ) : ""; + case
3: + return ( library.getEndAddress() >
0 ) ?
+ CDebugUtils.toHexAddressString(
library.getEndAddress() ) :
""; + } + } + return
null; + } + } /*
(non-Javadoc) * @see
org.eclipse.debug.ui.AbstractDebugView#createViewer(Composite)
*/ protected Viewer createViewer( Composite parent
) { - TreeViewer viewer = new TreeViewer( parent,
SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL ); + TableTreeViewer
viewer = new TableTreeViewer( parent, SWT.FULL_SELECTION | SWT.MULTI |
SWT.H_SCROLL | SWT.V_SCROLL ); + Table table =
viewer.getTableTree().getTable(); + table.setLinesVisible( true
); + table.setHeaderVisible( true
); + + // Create the table
columns + new TableColumn( table, SWT.NULL ); + new
TableColumn( table, SWT.NULL ); + new TableColumn( table, SWT.NULL
); + new TableColumn( table, SWT.NULL
); + TableColumn[] columns =
table.getColumns(); + columns[1].setResizable( true
); + columns[2].setResizable( true
); + columns[3].setResizable( true
); + + columns[0].setText( ""
); + columns[1].setText( "Name"
); + columns[2].setText( "Start Address"
); + columns[3].setText( "End Address"
); + + PixelConverter pc = new PixelConverter( parent
); + columns[0].setWidth( pc.convertWidthInCharsToPixels( 3 )
); + columns[1].setWidth( pc.convertWidthInCharsToPixels( 50 )
); + columns[2].setWidth( pc.convertWidthInCharsToPixels( 20 )
); + columns[3].setWidth( pc.convertWidthInCharsToPixels( 20 )
); + viewer.setContentProvider( new
SharedLibrariesViewContentProvider() ); - viewer.setLabelProvider(
getModelPresentation() ); + viewer.setLabelProvider( new
SharedLibrariesLabelProvider() ); // listen to
selection in debug
view getSite().getPage().addSelectionListener(
IDebugUIConstants.ID_DEBUG_VIEW, this ); @@ -168,13 +234,4
@@ { return new
SharedLibrariesViewEventHandler( this
); } - - protected IDebugModelPresentation
getModelPresentation() - { - if ( fModelPresentation ==
null ) - { - fModelPresentation =
DebugUITools.newDebugModelPresentation(); - } - return
fModelPresentation; - } } Index:
src/org/eclipse/cdt/debug/internal/ui/views/sharedlibs/SharedLibrariesViewContentProvider.java =================================================================== RCS
file:
/home/tools/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/sharedlibs/SharedLibrariesViewContentProvider.java,v retrieving
revision 1.2 diff -u -r1.2 SharedLibrariesViewContentProvider.java ---
src/org/eclipse/cdt/debug/internal/ui/views/sharedlibs/SharedLibrariesViewContentProvider.java 21
Jan 2003 22:48:37 -0000 1.2 +++
src/org/eclipse/cdt/debug/internal/ui/views/sharedlibs/SharedLibrariesViewContentProvider.java 7
Feb 2003 22:03:01 -0000 @@ -88,7 +88,7 @@
*/ public boolean hasChildren( Object parent
) { - if ( parent != null && parent
instanceof ICSharedLibraryManager ) + if ( parent instanceof
ICSharedLibraryManager
) { return (
((ICSharedLibraryManager)parent).getSharedLibraries().length > 0
); } Index:
src/org/eclipse/cdt/debug/internal/ui/views/sharedlibs/SharedLibrariesViewEventHandler.java =================================================================== RCS
file:
/home/tools/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/sharedlibs/SharedLibrariesViewEventHandler.java,v retrieving
revision 1.4 diff -u -r1.4 SharedLibrariesViewEventHandler.java ---
src/org/eclipse/cdt/debug/internal/ui/views/sharedlibs/SharedLibrariesViewEventHandler.java 21
Jan 2003 22:48:37 -0000 1.4 +++
src/org/eclipse/cdt/debug/internal/ui/views/sharedlibs/SharedLibrariesViewEventHandler.java 7
Feb 2003 22:03:01 -0000 @@ -50,4 +50,28
@@ } } } + + /*
(non-Javadoc) + * @see
org.eclipse.cdt.debug.internal.ui.views.AbstractDebugEventHandler#refresh() +
*/ + public void refresh() + { + if (
isAvailable()
) + { + getView().showViewer(); + getTableTreeViewer().refresh(); + } + } + + /*
(non-Javadoc) + * @see
org.eclipse.cdt.debug.internal.ui.views.AbstractDebugEventHandler#refresh(java.lang.Object) +
*/ + protected void refresh( Object element
) + { + if ( isAvailable()
) + { + getView().showViewer(); + getTableTreeViewer().refresh(
element
); + } + } }
|