Example usage for org.eclipse.jface.viewers TableViewer setItemCount

List of usage examples for org.eclipse.jface.viewers TableViewer setItemCount

Introduction

In this page you can find the example usage for org.eclipse.jface.viewers TableViewer setItemCount.

Prototype

public void setItemCount(int count) 

Source Link

Document

Set the item count of the receiver.

Usage

From source file:at.medevit.ch.artikelstamm.elexis.common.ui.cv.ArtikelstammFlatDataLoader.java

License:Open Source License

@Override
public IStatus work(IProgressMonitor monitor, HashMap<String, Object> params) {
    if (isSuspended()) {
        return Status.CANCEL_STATUS;
    }//from   w w w .  ja  va 2 s . c  o  m
    final TableViewer tv = (TableViewer) cv.getViewerWidget();
    if (filtered != null) {
        filtered.clear();
    }
    filtered = null;
    setQuery();
    applyQueryFilters();

    if (useMephaPreferredSorter) {
        // #3627 need to work-around 
        qbe.addToken(" 1=1 ORDER BY CASE WHEN COMP_GLN='7601001001121' THEN 1 ELSE 2 END, DSCR ASC");
    } else {
        if (orderFields != null) {
            qbe.orderBy(false, orderFields);
        }
    }
    if (monitor.isCanceled()) {
        return Status.CANCEL_STATUS;
    }
    raw = qbe.execute();

    if (useAtcQueryFilter) {
        if (!atcQueryFilter.isActive()) {
            insertATCCodeValues(params);
        } else {
            addFilterInformation();
        }
    }

    if (monitor.isCanceled()) {
        return Status.CANCEL_STATUS;
    }
    UiDesk.asyncExec(new Runnable() {
        public void run() {
            // Avoid access to disposed table
            if (tv != null && !tv.getTable().isDisposed()) {
                tv.setItemCount(0);
                filtered = raw;
                tv.setItemCount(raw.size());
            }
        }
    });

    return Status.OK_STATUS;
}

From source file:ch.elexis.actions.FlatDataLoader.java

License:Open Source License

/**
 * From @see DelayableJob.IWorker//  ww  w  . j  a  v  a 2s. c  o m
 */
public IStatus work(IProgressMonitor monitor, HashMap<String, Object> params) {
    if (isSuspended()) {
        return Status.CANCEL_STATUS;
    }
    final TableViewer tv = (TableViewer) cv.getViewerWidget();
    if (filtered != null) {
        filtered.clear();
    }
    filtered = null;
    setQuery();
    applyQueryFilters();
    if (orderFields != null) {
        qbe.orderBy(false, orderFields);
    }
    if (monitor.isCanceled()) {
        return Status.CANCEL_STATUS;
    }
    raw = qbe.execute();
    if (monitor.isCanceled()) {
        return Status.CANCEL_STATUS;
    }
    Desk.asyncExec(new Runnable() {
        public void run() {
            // Avoid access to disposed table
            if (tv != null && !tv.getTable().isDisposed()) {
                tv.setItemCount(0);
                filtered = raw;
                tv.setItemCount(raw.size());
            }
        }
    });

    return Status.OK_STATUS;
}

From source file:ch.elexis.base.ch.medikamente.bag.views.BagMediContentProvider.java

License:Open Source License

