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(Composite parent, int style) 

Source Link

Document

Creates a table viewer on a newly-created table control under the given parent.

Usage

From source file:com.archimatetool.editor.propertysections.UsedInRelationshipsSection.java

License:Open Source License

private void createTableControl(Composite parent) {
    createLabel(parent, Messages.UsedInRelationshipsSection_0, ITabbedLayoutConstants.STANDARD_LABEL_WIDTH,
            SWT.NONE);/*www.  j a v a2 s .c  o  m*/

    // Table
    Composite tableComp = createTableComposite(parent, SWT.NONE);
    fTableLayout = (UpdatingTableColumnLayout) tableComp.getLayout();
    fTableViewer = new TableViewer(tableComp, SWT.BORDER | SWT.FULL_SELECTION);

    // Column
    TableViewerColumn column = new TableViewerColumn(fTableViewer, SWT.NONE, 0);
    fTableLayout.setColumnData(column.getColumn(), new ColumnWeightData(100, false));

    // On Mac shows alternate table row colours
    fTableViewer.getTable().setLinesVisible(true);

    // Help ID
    PlatformUI.getWorkbench().getHelpSystem().setHelp(fTableViewer.getTable(), HELP_ID);

    fTableViewer.setContentProvider(new IStructuredContentProvider() {
        public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
        }

        public void dispose() {
        }

        public Object[] getElements(Object inputElement) {
            return ArchimateModelUtils.getRelationships((IArchimateElement) inputElement).toArray();
        }
    });

    fTableViewer.setLabelProvider(new LabelProvider() {
        @Override
        public String getText(Object element) {
            IRelationship relationship = (IRelationship) element;
            String name = ArchimateLabelProvider.INSTANCE.getLabel(relationship) + " ("; //$NON-NLS-1$
            name += ArchimateLabelProvider.INSTANCE.getLabel(relationship.getSource());
            name += " - "; //$NON-NLS-1$
            name += ArchimateLabelProvider.INSTANCE.getLabel(relationship.getTarget());
            name += ")"; //$NON-NLS-1$
            return name;
        }

        @Override
        public Image getImage(Object element) {
            return ArchimateLabelProvider.INSTANCE.getImage(element);
        }
    });

    fTableViewer.addDoubleClickListener(new IDoubleClickListener() {
        public void doubleClick(DoubleClickEvent event) {
            if (isAlive()) {
                Object o = ((IStructuredSelection) event.getSelection()).getFirstElement();
                if (o instanceof IArchimateElement) {
                    IRelationship relation = (IRelationship) o;
                    ITreeModelView view = (ITreeModelView) ViewManager.findViewPart(ITreeModelView.ID);
                    if (view != null) {
                        view.getViewer().setSelection(new StructuredSelection(relation), true);
                    }
                }
            }
        }
    });

    fTableViewer.setSorter(new ViewerSorter());
}

From source file:com.archimatetool.editor.propertysections.UsedInViewsSection.java

License:Open Source License

private void createTableControl(Composite parent) {
    createLabel(parent, Messages.UsedInViewsSection_0, ITabbedLayoutConstants.STANDARD_LABEL_WIDTH, SWT.NONE);

    // Table//from   ww  w.j a v a2 s.  c o  m
    Composite tableComp = createTableComposite(parent, SWT.NONE);
    fTableLayout = (UpdatingTableColumnLayout) tableComp.getLayout();
    fTableViewer = new TableViewer(tableComp, SWT.BORDER | SWT.FULL_SELECTION);

    // Column
    TableViewerColumn column = new TableViewerColumn(fTableViewer, SWT.NONE, 0);
    fTableLayout.setColumnData(column.getColumn(), new ColumnWeightData(100, false));

    // On Mac shows alternate table row colours
    fTableViewer.getTable().setLinesVisible(true);

    // Help ID
    PlatformUI.getWorkbench().getHelpSystem().setHelp(fTableViewer.getTable(), HELP_ID);

    fTableViewer.setContentProvider(new IStructuredContentProvider() {
        public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
        }

        public void dispose() {
        }

        public Object[] getElements(Object inputElement) {
            return DiagramModelUtils.findReferencedDiagramsForElement((IArchimateElement) inputElement)
                    .toArray();
        }
    });

    fTableViewer.setLabelProvider(new LabelProvider() {
        @Override
        public String getText(Object element) {
            return ((IDiagramModel) element).getName();
        }

        @Override
        public Image getImage(Object element) {
            return IArchimateImages.ImageFactory.getImage(IArchimateImages.ICON_DIAGRAM_16);
        }
    });

    fTableViewer.addDoubleClickListener(new IDoubleClickListener() {
        public void doubleClick(DoubleClickEvent event) {
            if (!isAlive()) {
                return;
            }
            Object o = ((IStructuredSelection) event.getSelection()).getFirstElement();
            if (o instanceof IDiagramModel) {
                IDiagramModel diagramModel = (IDiagramModel) o;
                IDiagramModelEditor editor = EditorManager.openDiagramEditor(diagramModel);
                if (editor instanceof IArchimateDiagramEditor) {
                    ((IArchimateDiagramEditor) editor)
                            .selectElements(new IArchimateElement[] { fArchimateElement });
                }
            }
        }
    });

    fTableViewer.setSorter(new ViewerSorter());
}

