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.amazonaws.eclipse.identitymanagement.role.RoleTable.java

License:Apache License

public RoleTable(AmazonIdentityManagement iam, Composite parent, FormToolkit toolkit) {
    super(parent, SWT.NONE);

    this.iam = iam;

    TableColumnLayout tableColumnLayout = new TableColumnLayout();
    this.setLayout(tableColumnLayout);
    this.setLayoutData(new GridData(GridData.FILL_BOTH));

    contentProvider = new RoleTableContentProvider();
    RoleTableLabelProvider labelProvider = new RoleTableLabelProvider();

    viewer = new TableViewer(this, SWT.BORDER | SWT.MULTI);
    viewer.getTable().setLinesVisible(true);
    viewer.getTable().setHeaderVisible(true);
    viewer.setLabelProvider(labelProvider);
    viewer.setContentProvider(contentProvider);

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

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

                manager.add(new Action() {
                    @Override/* ww w  .  ja  v  a  2  s  . c  om*/
                    public ImageDescriptor getImageDescriptor() {
                        return AwsToolkitCore.getDefault().getImageRegistry()
                                .getDescriptor(AwsToolkitCore.IMAGE_REMOVE);
                    }

                    @Override
                    public void run() {
                        boolean confirmation = MessageDialog.openConfirm(Display.getCurrent().getActiveShell(),
                                "Delete Role", DELTE_ROLE_CONFIRMATION);
                        if (confirmation) {
                            roleSummary.setRole(null);
                            rolePermissions.setRole(null);
                            roleTrustRelationships.setRole(null);
                            deleteMultipleGroups(viewer.getTable().getSelectionIndices());
                        }
                    }

                    @Override
                    public String getText() {
                        if (viewer.getTable().getSelectionIndices().length > 1) {
                            return "Delete Roles";
                        }
                        return "Delete Role";
                    }

                });
            }
        }
    });

    viewer.getTable().setMenu(menuManager.createContextMenu(viewer.getTable()));

    viewer.getTable().addListener(SWT.Selection, new Listener() {
        public void handleEvent(Event event) {
            int index = viewer.getTable().getSelectionIndex();
            if (index >= 0) {
                Role role = contentProvider.getItemByIndex(index);
                roleSummary.setRole(role);
                rolePermissions.setRole(role);
                roleTrustRelationships.setRole(role);
            } else {
                roleSummary.setRole(null);
                rolePermissions.setRole(null);
                roleTrustRelationships.setRole(null);
            }

        }
    });

    createColumns(tableColumnLayout, viewer.getTable());
    refresh();
}

From source file:com.amazonaws.eclipse.identitymanagement.role.TrustedEntityTable.java

License:Apache License

public TrustedEntityTable(Composite parent, FormToolkit toolkit) {
    super(parent, SWT.NONE);

    TableColumnLayout tableColumnLayout = new TableColumnLayout();
    this.setLayout(tableColumnLayout);
    this.setLayoutData(new GridData(GridData.FILL_BOTH));

    final RoleTableContentProvider contentProvider = new RoleTableContentProvider();
    RoleTableLabelProvider labelProvider = new RoleTableLabelProvider();

    viewer = new TableViewer(this, SWT.MULTI);
    viewer.getTable().setLinesVisible(true);
    viewer.getTable().setHeaderVisible(false);
    viewer.setLabelProvider(labelProvider);
    viewer.setContentProvider(contentProvider);
    createColumns(tableColumnLayout, viewer.getTable());
    refresh();//from   w w w.jav a2s.c  o m
}

From source file:com.amazonaws.eclipse.lambda.project.wizard.page.NewServerlessProjectWizardPageOne.java

License:Open Source License

private void createBlueprintsSelectionSection(Composite parent) {
    SashForm sashForm = newSashForm(parent, 1, 2);
    blueprintSelectionViewer = new TableViewer(sashForm, SWT.BORDER);
    blueprintSelectionViewer.setContentProvider(new ArrayContentProvider());

    blueprintSelectionViewer.setInput(BlueprintProvider.getInstance().getBlueprintNames());
    blueprintSelectionViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(SelectionChangedEvent event) {
            onBlueprintSelectionViewerSelectionChange();
        }//from  w w  w .  jav a2  s . c om
    });
    createDescriptionIn(sashForm);
}

