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

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

Introduction

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

Prototype

public TableViewer(Table table) 

Source Link

Document

Creates a table viewer on the given table control.

Usage

From source file:codeshine.utils.TableFieldEditor.java

License:Open Source License

/**
 * <p>/* w ww  .  ja  v a 2s .  co m*/
 * Initializes this <code>TableFieldEditor</code>'s
 * <code>TableViewer</code>.
 * </p>
 */
private void initializeViewer() {
    this.viewer = new TableViewer(this.table);
    this.viewer.setContentProvider(this.contentProvider);
    this.viewer.setLabelProvider(this.labelProvider);

    this.viewer.setColumnProperties(this.columnHeaders);

    this.viewer.setInput(this.input);

    /* Pack all columnHeaders */
    TableColumn column;
    for (int i = 0; i < this.columnHeaders.length; i++) {
        column = this.table.getColumn(i);
        column.pack();
    }
}

From source file:com.amalto.workbench.editors.ItemsTrashBrowserMainPage.java

License:Open Source License

@Override
protected void createFormContent(IManagedForm managedForm) {

    try {//from  www  .j  av a 2  s.c o  m

        // sets the title
        managedForm.getForm().setText(this.getTitle());

        // get the toolkit
        FormToolkit toolkit = managedForm.getToolkit();

        // get the body
        Composite composite = managedForm.getForm().getBody();
        composite.setLayout(new GridLayout(9, false));

        /***
         * Search Text
         */
        Label descriptionLabel = toolkit.createLabel(composite, Messages.ItemsTrashBrowserMainPage_1, SWT.NULL);
        descriptionLabel.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1));
        searchText = toolkit.createText(composite, "*", SWT.BORDER);//$NON-NLS-1$
        searchText.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 2, 1));
        // searchText.addModifyListener(this);
        searchText.addKeyListener(new KeyListener() {

            public void keyPressed(KeyEvent e) {
            }

            public void keyReleased(KeyEvent e) {
                if ((e.stateMask == 0) && (e.character == SWT.CR)) {
                    ItemsTrashBrowserMainPage.this.resultsViewer.setInput(getResults(true));
                    ItemsTrashBrowserMainPage.this.resultsViewer.getTable().setFocus();
                }
            }// keyReleased
        }// keyListener
        );

        // search
        Button bSearch = toolkit.createButton(composite, "", SWT.CENTER);//$NON-NLS-1$
        bSearch.setImage(ImageCache.getCreatedImage(EImage.BROWSE.getPath()));
        bSearch.setToolTipText(Messages.ItemsTrashBrowserMainPage_2);
        bSearch.setLayoutData(new GridData(SWT.NONE, SWT.CENTER, false, false, 1, 1));
        bSearch.addListener(SWT.Selection, new Listener() {

            public void handleEvent(Event event) {
                ItemsTrashBrowserMainPage.this.resultsViewer.setInput(getResults(true));
            };
        });

        /***
         * Create Table
         */
        final Table table = createTable(composite);

        resultsViewer = new TableViewer(table);

        resultsViewer.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 9, 1));
        ((GridData) resultsViewer.getControl().getLayoutData()).heightHint = 500;
        resultsViewer.setContentProvider(new ArrayContentProvider());
        resultsViewer.setLabelProvider(new ClusterTableLabelProvider());
        resultsViewer.addDoubleClickListener(new IDoubleClickListener() {

            public void doubleClick(DoubleClickEvent event) {
                resultsViewer.setSelection(event.getSelection());
                try {
                    new DisplayDroppedItemAction(ItemsTrashBrowserMainPage.this.getSite().getShell(),
                            resultsViewer).run();
                } catch (Exception e) {
                    MessageDialog.openError(ItemsTrashBrowserMainPage.this.getSite().getShell(),
                            Messages._Error, Messages.ItemsTrashBrowserMainPage_4 + e.getClass().getName()
                                    + Messages.ItemsTrashBrowserMainPage_5 + e.getLocalizedMessage());
                }
            }
        });

        hookKeyboard();

        hookContextMenu();

        managedForm.reflow(true); // nothng will show on the form if not called

        searchText.setFocus();
        // adapt body add mouse/focus listener for child
        WidgetFactory factory = WidgetFactory.getWidgetFactory();
        factory.adapt(managedForm.getForm().getBody());
    } catch (Exception e) {
        log.error(e.getMessage(), e);
    }
}

From source file:com.amalto.workbench.editors.RoutingEngineV2BrowserMainPage.java

License:Open Source License