From source file:com.archimatetool.editor.propertysections.UserPropertiesManagerDialog.java

License:Open Source License

private void createTableControl(Composite parent) {
    Composite tableComp = new Composite(parent, SWT.BORDER);
    TableColumnLayout tableLayout = new TableColumnLayout();
    tableComp.setLayout(tableLayout);/* www.ja va 2 s .co  m*/
    tableComp.setLayoutData(new GridData(GridData.FILL_BOTH));

    fTableViewer = new TableViewer(tableComp, SWT.MULTI | SWT.FULL_SELECTION);
    fTableViewer.getControl().setLayoutData(new GridData(GridData.FILL_BOTH));

    fTableViewer.getTable().setHeaderVisible(true);
    fTableViewer.getTable().setLinesVisible(true);

    fTableViewer.setSorter(new ViewerSorter());

    // Columns
    TableViewerColumn columnOldKey = new TableViewerColumn(fTableViewer, SWT.NONE, 0);
    columnOldKey.getColumn().setText(Messages.UserPropertiesManagerDialog_6);
    tableLayout.setColumnData(columnOldKey.getColumn(), new ColumnWeightData(40, true));

    TableViewerColumn columnNewKey = new TableViewerColumn(fTableViewer, SWT.NONE, 1);
    columnNewKey.getColumn().setText(Messages.UserPropertiesManagerDialog_7);
    tableLayout.setColumnData(columnNewKey.getColumn(), new ColumnWeightData(40, true));
    columnNewKey.setEditingSupport(new KeyEditingSupport(fTableViewer));

    TableViewerColumn columnUsedNumber = new TableViewerColumn(fTableViewer, SWT.NONE, 2);
    columnUsedNumber.getColumn().setText("# " + Messages.UserPropertiesManagerDialog_8); //$NON-NLS-1$
    tableLayout.setColumnData(columnUsedNumber.getColumn(), new ColumnWeightData(20, true));

    // Content Provider
    fTableViewer.setContentProvider(new IStructuredContentProvider() {
        public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
        }

        public void dispose() {
        }

        public Object[] getElements(Object inputElement) {
            return fKeysTable.entrySet().toArray();
        }
    });

    // Label Provider
    fTableViewer.setLabelProvider(new LabelCellProvider());

    fTableViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            fActionDelete.setEnabled(!event.getSelection().isEmpty());
            fButtonDelete.setEnabled(!event.getSelection().isEmpty());

            fActionRename.setEnabled(!event.getSelection().isEmpty());
            fButtonRename.setEnabled(!event.getSelection().isEmpty());
        }
    });

    fTableViewer.setInput(""); // anything will do //$NON-NLS-1$
}

From source file:com.archimatetool.editor.propertysections.UserPropertiesSection.java

License:Open Source License