From source file:com.amitinside.e4.rcp.todo.parts.ManagerPart.java

License:Apache License

@PostConstruct
public void createControls(Composite parent, final MWindow window) {
    parent.setLayout(new GridLayout(1, false));

    btnNewButton = new Button(parent, SWT.NONE);
    btnNewButton.addSelectionListener(new SelectionAdapter() {
        @Override/*from w  ww  .  j a v  a2s .  com*/
        public void widgetSelected(SelectionEvent e) {
            Job job = new Job("loading") {
                @Override
                protected IStatus run(IProgressMonitor monitor) {
                    List<Todo> list = model.getTodos();
                    sync.asyncExec(new Runnable() {
                        @Override
                        public void run() {
                            viewer.setInput(model.getTodos());
                        }
                    });
                    return Status.OK_STATUS;
                }
            };
            job.schedule();

        }
    });

    btnNewButton.setText("Load Data");

    Text search = new Text(parent, SWT.SEARCH | SWT.CANCEL | SWT.ICON_SEARCH);
    search.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1));
    search.setMessage("Filter");
    search.addSelectionListener(new SelectionAdapter() {
        public void widgetDefaultSelected(SelectionEvent e) {
            if (e.detail == SWT.CANCEL) {
                Text text = (Text) e.getSource();
                text.setText("");
                //
            }
        }
        // MORE...
    });

    viewer = new TableViewer(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION);
    Table table = viewer.getTable();
    table.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));

    table.setHeaderVisible(true);
    table.setLinesVisible(true);

    viewer.setContentProvider(ArrayContentProvider.getInstance());
    TableViewerColumn column = new TableViewerColumn(viewer, SWT.NONE);

    column.getColumn().setWidth(100);
    column.getColumn().setText("Summary");
    column.setLabelProvider(new ColumnLabelProvider() {
        @Override
        public String getText(Object element) {
            Todo todo = (Todo) element;
            return todo.getSummary();
        }

    });

    column.setEditingSupport(new EditingSupport(viewer) {

        @Override
        protected void setValue(Object element, Object value) {
            Todo todo = (Todo) element;
            todo.setSummary(String.valueOf(value));
            viewer.refresh();
        }

        @Override
        protected Object getValue(Object element) {
            Todo todo = (Todo) element;
            return todo.getSummary();
        }

        @Override
        protected CellEditor getCellEditor(Object element) {
            return new TextCellEditor(viewer.getTable(), SWT.NONE);
        }

        @Override
        protected boolean canEdit(Object element) {
            return true;
        }
    });
    column = new TableViewerColumn(viewer, SWT.NONE);

    column.getColumn().setWidth(100);
    column.getColumn().setText("Description");
    column.setLabelProvider(new ColumnLabelProvider() {
        @Override
        public String getText(Object element) {
            Todo todo = (Todo) element;
            return todo.getDescription();
        }
    });

    viewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            IStructuredSelection selection = (IStructuredSelection) viewer.getSelection();
            service.setSelection(selection.getFirstElement());
        }
    });

}

From source file:com.amitinside.e4.rcp.todo.parts.TodoOverviewPart.java

License:Apache License