@Override
protected void createFormContent(IManagedForm managedForm) {

    try {//w w  w .  ja  v a  2 s.  c o  m

        // sets the title
        managedForm.getForm().setText(this.getTitle());

        // get the toolkit
        FormToolkit toolkit = managedForm.getToolkit();

        // get the body
        Composite composite = managedForm.getForm().getBody();
        composite.setLayout(new GridLayout(1, false));

        // Create a Router status holder
        Composite statusComposite = toolkit.createComposite(composite, SWT.NONE);
        statusComposite.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
        statusComposite.setLayout(new GridLayout(5, false));

        // status
        Label descriptionLabel = toolkit.createLabel(statusComposite,
                Messages.RoutingEngineV2BrowserMainPage_EventManagerStatus, SWT.NULL);
        descriptionLabel.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, true, 1, 1));
        statusLabel = toolkit.createLabel(statusComposite, "                                           ", //$NON-NLS-1$
                SWT.NULL);
        statusLabel.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, true, 1, 1));
        startButton = toolkit.createButton(statusComposite, BLANK, SWT.PUSH);
        startButton.setImage(ImageCache.getCreatedImage(EImage.RUN_EXC.getPath()));
        startButton.setToolTipText(Messages.RoutingEngineV2BrowserMainPage_Start);
        startButton.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, true, 1, 1));
        startButton.addSelectionListener(new SelectionAdapter() {

            @Override
            public void widgetSelected(SelectionEvent e) {
                startSubscriptionEngine();
                updateButtons();
            };
        });
        stopButton = toolkit.createButton(statusComposite, BLANK, SWT.PUSH);
        stopButton.setImage(ImageCache.getCreatedImage(EImage.STOP.getPath()));
        stopButton.setToolTipText(Messages.RoutingEngineV2BrowserMainPage_Stop);
        stopButton.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, true, 1, 1));
        stopButton.addSelectionListener(new SelectionAdapter() {

            @Override
            public void widgetSelected(SelectionEvent e) {
                stopSubscriptionEngine();
                updateButtons();
            };
        });
        suspendButton = toolkit.createButton(statusComposite, BLANK, SWT.PUSH);
        suspendButton.setImage(ImageCache.getCreatedImage(EImage.SUSPEND.getPath()));
        suspendButton.setToolTipText(Messages.RoutingEngineV2BrowserMainPage_Suspend);
        suspendButton.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, true, 1, 1));
        suspendButton.addSelectionListener(new SelectionAdapter() {

            @Override
            public void widgetSelected(SelectionEvent e) {
                suspendSubscriptionEngine();
                updateButtons();
            };
        });

        Composite separator = toolkit.createCompositeSeparator(composite);
        separator.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
        ((GridData) separator.getLayoutData()).heightHint = 2;

        // first Line of routing Orders
        Composite firstLineComposite = toolkit.createComposite(composite);
        firstLineComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1));
        firstLineComposite.setLayout(new GridLayout(9, false));

        // Routing Orders Label
        Label routingOrdersLabel = toolkit.createLabel(firstLineComposite,
                Messages.RoutingEngineV2BrowserMainPage_RoutingOrders, SWT.NULL);
        routingOrdersLabel.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 9, 1));

        // from
        Label fromLabel = toolkit.createLabel(firstLineComposite, Messages.RoutingEngineV2BrowserMainPage_From,
                SWT.NULL);
        fromLabel.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1));
        CalendarSelectWidget fromCalendar = new CalendarSelectWidget(toolkit, firstLineComposite, true);
        fromText = fromCalendar.getText();

        // to
        Label toLabel = toolkit.createLabel(firstLineComposite, Messages.RoutingEngineV2BrowserMainPage_To,
                SWT.NULL);
        toLabel.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1));
        CalendarSelectWidget toCalendar = new CalendarSelectWidget(toolkit, firstLineComposite, false);
        toText = toCalendar.getText();

        Label statusLab = toolkit.createLabel(firstLineComposite,
                Messages.RoutingEngineV2BrowserMainPage_Status, SWT.NULL);
        statusLab.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1));
        statusCombo = new Combo(firstLineComposite, SWT.READ_ONLY | SWT.DROP_DOWN | SWT.MULTI);
        statusCombo.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1));
        statusCombo.addKeyListener(new KeyAdapter() {

            @Override
            public void keyReleased(KeyEvent e) {
                if ((e.stateMask == 0) && (e.character == SWT.CR)) {
                    doSearch();
                }
            }// keyReleased
        }// keyListener
        );
        statusCombo.add("FAILED");//$NON-NLS-1$
        statusCombo.add("COMPLETED");//$NON-NLS-1$
        statusCombo.select(0);

        // to
        Button bSearch = toolkit.createButton(firstLineComposite, BLANK, SWT.CENTER);
        bSearch.setImage(ImageCache.getCreatedImage(EImage.BROWSE.getPath()));
        bSearch.setToolTipText(Messages.RoutingEngineV2BrowserMainPage_Search);
        bSearch.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1));
        bSearch.addListener(SWT.Selection, new Listener() {

            public void handleEvent(Event event) {
                pageToolBar.reset();
                doSearch();
            };
        });

        // Second Line of routing Orders
        Composite searchLineComposite = toolkit.createComposite(composite);
        searchLineComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false, 1, 1));
        searchLineComposite.setLayout(new GridLayout(4, false));

        // document type
        Label documentTypeLabel = toolkit.createLabel(searchLineComposite,
                Messages.RoutingEngineV2BrowserMainPage_DocumentType, SWT.NULL);
        documentTypeLabel.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1));
        // DocumentType
        documentTypeText = toolkit.createText(searchLineComposite, BLANK, SWT.BORDER);
        documentTypeText.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false, 1, 1));
        ((GridData) documentTypeText.getLayoutData()).widthHint = 120;
        documentTypeText.addKeyListener(new KeyAdapter() {

            @Override
            public void keyReleased(KeyEvent e) {
                if ((e.stateMask == 0) && (e.character == SWT.CR)) {
                    doSearch();
                }
            }// keyReleased
        }// keyListener
        );
        // ID
        Label idLabel = toolkit.createLabel(searchLineComposite,
                Messages.RoutingEngineV2BrowserMainPage_ItemIDs, SWT.NULL);
        idLabel.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1));
        // ID
        idText = toolkit.createText(searchLineComposite, BLANK, SWT.BORDER);
        idText.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1));
        idText.addKeyListener(new KeyAdapter() {

            @Override
            public void keyReleased(KeyEvent e) {
                if ((e.stateMask == 0) && (e.character == SWT.CR)) {
                    doSearch();
                }
            }// keyReleased
        }// keyListener
        );

        // service
        Label serviceLabel = toolkit.createLabel(searchLineComposite,
                Messages.RoutingEngineV2BrowserMainPage_Service, SWT.NULL);
        serviceLabel.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1));
        // service
        serviceCombo = new Combo(searchLineComposite, SWT.READ_ONLY | SWT.DROP_DOWN | SWT.MULTI);
        serviceCombo.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1));
        serviceCombo.addKeyListener(new KeyAdapter() {

            @Override
            public void keyReleased(KeyEvent e) {
                if ((e.stateMask == 0) && (e.character == SWT.CR)) {
                    doSearch();
                }
            }// keyReleased
        }// keyListener
        );
        serviceCombo.add(BLANK);
        // WSServicesListItem[] servicesList = Util.getPort(getXObject()).getServicesList(new
        // WSGetServicesList("en")).getItem();
        List<WSServicesListItem> servicesList = getMDMService().getServicesList(new WSGetServicesList("en")) //$NON-NLS-1$
                .getItem();

        if ((servicesList != null) && (servicesList.size() > 0)) {
            String[] services = new String[servicesList.size()];
            for (int i = 0; i < servicesList.size(); i++) {
                services[i] = servicesList.get(i).getJndiName().replaceFirst("amalto/local/service/", BLANK);//$NON-NLS-1$
            }
            Arrays.sort(services);
            for (String service : services) {
                serviceCombo.add(service);
            }
        }
        serviceCombo.select(0);

        // any Field
        Label anyFieldLabel = toolkit.createLabel(searchLineComposite,
                Messages.RoutingEngineV2BrowserMainPage_AnyField, SWT.NULL);
        anyFieldLabel.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1));
        // anyField
        anyFieldText = toolkit.createText(searchLineComposite, BLANK, SWT.BORDER);
        anyFieldText.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1));
        anyFieldText.addKeyListener(new KeyAdapter() {

            @Override
            public void keyReleased(KeyEvent e) {
                if ((e.stateMask == 0) && (e.character == SWT.CR)) {
                    doSearch();
                }
            }// keyReleased
        }// keyListener
        );

        // pageToolBar
        pageToolBar = new PageingToolBar(composite);
        pageToolBar.getComposite().setLayoutData(new GridData(SWT.FILL, SWT.TOP, true, false, 9, 1));
        pageToolBar.getComposite().setVisible(false);
        pageToolBar.setPageingListener(this);

        final Table table = createTable(composite);

        resultsViewer = new TableViewer(table);

        resultsViewer.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
        // ((GridData) resultsViewer.getControl().getLayoutData()).heightHint = 500;
        resultsViewer.setContentProvider(new ArrayContentProvider());
        resultsViewer.setLabelProvider(new ClusterTableLabelProvider());
        resultsViewer.addDoubleClickListener(new IDoubleClickListener() {

            public void doubleClick(DoubleClickEvent event) {
                resultsViewer.setSelection(event.getSelection());
                try {
                    new EditItemAction(RoutingEngineV2BrowserMainPage.this.getSite().getShell(), resultsViewer)
                            .run();
                } catch (Exception e) {
                    MessageDialog.openError(RoutingEngineV2BrowserMainPage.this.getSite().getShell(),
                            Messages._Error, Messages.bind(Messages.RoutingEngineV2BrowserMainPage_ErrorMsg,
                                    e.getClass().getName(), e.getLocalizedMessage()));
                }
            }
        });

        hookContextMenu();

        managedForm.reflow(true); // nothing will show on the form if not called

        // adapt body add mouse/focus listener for child
        WidgetFactory factory = WidgetFactory.getWidgetFactory();
        factory.adapt(managedForm.getForm().getBody());
        updateButtons();
    } catch (Exception e) {
        log.error(e.getMessage(), e);
    }
}