private void createTableControl(Composite parent) {
    // Table Composite
    Composite tableComp = createTableComposite(parent, SWT.NULL);
    fTableLayout = (UpdatingTableColumnLayout) tableComp.getLayout();

    // Table Viewer
    fTableViewer = new TableViewer(tableComp, SWT.MULTI | SWT.BORDER | SWT.FULL_SELECTION);

    fTableViewer.getTable().setHeaderVisible(true);
    fTableViewer.getTable().setLinesVisible(true);

    addDragSupport();/*ww w.  j  a  va2s.c o  m*/
    addDropSupport();

    // Help ID on table
    PlatformUI.getWorkbench().getHelpSystem().setHelp(fTableViewer.getTable(), HELP_ID);

    // Columns
    TableViewerColumn columnBlank = new TableViewerColumn(fTableViewer, SWT.NONE, 0);
    fTableLayout.setColumnData(columnBlank.getColumn(), new ColumnPixelData(24, false));

    TableViewerColumn columnKey = new TableViewerColumn(fTableViewer, SWT.NONE, 1);
    columnKey.getColumn().setText(Messages.UserPropertiesSection_0);
    fTableLayout.setColumnData(columnKey.getColumn(), new ColumnWeightData(20, true));
    columnKey.setEditingSupport(new KeyEditingSupport(fTableViewer));

    // Click on Key Table Header
    columnKey.getColumn().addListener(SWT.Selection, new Listener() {
        @Override
        public void handleEvent(Event event) {
            sortKeys();
        }
    });

    TableViewerColumn columnValue = new TableViewerColumn(fTableViewer, SWT.NONE, 2);
    columnValue.getColumn().setText(Messages.UserPropertiesSection_1);
    fTableLayout.setColumnData(columnValue.getColumn(), new ColumnWeightData(80, true));
    columnValue.setEditingSupport(new ValueEditingSupport(fTableViewer));

    // Content Provider
    fTableViewer.setContentProvider(new IStructuredContentProvider() {
        public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
        }

        public void dispose() {
        }

        public Object[] getElements(Object inputElement) {
            return ((IProperties) inputElement).getProperties().toArray();
        }
    });

    // Label Provider
    fTableViewer.setLabelProvider(new LabelCellProvider());

    // Toolbar
    ToolBar toolBar = new ToolBar(parent, SWT.FLAT | SWT.VERTICAL);
    GridDataFactory.fillDefaults().align(SWT.END, SWT.TOP).applyTo(toolBar);

    ToolBarManager toolBarmanager = new ToolBarManager(toolBar);

    // New Property
    fActionNewProperty = new Action(Messages.UserPropertiesSection_2) {
        @Override
        public void run() {
            if (isAlive()) {
                int index = -1;
                IProperty selected = (IProperty) ((IStructuredSelection) fTableViewer.getSelection())
                        .getFirstElement();
                if (selected != null) {
                    index = fPropertiesElement.getProperties().indexOf(selected) + 1;
                }
                IProperty property = IArchimateFactory.eINSTANCE.createProperty();
                getCommandStack()
                        .execute(new NewPropertyCommand(fPropertiesElement.getProperties(), property, index));
                fTableViewer.editElement(property, 1);
            }
        }

        @Override
        public String getToolTipText() {
            return getText();
        }

        @Override
        public ImageDescriptor getImageDescriptor() {
            return IArchimateImages.ImageFactory.getImageDescriptor(IArchimateImages.ICON_PLUS);
        }
    };

    // New Multiple Properties
    fActionNewMultipleProperty = new Action(Messages.UserPropertiesSection_3) {
        @Override
        public void run() {
            if (isAlive()) {
                MultipleAddDialog dialog = new MultipleAddDialog(fPage.getSite().getShell());
                if (dialog.open() == Window.OK) {
                    getCommandStack().execute(dialog.getCommand());
                }
            }
        }

        @Override
        public String getToolTipText() {
            return getText();
        }

        @Override
        public ImageDescriptor getImageDescriptor() {
            return IArchimateImages.ImageFactory.getImageDescriptor(IArchimateImages.ICON_MUTIPLE);
        }
    };

    // Remove Property
    fActionRemoveProperty = new Action(Messages.UserPropertiesSection_4) {
        @Override
        public void run() {
            if (isAlive()) {
                CompoundCommand compoundCmd = new EObjectNonNotifyingCompoundCommand(fPropertiesElement) {
                    @Override
                    public String getLabel() {
                        return getCommands().size() > 1 ? Messages.UserPropertiesSection_5
                                : Messages.UserPropertiesSection_6;
                    }
                };
                for (Object o : ((IStructuredSelection) fTableViewer.getSelection()).toList()) {
                    Command cmd = new RemovePropertyCommand(fPropertiesElement.getProperties(), (IProperty) o);
                    compoundCmd.add(cmd);
                }
                getCommandStack().execute(compoundCmd);
            }
        }

        @Override
        public String getToolTipText() {
            return getText();
        }

        @Override
        public ImageDescriptor getImageDescriptor() {
            return IArchimateImages.ImageFactory.getImageDescriptor(IArchimateImages.ICON_SMALL_X);
        }
    };
    fActionRemoveProperty.setEnabled(false);

    // Manage
    fActionShowKeyEditor = new Action(Messages.UserPropertiesSection_7) {
        @Override
        public void run() {
            if (isAlive()) {
                UserPropertiesManagerDialog dialog = new UserPropertiesManagerDialog(fPage.getSite().getShell(),
                        getArchimateModel());
                dialog.open();
            }
        }

        @Override
        public String getToolTipText() {
            return getText();
        }

        @Override
        public ImageDescriptor getImageDescriptor() {
            return IArchimateImages.ImageFactory.getImageDescriptor(IArchimateImages.ICON_COG);
        }
    };

    toolBarmanager.add(fActionNewProperty);
    toolBarmanager.add(fActionNewMultipleProperty);
    toolBarmanager.add(fActionRemoveProperty);
    toolBarmanager.add(fActionShowKeyEditor);
    toolBarmanager.update(true);

    /*
     * Selection Listener
     */
    fTableViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            fActionRemoveProperty.setEnabled(!event.getSelection().isEmpty());
        }
    });

    /*
     * Table Double-click on cell
     */
    fTableViewer.getTable().addListener(SWT.MouseDoubleClick, new Listener() {
        @Override
        public void handleEvent(Event event) {
            // Get Table item
            TableItem item = fTableViewer.getTable().getItem(new Point(event.x, event.y));
            // Double-click into empty table creates new Property
            if (item == null) {
                fActionNewProperty.run();
            }
            // Handle selected item property double-clicked
            else {
                if (item.getData() instanceof IProperty) {
                    handleDoubleClick((IProperty) item.getData());
                }
            }
        }
    });

    hookContextMenu();
}

