Download
Getting Started
Members
Projects
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
More
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
Toggle navigation
Bugzilla – Attachment 59103 Details for
Bug 174355
[Viewers] IViewerLabelProvider isn't supported by the TreeViewer anymore
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read
this important communication.
[patch]
one more time
clipboard44427.txt (text/plain), 12.41 KB, created by
Thomas Schindl
on 2007-02-15 17:08:19 EST
(
hide
)
Description:
one more time
Filename:
MIME Type:
Creator:
Thomas Schindl
Created:
2007-02-15 17:08:19 EST
Size:
12.41 KB
patch
obsolete
>### Eclipse Workspace Patch 1.0 >#P org.eclipse.jface >Index: src/org/eclipse/jface/viewers/ColumnLabelProvider.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.jface/src/org/eclipse/jface/viewers/ColumnLabelProvider.java,v >retrieving revision 1.1 >diff -u -r1.1 ColumnLabelProvider.java >--- src/org/eclipse/jface/viewers/ColumnLabelProvider.java 25 Sep 2006 13:35:58 -0000 1.1 >+++ src/org/eclipse/jface/viewers/ColumnLabelProvider.java 15 Feb 2007 22:07:03 -0000 >@@ -7,6 +7,7 @@ > * > * Contributors: > * IBM Corporation - initial API and implementation >+ * Tom Schindl <tom.schindl@bestsolution.at> - Fix for bug 174355 > ******************************************************************************/ > > package org.eclipse.jface.viewers; >@@ -32,14 +33,23 @@ > * @see org.eclipse.jface.viewers.CellLabelProvider#update(org.eclipse.jface.viewers.ViewerCell) > */ > public void update(ViewerCell cell) { >- cell.setText(getText(cell.getElement())); >- cell.setImage(getImage(cell.getElement())); >- cell.setBackground(getBackground(cell.getElement())); >- cell.setForeground(getForeground(cell.getElement())); >- cell.setFont(getFont(cell.getElement())); >- >+ update(cell, buildLabel(cell)); > } >- >+ >+ ViewerLabel buildLabel(ViewerCell cell) { >+ Object element = cell.getElement(); >+ ViewerLabel label = new ViewerLabel(cell.getText(),cell.getImage()); >+ >+ // Set up the initial settings from the label provider >+ label.setBackground(getBackground(element)); >+ label.setForeground(getForeground(element)); >+ label.setFont(getFont(element)); >+ label.setText(getText(element)); >+ label.setImage(getImage(element)); >+ >+ return label; >+ } >+ > /* (non-Javadoc) > * @see org.eclipse.jface.viewers.IFontProvider#getFont(java.lang.Object) > */ >Index: src/org/eclipse/jface/viewers/WrappedViewerLabelProvider.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.jface/src/org/eclipse/jface/viewers/WrappedViewerLabelProvider.java,v >retrieving revision 1.1 >diff -u -r1.1 WrappedViewerLabelProvider.java >--- src/org/eclipse/jface/viewers/WrappedViewerLabelProvider.java 25 Sep 2006 13:35:58 -0000 1.1 >+++ src/org/eclipse/jface/viewers/WrappedViewerLabelProvider.java 15 Feb 2007 22:07:04 -0000 >@@ -7,6 +7,7 @@ > * > * Contributors: > * IBM Corporation - initial API and implementation >+ * Tom Schindl <tom.schindl@bestsolution.at> - Fix for bug 174355 > ******************************************************************************/ > > package org.eclipse.jface.viewers; >@@ -33,6 +34,8 @@ > > private IFontProvider fontProvider; > >+ private IViewerLabelProvider viewerLabelProvider; >+ > /** > * Create a new instance of the receiver based on labelProvider. > * >@@ -59,6 +62,9 @@ > if (provider instanceof IFontProvider) > fontProvider = (IFontProvider) provider; > >+ if(provider instanceof IViewerLabelProvider) >+ viewerLabelProvider = (IViewerLabelProvider) provider; >+ > } > > /* >@@ -115,6 +121,13 @@ > return colorProvider.getForeground(element); > } > >+ public void update(ViewerCell cell, ViewerLabel label) { >+ if( viewerLabelProvider != null ) { >+ viewerLabelProvider.updateLabel(label, cell.getElement()); >+ } >+ super.update(cell,label); >+ } >+ > /** > * Get the lable provider > * @return {@link ILabelProvider} >Index: src/org/eclipse/jface/viewers/DecoratingLabelProvider.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.jface/src/org/eclipse/jface/viewers/DecoratingLabelProvider.java,v >retrieving revision 1.27 >diff -u -r1.27 DecoratingLabelProvider.java >--- src/org/eclipse/jface/viewers/DecoratingLabelProvider.java 6 Feb 2007 03:30:46 -0000 1.27 >+++ src/org/eclipse/jface/viewers/DecoratingLabelProvider.java 15 Feb 2007 22:07:04 -0000 >@@ -7,6 +7,7 @@ > * > * Contributors: > * IBM Corporation - initial API and implementation >+ * Tom Schindl <tom.schindl@bestsolution.at> - Fix for bug 174355 > *******************************************************************************/ > package org.eclipse.jface.viewers; > >@@ -471,15 +472,6 @@ > label.setFont(getFont(cell.getElement())); > > updateLabel(label, cell.getElement()); >- >- cell.setBackground(label.getBackground()); >- cell.setForeground(label.getForeground()); >- cell.setFont(label.getFont()); >- >- if (label.hasNewText()) >- cell.setText(label.getText()); >- >- if (label.hasNewImage()) >- cell.setImage(label.getImage()); >+ update(cell, label); > } > } >Index: src/org/eclipse/jface/viewers/TableColumnViewerLabelProvider.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.jface/src/org/eclipse/jface/viewers/TableColumnViewerLabelProvider.java,v >retrieving revision 1.5 >diff -u -r1.5 TableColumnViewerLabelProvider.java >--- src/org/eclipse/jface/viewers/TableColumnViewerLabelProvider.java 10 Nov 2006 17:42:08 -0000 1.5 >+++ src/org/eclipse/jface/viewers/TableColumnViewerLabelProvider.java 15 Feb 2007 22:07:04 -0000 >@@ -63,38 +63,28 @@ > * @see org.eclipse.jface.viewers.WrappedViewerLabelProvider#update(org.eclipse.jface.viewers.ViewerCell) > */ > public void update(ViewerCell cell) { >- >+ ViewerLabel label = buildLabel(cell); >+ > Object element = cell.getElement(); > int index = cell.getColumnIndex(); > >- if (tableLabelProvider == null) { >- cell.setText(getLabelProvider().getText(element)); >- cell.setImage(getLabelProvider().getImage(element)); >- } else { >- cell.setText(tableLabelProvider.getColumnText(element, index)); >- cell.setImage(tableLabelProvider.getColumnImage(element, index)); >+ if (tableLabelProvider != null) { >+ label.setText(tableLabelProvider.getColumnText(element, index)); >+ label.setImage(tableLabelProvider.getColumnImage(element, index)); > } > >- if (tableColorProvider == null) { >- if (getColorProvider() != null) { >- cell.setBackground(getColorProvider().getBackground(element)); >- cell.setForeground(getColorProvider().getForeground(element)); >- } >- >- } else { >- cell.setBackground(tableColorProvider >+ if (tableColorProvider != null) { >+ label.setBackground(tableColorProvider > .getBackground(element, index)); >- cell.setForeground(tableColorProvider >+ label.setForeground(tableColorProvider > .getForeground(element, index)); >- > } > >- if (tableFontProvider == null) { >- if (getFontProvider() != null) >- cell.setFont(getFontProvider().getFont(element)); >- } else >- cell.setFont(tableFontProvider.getFont(element, index)); >+ if (tableFontProvider != null) { >+ label.setFont(tableFontProvider.getFont(element, index)); >+ } > >+ update(cell, label); > } > > >Index: src/org/eclipse/jface/viewers/CellLabelProvider.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.jface/src/org/eclipse/jface/viewers/CellLabelProvider.java,v >retrieving revision 1.5 >diff -u -r1.5 CellLabelProvider.java >--- src/org/eclipse/jface/viewers/CellLabelProvider.java 5 Dec 2006 15:50:43 -0000 1.5 >+++ src/org/eclipse/jface/viewers/CellLabelProvider.java 15 Feb 2007 22:07:03 -0000 >@@ -8,6 +8,7 @@ > * Contributors: > * IBM Corporation - initial API and implementation > * Tom Shindl <tom.schindl@bestsolution.at> - initial API and implementation >+ * - Fix for bug 174355 > ******************************************************************************/ > > package org.eclipse.jface.viewers; >@@ -193,4 +194,20 @@ > */ > public abstract void update(ViewerCell cell); > >-} >+ /** >+ * update the cell using the informations provided by {@link ViewerLabel} >+ * @param cell the cell >+ * @param label the label holding informations >+ */ >+ void update(ViewerCell cell, ViewerLabel label) { >+ cell.setBackground(label.getBackground()); >+ cell.setForeground(label.getForeground()); >+ cell.setFont(label.getFont()); >+ >+ if (label.hasNewText()) >+ cell.setText(label.getText()); >+ >+ if (label.hasNewImage()) >+ cell.setImage(label.getImage()); >+ } >+} >\ No newline at end of file >#P org.eclipse.ui.tests >Index: Eclipse JFace Tests/org/eclipse/jface/tests/viewers/TableViewerTest.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.ui.tests/Eclipse JFace Tests/org/eclipse/jface/tests/viewers/TableViewerTest.java,v >retrieving revision 1.13 >diff -u -r1.13 TableViewerTest.java >--- Eclipse JFace Tests/org/eclipse/jface/tests/viewers/TableViewerTest.java 28 Nov 2006 05:36:06 -0000 1.13 >+++ Eclipse JFace Tests/org/eclipse/jface/tests/viewers/TableViewerTest.java 15 Feb 2007 22:07:07 -0000 >@@ -16,10 +16,12 @@ > import org.eclipse.jface.viewers.ColumnViewer; > import org.eclipse.jface.viewers.ColumnWeightData; > import org.eclipse.jface.viewers.ITableLabelProvider; >+import org.eclipse.jface.viewers.IViewerLabelProvider; > import org.eclipse.jface.viewers.StructuredViewer; > import org.eclipse.jface.viewers.TableLayout; > import org.eclipse.jface.viewers.TableViewer; > import org.eclipse.jface.viewers.ViewerColumn; >+import org.eclipse.jface.viewers.ViewerLabel; > import org.eclipse.swt.SWT; > import org.eclipse.swt.graphics.Image; > import org.eclipse.swt.widgets.Composite; >@@ -34,7 +36,7 @@ > > public String getText(Object element) { > if (fExtended) >- return providedString((String) element); >+ return providedString((TestElement) element); > return element.toString(); > } > >@@ -49,6 +51,14 @@ > } > } > >+ public static class TableTestViewerLabelProvider extends TableTestLabelProvider implements IViewerLabelProvider { >+ >+ public void updateLabel(ViewerLabel label, Object element) { >+ label.setText("ViewerLabelProvider-"+label.getText()); >+ } >+ >+ } >+ > public TableViewerTest(String name) { > super(name); > } >@@ -183,6 +193,11 @@ > > } > >- >+ public void testViewerLabelProvider() { >+ TableViewer tableviewer = (TableViewer) fViewer; >+ tableviewer.setLabelProvider(new TableTestViewerLabelProvider()); >+ assertTrue(getItemText(0).startsWith("ViewerLabelProvider-")); >+ tableviewer.setLabelProvider(new TableTestLabelProvider()); >+ } > >-} >+} >\ No newline at end of file >Index: Eclipse JFace Tests/org/eclipse/jface/tests/viewers/TreeViewerColumnTest.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.ui.tests/Eclipse JFace Tests/org/eclipse/jface/tests/viewers/TreeViewerColumnTest.java,v >retrieving revision 1.4 >diff -u -r1.4 TreeViewerColumnTest.java >--- Eclipse JFace Tests/org/eclipse/jface/tests/viewers/TreeViewerColumnTest.java 28 Nov 2006 05:36:06 -0000 1.4 >+++ Eclipse JFace Tests/org/eclipse/jface/tests/viewers/TreeViewerColumnTest.java 15 Feb 2007 22:07:08 -0000 >@@ -14,9 +14,11 @@ > > import org.eclipse.jface.viewers.ColumnViewer; > import org.eclipse.jface.viewers.ITableLabelProvider; >+import org.eclipse.jface.viewers.IViewerLabelProvider; > import org.eclipse.jface.viewers.StructuredViewer; > import org.eclipse.jface.viewers.TreeViewer; > import org.eclipse.jface.viewers.ViewerColumn; >+import org.eclipse.jface.viewers.ViewerLabel; > import org.eclipse.swt.SWT; > import org.eclipse.swt.graphics.Image; > import org.eclipse.swt.widgets.Composite; >@@ -32,7 +34,7 @@ > > public String getText(Object element) { > if (fExtended) >- return providedString((String) element); >+ return providedString((TestElement) element); > > return element.toString(); > } >@@ -48,6 +50,14 @@ > } > } > >+ public static class TableTreeTestViewerLabelProvider extends TableTreeTestLabelProvider implements IViewerLabelProvider { >+ >+ public void updateLabel(ViewerLabel label, Object element) { >+ label.setText("ViewerLabelProvider-"+label.getText()); >+ } >+ >+ } >+ > public TreeViewerColumnTest(String name) { > super(name); > } >@@ -142,4 +152,11 @@ > // BUG 1FZ5SDC: JFUIF:WINNT - TableViewerColumn should listen for LabelProvider changes > fViewer.refresh(); > } >+ >+ public void testViewerLabelProvider() { >+ TreeViewer tableviewer = (TreeViewer) fViewer; >+ tableviewer.setLabelProvider(new TableTreeTestViewerLabelProvider()); >+ assertTrue(getItemText(0).startsWith("ViewerLabelProvider-")); >+ tableviewer.setLabelProvider(new TableTreeTestLabelProvider()); >+ } > }
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 174355
:
59101
|
59103
|
59158
|
59165
|
59535
|
59551
|
59557
|
59578
|
60281