From source file:com.amalto.workbench.editors.StoredProcedureMainPage.java

License:Open Source License

@Override
protected void createCharacteristicsContent(FormToolkit toolkit, Composite charComposite) {

    try {//w ww.  ja  v a  2 s  .co m

        WSStoredProcedure wsStoredProcedure = (WSStoredProcedure) (getXObject().getWsObject());

        // description
        Label descriptionLabel = toolkit.createLabel(charComposite, Messages.StoredProcedureMainPage_4,
                SWT.NULL);
        descriptionLabel.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false, 1, 1));

        descriptionText = toolkit.createText(charComposite, "", SWT.BORDER);//$NON-NLS-1$
        descriptionText.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
        descriptionText
                .setText(wsStoredProcedure.getDescription() == null ? "" : wsStoredProcedure.getDescription());//$NON-NLS-1$
        descriptionText.addModifyListener(this);
        // Procedure
        Group storedProcedureGroup = new Group(charComposite, SWT.SHADOW_NONE);
        storedProcedureGroup.setText(Messages.StoredProcedureMainPage_5);
        storedProcedureGroup.setLayout(new GridLayout(1, true));
        storedProcedureGroup.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 2, 1));

        ((GridData) storedProcedureGroup.getLayoutData()).minimumHeight = 100;
        procedureViewer = new SourceViewer(storedProcedureGroup, new VerticalRuler(10), SWT.V_SCROLL);
        procedureViewer.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
        procedureViewer.addTextListener(this);
        WidgetUtils.initRedoUndo(procedureViewer);
        refreshCacheBtn = toolkit.createButton(charComposite, Messages.StoredProcedureMainPage_6, SWT.CHECK);
        refreshCacheBtn.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 2, 1));
        refreshCacheBtn.addSelectionListener(new SelectionListener() {

            public void widgetSelected(SelectionEvent e) {
                markDirty();

            }

            public void widgetDefaultSelected(SelectionEvent e) {
                markDirty();

            }
        });
        /************************************************************
         * Execute Stored Procedure
         ************************************************************/

        createCompDropTarget();
        Composite resultsGroup = this.getNewSectionComposite(Messages.StoredProcedureMainPage_7);
        resultsGroup.setLayout(new GridLayout(4, false));

        // data cluster
        Hyperlink dataClusterLink = toolkit.createHyperlink(resultsGroup, Messages.StoredProcedureMainPage_8,
                SWT.NULL);
        dataClusterLink.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, true, 1, 1));
        dataClusterLink.addHyperlinkListener(new IHyperlinkListener() {

            public void linkEntered(org.eclipse.ui.forms.events.HyperlinkEvent e) {
            }

            public void linkExited(org.eclipse.ui.forms.events.HyperlinkEvent e) {
            }

            public void linkActivated(org.eclipse.ui.forms.events.HyperlinkEvent e) {
                if (!isLocalInput()) {
                    TreeParent serverRoot = StoredProcedureMainPage.this.getXObject().getServerRoot();
                    TreeObject iaObject = new TreeObject(
                            StoredProcedureMainPage.this.dataClusterCombo.getText(), serverRoot,
                            TreeObject.DATA_CLUSTER,
                            new WSDataClusterPK(StoredProcedureMainPage.this.dataClusterCombo.getText()), null);
                    (new EditXObjectAction(iaObject, StoredProcedureMainPage.this.getSite().getPage())).run();
                }
            };
        });
        dataClusterCombo = new Combo(resultsGroup, SWT.READ_ONLY | SWT.DROP_DOWN | SWT.SINGLE);
        dataClusterCombo.setLayoutData(new GridData(SWT.BEGINNING, SWT.NONE, false, false, 1, 1));

        Button executeButton = new Button(resultsGroup, SWT.PUSH);
        executeButton.setText(Messages.StoredProcedureMainPage_9);
        executeButton.addMouseListener(new MouseListener() {

            public void mouseUp(MouseEvent e) {
                executeProcedure();
            }

            public void mouseDoubleClick(MouseEvent e) {
            }

            public void mouseDown(MouseEvent e) {
            }
        });

        resultsLabel = toolkit.createLabel(resultsGroup,
                "                                                                                                           ", //$NON-NLS-1$
                SWT.NULL);
        resultsLabel.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, true, false, 1, 1));

        resultsViewer = new TableViewer(resultsGroup);
        resultsViewer.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 4, 1));
        ((GridData) resultsViewer.getControl().getLayoutData()).heightHint = 300;
        resultsViewer.setContentProvider(new ArrayContentProvider());
        resultsViewer.setLabelProvider(new XMLTableLabelProvider());
        resultsViewer.addDoubleClickListener(new IDoubleClickListener() {

            public void doubleClick(DoubleClickEvent event) {
                resultsViewer.setSelection(event.getSelection());
                new ResultsViewAction(StoredProcedureMainPage.this.getSite().getShell(), resultsViewer).run();
            }
        });

        hookContextMenu();

        refreshData();

        dataClusterCombo.select(0);

    } catch (Exception e) {
        log.error(e.getMessage(), e);
    }

}