From source file:com.architexa.diagrams.jdt.utils.ArrayMultipleElementSelectionDialog.java

License:Open Source License

@Override
protected Control createDialogArea(Composite parent) {
    Composite composite = (Composite) super.createDialogArea(parent);
    viewer = new TableViewer(composite, SWT.BORDER | SWT.CHECK);
    viewer.getControl().setLayoutData(new GridData(GridData.FILL_BOTH));
    viewer.setContentProvider(new ArrayContentProvider());
    viewer.setLabelProvider(arrProvider);
    viewer.setInput(arr);//from  w w  w.ja  v  a2s  . co  m
    viewer.setSelection(new StructuredSelection(arr[0]));
    return composite;
}

From source file:com.arm.cmsis.pack.project.wizards.ProjectSelectionDialog.java

License:Open Source License

@Override
protected Control createDialogArea(Composite parent) {
    // page group
    Composite composite = (Composite) super.createDialogArea(parent);

    createMessageArea(composite);//w  ww  . jav a 2 s  . c  om

    fTableViewer = new TableViewer(composite, SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER);
    fTableViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            doSelectionChanged(((IStructuredSelection) event.getSelection()).toArray());
        }
    });
    fTableViewer.addDoubleClickListener(new IDoubleClickListener() {
        @SuppressWarnings("synthetic-access")
        @Override
        public void doubleClick(DoubleClickEvent event) {
            okPressed();
        }
    });
    GridData data = new GridData(SWT.FILL, SWT.FILL, true, true);
    data.heightHint = SIZING_SELECTION_WIDGET_HEIGHT;
    data.widthHint = SIZING_SELECTION_WIDGET_WIDTH;
    fTableViewer.getTable().setLayoutData(data);

    fTableViewer.setContentProvider(ArrayContentProvider.getInstance());
    fTableViewer.setLabelProvider(new LabelProvider() {
        @Override
        public String getText(Object element) {
            IRteProject project = (IRteProject) element;
            if (project != null) {
                return project.getName();
            }
            return null;
        }

        @Override
        public Image getImage(Object element) {
            IRteProject project = (IRteProject) element;
            if (project != null) {
                return PlatformUI.getWorkbench().getSharedImages()
                        .getImage(org.eclipse.ui.ide.IDE.SharedImages.IMG_OBJ_PROJECT);
            }
            return null;
        }
    });

    fTableViewer.setInput(fProjectsWithSpecifics);
    doSelectionChanged(new Object[0]);
    return composite;
}

From source file:com.arm.cmsis.pack.ui.widgets.RteDeviceInfoWidget.java

License:Open Source License

/**
 * Create the composite./*from w ww.j  a  va  2s.co m*/
 * @param parent
 * @param style
 */