@PostConstruct
public void createControls(Composite parent, final MWindow window, EMenuService menuService) {
    applyGridLayout(parent).numColumns(1);

    btnNewButton = new Button(parent, SWT.PUSH);
    btnNewButton.addSelectionListener(new SelectionAdapter() {
        @Override//from  w w  w.j  ava  2s  .  c o  m
        public void widgetSelected(SelectionEvent e) {
            final Job job = new Job("loading") {
                @Override
                protected IStatus run(IProgressMonitor monitor) {
                    final List<Todo> list = model.getTodos();
                    broker.post(LOCAL_EVENT_FINISH, list);
                    return Status.OK_STATUS;
                }
            };
            job.schedule();
        }
    });
    btnNewButton.setText("Load Data");

    final Text search = new Text(parent, SWT.SEARCH | SWT.CANCEL | SWT.ICON_SEARCH);

    // Assuming that GridLayout is used
    search.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1));
    search.setMessage("Filter");

    // Filter at every keystroke
    search.addModifyListener(new ModifyListener() {
        @Override
        public void modifyText(ModifyEvent e) {
            final Text source = (Text) e.getSource();
            searchString = source.getText();
            // Trigger update in the viewer
            viewer.refresh();
        }
    });

    // SWT.SEARCH | SWT.CANCEL not supported under Windows7
    // This does not work under Windows7
    search.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetDefaultSelected(SelectionEvent e) {
            if (e.detail == SWT.CANCEL) {
                final Text text = (Text) e.getSource();
                text.setText("");
                //
            }
        }
    });

    viewer = new TableViewer(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION);
    final Table table = viewer.getTable();
    table.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));

    table.setHeaderVisible(true);
    table.setLinesVisible(true);

    final TableViewerColumn colSummary = new TableViewerColumn(viewer, SWT.NONE);

    colSummary.getColumn().setWidth(100);
    colSummary.getColumn().setText("Summary");

    colSummary.setEditingSupport(new EditingSupport(viewer) {

        @Override
        protected void setValue(Object element, Object value) {
            final Todo todo = (Todo) element;
            todo.setSummary(String.valueOf(value));
            viewer.refresh();
        }

        @Override
        protected Object getValue(Object element) {
            final Todo todo = (Todo) element;
            return todo.getSummary();
        }

        @Override
        protected CellEditor getCellEditor(Object element) {
            return new TextCellEditor(viewer.getTable(), SWT.NONE);
        }

        @Override
        protected boolean canEdit(Object element) {
            return true;
        }
    });
    final TableViewerColumn colDescription = new TableViewerColumn(viewer, SWT.NONE);

    colDescription.getColumn().setWidth(200);
    colDescription.getColumn().setText("Description");

    // We search in the summary and description field
    viewer.addFilter(new ViewerFilter() {
        @Override
        public boolean select(Viewer viewer, Object parentElement, Object element) {
            final Todo todo = (Todo) element;
            return todo.getSummary().contains(searchString) || todo.getDescription().contains(searchString)
                    || todo.getNote().contains(searchString);
        }
    });

    final TableViewerColumn colNotes = new TableViewerColumn(viewer, SWT.NONE);
    colNotes.getColumn().setWidth(50);
    colNotes.getColumn().setText("Notes");

    colNotes.setEditingSupport(new EditingSupport(viewer) {

        @Override
        protected void setValue(Object element, Object value) {
            final Todo todo = (Todo) element;
            todo.setNote(String.valueOf(value));
            viewer.refresh();
        }

        @Override
        protected Object getValue(Object element) {
            final Todo todo = (Todo) element;
            return todo.getNote();
        }

        @Override
        protected CellEditor getCellEditor(Object element) {
            return new TextCellEditor(viewer.getTable(), SWT.NONE);
        }

        @Override
        protected boolean canEdit(Object element) {
            return true;
        }
    });

    viewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            final IStructuredSelection selection = (IStructuredSelection) viewer.getSelection();
            service.setSelection(selection.getFirstElement());
        }
    });
    menuService.registerContextMenu(viewer.getControl(), "com.amitinside.e4.rcp.todo.popupmenu.table");
    writableList = new WritableList(model.getTodos(), Todo.class);
    ViewerSupport.bind(viewer, writableList, BeanProperties
            .values(new String[] { Todo.FIELD_SUMMARY, Todo.FIELD_DESCRIPTION, Todo.FIELD_NOTE }));

}

From source file:com.android.ide.eclipse.adt.internal.wizards.newproject.SampleSelectionPage.java

License:Open Source License

/**
 * Create contents of the wizard./*from  www. j a v a 2s .  c  o m*/
 */
@Override
public void createControl(Composite parent) {
    Composite container = new Composite(parent, SWT.NULL);
    container.setLayout(new GridLayout(2, false));

    mTableViewer = new TableViewer(container, SWT.BORDER | SWT.FULL_SELECTION);
    mTable = mTableViewer.getTable();
    GridData gridData = new GridData(SWT.FILL, SWT.FILL, true, true, 2, 1);
    gridData.heightHint = 300;
    mTable.setLayoutData(gridData);
    mTable.addSelectionListener(this);

    setControl(container);

    Label projectLabel = new Label(container, SWT.NONE);
    projectLabel.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1));
    projectLabel.setText("Project Name:");

    mSampleProjectName = new Text(container, SWT.BORDER);
    mSampleProjectName.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
    mSampleProjectName.addModifyListener(this);
}