From source file:com.amalto.workbench.editors.ViewBrowserMainPage.java

License:Open Source License

@Override
protected void createCharacteristicsContent(FormToolkit toolkit, Composite charComposite) {

    try {//from  w w  w. ja  v a  2s . c  o m

        Label vbeLabel = toolkit.createLabel(charComposite, Messages.ViewBrowserMainPage_ViewableElements,
                SWT.NULL);
        vbeLabel.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, true, 1, 1));

        Label sbeLabel = toolkit.createLabel(charComposite, Messages.ViewBrowserMainPage_SearchableElements,
                SWT.NULL);
        sbeLabel.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, true, 1, 1));

        viewableBEsList = new List(charComposite, SWT.SINGLE | SWT.V_SCROLL | SWT.BORDER);
        viewableBEsList.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
        ((GridData) viewableBEsList.getLayoutData()).heightHint = 100;

        searchableBEsList = new List(charComposite, SWT.SINGLE | SWT.V_SCROLL | SWT.BORDER);
        searchableBEsList.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
        ((GridData) searchableBEsList.getLayoutData()).heightHint = 100;

        Label wcLabel = toolkit.createLabel(charComposite, Messages.ViewBrowserMainPage_Conditions, SWT.NULL);
        wcLabel.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, true, 2, 1));
        wcListViewer = new ListViewer(charComposite, SWT.BORDER);
        wcListViewer.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 2, 1));
        ((GridData) wcListViewer.getControl().getLayoutData()).minimumHeight = 100;
        wcListViewer.setContentProvider(new IStructuredContentProvider() {

            public void dispose() {
            }

            public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
            }

            public Object[] getElements(Object inputElement) {
                return ((WSView) inputElement).getWhereConditions().toArray();
            }
        });
        wcListViewer.setLabelProvider(new ILabelProvider() {

            public Image getImage(Object element) {
                return null;
            }

            public String getText(Object element) {
                WSWhereCondition wc = (WSWhereCondition) element;
                String text = wc.getLeftPath() + " ";//$NON-NLS-1$
                if (wc.getOperator().equals(WSWhereOperator.CONTAINS)) {
                    text += "Contains";//$NON-NLS-1$
                } else if (wc.getOperator().equals(WSWhereOperator.CONTAINS_SENTENCE)) {
                    text += "contains the sentence";//$NON-NLS-1$
                } else if (wc.getOperator().equals(WSWhereOperator.EQUALS)) {
                    text += "=";//$NON-NLS-1$
                } else if (wc.getOperator().equals(WSWhereOperator.GREATER_THAN)) {
                    text += ">";//$NON-NLS-1$
                } else if (wc.getOperator().equals(WSWhereOperator.GREATER_THAN_OR_EQUAL)) {
                    text += ">=";//$NON-NLS-1$
                } else if (wc.getOperator().equals(WSWhereOperator.JOIN)) {
                    text += "Joins With";//$NON-NLS-1$
                } else if (wc.getOperator().equals(WSWhereOperator.LOWER_THAN)) {
                    text += "<";//$NON-NLS-1$
                } else if (wc.getOperator().equals(WSWhereOperator.LOWER_THAN_OR_EQUAL)) {
                    text += "<=";//$NON-NLS-1$
                } else if (wc.getOperator().equals(WSWhereOperator.NOT_EQUALS)) {
                    text += "!=";//$NON-NLS-1$
                } else if (wc.getOperator().equals(WSWhereOperator.STARTSWITH)) {
                    text += "Starts With";//$NON-NLS-1$
                } else if (wc.getOperator().equals(WSWhereOperator.EMPTY_NULL)) {
                    text += "Is Empty Or Null";//$NON-NLS-1$
                } else if (wc.getOperator().equals(WSWhereOperator.FULLTEXTSEARCH)) {
                    text += "whole content contains";//$NON-NLS-1$
                }
                text += " ";//$NON-NLS-1$
                if (!wc.getOperator().equals(WSWhereOperator.JOIN)) {
                    text += "\"";//$NON-NLS-1$
                }
                text += wc.getRightValueOrPath();
                if (!wc.getOperator().equals(WSWhereOperator.JOIN)) {
                    text += "\"";//$NON-NLS-1$
                }
                text += " ";//$NON-NLS-1$
                if (wc.getStringPredicate().equals(WSStringPredicate.AND)) {
                    text += "[and]";//$NON-NLS-1$
                } else if (wc.getStringPredicate().equals(WSStringPredicate.NONE)) {
                    text += "";//$NON-NLS-1$
                } else if (wc.getStringPredicate().equals(WSStringPredicate.OR)) {
                    text += "[or]";//$NON-NLS-1$
                } else if (wc.getStringPredicate().equals(WSStringPredicate.NOT)) {
                    text += "[not]";//$NON-NLS-1$
                }

                return text;
            }

            public void addListener(ILabelProviderListener listener) {
            }

            public void dispose() {
            }

            public boolean isLabelProperty(Object element, String property) {
                return false;
            }

            public void removeListener(ILabelProviderListener listener) {
            }
        });

        int columns = 6;
        Composite resultsGroup = this.getNewSectionComposite(Messages.ViewBrowserMainPage_SearchAndResults);
        resultsGroup.setLayout(new GridLayout(columns, false));

        Composite createComposite = toolkit.createComposite(resultsGroup);
        GridLayout layout = new GridLayout(3, false);
        layout.marginWidth = 0;
        createComposite.setLayout(layout);
        createComposite.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, false, false, 2, 1));

        Label containerLabel = toolkit.createLabel(createComposite, Messages.ViewBrowserMainPage_Container,
                SWT.NULL);
        containerLabel.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1));

        dataClusterCombo = new Combo(createComposite, SWT.READ_ONLY | SWT.DROP_DOWN | SWT.SINGLE);
        dataClusterCombo.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1));
        ((GridData) dataClusterCombo.getLayoutData()).minimumWidth = 100;

        clusterTypeCombo = new Combo(createComposite, SWT.READ_ONLY | SWT.SINGLE);
        GridData typeLayout = new GridData(SWT.CENTER, SWT.CENTER, true, false, 1, 1);
        typeLayout.horizontalIndent = 10;
        clusterTypeCombo.setLayoutData(typeLayout);

        Label searchOnLabel = toolkit.createLabel(resultsGroup, Messages.ViewBrowserMainPage_SearchOn,
                SWT.NULL);
        GridData layoutData = new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1);
        layoutData.horizontalIndent = 20;
        searchOnLabel.setLayoutData(layoutData);

        searchItemCombo = new Combo(resultsGroup, SWT.READ_ONLY | SWT.DROP_DOWN | SWT.SINGLE);
        searchItemCombo.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1));
        ((GridData) searchItemCombo.getLayoutData()).minimumWidth = 100;
        searchItemCombo.addSelectionListener(new SelectionAdapter() {

            @Override
            public void widgetSelected(SelectionEvent e) {
                if (FULL_TEXT.equals(searchItemCombo.getText())) {
                    matchAllWordsBtn.setEnabled(true);
                } else {
                    matchAllWordsBtn.setSelection(false);
                    matchAllWordsBtn.setEnabled(false);
                }
            }
        });

        searchText = toolkit.createText(resultsGroup, "", SWT.BORDER);//$NON-NLS-1$
        searchText.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
        searchText.addKeyListener(new KeyListener() {

            public void keyPressed(KeyEvent e) {
            }

            public void keyReleased(KeyEvent e) {
                if ((e.stateMask == 0) && (e.character == SWT.CR)) {
                    ViewBrowserMainPage.this.resultsViewer.setInput(getResults());
                }
            }// keyReleased
        }// keyListener
        );

        Button bSearch = toolkit.createButton(resultsGroup, Messages.ViewBrowserMainPage_Search, SWT.CENTER);
        bSearch.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, true, 1, 1));
        bSearch.addListener(SWT.Selection, new Listener() {

            public void handleEvent(Event event) {
                ViewBrowserMainPage.this.resultsViewer.setInput(getResults());
            };
        });

        matchAllWordsBtn = toolkit.createButton(resultsGroup, Messages.ViewBrowserMainPage_MatchWholeSentence,
                SWT.CHECK);
        matchAllWordsBtn.setSelection(true);

        resultsLabel = toolkit.createLabel(resultsGroup, "", SWT.NULL); //$NON-NLS-1$
        GridData resultLayoutData = new GridData(SWT.LEFT, SWT.CENTER, false, false, columns - 1, 1);
        resultLayoutData.widthHint = 100;
        resultsLabel.setLayoutData(resultLayoutData);

        resultsViewer = new TableViewer(resultsGroup);
        resultsViewer.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, columns, 1));
        ((GridData) resultsViewer.getControl().getLayoutData()).heightHint = 500;
        resultsViewer.setContentProvider(new ArrayContentProvider());
        resultsViewer.setLabelProvider(new XMLTableLabelProvider());
        resultsViewer.addDoubleClickListener(new IDoubleClickListener() {

            public void doubleClick(DoubleClickEvent event) {
                resultsViewer.setSelection(event.getSelection());
                try {
                    new DOMViewAction(ViewBrowserMainPage.this.getSite().getShell(), resultsViewer).run();
                } catch (Exception e) {
                    MessageDialog.openError(ViewBrowserMainPage.this.getSite().getShell(), Messages._Error,
                            Messages.bind(Messages.ViewBrowserMainPage_ErrorMsg, e.getClass().getName(),
                                    e.getLocalizedMessage()));
                }
            }
        });

        hookContextMenu();

        addListener();

    } catch (Exception e) {
        log.error(e.getMessage(), e);
    }

}

From source file:com.amalto.workbench.widgets.ComplexTableViewer.java

License:Open Source License

protected void createTable() {
    table = new Table(mainComposite, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER | SWT.FULL_SELECTION);
    viewer = new TableViewer(table);

    // table.setLayoutData(new GridData(GridData.FILL_BOTH));
    table.setToolTipText(Messages.ComplexTableViewer_TableTip);
    for (ComplexTableViewerColumn column : columns) {
        TableColumn tableColumn = new TableColumn(table, SWT.CENTER);
        tableColumn.setText(column.getName());
        if (!column.isNillable()) {
            tableColumn.setImage(ImageCache.getCreatedImage(EImage.WILDCARD.getPath()));
        }//from   www. j  av  a 2  s . co m
        if (column.isUnique()) {
            tableColumn.setImage(ImageCache.getCreatedImage(EImage.UNIQUE.getPath()));
        }
        if (column.getColumnWidth() > 0) {
            tableColumn.setWidth(column.getColumnWidth());
        } else {
            tableColumn.setWidth(200);
            tableColumn.pack();
        }
    }

    table.setHeaderVisible(true);
    table.setLinesVisible(true);
    table.addListener(SWT.MeasureItem, new Listener() {

        public void handleEvent(Event event) {
            event.height = event.gc.getFontMetrics().getHeight() + 5;
        }
    });

}