public RteDeviceInfoWidget(Composite parent) {
    super(parent, SWT.BORDER);

    GridLayout gridLayout = new GridLayout(6, false);
    gridLayout.horizontalSpacing = 8;
    setLayout(gridLayout);

    Label lblDeviceLabel = new Label(this, SWT.NONE);
    lblDeviceLabel.setText(CpStringsUI.RteDeviceSelectorWidget_DeviceLabel);

    lblDevice = new Label(this, SWT.NONE);
    lblDevice.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
    FontDescriptor boldDescriptor = FontDescriptor.createFrom(lblDevice.getFont()).setStyle(SWT.BOLD)
            .increaseHeight(1);
    Font boldFont = boldDescriptor.createFont(lblDevice.getDisplay());
    lblDevice.setFont(boldFont);

    btnSelect = new Button(this, SWT.NONE);
    btnSelect.setText(CpStringsUI.RteDeviceInfoWidget_btnSelect_text);
    new Label(this, SWT.NONE);
    new Label(this, SWT.NONE);
    new Label(this, SWT.NONE);

    lblFamilyLabel = new Label(this, SWT.NONE);
    lblFamilyLabel.setText(CpStringsUI.RteDeviceInfoWidget_lblFamily_text);

    lblFamily = new Label(this, SWT.NONE);
    lblFamily.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1));
    new Label(this, SWT.NONE);

    Label lblCpuLabel = new Label(this, SWT.NONE);
    lblCpuLabel.setText(CpStringsUI.RteDeviceSelectorWidget_CPULabel);
    lblCpuLabel.setBounds(0, 0, 36, 13);

    lblCpu = new Label(this, SWT.NONE);
    lblCpu.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
    lblCpu.setBounds(0, 0, 32, 13);
    new Label(this, SWT.NONE);

    lblSubfamilyLabel = new Label(this, SWT.NONE);
    lblSubfamilyLabel.setText(CpStringsUI.RteDeviceInfoWidget_lblSubFamily_text);

    lblSubfamily = new Label(this, SWT.NONE);
    lblSubfamily.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1));
    new Label(this, SWT.NONE);

    Label lblClocklabel = new Label(this, SWT.NONE);
    lblClocklabel.setText(CpStringsUI.RteDeviceSelectorWidget_lblClocklabel_text);

    lblClock = new Label(this, SWT.NONE);
    lblClock.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1));
    new Label(this, SWT.NONE);

    Label lblVendorLabel = new Label(this, SWT.NONE);
    lblVendorLabel.setText(CpStringsUI.RteDeviceSelectorWidget_VendorLabel);

    lblVendor = new Label(this, SWT.NONE);
    lblVendor.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
    new Label(this, SWT.NONE);

    Label lblMemoryLabel = new Label(this, SWT.NONE);
    lblMemoryLabel.setText(CpStringsUI.RteDeviceSelectorWidget_lblMemory);

    lblMemory = new Label(this, SWT.NONE);
    lblMemory.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1));
    new Label(this, SWT.NONE);

    Label lblPackLabel = new Label(this, SWT.NONE);
    lblPackLabel.setText(CpStringsUI.RteDeviceSelectorWidget_lblPack_text);

    lblPack = new Label(this, SWT.NONE);
    lblPack.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1));
    new Label(this, SWT.NONE);

    Label lblFpuLabel = new Label(this, SWT.NONE);
    lblFpuLabel.setText(CpStringsUI.RteDeviceSelectorWidget_FPULabel);
    lblFpuLabel.setBounds(0, 0, 38, 13);

    lblFpu = new Label(this, SWT.NONE);
    lblFpu.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1));
    new Label(this, SWT.NONE);

    Label lblUrlLabel = new Label(this, SWT.NONE);
    lblUrlLabel.setText(CpStringsUI.RteDeviceSelectorWidget_lblUrl);

    linkUrl = new Link(this, SWT.NONE);
    linkUrl.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1));
    linkUrl.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            OpenURL.open(url, getShell());
        }
    });
    new Label(this, SWT.NONE);

    Label lblEndianLabel = new Label(this, SWT.NONE);
    lblEndianLabel.setText(CpStringsUI.RteDeviceSelectorWidget_Endian);
    lblEndianLabel.setBounds(0, 0, 37, 13);

    lblEndian = new Label(this, SWT.NONE);
    lblEndian.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1));
    new Label(this, SWT.NONE);

    Label lblBooks = new Label(this, SWT.NONE);
    lblBooks.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 2, 1));
    lblBooks.setText(CpStringsUI.RteDeviceInfoWidget_lblBooks_text);
    new Label(this, SWT.NONE);

    lblDescription = new Label(this, SWT.NONE);
    lblDescription.setText(CpStringsUI.RteDeviceInfoWidget_lblDescription_text);
    new Label(this, SWT.NONE);
    new Label(this, SWT.NONE);

    tableViewer = new TableViewer(this, SWT.BORDER | SWT.FULL_SELECTION | SWT.V_SCROLL);
    table = tableViewer.getTable();
    table.setLayoutData(new GridData(SWT.FILL, SWT.TOP, true, false, 3, 1));

    fBookColumnAdvisor = new RteBookColumnAdvisor(tableViewer);
    ColumnViewerToolTipSupport.enableFor(tableViewer);

    tableViewer.setContentProvider(new RteBookContentProvider());
    //   tableViewer.setLabelProvider(new RteBookLabelProvider());
    tableViewer.setLabelProvider(new AdvisedCellLabelProvider(fBookColumnAdvisor, 0));

    text = new Text(this, SWT.BORDER | SWT.WRAP | SWT.V_SCROLL);
    GridData gd_text = new GridData(SWT.FILL, SWT.FILL, true, true, 3, 3);
    gd_text.widthHint = 240;
    gd_text.minimumWidth = 200;
    text.setLayoutData(gd_text);
    text.setEditable(false);

    lblBoards = new Label(this, SWT.NONE);
    lblBoards.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 2, 1));
    lblBoards.setText(CpStringsUI.RteDeviceInfoWidget_lblBoards_text);
    new Label(this, SWT.NONE);

    treeViewer = new TreeViewer(this, SWT.BORDER | SWT.FULL_SELECTION);
    tree = treeViewer.getTree();
    tree.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 3, 1));

    treeViewer.setContentProvider(new RteBoardContentProvider());
    //      treeViewer.setLabelProvider(new RteBoardLabelProvider());

    fBoardColumnAdvisor = new RteBookColumnAdvisor(treeViewer);
    ColumnViewerToolTipSupport.enableFor(treeViewer);
    treeViewer.setLabelProvider(new AdvisedCellLabelProvider(fBoardColumnAdvisor, 0));

}

