You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by iv...@apache.org on 2007/05/20 21:46:03 UTC
svn commit: r539923 -
/incubator/wicket/trunk/jdk-1.4/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/NavigatorLabel.java
Author: ivaynberg
Date: Sun May 20 12:46:03 2007
New Revision: 539923
URL: http://svn.apache.org/viewvc?view=rev&rev=539923
Log:
add support for dataview in nav label
Modified:
incubator/wicket/trunk/jdk-1.4/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/NavigatorLabel.java
Modified: incubator/wicket/trunk/jdk-1.4/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/NavigatorLabel.java
URL: http://svn.apache.org/viewvc/incubator/wicket/trunk/jdk-1.4/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/NavigatorLabel.java?view=diff&rev=539923&r1=539922&r2=539923
==============================================================================
--- incubator/wicket/trunk/jdk-1.4/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/NavigatorLabel.java (original)
+++ incubator/wicket/trunk/jdk-1.4/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/NavigatorLabel.java Sun May 20 12:46:03 2007
@@ -18,6 +18,7 @@
import org.apache.wicket.markup.html.basic.Label;
+import org.apache.wicket.markup.repeater.data.DataView;
import org.apache.wicket.model.AbstractReadOnlyModel;
@@ -31,6 +32,25 @@
{
private static final long serialVersionUID = 1L;
+ // TODO Factor this interface out and let dataview/datatable implement it
+ private static interface PageableComponent
+ {
+ /**
+ * @return total number of rows across all pages
+ */
+ int getRowCount();
+
+ /**
+ * @return current page
+ */
+ int getCurrentPage();
+
+ /**
+ * @return rows per page
+ */
+ int getRowsPerPage();
+ }
+
/**
* @param id
* component id
@@ -39,6 +59,60 @@
*/
public NavigatorLabel(final String id, final DataTable table)
{
+ this(id, new PageableComponent()
+ {
+
+ public int getCurrentPage()
+ {
+ return table.getCurrentPage();
+ }
+
+ public int getRowCount()
+ {
+ return table.getRowCount();
+ }
+
+ public int getRowsPerPage()
+ {
+ return table.getRowsPerPage();
+ }
+
+ });
+
+ }
+
+ /**
+ * @param id
+ * component id
+ * @param table
+ * pageable view
+ */
+ public NavigatorLabel(final String id, final DataView table)
+ {
+ this(id, new PageableComponent()
+ {
+
+ public int getCurrentPage()
+ {
+ return table.getCurrentPage();
+ }
+
+ public int getRowCount()
+ {
+ return table.getRowCount();
+ }
+
+ public int getRowsPerPage()
+ {
+ return table.getItemsPerPage();
+ }
+
+ });
+
+ }
+
+ private NavigatorLabel(final String id, final PageableComponent table)
+ {
super(id, new AbstractReadOnlyModel()
{
private static final long serialVersionUID = 1L;
@@ -61,4 +135,5 @@
}
});
}
+
}