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

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

Introduction

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

Prototype

public Table getTable() 

Source Link

Document

Returns this table viewer's table control.

Usage

From source file:hydrograph.ui.common.util.TransformMappingFeatureUtility.java

License:Apache License

/**
 * This method is used to set cursor position at parameter field when any field is 
 * deleted from table-viewer/*  ww  w . j  a  v a 2s.c o m*/
 * 
 * @param tableViewer
 * @param indexes
 * @param gridList
 */
public void setCursorOnDeleteRowForOutputTable(TableViewer tableViewer, int[] indexes,
        List<FilterProperties> gridList) {
    Table table = tableViewer.getTable();
    if (indexes.length == 1 && gridList.size() > 0) {//only one item is deleted
        if (gridList.size() == 1 && ParameterUtil.isParameter(gridList.get(0).getPropertyname())) {//list contains only one element
            table.select(0);// select the first element
            tableViewer.editElement(tableViewer.getElementAt(0), 0);
        } else if (gridList.size() == indexes[0]) {//deleted last item 
            for (int i = gridList.size() - 1; i >= 0; i--) {
                if (ParameterUtil.isParameter(gridList.get(i).getPropertyname())) {
                    table.select(i);//select the last parameterized element which now at the end of the paramteres list
                    tableViewer.editElement(tableViewer.getElementAt(i), 0);
                    break;
                }
            }

        } else if (gridList.size() > indexes[0]) {//deleted element from middle of the list

            if (ParameterUtil.isParameter(gridList.get(indexes[0] == 0 ? 0 : (indexes[0])).getPropertyname())) {
                table.select(indexes[0] == 0 ? 0 : (indexes[0]));
                tableViewer.editElement(tableViewer.getElementAt(indexes[0] == 0 ? 0 : indexes[0]), 0);
            } else {
                boolean executed = false;
                for (int i = indexes[0] + 1; i < gridList.size(); i++) {
                    if (ParameterUtil.isParameter(gridList.get(i).getPropertyname())) {
                        table.select(i);
                        tableViewer.editElement(tableViewer.getElementAt(i), 0);
                        executed = true;
                        break;
                    }
                }
                if (!executed) {
                    for (int i = indexes[0] - 1; i >= 0; i--) {
                        if (ParameterUtil.isParameter(gridList.get(i).getPropertyname())) {
                            table.select(i);
                            tableViewer.editElement(tableViewer.getElementAt(i), 0);
                            break;
                        }
                    }
                }
            }

        }
    } else if (indexes.length >= 2) {//multiple items are selected for deletion
        if (indexes[0] == 0) {//delete from 0 to ...
            for (int i = 0; i < gridList.size(); i++) {
                if (ParameterUtil.isParameter(gridList.get(i).getPropertyname())) {
                    table.select(i);//select the remaining element
                    tableViewer.editElement(tableViewer.getElementAt(i), 0);
                    break;
                }
            }
        } else {//delete started from element other than 0th element
            for (int i = indexes[0] - 1; i >= 0; i--) {
                if (ParameterUtil.isParameter(gridList.get(i).getPropertyname())) {
                    table.select(i);//select element before the start of selection   
                    tableViewer.editElement(tableViewer.getElementAt(i), 0);
                    break;
                }
            }
        }
    }
}

From source file:hydrograph.ui.dataviewer.actions.ExportAction.java

License:Apache License

@Override
public void run() {
    ViewDataPreferencesVO viewDataPreferencesVO = debugDataViewer.getViewDataPreferences();
    delimiter = viewDataPreferencesVO.getDelimiter();
    quoteCharactor = viewDataPreferencesVO.getQuoteCharactor();
    headerEnabled = viewDataPreferencesVO.getIncludeHeaders();
    TableViewer tableViewer = debugDataViewer.getTableViewer();
    List<RowData> eachRowData = getListOfRowData(tableViewer);
    List<String[]> exportedfileDataList = new ArrayList<String[]>();
    TableColumn[] columns = tableViewer.getTable().getColumns();
    if (headerEnabled != null) {
        addHeadersInList(tableViewer, exportedfileDataList, columns);
    }//from   www  .  j  a v a2s.  c om
    addRowsDataInList(tableViewer, eachRowData, exportedfileDataList);
    FileDialog fileDialog = new FileDialog(Display.getDefault().getActiveShell(), SWT.SAVE);
    String filePath = getPathOfFileDialog(fileDialog);
    writeDataInFile(exportedfileDataList, filePath);
}

