Example usage for com.google.gwt.view.client HasRows setVisibleRange

List of usage examples for com.google.gwt.view.client HasRows setVisibleRange

Introduction

In this page you can find the example usage for com.google.gwt.view.client HasRows setVisibleRange.

Prototype


void setVisibleRange(int start, int length);

Source Link

Document

Set the visible range or rows.

Usage

From source file:cc.alcina.framework.gwt.client.cell.ShowMorePager.java

License:Apache License

public void attachTo(HasRows display, ScrollPanel scrollable) {
    setDisplay(display);/* ww  w.  jav  a  2  s . c o m*/
    // Handle scroll events.
    scrollable.addScrollHandler(new ScrollHandler() {
        @Override
        public void onScroll(ScrollEvent event) {
            // If scrolling up, ignore the event.
            int oldScrollPos = lastScrollPos;
            lastScrollPos = scrollable.getVerticalScrollPosition();
            if (oldScrollPos >= lastScrollPos) {
                return;
            }
            HasRows display = getDisplay();
            if (display == null) {
                return;
            }
            int scrollPanelContentsHeight = scrollable.getWidget().getOffsetHeight();
            int scrollPanelHeight = scrollable.getOffsetHeight();
            int maxScrollTop = scrollPanelContentsHeight - scrollPanelHeight - 20;
            // hack but not sure how to deal with said autoscrolls
            if (Math.abs(lastScrollPos - oldScrollPos) > 500) {
                // handle autoscroll to end
                return;
            }
            if (lastScrollPos >= maxScrollTop) {
                // We are near the end, so increase the page size.
                int newPageSize = Math.min(display.getVisibleRange().getLength() + incrementSize,
                        display.getRowCount());
                if (newPageSize != 0) {
                    Range newRange = new Range(0, newPageSize);
                    if (display.getVisibleRange().getStart() == newRange.getStart()
                            && display.getVisibleRange().getLength() >= newRange.getLength()) {
                        // don't show a smaller visible range (which would
                        // force a search)
                        return;
                    }
                    display.setVisibleRange(0, newPageSize);
                }
            }
        }
    });
}

From source file:cc.kune.gspace.client.i18n.ShowMorePagerPanel.java

License:Apache License

/**
 * Construct a new {@link ShowMorePagerPanel}.
 *///from ww w.j a  v  a  2  s . c  o  m
public ShowMorePagerPanel() {
    initWidget(scrollable);

    // Do not let the scrollable take tab focus.
    scrollable.getElement().setTabIndex(-1);

    // Handle scroll events.
    scrollable.addScrollHandler(new ScrollHandler() {
        @Override
        public void onScroll(final ScrollEvent event) {
            // If scrolling up, ignore the event.
            final int oldScrollPos = lastScrollPos;
            lastScrollPos = scrollable.getScrollPosition();
            if (oldScrollPos >= lastScrollPos) {
                return;
            }

            final HasRows display = getDisplay();
            if (display == null) {
                return;
            }
            final int maxScrollTop = scrollable.getWidget().getOffsetHeight() - scrollable.getOffsetHeight();
            if (lastScrollPos >= maxScrollTop) {
                // We are near the end, so increase the page size.
                final int newPageSize = Math.min(display.getVisibleRange().getLength() + incrementSize,
                        display.getRowCount());
                display.setVisibleRange(0, newPageSize);
            }
        }
    });
}

From source file:cimav.visorglass.client.widgets.components.ScrollingPager.java

License:Apache License

public ScrollingPager() {
    initWidget(scrollable);/*from   w w  w  . j a  va  2 s  .co  m*/
    scrollable.setPixelSize(250, 350);
    scrollable.getElement().getStyle().setBorderWidth(1, Style.Unit.PX);
    scrollable.getElement().getStyle().setBorderColor("red");
    scrollable.getElement().setTabIndex(-1);

    // Handle scroll events.
    scrollable.addScrollHandler(new ScrollHandler() {
        @Override
        public void onScroll(ScrollEvent p_event) {
            // If scrolling up, ignore the event.
            int oldScrollPos = lastScrollPos;
            lastScrollPos = scrollable.getVerticalScrollPosition();
            if (oldScrollPos >= lastScrollPos) {
                return;
            }
            HasRows display = getDisplay();
            if (display == null) {
                return;
            }
            int maxScrollTop = scrollable.getWidget().getOffsetHeight() - scrollable.getOffsetHeight();
            if (lastScrollPos >= maxScrollTop) {
                // We are near the end, so increase the page size.
                int newPageSize = Math.min(display.getVisibleRange().getLength() + incrementSize,
                        display.getRowCount());
                display.setVisibleRange(0, newPageSize);
            }
        }
    });
}

