You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by pe...@apache.org on 2010/12/01 19:41:13 UTC

svn commit: r1041126 - in /wicket/trunk: wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/ wicket/src/main/java/org/apache/wicket/markup/html/list/ wicket/src/main/java/org/apache/wicket/markup/html/navigatio...

Author: pete
Date: Wed Dec  1 18:41:13 2010
New Revision: 1041126

URL: http://svn.apache.org/viewvc?rev=1041126&view=rev
Log:
WICKET-2816

- renamed IPageableList -> IPageableItems
- removed getItemOffset() as it is redundant and can be calculated from the remaining information

Added:
    wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/navigation/paging/IPageableItems.java
      - copied, changed from r1041074, wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/navigation/paging/IPageableList.java
Removed:
    wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/navigation/paging/IPageableList.java
Modified:
    wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTable.java
    wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/NavigatorLabel.java
    wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/list/PageableListView.java
    wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/navigation/paging/IPageable.java
    wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/repeater/AbstractPageableView.java
    wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/navigation/paging/AbstractPagingNavigationTest.java

Modified: wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTable.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTable.java?rev=1041126&r1=1041125&r2=1041126&view=diff
==============================================================================
--- wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTable.java (original)
+++ wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTable.java Wed Dec  1 18:41:13 2010
@@ -24,7 +24,7 @@ import org.apache.wicket.markup.Componen
 import org.apache.wicket.markup.IMarkupFragment;
 import org.apache.wicket.markup.html.WebMarkupContainer;
 import org.apache.wicket.markup.html.list.AbstractItem;
-import org.apache.wicket.markup.html.navigation.paging.IPageableList;
+import org.apache.wicket.markup.html.navigation.paging.IPageableItems;
 import org.apache.wicket.markup.html.panel.Panel;
 import org.apache.wicket.markup.repeater.IItemReuseStrategy;
 import org.apache.wicket.markup.repeater.Item;
@@ -71,7 +71,7 @@ import org.apache.wicket.util.string.Str
  *            The model object type
  * 
  */