From source file:com.android.ide.eclipse.adt.internal.wizards.newxmlfile.NewXmlFileCreationPage.java

License:Open Source License

/**
 * Called by the parent Wizard to create the UI for this Wizard Page.
 *
 * {@inheritDoc}//  w  w w  .  j a  v  a2 s .  co  m
 *
 * @see org.eclipse.jface.dialogs.IDialogPage#createControl(org.eclipse.swt.widgets.Composite)
 */
@Override
@SuppressWarnings("unused") // SWT constructors have side effects, they aren't unused
public void createControl(Composite parent) {
    // This UI is maintained with WindowBuilder.

    Composite composite = new Composite(parent, SWT.NULL);
    composite.setLayout(new GridLayout(2, false /*makeColumnsEqualWidth*/));
    composite.setLayoutData(new GridData(GridData.FILL_BOTH));

    // label before type radios
    Label typeLabel = new Label(composite, SWT.NONE);
    typeLabel.setText("Resource Type:");

    mTypeCombo = new Combo(composite, SWT.DROP_DOWN | SWT.READ_ONLY);
    mTypeCombo.setToolTipText("What type of resource would you like to create?");
    mTypeCombo.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    if (mInitialFolderType != null) {
        mTypeCombo.setEnabled(false);
    }
    mTypeCombo.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            TypeInfo type = getSelectedType();
            if (type != null) {
                onSelectType(type);
            }
        }
    });

    // separator
    Label separator = new Label(composite, SWT.SEPARATOR | SWT.HORIZONTAL);
    GridData gd2 = new GridData(GridData.GRAB_HORIZONTAL);
    gd2.horizontalAlignment = SWT.FILL;
    gd2.horizontalSpan = 2;
    separator.setLayoutData(gd2);

    // Project: [button]
    String tooltip = "The Android Project where the new resource file will be created.";
    Label projectLabel = new Label(composite, SWT.NONE);
    projectLabel.setText("Project:");
    projectLabel.setToolTipText(tooltip);

    ProjectChooserHelper helper = new ProjectChooserHelper(getShell(), null /* filter */);

    mProjectButton = new ProjectCombo(helper, composite, mValues.project);
    mProjectButton.setToolTipText(tooltip);
    mProjectButton.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    mProjectButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            IProject project = mProjectButton.getSelectedProject();
            if (project != mValues.project) {
                changeProject(project);
            }
        };
    });

    // Filename: [text]
    Label fileLabel = new Label(composite, SWT.NONE);
    fileLabel.setText("File:");
    fileLabel.setToolTipText("The name of the resource file to create.");

    mFileNameTextField = new Text(composite, SWT.BORDER);
    mFileNameTextField.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    mFileNameTextField.setToolTipText(tooltip);
    mFileNameTextField.addModifyListener(new ModifyListener() {
        @Override
        public void modifyText(ModifyEvent e) {
            mValues.name = mFileNameTextField.getText();
            validatePage();
        }
    });

    // separator
    Label rootSeparator = new Label(composite, SWT.SEPARATOR | SWT.HORIZONTAL);
    GridData gd = new GridData(GridData.GRAB_HORIZONTAL);
    gd.horizontalAlignment = SWT.FILL;
    gd.horizontalSpan = 2;
    rootSeparator.setLayoutData(gd);

    // Root Element:
    // [TableViewer]
    Label rootLabel = new Label(composite, SWT.NONE);
    rootLabel.setText("Root Element:");
    new Label(composite, SWT.NONE);

    mRootTableViewer = new TableViewer(composite, SWT.BORDER | SWT.FULL_SELECTION);
    mRootTable = mRootTableViewer.getTable();
    GridData tableGridData = new GridData(SWT.FILL, SWT.FILL, true, true, 2, 1);
    tableGridData.heightHint = 200;
    mRootTable.setLayoutData(tableGridData);

    setControl(composite);

    // Update state the first time
    setErrorMessage(null);
    setMessage(null);

    initializeFromSelection(mInitialSelection);
    updateAvailableTypes();
    initializeFromFixedType();
    initializeRootValues();
    installTargetChangeListener();

    initialSelectType();
    validatePage();
}

From source file:com.android.sdkuilib.internal.repository.LocalPackagesPage.java

License:Apache License