From source file:com.asakusafw.shafu.internal.ui.preferences.ShafuPreferencePage.java

License:Apache License

private void createPropertiesField(Composite pane, final String key, int span, String title) {
    Group group = new Group(pane, SWT.NONE);
    group.setText(title);/* w w w  . j av a2 s  . c o  m*/
    group.setLayoutData(
            GridDataFactory.swtDefaults().align(SWT.FILL, SWT.FILL).grab(true, true).span(span, 1).create());
    group.setLayout(new GridLayout(2, false));

    final Map<String, String> contents = new LinkedHashMap<String, String>();
    final TableViewer viewer = new TableViewer(group,
            SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER | SWT.FULL_SELECTION);
    viewer.getControl().setLayoutData(GridDataFactory.fillDefaults().grab(true, true).span(1, 3)
            .indent(BasicField.getDecorationWidth(), 0).create());
    viewer.setContentProvider(new PropertiesContentProvider());
    viewer.setLabelProvider(new PropertiesLabelProvider());
    viewer.setInput(contents);
    viewer.getTable().setLinesVisible(true);
    viewer.getTable().setHeaderVisible(true);
    TableColumn keyColumn = new TableColumn(viewer.getTable(), SWT.NONE, 0);
    keyColumn.setResizable(true);
    keyColumn.setText(Messages.ShafuPreferencePage_propertiesKeyLabel);
    keyColumn.setWidth(convertWidthInCharsToPixels(20));
    TableColumn valueColumn = new TableColumn(viewer.getTable(), SWT.NONE, 1);
    valueColumn.setResizable(true);
    valueColumn.setText(Messages.ShafuPreferencePage_propertiesValueLabel);
    valueColumn.setWidth(convertWidthInCharsToPixels(40));
    viewer.addDoubleClickListener(new IDoubleClickListener() {
        @Override
        public void doubleClick(DoubleClickEvent event) {
            ISelection s = event.getSelection();
            if (s.isEmpty()) {
                return;
            }
            if ((s instanceof IStructuredSelection) == false) {
                return;
            }
            Map.Entry<?, ?> first = (Map.Entry<?, ?>) ((IStructuredSelection) s).iterator().next();
            String oldKey = (String) first.getKey();
            String oldValue = (String) first.getValue();
            PropertyEntryInputDialog dialog = new PropertyEntryInputDialog(getShell(), contents, oldKey,
                    oldValue);
            if (dialog.open() != Window.OK) {
                return;
            }
            contents.remove(oldKey);
            contents.put(dialog.getInputKey(), dialog.getInputValue());
            viewer.refresh();
            setPreferenceValue(key, encodeMap(contents));
        }
    });

    final Button addButton = new Button(group, SWT.PUSH);
    addButton.setText(Messages.ShafuPreferencePage_propertiesAddLabel);
    addButton.setLayoutData(GridDataFactory.swtDefaults().align(SWT.FILL, SWT.BEGINNING).create());
    addButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            PropertyEntryInputDialog dialog = new PropertyEntryInputDialog(getShell(), contents);
            if (dialog.open() != Window.OK) {
                return;
            }
            contents.put(dialog.getInputKey(), dialog.getInputValue());
            viewer.refresh();
            setPreferenceValue(key, encodeMap(contents));
        }
    });

    final Button removeButton = new Button(group, SWT.PUSH);
    removeButton.setText(Messages.ShafuPreferencePage_propertiesRemoveLabel);
    removeButton.setLayoutData(GridDataFactory.swtDefaults().align(SWT.FILL, SWT.BEGINNING).create());
    removeButton.setEnabled(false);
    removeButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            ISelection selection = viewer.getSelection();
            if (selection instanceof IStructuredSelection) {
                Iterator<?> iter = ((IStructuredSelection) selection).iterator();
                Set<String> keys = new HashSet<String>();
                while (iter.hasNext()) {
                    Map.Entry<?, ?> entry = (Map.Entry<?, ?>) iter.next();
                    keys.add((String) entry.getKey());
                }
                contents.keySet().removeAll(keys);
                viewer.refresh();
                setPreferenceValue(key, encodeMap(contents));
            }
        }
    });

    viewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            removeButton.setEnabled(event.getSelection().isEmpty() == false);
        }
    });

    registerField(new PreferenceField(key, viewer.getControl()) {
        @Override
        public void refresh() {
            String value = getPreferenceValue(key);
            Map<String, String> map = decodeToMap(value);
            contents.clear();
            contents.putAll(map);
            viewer.refresh();
            setPreferenceValue(key, encodeMap(contents));
        }
    });
}