From source file:hydrograph.ui.dataviewer.actions.ExportAction.java

License:Apache License

private void addRowsDataInList(TableViewer tableViewer, List<RowData> rowDataList,
        List<String[]> fileDataList) {
    for (RowData rowData : rowDataList) {
        List<RowField> columnDataList = rowData.getRowFields();
        String[] eachRowData = new String[tableViewer.getTable().getColumnCount() - 1];
        for (int j = 0; j < columnDataList.size(); j++) {
            eachRowData[j] = columnDataList.get(j).getValue();
        }/*  ww  w.  j  a  va 2s  .  c o  m*/
        fileDataList.add(eachRowData);
    }
}

From source file:hydrograph.ui.dataviewer.actions.ExportAction.java

License:Apache License

private void addHeadersInList(TableViewer tableViewer, List<String[]> fileDataList, TableColumn[] columns) {
    if (headerEnabled) {
        String[] tablecolumns = new String[tableViewer.getTable().getColumnCount() - 1];
        for (int k = 0; k < columns.length - 1; k++) {
            tablecolumns[k] = columns[k + 1].getText();
        }/*from w  w  w .j  av a  2  s .  com*/
        fileDataList.add(tablecolumns);
    }
}

From source file:hydrograph.ui.dataviewer.actions.ExportAction.java

License:Apache License

private List<RowData> getListOfRowData(TableViewer tableViewer) {
    TableItem[] items = tableViewer.getTable().getItems();
    int i = 1;/*w  w w  .  j  av a  2  s.c om*/
    List<RowData> eachRowData = new ArrayList<RowData>();
    for (int index = 0; index < items.length; index++) {
        List<RowField> columnData = new ArrayList<RowField>();
        for (int j = 1; j < tableViewer.getTable().getColumnCount(); j++) {
            columnData.add(new RowField(items[index].getText(j)));
        }
        RowData rowData = new RowData(columnData, i);
        eachRowData.add(rowData);
        i++;
    }
    return eachRowData;
}

From source file:hydrograph.ui.dataviewer.datasetinformation.DatasetInformationDialog.java

License:Apache License

/**
 * Create contents of the dialog.//  w  w w .j a  v  a  2  s.  c o m
 * @param parent
 */