From source file:com.amalto.workbench.widgets.VersionTagWidget.java

License:Open Source License

public VersionTagWidget(Composite parent, String resourcesName, String defaultTagText, boolean isTagEditable,
        SelectionListener tagSelectionListener, SelectionListener restoreSelectionListener,
        // *** TMDM-8080, temp substituted start ***//
        // IDoubleClickListener tagsViewerDoubleClickListener, List<TagStructure> hisEntries) {
        IDoubleClickListener tagsViewerDoubleClickListener, List<Object> hisEntries) {
    // *** TMDM-8080, temp substituted end ***//
    composite = new Composite(parent, SWT.FILL);
    GridLayout layout = new GridLayout();
    layout.numColumns = 1;//from w  w w .  j ava 2 s  .c  om
    composite.setLayout(layout);
    Group tagGroup = new Group(composite, SWT.SHADOW_NONE);
    tagGroup.setLayout(new GridLayout(2, false));
    tagGroup.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
    tagGroup.setText(Messages.bind(Messages.VersionTagWidget_GroupTextX, resourcesName));

    Label tagLabel = new Label(tagGroup, SWT.NONE);
    tagLabel.setLayoutData(new GridData(SWT.LEFT, SWT.FILL, false, false, 1, 1));
    tagLabel.setText(Messages.VersionTagWidget_GroupText);

    tagText = new Text(tagGroup, SWT.BORDER);
    tagText.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
    if (defaultTagText == null) {
        defaultTagText = "";//$NON-NLS-1$
    }
    tagText.setText(defaultTagText);
    tagText.setEditable(isTagEditable);

    Label commentLabel = new Label(tagGroup, SWT.NONE);
    commentLabel.setLayoutData(new GridData(SWT.LEFT, SWT.FILL, false, false, 1, 1));
    commentLabel.setText(Messages.VersionTagWidget_Comment);

    commentText = new Text(tagGroup, SWT.MULTI | SWT.WRAP | SWT.BORDER | SWT.V_SCROLL);
    commentText.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
    commentText.setText("");//$NON-NLS-1$
    ((GridData) commentText.getLayoutData()).widthHint = 250;
    ((GridData) commentText.getLayoutData()).heightHint = 25;
    commentText.forceFocus();

    tagButton = new Button(tagGroup, SWT.PUSH);
    tagButton.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 2, 1));
    tagButton.setText(Messages.VersionTagWidget_GroupText);
    tagButton.addSelectionListener(tagSelectionListener);

    restoreGroup = new Group(composite, SWT.SHADOW_NONE);
    restoreGroup.setLayout(new GridLayout(1, true));
    restoreGroup.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
    restoreGroup.setText(Messages.bind(Messages.VersionTagWidget_RestoreX, resourcesName));
    restoreGroup.setEnabled(false);

    tagsViewer = new TableViewer(restoreGroup);
    tagsViewer.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 4, 1));
    ((GridData) tagsViewer.getControl().getLayoutData()).heightHint = 150;
    ((GridData) tagsViewer.getControl().getLayoutData()).widthHint = 250;
    tagsViewer.setContentProvider(new ArrayContentProvider());
    tagsViewer.setLabelProvider(new ITableLabelProvider() {

        public String getColumnText(Object element, int columnIndex) {
            // *** TMDM-8080, temp substituted start ***//
            // TagStructure entry = (TagStructure) element;
            //                return entry.getTagName() + " - " + entry.getLastComment() + "  [" + entry.getLastDate() + " "//$NON-NLS-1$//$NON-NLS-2$//$NON-NLS-3$
            //                        + entry.getLastAuthor() + "]";//$NON-NLS-1$
            return element.toString();
            // *** TMDM-8080, temp substituted end ***//
        }

        public Image getColumnImage(Object element, int columnIndex) {
            return null;
        }

        public void addListener(ILabelProviderListener listener) {
        }

        public void dispose() {
        }

        public boolean isLabelProperty(Object element, String property) {
            return false;
        }

        public void removeListener(ILabelProviderListener listener) {
        }
    });
    tagsViewer.addDoubleClickListener(tagsViewerDoubleClickListener);

    restoreButton = new Button(restoreGroup, SWT.PUSH);
    restoreButton.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
    restoreButton.setText(Messages.VersionTagWidget_Restore);
    restoreButton.addSelectionListener(restoreSelectionListener);

    // *** TMDM-8080, temp omitted start ***//
    // refreshData(hisEntries);
    // *** TMDM-8080, temp omitted end ***//
}

