Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSteve Northover2007-08-27 21:04:18 +0000
committerSteve Northover2007-08-27 21:04:18 +0000
commit365f0a584c4c9c340365252a7c9cb7bc923766b2 (patch)
treee978e2318b09309f2fecac8f1828b4e8e2500c20
parent228a67173139215711e7adadfebf101c1fe52986 (diff)
downloadeclipse.platform.swt-365f0a584c4c9c340365252a7c9cb7bc923766b2.tar.gz
eclipse.platform.swt-365f0a584c4c9c340365252a7c9cb7bc923766b2.tar.xz
eclipse.platform.swt-365f0a584c4c9c340365252a7c9cb7bc923766b2.zip
if the item is already cached, don't look it up
-rwxr-xr-xbundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/widgets/Tree.java7
1 files changed, 5 insertions, 2 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/widgets/Tree.java b/bundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/widgets/Tree.java
index 0428943deb..31208e22d2 100755
--- a/bundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/widgets/Tree.java
+++ b/bundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/widgets/Tree.java
@@ -1620,8 +1620,11 @@ void checkBuffered () {
boolean checkData (TreeItem item, boolean redraw) {
if ((style & SWT.VIRTUAL) == 0) return true;
- TreeItem parentItem = item.getParentItem ();
- return checkData (item, parentItem == null ? indexOf (item) : parentItem.indexOf (item), redraw);
+ if (!item.cached) {
+ TreeItem parentItem = item.getParentItem ();
+ return checkData (item, parentItem == null ? indexOf (item) : parentItem.indexOf (item), redraw);
+ }
+ return true;
}
boolean checkData (TreeItem item, int index, boolean redraw) {

Back to the top