@Override
protected Control createDialogArea(Composite parent) {
    final Composite container = (Composite) super.createDialogArea(parent);

    container.setLayout(new GridLayout(1, false));
    container.getShell().setMinimumSize(700, 300);

    Composite composite = new Composite(container, SWT.NONE);
    composite.setLayout(new GridLayout(1, false));
    composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));

    CTabFolder tabFolder = new CTabFolder(composite, SWT.NONE);
    tabFolder.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));

    CTabItem tbtmGeneral = new CTabItem(tabFolder, SWT.NONE);
    tbtmGeneral.setText(DatasetInformationConstants.GENERAL);

    ScrolledComposite scrolledComposite = new ScrolledComposite(tabFolder,
            SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL);
    tbtmGeneral.setControl(scrolledComposite);
    scrolledComposite.setExpandHorizontal(true);
    scrolledComposite.setExpandVertical(true);

    genralTabDatacomposite = new Composite(scrolledComposite, SWT.NONE);
    genralTabDatacomposite.setLayout(new GridLayout(2, false));

    createLabel(genralTabDatacomposite, DatasetInformationConstants.VIEW_DATA_FILE);
    setLabelValue(genralTabDatacomposite, datasetInformationVO.getViewDataFilePath());

    createLabel(genralTabDatacomposite, DatasetInformationConstants.EDGE_NODE);
    setLabelValue(genralTabDatacomposite, datasetInformationVO.getEdgeNode());

    if (jobDetails.isRemote()) {
        createLabel(genralTabDatacomposite, DatasetInformationConstants.USERNAME);
        setLabelValue(genralTabDatacomposite, datasetInformationVO.getUserName());
    }

    createLabel(genralTabDatacomposite, DatasetInformationConstants.LOCAL_CHUNK_DATA);
    setLabelValue(genralTabDatacomposite, datasetInformationVO.getChunkFilePath());

    createLabel(genralTabDatacomposite, DatasetInformationConstants.ORIGINAL_FILE_SIZE);
    setLabelValue(genralTabDatacomposite, datasetInformationVO.getAcctualFileSize());

    createLabel(genralTabDatacomposite, DatasetInformationConstants.FILE_SIZE);
    setLabelValue(genralTabDatacomposite, datasetInformationVO.getSizeOfData());

    createLabel(genralTabDatacomposite, DatasetInformationConstants.NUMBER_OF_RECORDS);
    setLabelValue(genralTabDatacomposite, datasetInformationVO.getNoOfRecords());

    createLabel(genralTabDatacomposite, DatasetInformationConstants.PAGE_SIZE);
    setLabelValue(genralTabDatacomposite, datasetInformationVO.getPageSize());

    createLabel(genralTabDatacomposite, DatasetInformationConstants.DELIMETER);
    setLabelValue(genralTabDatacomposite, datasetInformationVO.getDelimeter());

    createLabel(genralTabDatacomposite, DatasetInformationConstants.QUOTE);
    setLabelValue(genralTabDatacomposite, datasetInformationVO.getQuote());

    createLabel(genralTabDatacomposite, DatasetInformationConstants.DOWNLOADED_FILTER_CONDITION);
    setLabelValue(genralTabDatacomposite, datasetInformationVO.getLocalFilter());

    createLabel(genralTabDatacomposite, DatasetInformationConstants.ORIGINAL_FILTER_CONDITION);
    setLabelValue(genralTabDatacomposite, datasetInformationVO.getRemoteFilter());

    CTabItem tbtmSchema = new CTabItem(tabFolder, SWT.NONE);
    tbtmSchema.setText(DatasetInformationConstants.SCHEMA);

    ScrolledComposite scrolledComposite1 = new ScrolledComposite(tabFolder,
            SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL);
    tbtmSchema.setControl(scrolledComposite1);
    scrolledComposite1.setExpandHorizontal(true);
    scrolledComposite1.setExpandVertical(true);

    Composite composite_3 = new Composite(scrolledComposite1, SWT.NONE);
    composite_3.setLayout(new GridLayout(1, false));

    TableViewer tableViewer = new TableViewer(composite_3, SWT.BORDER | SWT.FULL_SELECTION);
    table = tableViewer.getTable();
    table.setLinesVisible(true);
    table.setHeaderVisible(true);
    table.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));

    createTableViewerColumns(tableViewer, DatasetInformationConstants.FEILD_NAME);

    createTableViewerColumns(tableViewer, DatasetInformationConstants.DATA_TYPE);

    createTableViewerColumns(tableViewer, DatasetInformationConstants.DATE_FORMAT);

    createTableViewerColumns(tableViewer, DatasetInformationConstants.PRECISION);

    createTableViewerColumns(tableViewer, DatasetInformationConstants.SCALE);

    createTableViewerColumns(tableViewer, DatasetInformationConstants.SCALE_TYPE);

    final TableViewerColumn tableViewerColumn = createTableViewerColumns(tableViewer,
            DatasetInformationConstants.DESCRIPTION);

    container.addControlListener(new ControlAdapter() {
        @Override
        public void controlResized(ControlEvent e) {
            tableViewerColumn.getColumn().setWidth(container.getSize().x - 642);
        }
    });

    loadSchemaData();
    tableViewer.setContentProvider(new DatasetContentProvider());
    tableViewer.setLabelProvider(new DatasetLabelProvider());
    tableViewer.setInput(gridRowList);
    tableViewer.refresh();

    scrolledComposite.setContent(genralTabDatacomposite);
    scrolledComposite.setMinSize(genralTabDatacomposite.computeSize(SWT.DEFAULT, SWT.DEFAULT));
    MouseWheelScrollingOnComposite.installMouseWheelScrollRecursively(scrolledComposite);

    scrolledComposite1.setContent(composite_3);
    scrolledComposite1.setMinSize(composite_3.computeSize(SWT.DEFAULT, SWT.DEFAULT));
    MouseWheelScrollingOnComposite.installMouseWheelScrollRecursively(scrolledComposite1);

    return container;
}

From source file:hydrograph.ui.dataviewer.filter.FilterConditionsDialog.java