From source file:com.arcbees.gquery.tooltip.client.contactcell.ShowMorePagerPanel.java

License:Apache License

/**
 * Construct a new {@link ShowMorePagerPanel}.
 *///from  w  w w. j a v  a 2s  .c o m
public ShowMorePagerPanel() {
    init();

    // Handle scroll events.
    scrollable.addDomHandler(new ScrollHandler() {
        public void onScroll(ScrollEvent event) {
            // If scrolling up, ignore the event.
            int oldScrollPos = lastScrollPos;
            lastScrollPos = scrollable.getElement().getScrollTop();
            if (oldScrollPos >= lastScrollPos) {
                return;
            }

            HasRows display = getDisplay();
            if (display == null) {
                return;
            }
            int maxScrollTop = scrollable.getWidget().getOffsetHeight() - scrollable.getOffsetHeight();
            if (lastScrollPos >= maxScrollTop) {
                // We are near the end, so increase the page size.
                int newPageSize = Math.min(display.getVisibleRange().getLength() + incrementSize,
                        display.getRowCount());
                //all children will be replaced, ensure to destroy existing tooltip in order to avoid ghost
                // tooltips
                GQuery.$(".tooltipable", (Widget) display).as(Tooltip.Tooltip).destroy();
                display.setVisibleRange(0, newPageSize);
            }
        }
    }, ScrollEvent.getType());
}

From source file:com.chinarewards.gwt.license.client.widget.DefaultPager.java

/**
 * Get the text to display in the pager that reflects the state of the
 * pager.//www  .  ja v a2  s .  c o  m
 * 
 * @return the text
 */
@Override
protected String createText() {
    // Default text is 1 based.
    final NumberFormat formatter = NumberFormat.getFormat("#,###");
    final HasRows display = getDisplay();
    Range range = display.getVisibleRange();
    int pageStart = range.getStart() + 1;
    final int pageSize = range.getLength();
    int dataSize = display.getRowCount();
    int endIndex = Math.min(dataSize, pageStart + pageSize - 1);
    endIndex = Math.max(pageStart, endIndex);
    boolean exact = display.isRowCountExact();

    // create listbox
    int currentPage = 0;
    int totalPage = 0;
    final ListBox pages = new ListBox();
    if (dataSize != 0) {
        currentPage = (pageStart - 1) / pageSize + 1;
        totalPage = (dataSize - 1) / pageSize + 1;

        for (int i = 1; i <= totalPage; i++) {
            pages.addItem(i + "", i + "");
        }
        pages.setSelectedIndex(currentPage - 1);
        pages.addChangeHandler(new ChangeHandler() {
            @Override
            public void onChange(ChangeEvent event) {
                String text = pages.getValue(pages.getSelectedIndex());
                int pageNum = (int) formatter.parse(text);
                int index = (pageNum - 1) * pageSize;
                display.setVisibleRange(index, pageSize);
            }
        });
    }

    // create label : total pages
    //getAdditionPanel().clear();
    //getAdditionPanel().add(new Label(" " + totalPage + " ,"));
    //getAdditionPanel().add(pages);
    //getAdditionPanel().add(new Label(""));

    // return formatter.format(pageStart) + "-" + formatter.format(endIndex)
    // + (exact ? " of " : " of over ") + formatter.format(dataSize);
    return "? " + currentPage + " ," + "" + totalPage + "," + dataSize + "?";
}

From source file:com.chinarewards.gwt.license.client.widget.EltNewPager.java

/**
 * Get the text to display in the pager that reflects the state of the
 * pager.//from  ww w  . j  a  v  a  2 s .  c om
 * 
 * @return the text
 */