From source file:com.astra.ses.spell.database.browser.views.DatabasePage.java

License:Open Source License

/**************************************************************************
 * Create the page controls/*ww  w . ja v a2 s. c o m*/
 *************************************************************************/
@Override
public void createControl(Composite parent) {
    m_parent = new Composite(parent, SWT.BORDER);
    m_parent.setLayoutData(new GridData(GridData.FILL_BOTH));
    m_parent.setLayout(new GridLayout(1, true));

    m_lblProjName = new Label(m_parent, SWT.NONE);
    m_lblProjName.setText("Project: " + m_projectName);
    m_lblProjName.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));

    m_lblDbName = new Label(m_parent, SWT.NONE);
    m_lblDbName.setText("Database: (none)");
    m_lblDbName.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));

    m_viewer = new TableViewer(m_parent, SWT.VIRTUAL | SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER);

    TableColumn nameCol = new TableColumn(m_viewer.getTable(), SWT.LEFT);
    nameCol.setText("Name");
    nameCol.setWidth(80);
    TableColumn descCol = new TableColumn(m_viewer.getTable(), SWT.LEFT);
    descCol.setText("Description");
    descCol.setWidth(140);

    /* Table viewer */
    GridData viewerData = new GridData(GridData.FILL_BOTH);
    m_viewer.getTable().setLayoutData(viewerData);
    m_viewer.getTable().setHeaderVisible(true);
    m_viewer.getTable().setLinesVisible(false);

    /* Text widget */
    GridData textData = new GridData(GridData.FILL_HORIZONTAL | GridData.GRAB_HORIZONTAL);
    textData.horizontalIndent = 0;
    textData.verticalIndent = 0;
    m_filterText = new Text(m_parent, SWT.BORDER);
    m_filterText.setLayoutData(textData);
    m_filterText.addModifyListener(new ModifyListener() {
        @Override
        public void modifyText(ModifyEvent e) {
            Text filterText = (Text) e.widget;
            String filter = filterText.getText().toUpperCase();
            try {
                Pattern regex = Pattern.compile(FilterUtils.globify(filter));
                m_viewerFilter.setPattern(regex);
                m_viewer.refresh();
            } catch (PatternSyntaxException p) {
                // do nothing
            }
        }
    });

    getSite().setSelectionProvider(m_viewer);
    initContents();
    initDragAction();
}