@Override
public IStatus work(IProgressMonitor monitor, HashMap<String, Object> params) {
    final TableViewer tv = (TableViewer) cv.getViewerWidget();
    // SortedSet<BAGMedi> coll=new TreeSet<BAGMedi>();
    qbe.clear();/*from  www .  j a  v  a  2 s .co m*/
    if (monitor.isCanceled()) {
        return Status.CANCEL_STATUS;
    }
    if (sGroup.length() > 0) {
        qbe.add("Gruppe", "=", sGroup);
        medis = qbe.execute().toArray(new BAGMedi[0]);
        cv.getConfigurer().getControlFieldProvider().clearValues();
        sGroup = "";
    } else {
        // String[] values=cv.getConfigurer().getControlFieldProvider().getValues();
        HashMap<String, String> values = (HashMap<String, String>) params.get(PARAM_VALUES);
        if (values == null) {
            values = new HashMap<String, String>();
        }
        if (values.isEmpty()) {
            qbe.orderBy(false, new String[] { BAGMedi.FLD_NAME });
            medis = qbe.execute().toArray(new BAGMedi[0]);
        } else {
            String subst = values.get(BAGMediSelector.FIELD_SUBSTANCE);
            String notes = values.get(BAGMediSelector.FIELD_NOTES);
            String names = values.get(BAGMediSelector.FIELD_NAME);
            if (StringTool.isNothing(subst) && StringTool.isNothing(notes)) {
                qbe.add(BAGMedi.FLD_NAME, "Like", names + "%", true);
                if (bOnlyGenerics) {
                    qbe.add("Generikum", "LIKE", "G%");
                }
                qbe.orderBy(false, new String[] { BAGMedi.FLD_NAME });
                List<? extends PersistentObject> result = qbe.execute();
                if (bOnlyStock) {
                    result = result.stream()
                            .filter(a -> (CoreHub.getStockService()
                                    .getCumulatedAvailabilityForArticle((Artikel) a) != null))
                            .collect(Collectors.toList());
                }
                medis = result.toArray(new BAGMedi[0]);
            } else {
                if (!StringTool.isNothing(subst)) {
                    String sql = FROM_SUBSTANCE + JdbcLink.wrap(subst + "%");
                    Collection<BAGMedi> mediRaw = (Collection<BAGMedi>) qbe.queryExpression(sql, null);
                    if (mediRaw == null) {
                        medis = new BAGMedi[0];
                    } else {
                        medis = mediRaw.toArray(new BAGMedi[0]);
                    }

                } else if (!StringTool.isNothing(notes)) {
                    ids = qbe.execute(psNotes, new String[] { "%" + notes + "%" });
                    medis = new BAGMedi[ids.size()];
                } else {
                    medis = new BAGMedi[0];
                }

                if (monitor.isCanceled()) {
                    return Status.CANCEL_STATUS;
                }
            }
        }
    }

    UiDesk.asyncExec(new Runnable() {
        public void run() {
            tv.setItemCount(0);
            // tv.remove(LOADMESSAGE);
            tv.setItemCount(medis.length);
        }
    });

    return Status.OK_STATUS;

}

From source file:ch.elexis.core.ui.actions.FlatDataLoader.java

License:Open Source License

/**
 * From @see DelayableJob.IWorker/*w  w  w .j  a  v a 2  s. co  m*/
 */
public IStatus work(IProgressMonitor monitor, HashMap<String, Object> params) {
    if (isSuspended()) {
        return Status.CANCEL_STATUS;
    }
    final TableViewer tv = (TableViewer) cv.getViewerWidget();
    if (filtered != null) {
        filtered.clear();
    }
    filtered = null;
    setQuery();
    applyQueryFilters();
    if (orderFields != null) {
        qbe.orderBy(false, orderFields);
    }
    if (monitor.isCanceled()) {
        return Status.CANCEL_STATUS;
    }
    raw = qbe.execute();
    if (monitor.isCanceled()) {
        return Status.CANCEL_STATUS;
    }
    UiDesk.asyncExec(new Runnable() {
        public void run() {
            // Avoid access to disposed table
            if (tv != null && !tv.getTable().isDisposed()) {
                tv.setItemCount(0);
                filtered = raw;
                tv.setItemCount(raw.size());
            }
        }
    });

    return Status.OK_STATUS;
}

From source file:ch.elexis.core.ui.contacts.views.PatListeContentProvider.java

License:Open Source License

/**
 * @since 3.2//from w w w  . ja v a 2s .c o m
 */
public void syncRefresh() {
    qbe.clear();
    viewer.getConfigurer().getControlFieldProvider().setQuery(qbe);
    String[] actualOrder;
    int idx = StringTool.getIndex(orderFields, firstOrder);
    if ((idx == -1) || (idx == 0)) {
        actualOrder = orderFields;
    } else {
        actualOrder = new String[orderFields.length];
        int n = 0;
        int begin = idx;
        do {
            actualOrder[n++] = orderFields[idx++];
            if (idx >= orderFields.length) {
                idx = 0;
            }
        } while (idx != begin);
    }
    qbe.orderBy(false, actualOrder);
    List<Patient> lPats = qbe.execute();
    if (lPats == null) {
        pats = new Patient[0];
    } else {
        pats = lPats.toArray(new Patient[0]);
    }
    UiDesk.getDisplay().syncExec(new Runnable() {

        @Override
        public void run() {
            TableViewer tv = (TableViewer) viewer.getViewerWidget();
            tv.setItemCount(pats.length);
            bValid = true;
            if (pfilter != null) {
                pfilter.finished();
            }
            tv.refresh();
            bUpdating = false;
        }
    });
}