protected String createText() {
    // Default text is 1 based.
    final NumberFormat formatter = NumberFormat.getFormat("#,###");
    final HasRows display = getDisplay();
    Range range = display.getVisibleRange();
    int pageStart = range.getStart() + 1;
    final int pageSize = range.getLength();
    int dataSize = display.getRowCount();
    int endIndex = Math.min(dataSize, pageStart + pageSize - 1);
    endIndex = Math.max(pageStart, endIndex);
    // boolean exact = display.isRowCountExact();

    // create listbox
    int currentPage = 0;
    int totalPage = 0;
    final ListBox pages = new ListBox();
    if (dataSize != 0) {
        currentPage = (pageStart - 1) / pageSize + 1;
        totalPage = (dataSize - 1) / pageSize + 1;

        for (int i = 1; i <= totalPage; i++) {
            pages.addItem(i + "", i + "");
        }
        pages.setSelectedIndex(currentPage - 1);
        pages.addChangeHandler(new ChangeHandler() {
            @Override
            public void onChange(ChangeEvent event) {
                String text = pages.getValue(pages.getSelectedIndex());
                int pageNum = (int) formatter.parse(text);
                int index = (pageNum - 1) * pageSize;
                display.setVisibleRange(index, pageSize);
            }
        });
    }

    setButtonStyle(currentPage, totalPage);
    return "";
    // return "? " + currentPage + " ,"+""+totalPage+","+dataSize+"?";
}

From source file:com.freedomotic.clients.client.widgets.ShowMorePagerPanel.java

License:Apache License

/**
 * Construct a new {@link ShowMorePagerPanel}.
 *//*ww w  .ja  v  a 2 s  .c om*/
public ShowMorePagerPanel() {
    initWidget(scrollable);

    // Do not let the scrollable take tab focus.
    scrollable.getElement().setTabIndex(-1);

    // Handle scroll events.
    scrollable.addScrollHandler(new ScrollHandler() {
        public void onScroll(ScrollEvent event) {
            // If scrolling up, ignore the event.
            int oldScrollPos = lastScrollPos;
            lastScrollPos = scrollable.getVerticalScrollPosition();
            if (oldScrollPos >= lastScrollPos) {
                return;
            }

            HasRows display = getDisplay();
            if (display == null) {
                return;
            }
            int maxScrollTop = scrollable.getWidget().getOffsetHeight() - scrollable.getOffsetHeight();
            if (lastScrollPos >= maxScrollTop) {
                // We are near the end, so increase the page size.
                int newPageSize = Math.min(display.getVisibleRange().getLength() + incrementSize,
                        display.getRowCount());
                display.setVisibleRange(0, newPageSize);
            }
        }
    });
}

From source file:com.gwtplatform.carstore.client.application.ui.ShowMorePagerPanel.java

License:Apache License

public ShowMorePagerPanel(int pageSize) {
    incrementSize = pageSize;/*www.j  a  v a 2 s.  c o m*/
    initWidget(scrollable);

    // Do not let the scrollable take tab focus.
    scrollable.getElement().setTabIndex(-1);

    // Handle scroll events.
    scrollable.addScrollHandler(new ScrollHandler() {
        @Override
        public void onScroll(ScrollEvent event) {
            // If scrolling up, ignore the event.
            int oldScrollPos = lastScrollPos;
            lastScrollPos = scrollable.getVerticalScrollPosition();
            if (oldScrollPos >= lastScrollPos) {
                return;
            }

            HasRows display = getDisplay();
            if (display == null) {
                return;
            }

            int maxScrollTop = scrollable.getWidget().getOffsetHeight() - scrollable.getOffsetHeight();
            if (lastScrollPos >= maxScrollTop - 16) {
                //We are near the end, so increase the page size.
                int newPageSize = Math.min(display.getVisibleRange().getLength() + incrementSize,
                        display.getRowCount());
                display.setVisibleRange(0, newPageSize);
            }
        }
    });
}

From source file:com.novartis.pcs.ontology.webapp.client.view.ApproveRejectComposite.java

License:Apache License

protected void addWidgets() {
    VerticalPanel vertPanel = new VerticalPanel();
    HorizontalPanel filterPanel = new HorizontalPanel();
    Label filterLabel = new Label("Keyword Filter:");

    Button closeButton = new Button("Close");
    SimplePager.Resources pagerResources = GWT.create(SimplePager.Resources.class);
    SimplePager pager = new SimplePager(TextLocation.CENTER, pagerResources, false, 0, true) {
        @Override/*from   w w w .ja v  a2s  .com*/
        public void setPageStart(int index) {
            HasRows display = getDisplay();
            if (display != null) {
                Range range = display.getVisibleRange();
                int pageSize = range.getLength();
                if (isRangeLimited() && display.isRowCountExact()) {
                    index = Math.min(index, display.getRowCount() - 1);
                }
                index = Math.max(0, index);
                if (index != range.getStart()) {
                    display.setVisibleRange(index, pageSize);
                }
            }
        }
    };

    closeButton.addClickHandler(new ClickHandler() {
        public void onClick(ClickEvent event) {
            Widget parent = ApproveRejectComposite.this.getParent();
            while (parent != null) {
                if (parent instanceof PopupPanel) {
                    PopupPanel popup = (PopupPanel) parent;
                    popup.hide();
                    break;
                }
                parent = parent.getParent();
            }
        }
    });

    filterLabel.addStyleName("dialog-label");

    filterPanel.addStyleName("dialog-hpanel");
    filterPanel.addStyleName("spaced-vert");
    filterPanel.add(filterLabel);
    filterPanel.add(filterTextBox);
    filterPanel.setVerticalAlignment(HasVerticalAlignment.ALIGN_MIDDLE);

    pager.setDisplay(table);
    pager.addStyleName("centered-hortz");
    /*
    if(curator != null && curator.isAuthorised(entity)) {
       Label tip = new Label("Use Shift key to select/unselect consecutive rows");
       tip.addStyleName("dialog-message");
       tip.addStyleName("info-icon-left");
       vertPanel.add(tip);
    } else {
       Label label = new Label("Insufficient privileges to approve/reject items");
       label.addStyleName("dialog-message");
       label.addStyleName("info-icon-left");
       vertPanel.add(label);
    }
    */

    if (curator != null) {
        vertPanel.add(errorLabel);
    }
    vertPanel.add(filterPanel);
    vertPanel.add(table);
    vertPanel.add(pager);

    if (curator != null && curator.isAuthorised(entity)) {
        Label comments = new Label("Comments:");
        HorizontalPanel buttonsHPanel = new HorizontalPanel();

        buttonsHPanel.add(approveButton);
        buttonsHPanel.add(rejectButton);
        buttonsHPanel.add(closeButton);

        comments.addStyleName("dialog-label");
        buttonsHPanel.addStyleName("dialog-buttons");
        buttonsHPanel.addStyleName("centered-hortz");

        vertPanel.add(comments);
        vertPanel.add(commentsField);
        commentsField.getElement().getParentElement().addClassName("text-area-right-padded");

        vertPanel.add(buttonsHPanel);
    } else {
        vertPanel.add(closeButton);
        vertPanel.setCellHorizontalAlignment(closeButton, HasHorizontalAlignment.ALIGN_CENTER);
    }
    initWidget(vertPanel);
}

From source file:com.novartis.pcs.ontology.webapp.client.view.ControlledVocabularyTermLinksView.java

License:Apache License

private void addDialogWidgets() {
    VerticalPanel vertPanel = new VerticalPanel();
    SimplePager.Resources pagerResources = GWT.create(SimplePager.Resources.class);
    SimplePager pager = new SimplePager(TextLocation.CENTER, pagerResources, false, 0, true) {
        @Override// w  w w.  ja va2 s  .c  o  m
        public void setPageStart(int index) {
            HasRows display = getDisplay();
            if (display != null) {
                Range range = display.getVisibleRange();
                int pageSize = range.getLength();
                if (isRangeLimited() && display.isRowCountExact()) {
                    index = Math.min(index, display.getRowCount() - 1);
                }
                index = Math.max(0, index);
                if (index != range.getStart()) {
                    display.setVisibleRange(index, pageSize);
                }
            }
        }
    };

    vertPanel.addStyleName("dialog-vpanel");

    vertPanel.add(table);
    vertPanel.add(pager);

    pager.setDisplay(table);
    pager.addStyleName("centered-hortz");

    dialogBox.setWidget(vertPanel);
}