⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 usertoolbarbuilder.java

📁 基于java的组号查询模块
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
package com.lily.dap.webapp.extremecomponents.table.view;

/*
 * Copyright 2004 original author or authors.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *    http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

import org.extremecomponents.table.bean.Export;
import org.extremecomponents.table.core.Messages;
import org.extremecomponents.table.core.TableConstants;
import org.extremecomponents.table.core.TableModel;
import org.extremecomponents.table.view.html.BuilderConstants;
import org.extremecomponents.table.view.html.BuilderUtils;
import org.extremecomponents.table.view.html.TableActions;
import org.extremecomponents.table.view.html.toolbar.ButtonItem;
import org.extremecomponents.table.view.html.toolbar.ImageItem;
import org.extremecomponents.table.view.html.toolbar.TextItem;
import org.extremecomponents.table.view.html.toolbar.ToolbarItemUtils;
import org.extremecomponents.util.HtmlBuilder;

/**
 * @author Jeff Johnston
 */
public class UserToolbarBuilder {
    private HtmlBuilder html;
    private TableModel model;
    private Messages messages;

    public UserToolbarBuilder(TableModel model) {
        this(new HtmlBuilder(), model);
    }
    
    public UserToolbarBuilder(HtmlBuilder html, TableModel model) {
        this.html = html;
        this.model = model;
        this.messages = model.getMessages();
    }
    
    public HtmlBuilder getHtmlBuilder() {
        return html;
    }

    protected TableModel getTableModel() {
        return model;
    }

    protected Messages getMessages() {
        return messages;
    }

    public void firstPageItemAsButton() {
        ButtonItem item = new ButtonItem();
        item.setTooltip(messages.getMessage(BuilderConstants.TOOLBAR_FIRST_PAGE_TOOLTIP));
        item.setContents(messages.getMessage(BuilderConstants.TOOLBAR_FIRST_PAGE_TEXT));
        ToolbarItemUtils.buildFirstPage(html, model, item);
    }

    public void firstPageItemAsImage() {
        ImageItem item = new ImageItem();
        item.setTooltip(messages.getMessage(BuilderConstants.TOOLBAR_FIRST_PAGE_TOOLTIP));
        item.setDisabledImage(BuilderUtils.getImage(model, BuilderConstants.TOOLBAR_FIRST_PAGE_DISABLED_IMAGE));
        item.setImage(BuilderUtils.getImage(model, BuilderConstants.TOOLBAR_FIRST_PAGE_IMAGE));
        item.setAlt(messages.getMessage(BuilderConstants.TOOLBAR_FIRST_PAGE_TEXT));
        item.setStyle("border:0");
        ToolbarItemUtils.buildFirstPage(html, model, item);
    }

    public void firstPageItemAsText() {
        TextItem item = new TextItem();
        item.setTooltip(messages.getMessage(BuilderConstants.TOOLBAR_FIRST_PAGE_TOOLTIP));
        item.setText(messages.getMessage(BuilderConstants.TOOLBAR_FIRST_PAGE_TEXT));
        ToolbarItemUtils.buildFirstPage(html, model, item);
    }

    public void prevPageItemAsButton() {
        ButtonItem item = new ButtonItem();
        item.setTooltip(messages.getMessage(BuilderConstants.TOOLBAR_PREV_PAGE_TOOLTIP));
        item.setContents(messages.getMessage(BuilderConstants.TOOLBAR_PREV_PAGE_TEXT));
        ToolbarItemUtils.buildPrevPage(html, model, item);
    }

    public void prevPageItemAsImage() {
        ImageItem item = new ImageItem();
        item.setTooltip(messages.getMessage(BuilderConstants.TOOLBAR_PREV_PAGE_TOOLTIP));
        item.setDisabledImage(BuilderUtils.getImage(model, BuilderConstants.TOOLBAR_PREV_PAGE_DISABLED_IMAGE));
        item.setImage(BuilderUtils.getImage(model, BuilderConstants.TOOLBAR_PREV_PAGE_IMAGE));
        item.setAlt(messages.getMessage(BuilderConstants.TOOLBAR_PREV_PAGE_TEXT));
        item.setStyle("border:0");
        ToolbarItemUtils.buildPrevPage(html, model, item);
    }