From source file:com.siemens.ct.mp3m.ui.views.logical.VirtualTableView.java

License:Open Source License

@Override
public void createPartControl(Composite parent) {
    final TableViewer tableViewer = new TableViewer(parent, SWT.VIRTUAL | SWT.BORDER | SWT.V_SCROLL);
    Table table = tableViewer.getTable();

    table.setLayoutData(new GridData(GridData.FILL_BOTH));
    table.setHeaderVisible(true);//from  ww  w  .ja va 2  s  .co m
    table.setLinesVisible(true);
    TableColumn column = new TableColumn(table, SWT.NONE, 0);
    column.setText(Messages.getString("VirtualTableView.no")); //$NON-NLS-1$
    column.setWidth(50);

    column = new TableColumn(table, SWT.NONE, 1);
    column.setText(Messages.getString("VirtualTableView.song")); //$NON-NLS-1$
    column.setWidth(200);

    column = new TableColumn(table, SWT.NONE, 2);
    column.setText(Messages.getString("VirtualTableView.artist")); //$NON-NLS-1$
    column.setWidth(200);

    tableViewer.setItemCount(100000);
    tableViewer.setContentProvider(new LazyContentProvider());
    tableViewer.setLabelProvider(new TableLabelProvider());

    tableViewer.setUseHashlookup(true);
    tableViewer.setInput(null);
    this.getSite().setSelectionProvider(tableViewer);

    MusicFolders.addChangeListener(new MusicFoldersChangeListener() {
        public void musicFoldersChanged(List<String> folders) {
            tableViewer.refresh();
        }
    });
}

From source file:org.eclipse.jface.snippets.viewers.Snippet030VirtualLazyTableViewer.java

License:Open Source License

public Snippet030VirtualLazyTableViewer(Shell shell) {
    final TableViewer v = new TableViewer(shell, SWT.VIRTUAL);
    v.setLabelProvider(new LabelProvider());
    v.setContentProvider(new MyContentProvider(v));
    v.setUseHashlookup(true);/*w w w  .j a va 2  s.  co  m*/
    createColumn(v.getTable(), "Column 1");
    MyModel[] model = createModel();
    v.setInput(model);
    v.setItemCount(model.length); // This is the difference when using a
    // ILazyContentProvider

    v.getTable().setLinesVisible(true);
}

From source file:org.eclipse.recommenders.codesearch.rcp.index.extdoc.Renderer.java

License:Open Source License

@Override
public void run() {
    final Composite container = new Composite(parent, SWT.NONE);
    container.setLayout(new GridLayout());
    container.setLayoutData(GridDataFactory.fillDefaults().grab(true, false).create());
    ExtdocUtils.setInfoBackgroundColor(container);
    final Label l = new Label(container, SWT.NONE);
    final String msg = format("Found %s examples for type '%s'. Search took %s.", searchResults.docs.totalHits,
            Names.vm2srcSimpleTypeName(typeName), searchDuration);
    l.setText(msg);/* w  w  w.j  a v a  2 s .co  m*/

    final TableViewer v = new TableViewer(container, SWT.VIRTUAL);
    ColumnViewerToolTipSupport.enableFor(v, ToolTip.NO_RECREATE);
    v.setLabelProvider(new LabelProvider(jdtResolver, searchterms, searchResults));
    v.setContentProvider(new ContentProvider(searchResults, jdtResolver));
    // v.setUseHashlookup(true);
    v.setInput(searchResults);
    // v.getTable().setLinesVisible(true);
    v.setItemCount(searchResults.scoreDocs().length);
    v.getControl().setLayoutData(GridDataFactory.fillDefaults().hint(300, 200).grab(true, false).create());
    v.addDoubleClickListener(new IDoubleClickListener() {

        @Override
        public void doubleClick(final DoubleClickEvent event) {
            final Optional<Selection> opt = RCPUtils.first(event.getSelection());
            if (opt.isPresent()) {
                final Selection s = opt.get();
                if (s.isError()) {
                    ErrorDialog.openError(event.getViewer().getControl().getShell(), "Index issue",
                            "could not open indexed file.",
                            StatusUtil.newStatus("org.eclipse.recommenders", s.exception));
                    return;
                }
                final String handle = s.doc.get(Fields.JAVA_ELEMENT_HANDLE);
                final IJavaElement create = JavaCore.create(handle);
                try {
                    JavaUI.openInEditor(create);
                } catch (final Exception e) {
                    RecommendersPlugin.logError(e, "Failed to open method declaration in editor");
                }
            }
        }
    });

}