License:Apache License

private void createRemoteTabItem(CTabFolder tabFolder, TableViewer tableViewer) {
    CTabItem tbtmLocal = new CTabItem(tabFolder, SWT.NONE);
    tbtmLocal.setText(Messages.ORIGINAL_DATASET);

    Composite composite = new Composite(tabFolder, SWT.NONE);
    tbtmLocal.setControl(composite);/*from ww w .  java 2 s .c  om*/
    composite.setLayout(new GridLayout(1, false));

    tableViewer = new TableViewer(composite, SWT.BORDER | SWT.FULL_SELECTION | SWT.V_SCROLL);
    tableViewer.setContentProvider(new ArrayContentProvider());
    Table table = tableViewer.getTable();

    table.setHeaderVisible(true);
    table.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));

    Composite compositeStyledText = new Composite(composite, SWT.BORDER);
    compositeStyledText.setLayout(new GridLayout(1, true));
    GridData gd = new GridData(SWT.FILL, SWT.FILL, true, false, 0, 0);
    compositeStyledText.setLayoutData(gd);
    gd.heightHint = 39;

    styledTextRemote = new StyledText(compositeStyledText, SWT.NONE | SWT.V_SCROLL);
    GridData gd_styledTextRemote = new GridData(SWT.FILL, SWT.FILL, true, true, 0, 0);
    styledTextRemote.setLayoutData(gd_styledTextRemote);
    StringBuffer remoteFilterCondition = FilterHelper.INSTANCE.getCondition(remoteConditionsList,
            fieldsAndTypes, remoteGroupSelectionMap, true);
    styledTextRemote.setText(remoteFilterCondition.toString());
    styledTextRemote.setWordWrap(true);
    styledTextRemote.setEditable(false);

    Composite composite_3 = new Composite(composite, SWT.NONE);
    GridLayout gdComposite3 = new GridLayout(4, false);
    gdComposite3.marginWidth = 0;
    composite_3.setLayout(gdComposite3);

    Button btnAddRowAt = new Button(composite_3, SWT.NONE);
    btnAddRowAt.addSelectionListener(
            FilterHelper.INSTANCE.getAddAtEndListener(tableViewer, remoteConditionsList, dummyList));
    btnAddRowAt.setText(Messages.ADD_ROW_AT_END);

    remoteBtnAddGrp = new Button(composite_3, SWT.NONE);
    Button clearGroupsRemote = new Button(composite_3, SWT.NONE);
    clearGroupsRemote.addSelectionListener(clearGroupsListner(tableViewer, remoteGroupSelectionMap,
            clearGroupsRemote, remoteBtnAddGrp, remoteConditionsList, true));
    clearGroupsRemote.setText(Messages.CLEAR_GROUPS);
    if (remoteGroupSelectionMap.size() != 0 && remoteConditionsList.size() != 0) {
        clearGroupsRemote.setEnabled(true);
    } else {
        clearGroupsRemote.setEnabled(false);
    }

    remoteBtnAddGrp.setText(Messages.CREATE_GROUP);
    remoteBtnAddGrp.setEnabled(false);
    remoteBtnAddGrp.addSelectionListener(getAddGroupButtonListner(tableViewer, clearGroupsRemote,
            remoteConditionsList, remoteBtnAddGrp, remoteGroupSelectionMap, true));

    Button retainButton = new Button(composite_3, SWT.CHECK);
    retainButton.setText(Messages.RETAIN_REMOTE_FILTER);
    retainButton.addSelectionListener(FilterHelper.INSTANCE.getRetainButtonListener(retainRemoteFilter));

    Composite composite_4 = new Composite(composite, SWT.NONE);
    GridLayout gd4 = new GridLayout(4, false);
    gd4.marginWidth = 0;
    composite_4.setLayout(gd4);
    composite_4.setLayoutData(new GridData(SWT.RIGHT, SWT.BOTTOM, true, false, 1, 1));

    remoteSaveButton = createButton(composite_4, Messages.OK2, true);
    remoteSaveButton.addSelectionListener(FilterHelper.INSTANCE.getSaveButtonListener(remoteConditionsList,
            fieldsAndTypes, remoteGroupSelectionMap, Messages.ORIGINAL, originalFilterConditions,
            retainRemoteFilter, retainLocalFilter));
    remoteSaveButton.setToolTipText(Messages.OK2_TOOLTIP);

    Button btnCancel = createButton(composite_4, Messages.CANCEL2, false);
    btnCancel.addMouseListener(getCancelButtonListener());
    btnCancel.setToolTipText(Messages.CANCEL2_TOOLTIP);

    Button clearButton = createButton(composite_4, Messages.CLEAR, false);
    clearButton.addSelectionListener(getClearButtonListener(tableViewer, remoteConditionsList, dummyList,
            originalFilterConditions, true, retainButton, remoteGroupSelectionMap, remoteBtnAddGrp));
    clearButton.setToolTipText(Messages.CLEAR_TOOLTIP);

    remoteDisplayButton = createButton(composite_4, Messages.DISPLAY, false);
    remoteDisplayButton.addSelectionListener(FilterHelper.INSTANCE.getRemoteDisplayButtonListener(
            remoteConditionsList, fieldsAndTypes, remoteGroupSelectionMap, styledTextRemote));

    remoteDisplayButton.setToolTipText(Messages.DISPLAY_TOOLTIP);

    if (retainRemoteFilter.getRetainFilter() == true) {
        retainButton.setSelection(true);
    }

    TableViewerColumn addButtonTableViewerColumn = createTableColumns(tableViewer, "", 28);
    addButtonTableViewerColumn.setLabelProvider(
            getAddButtonCellProvider(tableViewer, remoteConditionsList, remoteGroupSelectionMap));

    TableViewerColumn removeButtonTableViewerColumn = createTableColumns(tableViewer, "", 28);
    removeButtonTableViewerColumn.setLabelProvider(getRemoveButtonCellProvider(tableViewer,
            remoteConditionsList, remoteBtnAddGrp, remoteGroupSelectionMap, true));

    TableViewerColumn groupButtonTableViewerColumn = createTableColumns(tableViewer, "", 40);
    groupButtonTableViewerColumn
            .setLabelProvider(getGroupCheckCellProvider(tableViewer, remoteConditionsList, remoteBtnAddGrp));

    for (int key : remoteGroupSelectionMap.keySet()) {
        TableViewerColumn dummyTableViewerColumn = createTableColumns(tableViewer, "", 20);
        dummyTableViewerColumn.setLabelProvider(
                getDummyColumn(tableViewer, remoteConditionsList, key, remoteGroupSelectionMap));
    }

    TableViewerColumn relationalDropDownColumn = createTableColumns(tableViewer, Messages.RELATIONAL_OPERATOR,
            120);
    relationalDropDownColumn
            .setLabelProvider(getRelationalCellProvider(tableViewer, remoteConditionsList, true));

    TableViewerColumn fieldNameDropDownColumn = createTableColumns(tableViewer, Messages.FIELD_NAME, 150);
    fieldNameDropDownColumn.setLabelProvider(getFieldNameCellProvider(tableViewer, remoteConditionsList, true));

    TableViewerColumn conditionalDropDownColumn = createTableColumns(tableViewer, Messages.CONDITIONAL_OPERATOR,
            130);
    conditionalDropDownColumn
            .setLabelProvider(getConditionalCellProvider(tableViewer, remoteConditionsList, true));

    TableViewerColumn value1TextBoxColumn = createTableColumns(tableViewer, Messages.VALUE1, 150);
    value1TextBoxColumn.setLabelProvider(getValue1CellProvider(tableViewer, remoteConditionsList, true));

    TableViewerColumn value2TextBoxColumn = createTableColumns(tableViewer, Messages.VALUE2, 150);
    value2TextBoxColumn.setLabelProvider(getValue2CellProvider(tableViewer, remoteConditionsList, true));

    if (remoteConditionsList.isEmpty()) {
        remoteConditionsList.add(0, new Condition());
    }
    dummyList.clear();
    dummyList.addAll(FilterHelper.INSTANCE.cloneList(remoteConditionsList));
    tableViewer.setInput(remoteConditionsList);
    tableViewer.refresh();

}