    public void prevPageItemAsText() {
        TextItem item = new TextItem();
        item.setTooltip(messages.getMessage(BuilderConstants.TOOLBAR_PREV_PAGE_TOOLTIP));
        item.setText(messages.getMessage(BuilderConstants.TOOLBAR_PREV_PAGE_TEXT));
        ToolbarItemUtils.buildPrevPage(html, model, item);
    }
//------------------------------------------  START
    public void pageLinkItemAsButton() {
    	int nowPage = model.getLimit().getPage();
    	int totalPage = this.getTotalPages(model);
    	
    	for(int i=0;i<totalPage;i++){ 
            if(i>0){
          	  html.append("&nbsp;");
            }
            
        ButtonItem item = new ButtonItem();

        item.setTooltip(messages.getMessage(UserBuilderConstants.TOOLBAR_GO_PAGE_TOOLTIP));
        item.setContents(String.valueOf(i+1));
        String action = new TableActions(model).getPageAction(i+1);
        item.setAction(action);

        if (nowPage == i+1) {
            item.disabled(html);
        } else {
            item.enabled(html, model);
        } 

    	}
    }

    public void pageLinkItemAsText() {
    	String pages = getTableModel().getPreferences().getPreference(UserPreferencesConstants.TABLE_PAGE_DISPLAYED);
    	if(pages==null) pages="8";
    	int displayPages=Integer.parseInt(pages);
    	int midPage=displayPages/2+1;
    	int rightPage=displayPages-midPage;
    	int leftPage=midPage-1;
    	
    	int nowPage = model.getLimit().getPage();
    	
    	int totalPage = this.getTotalPages(model);
    	int startPage = (nowPage-leftPage)>1?(nowPage-leftPage):1;
    	
    	int endPage=totalPage;
    	if(startPage==1){
    		endPage = displayPages>totalPage?totalPage:displayPages;
    	}else{
    		if((nowPage+rightPage)>totalPage){
    		   endPage=totalPage;
    		   startPage=(totalPage-displayPages+1)>1?(totalPage-displayPages+1):1;
    		}else{
    			endPage = nowPage+rightPage;
    		}
    	}
    	for(int i= startPage;i<=endPage;i++){ 
          if(i>0){
        	  html.append("&nbsp;");
          }
        TextItem item = new TextItem();
        item.setStyleClass("pageNum");
        item.setTooltip(messages.getMessage(UserBuilderConstants.TOOLBAR_GO_PAGE_TOOLTIP));
        
        String action = new TableActions(model).getPageAction(i);
        item.setAction(action);
        
        String pageText = String.valueOf(i);
        if (nowPage == i) {
        	item.setText("<font class=\"currentNum\">["+pageText+"]</font>");
        	item.disabled(html);
        } else {
        	item.setText(pageText);	
            item.enabled(html, model);
        }
          
    	}
    }
    /*
     * 
     */
    public void pageLinkItemAsSelect() {
    	int nowPage = model.getLimit().getPage();
    	int totalPage = this.getTotalPages(model);
    	
    	html.select().name(model.getTableHandler().prefixWithTableId() + UserTableConstants.PAGE_SELECTOR);

        StringBuffer onchange = new StringBuffer();
        onchange.append(new UserTableActions(model).getPageLinkAction());
        html.onchange(onchange.toString());

        html.close();

        html.newline();
        html.tabs(4);
        for(int i=0;i<totalPage;i++){ 
          html.option().value(String.valueOf(i+1));
          if (nowPage == i+1) {
            html.selected();
        }
        
        html.close();
        html.append(String.valueOf(i+1));
        html.optionEnd();
        }
        
        html.newline();

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -