Example usage for com.google.gwt.gen2.table.client TableModel UNKNOWN_ROW_COUNT

List of usage examples for com.google.gwt.gen2.table.client TableModel UNKNOWN_ROW_COUNT

Introduction

In this page you can find the example usage for com.google.gwt.gen2.table.client TableModel UNKNOWN_ROW_COUNT.

Prototype

int UNKNOWN_ROW_COUNT

To view the source code for com.google.gwt.gen2.table.client TableModel UNKNOWN_ROW_COUNT.

Click Source Link

Document

Indicates that the number of rows is unknown, and therefore unbounded.

Usage

From source file:edu.caltech.ipac.firefly.ui.imageGrid.ImageGridPanel.java

public void gotoPage(int page, int pageSize, final int hlRowIdx) {
    dataModel.clearCache();//from   www .j  a v  a 2s .  c o m

    if (dataModel.getPageSize() != pageSize) {
        dataModel.setPageSize(pageSize);
        basicPagingImageGrid.setPageSize(pageSize);
    }

    page = Math.min(page, dataModel.getTotalRows() / pageSize);
    basicPagingImageGrid.getTableModel().setRowCount(TableModel.UNKNOWN_ROW_COUNT);
    basicPagingImageGrid.gotoPage(page, true);
    WebEventListener doHL = new WebEventListener() {
        public void eventNotify(WebEvent ev) {
            ImageGridPanel.this.getEventManager().removeListener(ON_PAGE_LOAD, this);
        }
    };
    getEventManager().addListener(ON_PAGE_LOAD, doHL);
}

From source file:edu.caltech.ipac.firefly.ui.table.TablePanel.java

/**
 * This method clear out cache, then reload the table plus its data.
 *
 * @param page     after loaded, goto the given page if possible.  if page is out of range, goto first page or last
 *                 page.//from   w  w w.j a v a2s  . co m
 * @param pageSize use the given pageSize
 * @param hlRowIdx highlight the given row index.  index is the index of the whole table, not relative to a page.
 */
public void reloadTable(int page, int pageSize, final int hlRowIdx) {
    if (table.getDataModel() == null)
        return;

    table.getDataModel().clearCache();
    SortInfo sortInfo = dataModel.getSortInfo();
    if (sortInfo != null) {

        int cidx = 0;
        List<ColumnDefinition<TableData.Row, ?>> vcol = table.getTableDefinition()
                .getVisibleColumnDefinitions();
        for (cidx = 0; cidx < vcol.size(); cidx++) {
            ColDef col = (ColDef) vcol.get(cidx);
            if (col.getName() != null && col.getName().equals(sortInfo.getPrimarySortColumn())) {
                break;
            }
        }
        if (cidx >= 0) {
            TableModelHelper.ColumnSortList sl = new TableModelHelper.ColumnSortList();
            sl.add(new TableModelHelper.ColumnSortInfo(cidx,
                    sortInfo.getDirection() == SortInfo.Direction.ASC));
            getTable().getDataTable().setColumnSortList(sl);
        }
    } else {
        table.getDataTable().getColumnSortList().clear();
        table.clearSortIndicator();
    }

    if (dataModel.getPageSize() != pageSize) {
        dataModel.setPageSize(pageSize);
        table.setPageSize(pageSize);
    }

    page = Math.min(page, getDataset().getTotalRows() / pageSize);
    table.getTableModel().setRowCount(TableModel.UNKNOWN_ROW_COUNT); // this line is needed to force loader to load when previous results in zero rows.
    table.gotoPage(page, true);
    WebEventListener doHL = new WebEventListener() {
        public void eventNotify(WebEvent ev) {
            int hlidx = hlRowIdx < 0 ? getTable().getAbsoluteFirstRowIndex() : hlRowIdx;
            getTable().highlightRow(hlidx);
            syncTableUI();
            TablePanel.this.getEventManager().removeListener(ON_PAGE_LOAD, this);
        }
    };
    getEventManager().addListener(ON_PAGE_LOAD, doHL);
}

From source file:org.apache.hupa.widgets.ui.PagingOptions.java

License:Apache License

protected void updateControl(int startCount, int endCount, int rows) {
    if (rows == TableModel.UNKNOWN_ROW_COUNT) {
        startCount = 0;/*from   w  w w. j av  a  2  s . c  o m*/
        endCount = 0;
        rows = 0;
    }

    if (rows < endCount) {
        endCount = rows;
    }

    if (endCount == 0) {
        startCount = 0;
    }

    if (startCount <= 1) {
        firstLink.setEnabled(false);
        prevLink.setEnabled(false);
    } else {
        firstLink.setEnabled(true);
        prevLink.setEnabled(true);
    }

    if (rows > endCount) {
        lastLink.setEnabled(true);
        nextLink.setEnabled(true);
    } else {
        lastLink.setEnabled(false);
        nextLink.setEnabled(false);
    }
    text.setText(startCount + " - " + endCount + " of " + rows);

}

From source file:org.zanata.webtrans.client.editor.table.TableEditorPresenter.java

License:Open Source License

@Override
protected void onBind() {
    display.setTableModelHandler(tableModelHandler);
    display.setPageSize(TableConstants.PAGE_SIZE);
    registerHandler(display.getSelectionHandlers().addSelectionHandler(new SelectionHandler<TransUnit>() {
        @Override//from   ww w  . j  a v  a  2  s.c  o  m
        public void onSelection(SelectionEvent<TransUnit> event) {
            if (selectedTransUnit == null
                    || !event.getSelectedItem().getId().equals(selectedTransUnit.getId())) {
                selectedTransUnit = event.getSelectedItem();
                Log.info("SelectedTransUnit " + selectedTransUnit.getId());
                // Clean the cache when we click the new entry
                if (!transIdNextFuzzyCache.isEmpty())
                    transIdNextFuzzyCache.clear();
                if (!transIdPrevFuzzyCache.isEmpty())
                    transIdPrevFuzzyCache.clear();
                eventBus.fireEvent(new TransUnitSelectionEvent(selectedTransUnit));
            }
        }
    }));

    registerHandler(eventBus.addHandler(DocumentSelectionEvent.getType(), new DocumentSelectionHandler() {
        @Override
        public void onDocumentSelected(DocumentSelectionEvent event) {
            if (!event.getDocument().getId().equals(documentId)) {
                display.startProcessing();
                documentId = event.getDocument().getId();
                display.getTableModel().clearCache();
                display.getTableModel().setRowCount(TableModel.UNKNOWN_ROW_COUNT);
                display.gotoPage(0, true);
                display.stopProcessing();
            }
        }
    }));

    registerHandler(eventBus.addHandler(FindMessageEvent.getType(), new FindMessageHandler() {

        @Override
        public void onFindMessage(FindMessageEvent event) {
            Log.info("Find Message Event: " + event.getMessage());
            if (selectedTransUnit != null) {
                Log.info("cancelling selection");
                display.getTargetCellEditor().clearSelection();
            }
            display.startProcessing();
            findMessage = event.getMessage();
            display.setFindMessage(findMessage);
            display.getTableModel().clearCache();
            display.getTableModel().setRowCount(TableModel.UNKNOWN_ROW_COUNT);
            display.gotoPage(0, true);
            display.stopProcessing();
        }

    }));

    registerHandler(eventBus.addHandler(TransUnitUpdatedEvent.getType(), new TransUnitUpdatedEventHandler() {
        @Override
        public void onTransUnitUpdated(TransUnitUpdatedEvent event) {
            if (documentId != null && documentId.equals(event.getDocumentId())) {
                // Clear the cache
                if (!transIdNextFuzzyCache.isEmpty())
                    transIdNextFuzzyCache.clear();
                if (!transIdPrevFuzzyCache.isEmpty())
                    transIdPrevFuzzyCache.clear();
                // TODO this test never succeeds
                if (selectedTransUnit != null
                        && selectedTransUnit.getId().equals(event.getTransUnit().getId())) {
                    // handle change in current selection
                    // eventBus.fireEvent(new NotificationEvent(Severity.Warning,
                    // "Someone else updated this translation unit. you're in trouble..."));
                    // display.getTableModel().setRowValue(row, rowValue);
                    Log.info("selected TU updated; cancelling edit");
                    display.getTargetCellEditor().cancelEdit();

                    // TODO reload page and return
                }

                boolean reloadPage = false;
                if (reloadPage) {
                    display.getTargetCellEditor().cancelEdit();
                    display.getTableModel().clearCache();
                    display.reloadPage();
                } else {
                    final Integer rowOffset = getRowOffset(event.getTransUnit().getId());
                    // - add TU index to model
                    if (rowOffset != null) {
                        final int row = display.getCurrentPage() * display.getPageSize() + rowOffset;
                        Log.info("row calculated as " + row);
                        display.getTableModel().setRowValueOverride(row, event.getTransUnit());
                        if (undoInProcessing != null) {
                            Log.info("check current undo");
                            if (undoInProcessing instanceof UndoableTransUnitUpdateAction) {
                                TransUnit tu = ((UndoableTransUnitUpdateAction) undoInProcessing)
                                        .getPreviousState();
                                Log.info("" + tu.getId() + " " + event.getTransUnit().getId());
                                if (tu.getId().equals(event.getTransUnit().getId())) {
                                    Log.info("go to row:" + row);
                                    tableModelHandler.gotoRow(row);
                                    undoInProcessing = null;
                                }
                            }
                        }
                    } else {
                        display.getTableModel().clearCache();
                        display.getTargetCellEditor().cancelEdit();
                        if (undoInProcessing != null) {
                            Log.info("check current undo");
                            if (undoInProcessing instanceof UndoableTransUnitUpdateAction) {
                                TransUnit tu = ((UndoableTransUnitUpdateAction) undoInProcessing)
                                        .getPreviousState();
                                Log.info("" + tu.getId() + " " + event.getTransUnit().getId());
                                if (tu.getId().equals(event.getTransUnit().getId())) {
                                    int pageNum = ((UndoableTransUnitUpdateAction) undoInProcessing)
                                            .getCurrentPage();
                                    int rowNum = ((UndoableTransUnitUpdateAction) undoInProcessing).getRowNum();
                                    int row = pageNum * PAGE_SIZE + rowNum;
                                    Log.info("go to row:" + row);
                                    Log.info("go to page:" + pageNum);
                                    tableModelHandler.gotoRow(row);
                                    undoInProcessing = null;
                                }
                            }
                        }
                    }
                }
            }
        }
    }));

    registerHandler(eventBus.addHandler(TransUnitEditEvent.getType(), new TransUnitEditEventHandler() {
        @Override
        public void onTransUnitEdit(TransUnitEditEvent event) {
            if (documentId != null && documentId.equals(event.getDocumentId())) {
                if (selectedTransUnit != null && selectedTransUnit.getId().equals(event.getTransUnitId())) {
                    // handle change in current selection
                    if (!event.getSessionId().equals(identity.getSessionId()))
                        eventBus.fireEvent(new NotificationEvent(Severity.Warning, messages.notifyInEdit()));
                }
                // display.getTableModel().clearCache();
                // display.reloadPage();
            }
        }
    }));

    registerHandler(eventBus.addHandler(NavTransUnitEvent.getType(), new NavTransUnitHandler() {
        @Override
        public void onNavTransUnit(NavTransUnitEvent event) {
            if (selectedTransUnit != null) {
                int step = event.getStep();
                Log.info("Step " + step);
                // Send message to server to stop editing current selection
                // stopEditing(selectedTransUnit);

                InlineTargetCellEditor editor = display.getTargetCellEditor();

                // If goto Next or Prev Fuzzy/New Trans Unit
                if (event.getRowType() == NavigationType.PrevEntry) {
                    editor.handlePrev();
                }

                if (event.getRowType() == NavigationType.NextEntry) {
                    editor.handleNext();
                }

                if (event.getRowType() == NavigationType.PrevFuzzyOrUntranslated) {
                    editor.handlePrevState();
                }

                if (event.getRowType() == NavigationType.NextFuzzyOrUntranslated) {
                    editor.handleNextState();
                }

            }
        }
    }));

    registerHandler(eventBus.addHandler(TransMemoryCopyEvent.getType(), new TransMemoryCopyHandler() {
        @Override
        public void onTransMemoryCopy(TransMemoryCopyEvent event) {
            // When user clicked on copy-to-target anchor, it checks
            // if user is editing any target. Notifies if not.
            if (display.getTargetCellEditor().isEditing()) {
                display.getTargetCellEditor().setText(event.getTargetResult());
                eventBus.fireEvent(new NotificationEvent(Severity.Info, messages.notifyCopied()));
            } else
                eventBus.fireEvent(new NotificationEvent(Severity.Error, messages.notifyUnopened()));
        }
    }));

    Event.addNativePreviewHandler(new NativePreviewHandler() {
        @Override
        public void onPreviewNativeEvent(NativePreviewEvent event) {
            // Only when the Table is showed and editor is closed, the keyboard
            // event will be processed.
            if (display.asWidget().isVisible() && !display.getTargetCellEditor().isFocused()) {
                NativeEvent nativeEvent = event.getNativeEvent();
                String nativeEventType = nativeEvent.getType();
                int keyCode = nativeEvent.getKeyCode();
                boolean shiftKey = nativeEvent.getShiftKey();
                boolean altKey = nativeEvent.getAltKey();
                boolean ctrlKey = nativeEvent.getCtrlKey();
                if (nativeEventType.equals("keypress") && !shiftKey && !altKey && !ctrlKey) {
                    // PageDown key
                    switch (keyCode) {
                    case KeyCodes.KEY_PAGEDOWN:
                        Log.info("fired event of type " + event.getAssociatedType().getClass().getName());
                        if (!display.isLastPage())
                            gotoNextPage();
                        event.cancel();
                        break;
                    // PageUp key
                    case KeyCodes.KEY_PAGEUP:
                        Log.info("fired event of type " + event.getAssociatedType().getClass().getName());
                        if (!display.isFirstPage())
                            gotoPreviousPage();
                        event.cancel();
                        break;
                    // Home
                    case KeyCodes.KEY_HOME:
                        Log.info("fired event of type " + event.getAssociatedType().getClass().getName());
                        display.gotoFirstPage();
                        event.cancel();
                        break;
                    // End
                    case KeyCodes.KEY_END:
                        Log.info("fired event of type " + event.getAssociatedType().getClass().getName());
                        display.gotoLastPage();
                        event.cancel();
                        break;
                    default:
                        break;
                    }
                }
            }
        }
    });

    display.gotoFirstPage();
}