private void createContents(Composite parent) {
    parent.setLayout(new GridLayout(3, false));

    mSdkLocLabel = new Label(parent, SWT.NONE);
    mSdkLocLabel.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, true, false, 3, 1));
    mSdkLocLabel.setText("SDK Location: "
            + (mUpdaterData.getOsSdkRoot() != null ? mUpdaterData.getOsSdkRoot() : "<unknown>"));

    mTableViewerPackages = new TableViewer(parent, SWT.BORDER | SWT.FULL_SELECTION);
    mTablePackages = mTableViewerPackages.getTable();
    mTablePackages.setHeaderVisible(true);
    mTablePackages.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 3, 1));
    mTablePackages.addSelectionListener(new SelectionAdapter() {
        @Override// www .j a va 2 s . c o m
        public void widgetSelected(SelectionEvent e) {
            onTreeSelected(); //$hide$
        }
    });

    mColumnPackages = new TableColumn(mTablePackages, SWT.NONE);
    mColumnPackages.setWidth(377);
    mColumnPackages.setText("Installed packages");

    mDescriptionContainer = new Group(parent, SWT.NONE);
    mDescriptionContainer.setLayout(new GridLayout(1, false));
    mDescriptionContainer.setText("Description");
    mDescriptionContainer.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 3, 1));

    mDescriptionLabel = new Label(mDescriptionContainer, SWT.NONE);
    mDescriptionLabel.setLayoutData(new GridData(SWT.FILL, SWT.TOP, true, true, 1, 1));
    mDescriptionLabel.setText("Line1\nLine2\nLine3");

    mContainerButtons = new Composite(parent, SWT.NONE);
    mContainerButtons.setLayout(new GridLayout(5, false));
    mContainerButtons.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 3, 1));

    mUpdateButton = new Button(mContainerButtons, SWT.NONE);
    mUpdateButton.setText("Update All...");
    mUpdateButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            onUpdateSelected(); //$hide$ (hide from SWT designer)
        }
    });

    mPlaceholder1 = new Label(mContainerButtons, SWT.NONE);
    mPlaceholder1.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, true, false, 1, 1));

    mDeleteButton = new Button(mContainerButtons, SWT.NONE);
    mDeleteButton.setLayoutData(new GridData(SWT.CENTER, SWT.CENTER, false, false, 1, 1));
    mDeleteButton.setText("Delete...");
    mDeleteButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            onDeleteSelected(); //$hide$ (hide from SWT designer)
        }
    });

    mPlaceholder2 = new Label(mContainerButtons, SWT.NONE);
    mPlaceholder2.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, true, false, 1, 1));

    mRefreshButton = new Button(mContainerButtons, SWT.NONE);
    mRefreshButton.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1));
    mRefreshButton.setText("Refresh");
    mRefreshButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            onRefreshSelected(); //$hide$ (hide from SWT designer)
        }
    });
}

From source file:com.android.sdkuilib.internal.repository.sdkman2.AddonSitesDialog.java

License:Apache License

/**
 * Create contents of the dialog.//w  w w .  j ava 2 s . c  o m
 */
