You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pivot.apache.org by no...@apache.org on 2009/11/17 13:47:36 UTC
svn commit: r881255 -
/incubator/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/terra/TerraListViewSkin.java
Author: noelgrandin
Date: Tue Nov 17 12:47:36 2009
New Revision: 881255
URL: http://svn.apache.org/viewvc?rev=881255&view=rev
Log:
fix bug in getPreferredXXX methods - cannot rely on cached layout values because layout() may not have run yet
Modified:
incubator/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/terra/TerraListViewSkin.java
Modified: incubator/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/terra/TerraListViewSkin.java
URL: http://svn.apache.org/viewvc/incubator/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/terra/TerraListViewSkin.java?rev=881255&r1=881254&r2=881255&view=diff
==============================================================================
--- incubator/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/terra/TerraListViewSkin.java (original)
+++ incubator/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/terra/TerraListViewSkin.java Tue Nov 17 12:47:36 2009
@@ -150,6 +150,13 @@
preferredHeight += itemRenderer.getPreferredHeight(clientWidth);
}
} else {
+ itemRenderer.render(null, -1, listView, false, false, false, false);
+
+ int fixedItemHeight = itemRenderer.getPreferredHeight(-1);
+ if (listView.getCheckmarksEnabled()) {
+ fixedItemHeight = Math.max(CHECKBOX.getHeight() + (checkboxPadding.top
+ + checkboxPadding.bottom), fixedItemHeight);
+ }
preferredHeight = listData.getLength() * fixedItemHeight;
}
@@ -182,6 +189,12 @@
baseline = itemRenderer.getBaseline(clientWidth, itemHeight);
} else {
itemRenderer.render(null, -1, listView, false, false, false, false);
+
+ int fixedItemHeight = itemRenderer.getPreferredHeight(-1);
+ if (listView.getCheckmarksEnabled()) {
+ fixedItemHeight = Math.max(CHECKBOX.getHeight() + (checkboxPadding.top
+ + checkboxPadding.bottom), fixedItemHeight);
+ }
baseline = itemRenderer.getBaseline(clientWidth, fixedItemHeight);
}