From source file:hydrograph.ui.dataviewer.filter.FilterConditionsDialog.java

License:Apache License

private void createLocalTabItem(CTabFolder tabFolder, TableViewer tableViewer) {
    CTabItem tbtmLocal = new CTabItem(tabFolder, SWT.NONE);
    tbtmLocal.setText(Messages.DOWNLOADED_DATASET);

    Composite composite = new Composite(tabFolder, SWT.NONE);
    tbtmLocal.setControl(composite);/*from  w ww  . j  a  va2s  .  c  om*/
    composite.setLayout(new GridLayout(1, false));

    tableViewer = new TableViewer(composite, SWT.BORDER | SWT.FULL_SELECTION | SWT.V_SCROLL);
    tableViewer.setContentProvider(new ArrayContentProvider());
    Table table = tableViewer.getTable();

    table.setHeaderVisible(true);
    table.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));

    Composite compositeStyledText = new Composite(composite, SWT.BORDER);
    compositeStyledText.setLayout(new GridLayout(1, true));
    GridData gd = new GridData(SWT.FILL, SWT.FILL, true, false, 0, 0);
    compositeStyledText.setLayoutData(gd);
    gd.heightHint = 39;

    styledTextLocal = new StyledText(compositeStyledText, SWT.NONE | SWT.V_SCROLL);
    GridData gd_styledTextLocal = new GridData(SWT.FILL, SWT.FILL, true, true, 0, 0);
    styledTextLocal.setLayoutData(gd_styledTextLocal);
    StringBuffer localFilterCondition = FilterHelper.INSTANCE.getCondition(localConditionsList, fieldsAndTypes,
            localGroupSelectionMap, true);
    styledTextLocal.setText(localFilterCondition.toString());
    styledTextLocal.setWordWrap(true);
    styledTextLocal.setEditable(false);

    Composite composite_3 = new Composite(composite, SWT.NONE);
    GridLayout gd3 = new GridLayout(4, false);
    gd3.marginWidth = 0;
    composite_3.setLayout(gd3);

    Button btnAddRowAt = new Button(composite_3, SWT.NONE);
    btnAddRowAt.addSelectionListener(
            FilterHelper.INSTANCE.getAddAtEndListener(tableViewer, localConditionsList, dummyList));
    btnAddRowAt.setText(Messages.ADD_ROW_AT_END);

    localBtnAddGrp = new Button(composite_3, SWT.NONE);
    Button clearGroupsLocal = new Button(composite_3, SWT.NONE);
    clearGroupsLocal.addSelectionListener(clearGroupsListner(tableViewer, localGroupSelectionMap,
            clearGroupsLocal, localBtnAddGrp, localConditionsList, false));
    clearGroupsLocal.setText(Messages.CLEAR_GROUPS);
    if (localGroupSelectionMap.size() != 0 && localConditionsList.size() != 0) {
        clearGroupsLocal.setEnabled(true);
    } else {
        clearGroupsLocal.setEnabled(false);
    }

    localBtnAddGrp.setText(Messages.CREATE_GROUP);
    localBtnAddGrp.setEnabled(false);
    localBtnAddGrp.addSelectionListener(getAddGroupButtonListner(tableViewer, clearGroupsLocal,
            localConditionsList, localBtnAddGrp, localGroupSelectionMap, false));

    Button retainButton = new Button(composite_3, SWT.CHECK);
    retainButton.setText(Messages.RETAIN_LOCAL_FILTER);
    retainButton.addSelectionListener(FilterHelper.INSTANCE.getRetainButtonListener(retainLocalFilter));

    Composite composite_4 = new Composite(composite, SWT.NONE);
    GridLayout gd4 = new GridLayout(4, false);
    composite_4.setLayout(gd4);
    gd4.marginWidth = 0;
    composite_4.setLayoutData(new GridData(SWT.RIGHT, SWT.BOTTOM, true, false, 0, 0));

    localSaveButton = createButton(composite_4, Messages.OK2, false);
    localSaveButton.addSelectionListener(FilterHelper.INSTANCE.getSaveButtonListener(localConditionsList,
            fieldsAndTypes, localGroupSelectionMap, Messages.DOWNLOADED, originalFilterConditions,
            retainRemoteFilter, retainLocalFilter));
    localSaveButton.setToolTipText(Messages.OK2_TOOLTIP);

    Button btnCancel = createButton(composite_4, Messages.CANCEL2, false);
    btnCancel.addMouseListener(getCancelButtonListener());
    btnCancel.setToolTipText(Messages.CANCEL2_TOOLTIP);

    Button clearButton = createButton(composite_4, Messages.CLEAR, false);
    clearButton.addSelectionListener(getClearButtonListener(tableViewer, localConditionsList, dummyList,
            originalFilterConditions, false, retainButton, localGroupSelectionMap, localBtnAddGrp));
    clearButton.setToolTipText(Messages.CLEAR_TOOLTIP);

    localDisplayButton = createButton(composite_4, Messages.DISPLAY, false);
    localDisplayButton.addSelectionListener(FilterHelper.INSTANCE.getLocalDisplayButtonListener(
            localConditionsList, fieldsAndTypes, localGroupSelectionMap, styledTextLocal));

    localDisplayButton.setToolTipText(Messages.DISPLAY_TOOLTIP);
    if (retainLocalFilter.getRetainFilter() == true) {
        retainButton.setSelection(true);
    }

    TableViewerColumn addButtonTableViewerColumn = createTableColumns(tableViewer, "", 28);
    addButtonTableViewerColumn.setLabelProvider(
            getAddButtonCellProvider(tableViewer, localConditionsList, localGroupSelectionMap));

    TableViewerColumn removeButtonTableViewerColumn = createTableColumns(tableViewer, "", 28);
    removeButtonTableViewerColumn.setLabelProvider(getRemoveButtonCellProvider(tableViewer, localConditionsList,
            localBtnAddGrp, localGroupSelectionMap, false));

    TableViewerColumn groupButtonTableViewerColumn = createTableColumns(tableViewer, "", 40);
    groupButtonTableViewerColumn
            .setLabelProvider(getGroupCheckCellProvider(tableViewer, localConditionsList, localBtnAddGrp));

    for (int key : localGroupSelectionMap.keySet()) {

        TableViewerColumn dummyTableViewerColumn = createTableColumns(tableViewer, "", 20);
        dummyTableViewerColumn.setLabelProvider(
                getDummyColumn(tableViewer, localConditionsList, key, localGroupSelectionMap));
    }

    TableViewerColumn relationalDropDownColumn = createTableColumns(tableViewer, Messages.RELATIONAL_OPERATOR,
            120);
    relationalDropDownColumn
            .setLabelProvider(getRelationalCellProvider(tableViewer, localConditionsList, false));

    TableViewerColumn fieldNameDropDownColumn = createTableColumns(tableViewer, Messages.FIELD_NAME, 150);
    fieldNameDropDownColumn.setLabelProvider(getFieldNameCellProvider(tableViewer, localConditionsList, false));

    TableViewerColumn conditionalDropDownColumn = createTableColumns(tableViewer, Messages.CONDITIONAL_OPERATOR,
            130);
    conditionalDropDownColumn
            .setLabelProvider(getConditionalCellProvider(tableViewer, localConditionsList, false));

    TableViewerColumn value1TextBoxColumn = createTableColumns(tableViewer, Messages.VALUE1, 150);
    value1TextBoxColumn.setLabelProvider(getValue1CellProvider(tableViewer, localConditionsList, false));

    TableViewerColumn value2TextBoxColumn = createTableColumns(tableViewer, Messages.VALUE2, 150);
    value2TextBoxColumn.setLabelProvider(getValue2CellProvider(tableViewer, localConditionsList, false));

    if (localConditionsList.isEmpty()) {
        localConditionsList.add(0, new Condition());
    }
    dummyList.clear();
    dummyList.addAll(FilterHelper.INSTANCE.cloneList(localConditionsList));
    tableViewer.setInput(localConditionsList);
    tableViewer.refresh();

}