From source file:com.amazonaws.eclipse.core.ui.MultiValueEditorDialog.java

License:Apache License

@Override
protected Control createDialogArea(final Composite parent) {

    Composite composite = new Composite(parent, SWT.None);
    GridDataFactory.fillDefaults().grab(true, true).span(2, 1).applyTo(composite);

    TableColumnLayout layout = new TableColumnLayout();
    composite.setLayout(layout);// w  w  w .  j av a 2s . co  m

    this.tableViewer = new TableViewer(composite);
    this.tableViewer.getTable().setHeaderVisible(true);
    TableColumn tableColumn = new TableColumn(this.tableViewer.getTable(), SWT.NONE);
    tableColumn.setText(columnText);
    layout.setColumnData(tableColumn, new ColumnWeightData(100));

    this.tableViewer.setContentProvider(new AbstractTableContentProvider() {

        @Override
        public Object[] getElements(final Object inputElement) {
            Object[] rowsPlusNew = new Object[MultiValueEditorDialog.this.values.size() + 1];
            MultiValueEditorDialog.this.values.toArray(rowsPlusNew);
            rowsPlusNew[rowsPlusNew.length - 1] = NEW_VALUE;
            return rowsPlusNew;
        }
    });

    this.tableViewer.setLabelProvider(new AbstractTableLabelProvider() {

        @Override
        public String getColumnText(final Object element, final int columnIndex) {
            return (String) element;
        }
    });

    final Table table = this.tableViewer.getTable();
    final TableEditor editor = new TableEditor(table);
    editor.horizontalAlignment = SWT.LEFT;
    editor.grabHorizontal = true;
    table.addListener(SWT.MouseUp, new Listener() {

        public void handleEvent(final Event event) {
            Rectangle clientArea = table.getClientArea();
            Point pt = new Point(event.x, event.y);
            int index = table.getTopIndex();
            while (index < table.getItemCount()) {
                boolean visible = false;
                final TableItem item = table.getItem(index);

                // Only one column, but loop is here for completeness
                for (int i = 0; i < table.getColumnCount(); i++) {
                    Rectangle rect = item.getBounds(i);
                    if (rect.contains(pt)) {
                        final int column = i;
                        final Text text = new Text(table, SWT.NONE);
                        final int idx = index;
                        if (isRowUneditable(idx)) {
                            return;
                        }
                        Listener textListener = new Listener() {

                            public void handleEvent(final Event e) {
                                if (e.type == SWT.Traverse && e.detail == SWT.TRAVERSE_ESCAPE) {
                                    /* Skip data validation and dispose the text editor */
                                    text.dispose();
                                    e.doit = false;
                                    return;
                                } else if (e.type == SWT.Traverse && e.detail != SWT.TRAVERSE_RETURN) {
                                    /* No-op for keys other than escape or return. */
                                    return;
                                } else {
                                    /* For all other events, we first validate the data */
                                    if (!validateAttributeValue(text.getText())) {
                                        lockTableEditor(idx);
                                        return;
                                    }
                                    /* First unlock everything */
                                    unlockTableEditor();
                                    /* Then we handle different events */
                                    if (e.type == SWT.FocusOut) {
                                        modifyValue(item, column, idx, text);
                                        text.dispose();
                                    } else if (e.type == SWT.Traverse && e.detail == SWT.TRAVERSE_RETURN) {
                                        modifyValue(item, column, idx, text);
                                    } else if (e.type == SWT.Modify) {
                                        /* No-op */
                                    }
                                }
                            }
                        };

                        text.addListener(SWT.FocusOut, textListener);
                        text.addListener(SWT.Traverse, textListener);
                        text.addListener(SWT.Modify, textListener);
                        editor.setEditor(text, item, i);
                        text.setText(item.getText(i));

                        text.selectAll();
                        text.setFocus();
                        return;
                    }
                    if (!visible && rect.intersects(clientArea)) {
                        visible = true;
                    }
                }
                if (!visible) {
                    return;
                }
                index++;
            }
        }
    });

    /* Suppress changing to other table rows when the editor is locked. */
    this.tableViewer.addSelectionChangedListener(new ISelectionChangedListener() {

        private boolean update = true;
        private ISelection lastSelection;

        public void selectionChanged(SelectionChangedEvent event) {
            if (update && isLocked()) {
                update = false; // avoid infinite loop
                tableViewer.setSelection(lastSelection);
                update = true;
            } else if (!isLocked()) {
                lastSelection = event.getSelection();
            }
        }

    });

    this.tableViewer.setInput(values.size());
    this.tableViewer.getTable().getItem(this.values.size())
            .setForeground(Display.getDefault().getSystemColor(SWT.COLOR_DARK_GRAY));

    return composite;
}