From source file:org.eclipse.tracecompass.analysis.timing.ui.views.segmentstore.AbstractSegmentStoreTableViewer.java

License:Open Source License

/**
 * Update the data in the table viewer//from w  ww .ja  v  a 2s .c  o m
 *
 * @param dataInput
 *            New data input
 */
public void updateModel(final @Nullable Object dataInput) {
    final TableViewer tableViewer = getTableViewer();
    Display.getDefault().asyncExec(new Runnable() {
        @Override
        public void run() {
            if (!tableViewer.getTable().isDisposed()) {
                // Go to the top of the table
                tableViewer.getTable().setTopIndex(0);
                // Reset selected row
                tableViewer.setSelection(StructuredSelection.EMPTY);
                if (dataInput == null) {
                    tableViewer.setInput(null);
                    tableViewer.setItemCount(0);
                    return;
                }
                addPackListener();
                tableViewer.setInput(dataInput);
                SegmentStoreContentProvider contentProvider = (SegmentStoreContentProvider) getTableViewer()
                        .getContentProvider();
                tableViewer.setItemCount(contentProvider.getSegmentCount());
            }
        }
    });
}

From source file:org.eclipse.tracecompass.internal.provisional.analysis.lami.ui.viewers.LamiTableViewer.java

License:Open Source License

/**
 * Update the data in the table viewer/*from   w  w w  .ja v a  2 s  . c  o  m*/
 *
 * @param dataInput
 *            New data input
 */
private void fillData() {
    final TableViewer tableViewer = getTableViewer();
    Display.getDefault().asyncExec(() -> {
        if (tableViewer.getTable().isDisposed()) {
            return;
        }
        // Go to the top of the table
        tableViewer.getTable().setTopIndex(0);
        // Reset selected row
        tableViewer.setSelection(StructuredSelection.EMPTY);

        /* Fill the table data */
        tableViewer.setInput(fResultTable.getEntries());
        LamiTableContentProvider latencyContentProvider = (LamiTableContentProvider) getTableViewer()
                .getContentProvider();
        tableViewer.setItemCount(latencyContentProvider.getNbEntries());

        /* Set the column's alignment and pack them */
        TableColumn[] cols = tableViewer.getTable().getColumns();
        for (int i = 0; i < cols.length; i++) {
            LamiTableEntryAspect colAspect = fResultTable.getTableClass().getAspects().get(i);
            int alignment = (colAspect.isContinuous() ? SWT.RIGHT : SWT.LEFT);
            cols[i].setAlignment(alignment);

        }

        /*
         * On creation check if there is selections if so update the table
         * selections here. Selections needs the ContentProvider for valid
         * index lookup and since the content provider is set in an
         * asynchronous task we cannot use the normal signal handler since
         * we have no guarantee of time of execution of the fill data.
         */
        if (!fSelections.isEmpty()) {
            int[] selectionsIndexes = fSelections.stream().map(index -> fResultTable.getEntries().get(index))
                    .mapToInt(entry -> ((LamiTableContentProvider) getTableViewer().getContentProvider())
                            .getIndexOf(entry))
                    .toArray();
            Display.getDefault().asyncExec(() -> {
                getTableViewer().getTable().setSelection(selectionsIndexes);
                getTableViewer().getTable().redraw();
            });
        }
    });
    Display.getDefault().asyncExec(() -> {
        if (tableViewer.getTable().isDisposed()) {
            return;
        }

        TableColumn[] cols = tableViewer.getTable().getColumns();
        for (int i = 0; i < cols.length; i++) {
            cols[i].pack();
        }
    });
}