From source file:hydrograph.ui.dataviewer.filter.FilterConditionsDialog.java

License:Apache License

private CellLabelProvider getValue1CellProvider(final TableViewer tableViewer,
        final List<Condition> conditionsList, final boolean isRemote) {
    return new CellLabelProvider() {

        @Override//  www  .j a  v a2 s. c  o m
        public void update(ViewerCell cell) {
            final TableItem item = (TableItem) cell.getItem();
            // DO NOT REMOVE THIS CONDITION. The condition is return to
            // prevent multiple updates on single item
            if (item.getData("ADDED_VALUE") == null) {
                item.setData("ADDED_VALUE", TRUE);
                Text text;
                if (isRemote) {
                    text = addTextBoxInTable(tableViewer, item, VALUE1_TEXT_BOX, VALUE1_TEXT_PANE,
                            VALUE1_EDITOR, cell.getColumnIndex(),
                            FilterHelper.INSTANCE.getTextBoxValue1Listener(conditionsList, fieldsAndTypes,
                                    fieldNames, remoteSaveButton, remoteDisplayButton));
                } else {
                    text = addTextBoxInTable(tableViewer, item, VALUE1_TEXT_BOX, VALUE1_TEXT_PANE,
                            VALUE1_EDITOR, cell.getColumnIndex(),
                            FilterHelper.INSTANCE.getTextBoxValue1Listener(conditionsList, fieldsAndTypes,
                                    fieldNames, localSaveButton, localDisplayButton));
                }

                text.setText((dummyList.get(tableViewer.getTable().indexOf(item))).getValue1());
                item.addDisposeListener(new DisposeListener() {

                    @Override
                    public void widgetDisposed(DisposeEvent e) {
                        if (item.getData("DISPOSED_VALUE") == null) {
                            item.setData("DISPOSED_VALUE", TRUE);
                            Text valueText = (Text) item.getData(VALUE1_TEXT_BOX);
                            ((TableEditor) valueText.getData(VALUE1_EDITOR)).dispose();
                            valueText.dispose();

                            Composite composite = (Composite) item.getData(VALUE1_TEXT_PANE);
                            composite.dispose();
                        }
                    }
                });
            } else {
                Text text = (Text) item.getData(VALUE1_TEXT_BOX);
                text.setText((dummyList.get(tableViewer.getTable().indexOf(item))).getValue1());
            }
        }
    };
}

