1 18 package org.apache.beehive.netui.databinding.datagrid.runtime.rendering.pager; 19 20 import org.apache.beehive.netui.util.internal.InternalStringBuilder; 21 22 import org.apache.beehive.netui.databinding.datagrid.api.pager.PagerModel; 23 import org.apache.beehive.netui.databinding.datagrid.api.rendering.IDataGridMessageKeys; 24 import org.apache.beehive.netui.databinding.datagrid.api.rendering.PagerRenderer; 25 26 29 public final class FirstPreviousNextLastPagerRenderer 30 extends PagerRenderer { 31 32 protected String internalRender() { 33 InternalStringBuilder buf = new InternalStringBuilder(); 34 PagerModel pagerModel = getPagerModel(); 35 int currentPage = pagerModel.getPage(); 36 int lastPage = pagerModel.getLastPage(); 37 38 39 buf.append(getDataGridTagModel().formatMessage(IDataGridMessageKeys.PAGER_FMT_BANNER, 40 new Integer []{new Integer (currentPage + 1), 41 new Integer (lastPage + 1)})); 42 43 buf.append(" "); 44 if(currentPage > pagerModel.getFirstPage()) 45 buf.append(buildLiveFirstLink()); 46 else 47 buf.append(buildDeadFirstLink()); 48 49 buf.append(" / "); 50 if(pagerModel.getPreviousPage() >= 0) 51 buf.append(buildLivePreviousLink()); 52 else 53 buf.append(buildDeadPreviousLink()); 54 55 buf.append(" "); 56 if(pagerModel.getNextPage() <= lastPage) 57 buf.append(buildLiveNextPageLink()); 58 else 59 buf.append(buildDeadNextLink()); 60 61 buf.append(" / "); 62 if(currentPage < lastPage) 63 buf.append(buildLiveLastLink()); 64 else 65 buf.append(buildDeadLastLink()); 66 67 return buf.toString(); 68 } 69 } 70 | Popular Tags |