From source file:com.astra.ses.spell.database.browser.views.telecommand.TelecommandViewPart.java

License:Open Source License

@Override
public void createPartControl(Composite parent) {
    GridLayout parentLayout = new GridLayout(1, true);
    parentLayout.marginHeight = 0;/*from   w w w . j a v a2  s. c  o m*/
    parentLayout.marginWidth = 0;
    parent.setLayout(parentLayout);

    /*
     * DB Details composite
     */
    Composite dbDetails = new Composite(parent, SWT.NONE);
    GridLayout detailsLayout = new GridLayout(2, false);
    GridData detailsData = new GridData(GridData.FILL_HORIZONTAL | GridData.GRAB_HORIZONTAL);
    detailsLayout.marginHeight = 0;
    detailsLayout.marginWidth = 1;
    dbDetails.setLayout(detailsLayout);
    dbDetails.setLayoutData(detailsData);

    Label dbPathLabel = new Label(dbDetails, SWT.NONE);
    dbPathLabel.setText("Path");

    GridData labelData = new GridData(GridData.FILL_HORIZONTAL | GridData.GRAB_HORIZONTAL);
    m_dbPathLabel = new Label(dbDetails, SWT.NONE);
    m_dbPathLabel.setLayoutData(labelData);
    m_dbPathLabel.addControlListener(new ControlListener() {
        @Override
        public void controlMoved(ControlEvent e) {
            /*DO NOTHING*/}

        @Override
        public void controlResized(ControlEvent e) {
            if (m_currentDB != null) {
                String dbPath = m_currentDB.getDatabasePath();
                ViewUtils.adjustLabelContents(m_dbPathLabel, dbPath);
            }
        }
    });

    Label dbVersionLabel = new Label(dbDetails, SWT.NONE);
    dbVersionLabel.setText("Version");

    m_dbDetailsLabel = new Label(dbDetails, SWT.NONE);
    m_dbDetailsLabel.setLayoutData(labelData);
    m_dbDetailsLabel.addControlListener(new ControlListener() {
        @Override
        public void controlMoved(ControlEvent e) {
            /*DO NOTHING*/}

        @Override
        public void controlResized(ControlEvent e) {
            if (m_currentDB != null) {
                String content = m_currentDB.getName() + " " + m_currentDB.getVersion();
                ViewUtils.adjustLabelContents(m_dbDetailsLabel, content);
            }
        }
    });
    /*
     * end of DB details widget
     */

    m_viewer = new TableViewer(parent, SWT.VIRTUAL | SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL);

    TableColumn nameCol = new TableColumn(m_viewer.getTable(), SWT.LEFT);
    nameCol.setText("Name");
    nameCol.setWidth(80);
    TableColumn descCol = new TableColumn(m_viewer.getTable(), SWT.LEFT);
    descCol.setText("Description");
    descCol.setWidth(140);

    /* Table Viewer */
    GridData viewerData = new GridData(GridData.FILL_BOTH | GridData.GRAB_HORIZONTAL | GridData.GRAB_VERTICAL);
    m_viewer.getTable().setLayoutData(viewerData);
    m_viewer.getTable().setHeaderVisible(true);
    m_viewer.getTable().setLinesVisible(false);

    /* Filter text */
    GridData textData = new GridData(GridData.FILL_HORIZONTAL | GridData.GRAB_HORIZONTAL);
    textData.horizontalIndent = 0;
    textData.verticalIndent = 0;
    m_filterText = new Text(parent, SWT.BORDER);
    m_filterText.setLayoutData(textData);
    m_filterText.addModifyListener(new ModifyListener() {
        @Override
        public void modifyText(ModifyEvent e) {
            Text filterText = (Text) e.widget;
            String filter = filterText.getText().toUpperCase();
            try {
                Pattern regex = Pattern.compile(FilterUtils.globify(filter));
                m_viewerFilter.setPattern(regex);
                m_viewer.refresh();
            } catch (PatternSyntaxException p) {
                // do nothing
            }
        }
    });

    initContents();
    initDragAction();
}