From source file:com.amazonaws.eclipse.datatools.enablement.simpledb.ui.editor.MultiValueEditorDialog.java

License:Apache License

@Override
protected Control createDialogArea(final Composite parent) {

    Composite composite = new Composite(parent, SWT.None);
    GridDataFactory.fillDefaults().grab(true, true).span(2, 1).applyTo(composite);

    TableColumnLayout layout = new TableColumnLayout();
    composite.setLayout(layout);//from   www.  j a va  2s.co  m

    this.tableViewer = new TableViewer(composite);
    this.tableViewer.getTable().setHeaderVisible(true);
    TableColumn tableColumn = new TableColumn(this.tableViewer.getTable(), SWT.NONE);
    tableColumn.setText("Attributes");
    layout.setColumnData(tableColumn, new ColumnWeightData(100));

    this.tableViewer.setContentProvider(new AbstractTableContentProvider() {

        @Override
        public Object[] getElements(final Object inputElement) {
            Object[] rowsPlusNew = new Object[MultiValueEditorDialog.this.attributeValues.size() + 1];
            MultiValueEditorDialog.this.attributeValues.toArray(rowsPlusNew);
            rowsPlusNew[rowsPlusNew.length - 1] = NEW_VALUE;
            return rowsPlusNew;
        }
    });

    this.tableViewer.setLabelProvider(new AbstractTableLabelProvider() {

        @Override
        public String getColumnText(final Object element, final int columnIndex) {
            return (String) element;
        }
    });

    final Table table = this.tableViewer.getTable();
    final TableEditor editor = new TableEditor(table);
    editor.horizontalAlignment = SWT.LEFT;
    editor.grabHorizontal = true;
    table.addListener(SWT.MouseUp, new Listener() {

        public void handleEvent(final Event event) {
            Rectangle clientArea = table.getClientArea();
            Point pt = new Point(event.x, event.y);
            int index = table.getTopIndex();
            while (index < table.getItemCount()) {
                boolean visible = false;
                final TableItem item = table.getItem(index);

                // Only one column, but loop is here for completeness
                for (int i = 0; i < table.getColumnCount(); i++) {
                    Rectangle rect = item.getBounds(i);
                    if (rect.contains(pt)) {
                        final int column = i;
                        final Text text = new Text(table, SWT.NONE);
                        final int idx = index;

                        Listener textListener = new Listener() {

                            public void handleEvent(final Event e) {
                                switch (e.type) {
                                case SWT.FocusOut:
                                    modifyValue(item, column, idx, text);
                                    text.dispose();
                                    break;
                                case SWT.Traverse:
                                    switch (e.detail) {
                                    case SWT.TRAVERSE_RETURN:
                                        modifyValue(item, column, idx, text);
                                        // FALL THROUGH
                                    case SWT.TRAVERSE_ESCAPE:
                                        text.dispose();
                                        e.doit = false;
                                    }
                                    break;
                                }
                            }
                        };

                        text.addListener(SWT.FocusOut, textListener);
                        text.addListener(SWT.Traverse, textListener);
                        editor.setEditor(text, item, i);
                        text.setText(item.getText(i));

                        text.selectAll();
                        text.setFocus();
                        return;
                    }
                    if (!visible && rect.intersects(clientArea)) {
                        visible = true;
                    }
                }
                if (!visible) {
                    return;
                }
                index++;
            }
        }
    });

    this.tableViewer.setInput(this.item);
    this.tableViewer.getTable().getItem(this.attributeValues.size())
            .setForeground(Display.getDefault().getSystemColor(SWT.COLOR_DARK_GRAY));

    return composite;
}

From source file:com.amazonaws.eclipse.dynamodb.editor.DynamoDBTableEditor.java

License:Apache License

private void createResultsTable(Composite resultsComposite) {
    TableColumnLayout tableColumnLayout = new TableColumnLayout();
    resultsComposite.setLayout(tableColumnLayout);

    this.viewer = new TableViewer(resultsComposite);
    this.viewer.getTable().setLinesVisible(true);
    this.viewer.getTable().setHeaderVisible(true);

    this.contentProvider = new ContentProvider();
    this.viewer.setContentProvider(this.contentProvider);
    this.viewer.setLabelProvider(new LabelProvider());

    final Table table = this.viewer.getTable();

    final TableEditor editor = new TableEditor(table);
    editor.horizontalAlignment = SWT.LEFT;
    editor.grabHorizontal = true;//ww  w  . j  av a  2 s. c o m

    final TextCellEditorListener listener = new TextCellEditorListener(table, editor);
    table.addListener(SWT.MouseUp, listener);
    table.addListener(SWT.FocusOut, listener);
    table.addListener(SWT.KeyDown, listener);

    MenuManager menuManager = new MenuManager("#PopupMenu");
    menuManager.setRemoveAllWhenShown(true);
    menuManager.addMenuListener(new IMenuListener() {

        public void menuAboutToShow(IMenuManager manager) {
            if (table.getSelectionCount() > 0) {

                manager.add(new Action() {

                    @Override
                    public ImageDescriptor getImageDescriptor() {
                        return AwsToolkitCore.getDefault().getImageRegistry()
                                .getDescriptor(AwsToolkitCore.IMAGE_REMOVE);
                    }

                    @Override
                    public void run() {
                        listener.deleteItems();
                    }

                    @Override
                    public String getText() {
                        if (table.getSelectionCount() == 1) {
                            return "Delete selected item";
                        } else {
                            return "Delete selected items";
                        }
                    }

                });
            }
        }
    });
    table.setMenu(menuManager.createContextMenu(table));
}