-public class DataTable<T> extends Panel implements IPageableList
+public class DataTable<T> extends Panel implements IPageableItems
 {
 	static abstract class CssAttributeBehavior extends Behavior
 	{
@@ -311,15 +311,7 @@ public class DataTable<T> extends Panel 
 	}
 
 	/**
-	 * @see org.apache.wicket.markup.html.navigation.paging.IPageable#getItemOffset()
-	 */
-	public int getItemOffset()
-	{
-		return datagrid.getItemOffset();
-	}
-
-	/**
-	 * @see org.apache.wicket.markup.html.navigation.paging.IPageable#getItemCount()
+	 * @see org.apache.wicket.markup.html.navigation.paging.IPageableItems#getItemCount()
 	 */
 	public int getItemCount()
 	{

Modified: wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/NavigatorLabel.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/NavigatorLabel.java?rev=1041126&r1=1041125&r2=1041126&view=diff
==============================================================================
--- wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/NavigatorLabel.java (original)
+++ wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/NavigatorLabel.java Wed Dec  1 18:41:13 2010
@@ -19,7 +19,7 @@ package org.apache.wicket.extensions.mar
 
 import org.apache.wicket.IClusterable;
 import org.apache.wicket.markup.html.basic.Label;
-import org.apache.wicket.markup.html.navigation.paging.IPageableList;
+import org.apache.wicket.markup.html.navigation.paging.IPageableItems;
 import org.apache.wicket.model.Model;
 import org.apache.wicket.model.StringResourceModel;
 
@@ -37,7 +37,7 @@ public class NavigatorLabel extends Labe
 {
 	private static final long serialVersionUID = 1L;
 
-	public NavigatorLabel(final String id, final IPageableList pageable)
+	public NavigatorLabel(final String id, final IPageableItems pageable)
 	{
 		super(id);
 		setDefaultModel(new StringResourceModel("NavigatorLabel", this,
@@ -48,14 +48,14 @@ public class NavigatorLabel extends Labe
 	private class LabelModelObject implements IClusterable
 	{
 		private static final long serialVersionUID = 1L;
-		private final IPageableList pageable;
+		private final IPageableItems pageable;
 
 		/**
 		 * Construct.
 		 * 
 		 * @param table
 		 */
-		public LabelModelObject(IPageableList table)
+		public LabelModelObject(IPageableItems table)
 		{
 			pageable = table;
 		}
@@ -77,7 +77,7 @@ public class NavigatorLabel extends Labe
 			{
 				return 0;
 			}
-			return pageable.getItemOffset();
+			return pageable.getCurrentPage() * pageable.getItemsPerPage();
 		}
 
 		/**

Modified: wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/list/PageableListView.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/list/PageableListView.java?rev=1041126&r1=1041125&r2=1041126&view=diff
==============================================================================
--- wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/list/PageableListView.java (original)
+++ wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/list/PageableListView.java Wed Dec  1 18:41:13 2010
@@ -18,7 +18,7 @@ package org.apache.wicket.markup.html.li
 
 import java.util.List;
 
-import org.apache.wicket.markup.html.navigation.paging.IPageable;
+import org.apache.wicket.markup.html.navigation.paging.IPageableItems;
 import org.apache.wicket.model.IModel;
 
 
@@ -31,7 +31,7 @@ import org.apache.wicket.model.IModel;
  * @param <T>
  *            Model object type
  */
-public abstract class PageableListView<T> extends ListView<T> implements IPageable
+public abstract class PageableListView<T> extends ListView<T> implements IPageableItems
 {
 	private static final long serialVersionUID = 1L;
 
@@ -129,13 +129,13 @@ public abstract class PageableListView<T
 		this.itemsPerPage = itemsPerPage;
 	}
 
-	public int getItemOffset()
+	public int getFirstItemOffset()
 	{
 		return getCurrentPage() * getItemsPerPage();
 	}
 
 	/**
-	 * @see org.apache.wicket.markup.html.navigation.paging.IPageable#getItemCount()
+	 * @see org.apache.wicket.markup.html.navigation.paging.IPageableItems#getItemCount()
 	 */
 	public int getItemCount()
 	{
@@ -150,7 +150,7 @@ public abstract class PageableListView<T
 	{
 		if (getDefaultModelObject() != null)
 		{
-			super.setStartIndex(getItemOffset());
+			super.setStartIndex(getFirstItemOffset());
 			super.setViewSize(getItemsPerPage());
 		}
 

Modified: wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/navigation/paging/IPageable.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/navigation/paging/IPageable.java?rev=1041126&r1=1041125&r2=1041126&view=diff
==============================================================================
--- wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/navigation/paging/IPageable.java (original)
+++ wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/navigation/paging/IPageable.java Wed Dec  1 18:41:13 2010
@@ -30,12 +30,12 @@ import org.apache.wicket.IClusterable;
 public interface IPageable extends IClusterable
 {
 	/**
-	 * @return The current page that is or will be rendered.
+	 * @return The current page that is or will be rendered (page number is zero-based)
 	 */
 	int getCurrentPage();
 
 	/**
-	 * Sets the a page that should be rendered.
+	 * Sets the a page that should be rendered (page number is zero-based)
 	 * 
 	 * @param page
 	 *            The page that should be rendered.

Copied: wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/navigation/paging/IPageableItems.java (from r1041074, wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/navigation/paging/IPageableList.java)
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/navigation/paging/IPageableItems.java?p2=wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/navigation/paging/IPageableItems.java&p1=wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/navigation/paging/IPageableList.java&r1=1041074&r2=1041126&rev=1041126&view=diff
==============================================================================
--- wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/navigation/paging/IPageableList.java (original)
+++ wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/navigation/paging/IPageableItems.java Wed Dec  1 18:41:13 2010
@@ -17,10 +17,10 @@
 package org.apache.wicket.markup.html.navigation.paging;
 
 /**
- * An pageable interface that presents items in an page rather and need to provide items count an
- * offset meta data for pagination.
+ * represents a countable amount of items that can be paginated. 
+ * each page except the last one will contain an equal number of items.
  */
-public interface IPageableList extends IPageable
+public interface IPageableItems extends IPageable
 {
 	/**
 	 * Gets the total number of items this object has.
@@ -30,13 +30,6 @@ public interface IPageableList extends I
 	int getItemCount();
 
 	/**
-	 * gets the index of the first visible row
-	 * 
-	 * @return first visible row
-	 */
-	int getItemOffset();
-
-	/**
 	 * maximum number of visible items per page
 	 * 
 	 * @return number of items

Modified: wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/repeater/AbstractPageableView.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/repeater/AbstractPageableView.java?rev=1041126&r1=1041125&r2=1041126&view=diff
==============================================================================
--- wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/repeater/AbstractPageableView.java (original)
+++ wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/repeater/AbstractPageableView.java Wed Dec  1 18:41:13 2010
@@ -20,7 +20,7 @@ import java.util.Collection;
 import java.util.Iterator;
 import java.util.NoSuchElementException;
 
-import org.apache.wicket.markup.html.navigation.paging.IPageable;
+import org.apache.wicket.markup.html.navigation.paging.IPageableItems;
 import org.apache.wicket.model.IModel;
 
 
@@ -43,7 +43,7 @@ import org.apache.wicket.model.IModel;
  * @param <T>
  *            Model object type
  */
-public abstract class AbstractPageableView<T> extends RefreshingView<T> implements IPageable
+public abstract class AbstractPageableView<T> extends RefreshingView<T> implements IPageableItems
 {
 	/** */
 	private static final long serialVersionUID = 1L;
@@ -95,7 +95,7 @@ public abstract class AbstractPageableVi
 	@Override
 	protected Iterator<IModel<T>> getItemModels()
 	{
-		int offset = getItemOffset();
+		int offset = getFirstItemOffset();
 		int size = getViewSize();
 
 		Iterator<IModel<T>> models = getItemModels(offset, size);
@@ -293,9 +293,9 @@ public abstract class AbstractPageableVi
 	}
 
 	/**
-	 * @return the index of the first visible item
+	 * @return the index of the first visible item in the view
 	 */
-	public int getItemOffset()
+	public int getFirstItemOffset()
 	{
 		return getCurrentPage() * getItemsPerPage();
 	}
@@ -306,7 +306,7 @@ public abstract class AbstractPageableVi
 	 */
 	public int getViewSize()
 	{
-		return Math.min(getItemsPerPage(), getRowCount() - getItemOffset());
+		return Math.min(getItemsPerPage(), getRowCount() - getFirstItemOffset());
 	}
 
 	// /////////////////////////////////////////////////////////////////////////

Modified: wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/navigation/paging/AbstractPagingNavigationTest.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/navigation/paging/AbstractPagingNavigationTest.java?rev=1041126&r1=1041125&r2=1041126&view=diff
==============================================================================
--- wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/navigation/paging/AbstractPagingNavigationTest.java (original)
+++ wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/navigation/paging/AbstractPagingNavigationTest.java Wed Dec  1 18:41:13 2010
@@ -36,24 +36,6 @@ public abstract class AbstractPagingNavi
 		/** expected page which is set by the link. */
 		private int expectedPage = 0;
 
-		// untested
-		public int getItemCount()
-		{
-			return 0;
-		}
-
-		// untested
-		public int getItemOffset()
-		{
-			return 0;
-		}
-
-		// untested
-		public int getItemsPerPage()
-		{
-			return 0;
-		}
-
 		/**
 		 * @see IPageable#getCurrentPage()
 		 */