@SuppressWarnings("unused")
@Override
protected void createContents() {
    Shell shell = getShell();
    shell.setMinimumSize(new Point(450, 300));
    shell.setSize(450, 300);
    setWindowImage(shell);

    GridLayout glShell = new GridLayout();
    glShell.numColumns = 2;
    shell.setLayout(glShell);

    mlabel = new Label(shell, SWT.NONE);
    mlabel.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, false, false, 2, 1));
    mlabel.setText("This dialog lets you manage the URLs of external add-on sites to be used.\n" + "\n"
            + "Add-on sites can provide new add-ons or \"user\" packages.\n"
            + "They cannot provide standard Android platforms, docs or samples packages.\n"
            + "Adding a URL here will not allow you to clone an official Android repository.");

    mTableViewer = new TableViewer(shell, SWT.BORDER | SWT.FULL_SELECTION);
    mTableViewer.addPostSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(SelectionChangedEvent event) {
            on_TableViewer_selectionChanged(event);
        }
    });
    mTable = mTableViewer.getTable();
    mTable.setLinesVisible(false);
    mTable.addMouseListener(new MouseAdapter() {
        @Override
        public void mouseUp(MouseEvent e) {
            on_Table_mouseUp(e);
        }
    });
    mTable.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 5));

    TableViewerColumn tableViewerColumn = new TableViewerColumn(mTableViewer, SWT.NONE);
    mColumnUrl = tableViewerColumn.getColumn();
    mColumnUrl.setWidth(100);
    mColumnUrl.setText("New Column");

    mButtonNew = new Button(shell, SWT.NONE);
    mButtonNew.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            newOrEdit(false /*isEdit*/);
        }
    });
    mButtonNew.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1));
    mButtonNew.setText("New...");

    mButtonEdit = new Button(shell, SWT.NONE);
    mButtonEdit.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            newOrEdit(true /*isEdit*/);
        }
    });
    mButtonEdit.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1));
    mButtonEdit.setText("Edit...");

    mButtonDelete = new Button(shell, SWT.NONE);
    mButtonDelete.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            on_ButtonDelete_widgetSelected(e);
        }
    });
    mButtonDelete.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1));
    mButtonDelete.setText("Delete...");
    new Label(shell, SWT.NONE);

    mButtonClose = new Button(shell, SWT.NONE);
    mButtonClose.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            on_ButtonClose_widgetSelected(e);
        }
    });
    mButtonClose.setLayoutData(new GridData(SWT.FILL, SWT.BOTTOM, false, false, 1, 1));
    mButtonClose.setText("Close");

    adjustColumnsWidth(mTable, mColumnUrl);
}

From source file:com.android.sdkuilib.internal.repository.ui.AddonSitesDialog.java

License:Apache License

void createTabUserSites(TabFolder tabFolder, TabItem userTabItem) {
    Composite root = new Composite(tabFolder, SWT.NONE);
    userTabItem.setControl(root);//w  w w.j  av a  2s . c  om
    GridLayoutBuilder.create(root).columns(2);

    Label label = new Label(root, SWT.NONE);
    GridDataBuilder.create(label).hLeft().vCenter().hSpan(2);
    label.setText("This lets you manage a list of user-contributed external add-on sites URLs.\n" + "\n"
            + "Add-on sites can provide new add-ons and extra packages.\n"
            + "They cannot provide standard Android platforms, system images or docs.\n"
            + "Adding a URL here will not allow you to clone an official Android repository.");

    mUserTableViewer = new TableViewer(root, SWT.BORDER | SWT.FULL_SELECTION);
    mUserTableViewer.setContentProvider(new SourcesContentProvider());

    mUserTableViewer.addPostSelectionChangedListener(new ISelectionChangedListener() {
        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            on_UserTableViewer_selectionChanged(event);
        }
    });
    mUserTable = mUserTableViewer.getTable();
    mUserTable.setLinesVisible(true);
    mUserTable.addMouseListener(new MouseAdapter() {
        @Override
        public void mouseUp(MouseEvent event) {
            on_UserTable_mouseUp(event);
        }
    });
    GridDataBuilder.create(mUserTable).fill().grab().vSpan(5);

    TableViewerColumn tableViewerColumn = new TableViewerColumn(mUserTableViewer, SWT.NONE);
    TableColumn userColumnUrl = tableViewerColumn.getColumn();
    userColumnUrl.setWidth(100);

    // Implementation detail: set the label provider on the table viewer *after* associating
    // a column. This will set the label provider on the column for us.
    mUserTableViewer.setLabelProvider(new LabelProvider());

    mUserButtonNew = new Button(root, SWT.NONE);
    mUserButtonNew.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            userNewOrEdit(false /*isEdit*/);
        }
    });
    GridDataBuilder.create(mUserButtonNew).hFill().vCenter();
    mUserButtonNew.setText("New...");

    mUserButtonEdit = new Button(root, SWT.NONE);
    mUserButtonEdit.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            userNewOrEdit(true /*isEdit*/);
        }
    });
    GridDataBuilder.create(mUserButtonEdit).hFill().vCenter();
    mUserButtonEdit.setText("Edit...");

    mUserButtonDelete = new Button(root, SWT.NONE);
    mUserButtonDelete.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            on_UserButtonDelete_widgetSelected(e);
        }
    });
    GridDataBuilder.create(mUserButtonDelete).hFill().vCenter();
    mUserButtonDelete.setText("Delete...");

    adjustColumnsWidth(mUserTable, userColumnUrl);
}