From source file:hydrograph.ui.dataviewer.filter.FilterConditionsDialog.java

License:Apache License

private CellLabelProvider getValue2CellProvider(final TableViewer tableViewer,
        final List<Condition> conditionsList, final boolean isRemote) {
    return new CellLabelProvider() {

        @Override/*w w w  .j  a va  2 s  . c  o m*/
        public void update(ViewerCell cell) {
            final TableItem item = (TableItem) cell.getItem();
            // DO NOT REMOVE THIS CONDITION. The condition is return to
            // prevent multiple updates on single item
            if (item.getData("ADDED_VALUE2") == null) {
                item.setData("ADDED_VALUE2", TRUE);
                Text text;
                if (isRemote) {
                    text = addTextBoxInTable(tableViewer, item, VALUE2_TEXT_BOX, VALUE2_TEXT_PANE,
                            VALUE2_EDITOR, cell.getColumnIndex(),
                            FilterHelper.INSTANCE.getTextBoxValue2Listener(conditionsList, fieldsAndTypes,
                                    fieldNames, remoteSaveButton, remoteDisplayButton));
                } else {
                    text = addTextBoxInTable(tableViewer, item, VALUE2_TEXT_BOX, VALUE2_TEXT_PANE,
                            VALUE2_EDITOR, cell.getColumnIndex(),
                            FilterHelper.INSTANCE.getTextBoxValue2Listener(conditionsList, fieldsAndTypes,
                                    fieldNames, localSaveButton, localDisplayButton));
                }
                text.setText((dummyList.get(tableViewer.getTable().indexOf(item))).getValue2());
                enableAndDisableValue2TextBox(dummyList, tableViewer.getTable().indexOf(item), text);
                item.addDisposeListener(new DisposeListener() {

                    @Override
                    public void widgetDisposed(DisposeEvent e) {
                        if (item.getData("DISPOSED_VALUE2") == null) {
                            item.setData("DISPOSED_VALUE2", TRUE);
                            Text valueText = (Text) item.getData(VALUE2_TEXT_BOX);
                            ((TableEditor) valueText.getData(VALUE2_EDITOR)).dispose();
                            valueText.dispose();

                            Composite composite = (Composite) item.getData(VALUE2_TEXT_PANE);
                            composite.dispose();
                        }
                    }
                });
            } else {
                Text text = (Text) item.getData(VALUE2_TEXT_BOX);
                text.setText((dummyList.get(tableViewer.getTable().indexOf(item))).getValue2());
                enableAndDisableValue2TextBox(dummyList, tableViewer.getTable().indexOf(item), text);
            }
        }
    };
}