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

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

Introduction

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

Prototype

ITableLabelProvider

Source Link

Usage

From source file:org.eclipse.team.svn.ui.composite.ProjectListComposite.java

License:Open Source License

public void initialize() {
    GridLayout gLayout = new GridLayout();
    gLayout.marginHeight = gLayout.marginWidth = 0;
    GridData data = new GridData(GridData.FILL_BOTH);
    data.heightHint = 150;/*from   w w  w. ja  va 2  s  . c  o m*/
    this.setLayout(gLayout);
    this.setLayoutData(data);
    Table table = new Table(this, SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION | SWT.SINGLE | SWT.BORDER);
    TableLayout layout = new TableLayout();
    table.setLayout(layout);

    this.tableViewer = new TableViewer(table);
    data = new GridData(GridData.FILL_BOTH);
    this.tableViewer.getTable().setLayoutData(data);
    this.tableViewer.getTable().setHeaderVisible(true);
    this.tableViewer.getTable().setLinesVisible(true);

    TableColumn col = new TableColumn(table, SWT.NONE);
    col.setResizable(false);
    layout.addColumnData(new ColumnPixelData(20, false));

    col = new TableColumn(table, SWT.NONE);
    col.setResizable(true);
    col.setText(SVNUIMessages.ProjectListComposite_ProjectName);
    layout.addColumnData(new ColumnWeightData(30, true));

    col = new TableColumn(table, SWT.NONE);
    col.setResizable(true);
    col.setText(this.remoteMode ? SVNUIMessages.ProjectListComposite_RepositoryLabel
            : SVNUIMessages.ProjectListComposite_RepositoryURL);
    layout.addColumnData(new ColumnWeightData(70, true));

    this.tableViewer.setLabelProvider(new ITableLabelProvider() {
        public Image getColumnImage(Object element, int columnIndex) {
            if (columnIndex == 0) {
                IWorkbenchAdapter adapter = (IWorkbenchAdapter) ((IAdaptable) element)
                        .getAdapter(IWorkbenchAdapter.class);
                if (adapter == null) {
                    return null;
                }
                ImageDescriptor descriptor = adapter.getImageDescriptor(element);
                if (descriptor == null) {
                    return null;
                }
                Image image = ProjectListComposite.this.images.get(descriptor);
                if (image == null) {
                    image = descriptor.createImage();
                    ProjectListComposite.this.images.put(descriptor, image);
                }
                return image;
            }
            return null;
        }

        public String getColumnText(Object element, int columnIndex) {
            IResource resource = (IResource) element;
            if (columnIndex == 1) {
                return resource.getName();
            }
            if (columnIndex == 2) {
                IRemoteStorage storage = SVNRemoteStorage.instance();
                if (ProjectListComposite.this.remoteMode) {
                    return storage.getRepositoryLocation(resource).getLabel();
                }
                return storage.asRepositoryResource(resource).getUrl();
            }
            return ""; //$NON-NLS-1$
        }

        public void addListener(ILabelProviderListener listener) {
        }

        public void dispose() {
        }

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

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

    this.tableViewer.setContentProvider(new ArrayStructuredContentProvider());

    this.tableViewer.setInput(this.resources);

}

From source file:org.eclipse.team.svn.ui.composite.PropertiesComposite.java

License:Open Source License

private void createControls(Composite parent) {
    GridLayout layout = null;/*w  w w. jav  a2s  .co  m*/
    GridData data = null;

    layout = new GridLayout();
    layout.marginHeight = 0;
    layout.marginWidth = 0;
    this.setLayout(layout);
    SashForm innerSashForm = new SashForm(this, SWT.VERTICAL);

    data = new GridData(GridData.FILL_BOTH);
    innerSashForm.setLayoutData(data);

    Table table = new Table(innerSashForm, SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION | SWT.MULTI);
    table.setHeaderVisible(true);
    table.setLinesVisible(true);
    data = new GridData(GridData.FILL_BOTH);
    data.horizontalSpan = 2;
    table.setLayoutData(data);
    TableLayout tableLayout = new TableLayout();
    table.setLayout(tableLayout);

    this.propertyText = new Text(innerSashForm, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL);
    this.propertyText.setBackground(this.propertyText.getBackground());
    this.propertyText.setEditable(false);
    data = new GridData(GridData.FILL_BOTH);
    this.propertyText.setLayoutData(data);

    innerSashForm.setWeights(new int[] { 70, 30 });

    this.propertyViewer = new TableViewer(table);
    this.propertyViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(SelectionChangedEvent event) {
            if (event.getSelection() instanceof IStructuredSelection) {
                Object selection = ((IStructuredSelection) event.getSelection()).getFirstElement();
                if (selection != null && selection instanceof SVNProperty) {
                    PropertiesComposite.this.propertyText.setText(((SVNProperty) selection).value);
                }
            }
        }
    });

    //creating a comparator right now to get column listeners
    PropertiesTableComparator comparator = new PropertiesTableComparator(this.propertyViewer);

    TableColumn col = new TableColumn(table, SWT.NONE);
    col.setResizable(true);
    col.setText(SVNUIMessages.PropertiesComposite_Name);
    col.addSelectionListener(comparator);
    tableLayout.addColumnData(new ColumnWeightData(30, true));
    col = new TableColumn(table, SWT.NONE);
    col.setResizable(true);
    col.setText(SVNUIMessages.PropertiesComposite_Value);
    col.addSelectionListener(comparator);
    tableLayout.addColumnData(new ColumnWeightData(70, true));

    //adding a comparator and selecting a default sort column
    this.propertyViewer.setComparator(comparator);
    comparator.setColumnNumber(PropertiesComposite.COLUMN_NAME);
    this.propertyViewer.getTable()
            .setSortColumn(this.propertyViewer.getTable().getColumn(PropertiesComposite.COLUMN_NAME));
    this.propertyViewer.getTable().setSortDirection(SWT.UP);

    this.propertyViewer.setContentProvider(new IStructuredContentProvider() {
        public Object[] getElements(Object inputElement) {
            if (PropertiesComposite.this.isProcessing) {
                return (Object[]) inputElement;
            }
            if (PropertiesComposite.this.wcResource == null
                    && PropertiesComposite.this.repositoryResource == null) {
                return new SVNProperty[0];
            }
            return PropertiesComposite.this.properties;
        }

        public void dispose() {
        }

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

    this.propertyViewer.setLabelProvider(new ITableLabelProvider() {

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

        public String getColumnText(Object element, int columnIndex) {
            if (PropertiesComposite.this.isProcessing) {
                if (columnIndex == 0 && PropertiesComposite.this.wcResource != null) {
                    return SVNUIMessages.getString(RepositoryPending.PENDING);
                }
                return ""; //$NON-NLS-1$
            }
            SVNProperty data = (SVNProperty) element;
            if (columnIndex == 0) {
                return data.name;
            }
            return FileUtility.formatMultilineText(data.value);
        }

        public void addListener(ILabelProviderListener listener) {
        }

        public void dispose() {
        }

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

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

    MenuManager menuMgr = new MenuManager();
    Menu menu = menuMgr.createContextMenu(table);
    menuMgr.addMenuListener(new IMenuListener() {
        public void menuAboutToShow(IMenuManager manager) {
            synchronized (PropertiesComposite.this) {
                manager.add(new Separator(IWorkbenchActionConstants.MB_ADDITIONS));
                final IStructuredSelection tSelection = (IStructuredSelection) PropertiesComposite.this.propertyViewer
                        .getSelection();
                if (tSelection.size() == 1 && tSelection.getFirstElement() instanceof String) {
                    return;
                }
                Action tAction = null;
                boolean isEditAllowed = PropertiesComposite.this.provider != null
                        && PropertiesComposite.this.provider.isEditAllowed();
                if (PropertiesComposite.this.wcResource != null
                        && PropertiesComposite.this.repositoryResource == null) {
                    manager.add(tAction = new Action(SVNUIMessages.PropertiesComposite_Add) {
                        public void run() {
                            PropertiesComposite.this.editProperty(null);
                        }
                    });
                    tAction.setEnabled(isEditAllowed);
                    manager.add(tAction = new Action(SVNUIMessages.PropertiesComposite_Edit) {
                        public void run() {
                            SVNProperty data = (SVNProperty) tSelection.getFirstElement();
                            PropertiesComposite.this.editProperty(data);
                        }
                    });
                    tAction.setEnabled(isEditAllowed && tSelection.size() == 1);
                    manager.add(tAction = new Action(SVNUIMessages.PropertiesComposite_Remove) {
                        public void run() {
                            SVNProperty[] data = (SVNProperty[]) tSelection.toList()
                                    .toArray(new SVNProperty[tSelection.size()]);
                            PropertiesComposite.this.removeProperty(data);
                        }
                    });
                    tAction.setEnabled(isEditAllowed && tSelection.size() > 0);
                    manager.add(new Separator());
                    manager.add(tAction = new Action(SVNUIMessages.PropertiesComposite_SetKeywords) {
                        public void run() {
                            PropertiesComposite.this.setKeywords();
                        }
                    });
                    manager.add(tAction = new Action(SVNUIMessages.Action_SetExternals) {
                        public void run() {
                            IActionOperation op = SetExternalDefinitionAction.getAction(
                                    PropertiesComposite.this.wcResource, PropertiesComposite.this.getShell());
                            if (op != null) {
                                UIMonitorUtility.doTaskScheduledDefault(op);
                            }
                        }
                    });
                    tAction.setEnabled(PropertiesComposite.this.wcResource instanceof IContainer);
                    manager.add(tAction = new Action(SVNUIMessages.PropertiesComposite_ApplyRecursively) {
                        public void run() {
                            SVNProperty[] data = (SVNProperty[]) tSelection.toList()
                                    .toArray(new SVNProperty[tSelection.size()]);
                            PropertiesComposite.this.setPropertyRecursive(data);
                        }
                    });
                    tAction.setEnabled(isEditAllowed && tSelection.size() > 0
                            && PropertiesComposite.this.wcResource instanceof IContainer);
                }
                manager.add(tAction = new Action(SVNUIMessages.PropertiesComposite_SaveValueToFile) {
                    public void run() {
                        SVNProperty data = (SVNProperty) tSelection.getFirstElement();
                        PropertiesComposite.this.saveValueToFile(data);
                    }
                });
                tAction.setEnabled(PropertiesComposite.this.provider != null && tSelection.size() == 1);

                manager.add(new Separator());
                manager.add(tAction = new Action(SVNUIMessages.PropertiesComposite_Refresh) {
                    public void run() {
                        synchronized (PropertiesComposite.this) {
                            if (PropertiesComposite.this.repositoryResource != null) {
                                PropertiesComposite.this.provider = new GetRemotePropertiesOperation(
                                        PropertiesComposite.this.repositoryResource);
                            }
                            CompositeOperation composite = new CompositeOperation("Operation_PRefresh", //$NON-NLS-1$
                                    SVNUIMessages.class);
                            if (PropertiesComposite.this.provider != null
                                    && PropertiesComposite.this.provider.getExecutionState() != IStatus.OK) {
                                composite.add(PropertiesComposite.this.provider);
                                composite.add(PropertiesComposite.this.getRefreshViewOperation(),
                                        new IActionOperation[] { PropertiesComposite.this.provider });
                            } else {
                                composite.add(PropertiesComposite.this.getRefreshViewOperation());
                            }

                            UIMonitorUtility.doTaskScheduledActive(composite);
                        }
                    }
                });
                tAction.setImageDescriptor(
                        SVNTeamUIPlugin.instance().getImageDescriptor("icons/common/refresh.gif")); //$NON-NLS-1$
                tAction.setEnabled(PropertiesComposite.this.provider != null);
            }
        }
    });
    menuMgr.setRemoveAllWhenShown(true);
    table.setMenu(menu);

    this.propertyViewer.addDropSupport(DND.DROP_LINK,
            new Transfer[] { ResourceTransfer.getInstance(), RemoteResourceTransfer.getInstance() },
            new DropTargetAdapter() {

                public void dragEnter(DropTargetEvent event) {
                    event.detail = DND.DROP_LINK;
                }

                public void drop(DropTargetEvent event) {
                    if (PropertiesComposite.this.propertiesView == null) {
                        return;
                    }
                    if (event.data instanceof IResource[]) {
                        IResource resource = ((IResource[]) event.data)[0];
                        if (IStateFilter.SF_VERSIONED
                                .accept(SVNRemoteStorage.instance().asLocalResource(resource))) {
                            PropertiesComposite.this.propertiesView.setResource(resource,
                                    new GetPropertiesOperation(resource), true);
                        }
                        return;
                    }
                    if (event.data instanceof RemoteResourceTransferrable) {
                        IRepositoryResource resource = ((RemoteResourceTransferrable) event.data).resources[0];
                        PropertiesComposite.this.propertiesView.setResource(resource,
                                new GetRemotePropertiesOperation(resource), false);
                    }
                }
            });

    this.propertyViewer.addDoubleClickListener(new IDoubleClickListener() {
        public void doubleClick(DoubleClickEvent e) {
            synchronized (PropertiesComposite.this) {
                if (PropertiesComposite.this.provider != null
                        && PropertiesComposite.this.provider.isEditAllowed()) {
                    IStructuredSelection selection = (IStructuredSelection) e.getSelection();
                    if (selection.size() == 1) {
                        SVNProperty data = (SVNProperty) selection.getFirstElement();
                        PropertiesComposite.this.editProperty(data);
                    }
                }
            }
        }
    });
}

From source file:org.eclipse.team.svn.ui.composite.ResourceSelectionComposite.java

License:Open Source License

public void createControls() {
    GridLayout gridLayout = null;
    GridData data = null;//from   www .j a  v a2s  . c o m

    gridLayout = new GridLayout();
    gridLayout.marginHeight = gridLayout.marginWidth = 0;
    this.setLayout(gridLayout);

    int style = SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION | SWT.MULTI | SWT.BORDER;
    Table table = new Table(this, this.showCheckBoxesAndButtons ? style | SWT.CHECK : style);
    table.setHeaderVisible(true);
    table.setLinesVisible(true);
    TableLayout layout = new TableLayout();
    table.setLayout(layout);

    this.tableViewer = new CheckboxTableViewer(table);
    data = new GridData(GridData.FILL_BOTH);
    this.tableViewer.getTable().setLayoutData(data);

    // creating a comparator right now to get column listeners
    ResourcesTableComparator comparator = new ResourcesTableComparator(this.tableViewer);

    // checkbox
    TableColumn col = new TableColumn(table, SWT.NONE);
    col.setResizable(false);
    layout.addColumnData(new ColumnPixelData(20, false));

    // resource name
    col = new TableColumn(table, SWT.NONE);
    col.setResizable(true);
    col.setText(SVNUIMessages.ResourceSelectionComposite_Resource);
    layout.addColumnData(new ColumnWeightData(44, true));
    col.addSelectionListener(comparator);

    // status
    col = new TableColumn(table, SWT.NONE);
    col.setResizable(true);
    col.setText(SVNUIMessages.ResourceSelectionComposite_Content);
    layout.addColumnData(new ColumnWeightData(12, true));
    if (this.cacheEnabled) {
        col.addSelectionListener(comparator);
    }

    // propstatus
    col = new TableColumn(table, SWT.NONE);
    col.setResizable(true);
    col.setText(SVNUIMessages.ResourceSelectionComposite_Properties);
    layout.addColumnData(new ColumnWeightData(12, true));
    if (this.cacheEnabled) {
        col.addSelectionListener(comparator);
    }

    TableColumn treatAsEdit = null;
    if (this.allowTreatAsEditsColumn) {
        treatAsEdit = col = new TableColumn(table, SWT.NONE);
        col.setResizable(false);
        col.setText(SVNUIMessages.ResourceSelectionComposite_TreatAsEdit);
        layout.addColumnData(new ColumnWeightData(12, true));
    }

    // adding comparator and selection default sorting column and direction
    this.tableViewer.setComparator(comparator);
    comparator.setColumnNumber(ResourceSelectionComposite.COLUMN_STATUS);
    this.tableViewer.getTable()
            .setSortColumn(this.tableViewer.getTable().getColumn(ResourceSelectionComposite.COLUMN_STATUS));
    this.tableViewer.getTable().setSortDirection(SWT.UP);

    this.tableViewer.setLabelProvider(new ITableLabelProvider() {
        public Image getColumnImage(Object element, int columnIndex) {
            if (columnIndex == ResourceSelectionComposite.COLUMN_NAME && element instanceof IAdaptable) {
                IWorkbenchAdapter adapter = (IWorkbenchAdapter) ((IAdaptable) element)
                        .getAdapter(IWorkbenchAdapter.class);
                if (adapter == null) {
                    return null;
                }
                ImageDescriptor descriptor = adapter.getImageDescriptor(element);
                if (descriptor == null) {
                    return null;
                }

                boolean hasWarning = false;
                boolean hasError = false;
                try {
                    IResource currentResource = (IResource) element;
                    IMarker[] markers = currentResource.findMarkers(IMarker.PROBLEM, true,
                            IResource.DEPTH_INFINITE);
                    // Errors always with highest priority. So, other severities should be ignored.
                    for (int i = 0; i < markers.length && !hasError; i++) {
                        Integer severity = markers[i] != null
                                ? (Integer) markers[i].getAttribute(IMarker.SEVERITY)
                                : null;
                        if (severity != null) {
                            hasWarning |= severity.intValue() == IMarker.SEVERITY_WARNING;
                            hasError |= severity.intValue() == IMarker.SEVERITY_ERROR;
                        }
                    }
                } catch (CoreException e) {
                    // Markers are inaccessible: do not decorate resource icon
                }

                Image image = ResourceSelectionComposite.this.images.get(descriptor);
                if (image == null) {
                    ResourceSelectionComposite.this.images.put(descriptor, image = descriptor.createImage());
                }
                OverlayedImageDescriptor desc = null;
                if (hasError) {
                    desc = new OverlayedImageDescriptor(image, ResourceSelectionComposite.ERROR_IMAGE_DESC,
                            new Point(16, 16), OverlayedImageDescriptor.BOTTOM | OverlayedImageDescriptor.LEFT);
                } else if (hasWarning) {
                    desc = new OverlayedImageDescriptor(image, ResourceSelectionComposite.WARNING_IMAGE_DESC,
                            new Point(16, 16), OverlayedImageDescriptor.BOTTOM | OverlayedImageDescriptor.LEFT);
                } else {
                    desc = new OverlayedImageDescriptor(image, ResourceSelectionComposite.EMPTY_IMAGE_DESC,
                            new Point(16, 16), OverlayedImageDescriptor.BOTTOM | OverlayedImageDescriptor.LEFT);
                }
                image = this.createImage(desc);

                if (ResourceSelectionComposite.this.externalResources.contains(element)) {
                    desc = new OverlayedImageDescriptor(image, ResourceSelectionComposite.SWITCHED_IMAGE_DESC,
                            new Point(16, 16),
                            OverlayedImageDescriptor.BOTTOM | OverlayedImageDescriptor.RIGHT);
                }
                image = this.createImage(desc);

                return image;
            }
            return null;
        }

        protected Image createImage(OverlayedImageDescriptor descriptor) {
            Image image = ResourceSelectionComposite.this.images.get(descriptor);
            if (image == null) {
                ResourceSelectionComposite.this.images.put(descriptor, image = descriptor.createImage());
            }
            return image;
        }

        public String getColumnText(Object element, int columnIndex) {
            if (columnIndex == ResourceSelectionComposite.COLUMN_CHECKBOX) {
                return ""; //$NON-NLS-1$
            }
            IResource resource = (IResource) element;
            if (columnIndex == ResourceSelectionComposite.COLUMN_NAME) {
                String path = resource.getFullPath().toString();
                return path.startsWith("/") ? path.substring(1) : path; //$NON-NLS-1$
            }
            ILocalResource local = SVNRemoteStorage.instance().asLocalResource(resource);
            if (columnIndex == ResourceSelectionComposite.COLUMN_STATUS) {
                return ResourceSelectionComposite.this.contentStatusAsString(local);
            } else if (columnIndex == ResourceSelectionComposite.COLUMN_PROPSTATUS) {
                return ResourceSelectionComposite.this.propertiesStatusAsString(local);
            }
            return ""; //$NON-NLS-1$
        }

        public void addListener(ILabelProviderListener listener) {
        }

        public void dispose() {
        }

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

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

    if (this.allowTreatAsEditsColumn) {
        // the order is important otherwise the common label provider overrides this one
        TableViewerColumn cbColumn = new TableViewerColumn(this.tableViewer, treatAsEdit);
        cbColumn.setLabelProvider(new ColumnLabelProvider() {
            public void update(ViewerCell cell) {
                IResource resource = (IResource) cell.getElement();
                ILocalResource local = SVNRemoteStorage.instance().asLocalResource(resource);
                if (IStateFilter.SF_PREREPLACEDREPLACED.accept(local)) {
                    TableItem item = (TableItem) cell.getItem();
                    Button button;
                    if (ResourceSelectionComposite.this.treatAsEditButtons.containsKey(cell.getElement())) {
                        button = ResourceSelectionComposite.this.treatAsEditButtons.get(cell.getElement());
                    } else {
                        button = new Button((Composite) cell.getViewerRow().getControl(), SWT.CHECK);
                        button.setData(resource);
                        button.setSelection(ResourceSelectionComposite.this.treatAsEdit.contains(resource));
                        button.setBackground(cell.getBackground());
                        button.addSelectionListener(new SelectionAdapter() {
                            public void widgetSelected(SelectionEvent e) {
                                if (((Button) e.getSource()).getSelection()) {
                                    ResourceSelectionComposite.this.treatAsEdit
                                            .add((IResource) ((Button) e.getSource()).getData());
                                } else {
                                    ResourceSelectionComposite.this.treatAsEdit
                                            .remove((IResource) ((Button) e.getSource()).getData());
                                }
                                ResourceSelectionComposite.this.getTableViewer()
                                        .refresh(((Button) e.getSource()).getData());
                            }
                        });
                        ResourceSelectionComposite.this.treatAsEditButtons.put(resource, button);
                    }
                    TableEditor editor = new TableEditor(item.getParent());
                    editor.grabHorizontal = true;
                    editor.grabVertical = true;
                    editor.setEditor(button, item, cell.getColumnIndex());
                    editor.layout();
                }
            }
        });
    }

    this.tableViewer.setContentProvider(new ArrayStructuredContentProvider());

    this.tableViewer.setInput(this.resources);
    for (int i = 0; i < this.resources.length; i++) {
        this.tableViewer.setChecked(this.resources[i], this.isSelectableResource(this.resources[i]));
    }
    this.updateSelectedResources();

    this.tableViewer.addDoubleClickListener(new IDoubleClickListener() {
        public void doubleClick(DoubleClickEvent event) {
            IStructuredSelection selection = (IStructuredSelection) event.getSelection();
            final IResource resource = (IResource) selection.getFirstElement();
            IResource[] resources = { resource };
            if (selection.size() == 1 && FileUtility.checkForResourcesPresence(resources,
                    IStateFilter.SF_ANY_CHANGE, IResource.DEPTH_ZERO)) {
                UIMonitorUtility.getDisplay().syncExec(new Runnable() {
                    public void run() {
                        ILocalResource local = SVNRemoteStorage.instance().asLocalResource(resource);
                        if (!IStateFilter.SF_INTERNAL_INVALID.accept(local)) {
                            IRepositoryResource remote = local.isCopied() ? SVNUtility.getCopiedFrom(resource)
                                    : SVNRemoteStorage.instance().asRepositoryResource(resource);
                            remote.setSelectedRevision(
                                    CompareResourcesOperation.getRemoteResourceRevisionForCompare(resource));
                            UIMonitorUtility.doTaskScheduledDefault(
                                    new CompareResourcesOperation(local, remote, true, true));
                        }
                    }
                });
            }
        }
    });

    if (!this.showCheckBoxesAndButtons) {
        return;
    }

    this.tableViewer.addSelectionChangedListener(this.selectionListener = new ISelectionChangedListener() {
        public void selectionChanged(SelectionChangedEvent event) {
            ResourceSelectionComposite.this.updateSelectedResources();

            ResourceSelectionComposite.this.fireResourcesSelectionChanged(
                    new ResourceSelectionChangedEvent(ResourceSelectionComposite.this.selectedResources));

            int selectedNumber = ResourceSelectionComposite.this.selectedResources.length;
            ResourceSelectionComposite.this.lblSelectedResourcesNumber
                    .setText(ResourceSelectionComposite.this.resourceNumberToString(selectedNumber));
        }
    });

    Composite tComposite = new Composite(this, SWT.RIGHT);
    GridLayout gLayout = new GridLayout();
    gLayout.numColumns = 4;
    gLayout.marginWidth = 0;
    tComposite.setLayout(gLayout);
    data = new GridData(GridData.HORIZONTAL_ALIGN_FILL | GridData.GRAB_HORIZONTAL);
    tComposite.setLayoutData(data);

    Button selectButton = new Button(tComposite, SWT.PUSH);
    selectButton.setText(SVNUIMessages.Button_SelectAll);
    data = new GridData();
    data.widthHint = DefaultDialog.computeButtonWidth(selectButton);
    selectButton.setLayoutData(data);
    SelectionListener listener = new SelectionAdapter() {
        public void widgetSelected(SelectionEvent e) {
            ResourceSelectionComposite.this.tableViewer.setAllChecked(true);
            Object[] elements = ResourceSelectionComposite.this.tableViewer.getCheckedElements();
            ResourceSelectionComposite.this.selectionListener.selectionChanged(null);
            ResourceSelectionComposite.this.fireResourcesSelectionChanged(new ResourceSelectionChangedEvent(
                    Arrays.asList(elements).toArray(new IResource[elements.length])));
        }
    };
    selectButton.addSelectionListener(listener);

    Button deselectButton = new Button(tComposite, SWT.PUSH);
    deselectButton.setText(SVNUIMessages.Button_ClearSelection);
    data = new GridData();
    data.widthHint = DefaultDialog.computeButtonWidth(deselectButton);
    deselectButton.setLayoutData(data);
    listener = new SelectionAdapter() {
        public void widgetSelected(SelectionEvent e) {
            TableItem[] items = ResourceSelectionComposite.this.tableViewer.getTable().getSelection();
            for (TableItem item : items) {
                ResourceSelectionComposite.this.tableViewer.setChecked(item.getData(), false);
            }
            ResourceSelectionComposite.this.selectionListener.selectionChanged(null);
            ResourceSelectionComposite.this
                    .fireResourcesSelectionChanged(new ResourceSelectionChangedEvent(new IResource[0]));
        }
    };
    deselectButton.addSelectionListener(listener);

    deselectButton = new Button(tComposite, SWT.PUSH);
    deselectButton.setText(SVNUIMessages.Button_ClearAll);
    data = new GridData();
    data.widthHint = DefaultDialog.computeButtonWidth(deselectButton);
    deselectButton.setLayoutData(data);
    listener = new SelectionAdapter() {
        public void widgetSelected(SelectionEvent e) {
            ResourceSelectionComposite.this.tableViewer.setAllChecked(false);
            ResourceSelectionComposite.this.selectionListener.selectionChanged(null);
            ResourceSelectionComposite.this
                    .fireResourcesSelectionChanged(new ResourceSelectionChangedEvent(new IResource[0]));
        }
    };
    deselectButton.addSelectionListener(listener);

    Composite lComposite = new Composite(tComposite, SWT.NONE);
    GridLayout lLayout = new GridLayout();
    lLayout.horizontalSpacing = 0;
    lLayout.marginWidth = 0;
    lComposite.setLayout(lLayout);
    data = new GridData(GridData.HORIZONTAL_ALIGN_FILL | GridData.GRAB_HORIZONTAL);
    lComposite.setLayoutData(data);

    this.lblSelectedResourcesNumber = new Label(lComposite, SWT.RIGHT);
    this.lblSelectedResourcesNumber.setText(this.resourceNumberToString(this.selectedResources.length));
    data = new GridData(GridData.HORIZONTAL_ALIGN_FILL | GridData.GRAB_HORIZONTAL);
    this.lblSelectedResourcesNumber.setLayoutData(data);
}

From source file:org.eclipse.team.svn.ui.composite.RevisionPropertiesComposite.java

License:Open Source License

protected void createControls(Composite parent) {
    GridLayout layout = null;// w w w .j  a  va2s.  c om
    GridData data = null;

    layout = new GridLayout();
    layout.marginHeight = 0;
    layout.marginWidth = 0;
    this.setLayout(layout);
    SashForm innerSashForm = new SashForm(this, SWT.VERTICAL);

    data = new GridData(GridData.FILL_BOTH);
    innerSashForm.setLayoutData(data);

    Table table = new Table(innerSashForm, SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION | SWT.MULTI);
    table.setHeaderVisible(true);
    table.setLinesVisible(true);
    data = new GridData(GridData.FILL_BOTH);
    data.horizontalSpan = 2;
    table.setLayoutData(data);
    TableLayout tableLayout = new TableLayout();
    table.setLayout(tableLayout);

    this.propertyText = new Text(innerSashForm, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL);
    this.propertyText.setBackground(this.propertyText.getBackground());
    this.propertyText.setEditable(false);
    data = new GridData(GridData.FILL_BOTH);
    this.propertyText.setLayoutData(data);

    innerSashForm.setWeights(new int[] { 70, 30 });

    this.propertyViewer = new TableViewer(table);
    this.propertyViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(SelectionChangedEvent event) {
            if (event.getSelection() instanceof IStructuredSelection) {
                Object selection = ((IStructuredSelection) event.getSelection()).getFirstElement();
                if (selection != null && selection instanceof SVNProperty) {
                    RevisionPropertiesComposite.this.propertyText.setText(((SVNProperty) selection).value);
                }
            }
        }
    });

    //creating a comparator right now to get column listeners
    ColumnedViewerComparator comparator = new ColumnedViewerComparator(this.propertyViewer) {

        public int compareImpl(Viewer viewer, Object row1, Object row2) {
            if (row1 instanceof SVNProperty) {
                SVNProperty data1 = (SVNProperty) row1;
                SVNProperty data2 = (SVNProperty) row2;
                return this.column == RevisionPropertiesComposite.COLUMN_NAME
                        ? ColumnedViewerComparator.compare(data1.name, data2.name)
                        : ColumnedViewerComparator.compare(data1.value, data2.value);
            }
            return 0;
        }

    };

    TableColumn col = new TableColumn(table, SWT.NONE);
    col.setResizable(true);
    col.setText(SVNUIMessages.PropertiesComposite_Name);
    col.addSelectionListener(comparator);
    tableLayout.addColumnData(new ColumnWeightData(30, true));
    col = new TableColumn(table, SWT.NONE);
    col.setResizable(true);
    col.setText(SVNUIMessages.PropertiesComposite_Value);
    col.addSelectionListener(comparator);
    tableLayout.addColumnData(new ColumnWeightData(70, true));

    //adding a comparator and selecting a default sort column
    this.propertyViewer.setComparator(comparator);
    comparator.setColumnNumber(RevisionPropertiesComposite.COLUMN_NAME);
    this.propertyViewer.getTable()
            .setSortColumn(this.propertyViewer.getTable().getColumn(RevisionPropertiesComposite.COLUMN_NAME));
    this.propertyViewer.getTable().setSortDirection(SWT.UP);

    this.propertyViewer.setContentProvider(new IStructuredContentProvider() {
        public Object[] getElements(Object inputElement) {
            if (RevisionPropertiesComposite.this.isPending) {
                return (Object[]) inputElement;
            }
            return RevisionPropertiesComposite.this.properties;
        }

        public void dispose() {
        }

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

    this.propertyViewer.setLabelProvider(new ITableLabelProvider() {

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

        public String getColumnText(Object element, int columnIndex) {
            if (RevisionPropertiesComposite.this.isPending) {
                if (columnIndex == RevisionPropertiesComposite.COLUMN_NAME) {
                    return SVNUIMessages.getString(RepositoryPending.PENDING);
                }
                return ""; //$NON-NLS-1$
            }
            SVNProperty data = (SVNProperty) element;
            if (columnIndex == 0) {
                return data.name;
            }
            return FileUtility.formatMultilineText(data.value);
        }

        public void addListener(ILabelProviderListener listener) {
        }

        public void dispose() {
        }

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

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

    MenuManager menuMgr = new MenuManager();
    Menu menu = menuMgr.createContextMenu(table);
    menuMgr.addMenuListener(new IMenuListener() {
        public void menuAboutToShow(IMenuManager manager) {
            manager.add(new Separator(IWorkbenchActionConstants.MB_ADDITIONS));
            final IStructuredSelection tSelection = (IStructuredSelection) RevisionPropertiesComposite.this.propertyViewer
                    .getSelection();
            if (tSelection.size() == 1 && tSelection.getFirstElement() instanceof String) {
                return;
            }
            Action tAction = null;
            boolean isItitialized = RevisionPropertiesComposite.this.properties != null;
            if (isItitialized) {
                manager.add(tAction = new Action(SVNUIMessages.PropertiesComposite_Add) {
                    public void run() {
                        RevisionPropertiesComposite.this.editProperty(null);
                    }
                });
                tAction.setEnabled(RevisionPropertiesComposite.this.location != null);
                manager.add(tAction = new Action(SVNUIMessages.PropertiesComposite_Edit) {
                    public void run() {
                        SVNProperty data = (SVNProperty) tSelection.getFirstElement();
                        RevisionPropertiesComposite.this.editProperty(data);
                    }
                });
                tAction.setEnabled(tSelection.size() == 1);
            }
        }
    });
    menuMgr.setRemoveAllWhenShown(true);
    table.setMenu(menu);

    this.propertyViewer.addDoubleClickListener(new IDoubleClickListener() {
        public void doubleClick(DoubleClickEvent e) {
            IStructuredSelection selection = (IStructuredSelection) e.getSelection();
            if (selection.size() == 1) {
                SVNProperty data = (SVNProperty) selection.getFirstElement();
                RevisionPropertiesComposite.this.editProperty(data);
            }
        }
    });

}

From source file:org.eclipse.team.svn.ui.panel.callback.AskTrustSSLServerPanel.java

License:Open Source License

public void createControlsImpl(Composite parent) {
    ArrayList tData = new ArrayList();
    String[] line = new String[2];
    line[0] = SVNUIMessages.AskTrustSSLServerPanel_Server;
    for (String s : this.info.hostnames) {
        line[1] = line[1] != null ? line[1] + ", " + s : s; //$NON-NLS-1$
    }//from  w  w  w  .  j a v  a 2s.co  m
    tData.add(line);
    line = new String[2];
    line[0] = SVNUIMessages.AskTrustSSLServerPanel_Problems;
    line[1] = "";
    if (this.failures.anyOf(SSLServerCertificateFailures.UNKNOWN_CA | SSLServerCertificateFailures.OTHER)) {
        line[1] += SVNUIMessages.AskTrustSSLServerPanel_MsgNotTrusted;
    }
    if (this.failures.anyOf(SSLServerCertificateFailures.CN_MISMATCH | SSLServerCertificateFailures.OTHER)) {
        line[1] += line[1].length() > 0 ? "\n" + SVNUIMessages.AskTrustSSLServerPanel_MsgHostNameDoNotMatch //$NON-NLS-1$
                : SVNUIMessages.AskTrustSSLServerPanel_MsgHostNameDoNotMatch;
    }
    if (this.failures.anyOf(SSLServerCertificateFailures.NOT_YET_VALID | SSLServerCertificateFailures.OTHER)) {
        line[1] += line[1].length() > 0 ? "\n" + SVNUIMessages.AskTrustSSLServerPanel_MsgNotYetValid //$NON-NLS-1$
                : SVNUIMessages.AskTrustSSLServerPanel_MsgNotYetValid;
    }
    if (this.failures.anyOf(SSLServerCertificateFailures.EXPIRED | SSLServerCertificateFailures.OTHER)) {
        line[1] += line[1].length() > 0 ? "\n" + SVNUIMessages.AskTrustSSLServerPanel_MsgExpired //$NON-NLS-1$
                : SVNUIMessages.AskTrustSSLServerPanel_MsgExpired;
    }
    tData.add(line);
    line = new String[2];
    line[0] = "Subject"; //$NON-NLS-1$
    line[1] = this.info.subject;
    tData.add(line);
    line = new String[2];
    line[0] = "Valid"; //$NON-NLS-1$
    line[1] = SVNUtility.formatSSLValid(this.info.validFrom, this.info.validTo);
    tData.add(line);
    line = new String[2];
    line[0] = "Issuer"; //$NON-NLS-1$
    line[1] = this.info.issuer;
    tData.add(line);
    line = new String[2];
    line[0] = "Fingerprint"; //$NON-NLS-1$
    line[1] = SVNUtility.formatSSLFingerprint(this.info.fingerprint);
    tData.add(line);
    final String[][] tableData = (String[][]) tData.toArray(new String[tData.size()][]);

    GridData data = null;

    SashForm innerSashForm = new SashForm(parent, SWT.VERTICAL);
    data = new GridData(GridData.FILL_BOTH);
    innerSashForm.setLayoutData(data);

    final Table table = new Table(innerSashForm,
            SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER | SWT.SINGLE | SWT.FULL_SELECTION);
    data = new GridData(GridData.FILL_BOTH);
    table.setLayoutData(data);
    table.setHeaderVisible(true);
    table.setLinesVisible(true);
    TableLayout tLayout = new TableLayout();
    tLayout.addColumnData(new ColumnWeightData(20, true));
    tLayout.addColumnData(new ColumnWeightData(80, true));
    table.setLayout(tLayout);

    final Text text = new Text(innerSashForm, SWT.BORDER | SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL);
    innerSashForm.setWeights(new int[] { 25, 75 });

    TableColumn col = new TableColumn(table, SWT.LEFT);
    col.setResizable(true);
    col.setText(SVNUIMessages.AskTrustSSLServerPanel_Field);
    col = new TableColumn(table, SWT.LEFT);
    col.setResizable(true);
    col.setText(SVNUIMessages.AskTrustSSLServerPanel_Value);

    TableViewer view = new TableViewer(table);
    view.setContentProvider(new ArrayStructuredContentProvider());
    view.setLabelProvider(new ITableLabelProvider() {
        public Image getColumnImage(Object element, int columnIndex) {
            return null;
        }

        public String getColumnText(Object element, int columnIndex) {
            String[] row = (String[]) element;
            return row[columnIndex];
        }

        public void addListener(ILabelProviderListener listener) {
        }

        public void dispose() {
        }

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

        public void removeListener(ILabelProviderListener listener) {
        }
    });
    view.setInput(tableData);
    SelectionListener listener = new SelectionListener() {
        public void widgetDefaultSelected(SelectionEvent e) {
        }

        public void widgetSelected(SelectionEvent e) {
            int idx = table.getSelectionIndex();
            if (idx > -1 && idx < tableData.length) {
                text.setText(PatternProvider.replaceAll(tableData[idx][1].trim(), ", ", "\n")); //$NON-NLS-1$ //$NON-NLS-2$
            }
        }
    };
    table.addSelectionListener(listener);

    data = new GridData(GridData.FILL_BOTH);
    text.setLayoutData(data);
    text.setEditable(false);

    table.setSelection(0);
    listener.widgetSelected(null);
}

From source file:org.eclipse.team.svn.ui.panel.ItemListPanel.java

License:Open Source License

public void createControlsImpl(Composite parent) {
    this.table = new Table(parent, SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL | SWT.SINGLE | SWT.FULL_SELECTION);
    this.table.setLayoutData(new GridData(GridData.FILL_BOTH));
    TableLayout layout = new TableLayout();
    this.table.setLayout(layout);
    TableViewer viewer = new TableViewer(this.table);

    TableColumn col = new TableColumn(this.table, SWT.NONE);
    col.setResizable(true);/*from  w w w .j a v a2  s .co m*/
    col.setAlignment(SWT.CENTER);
    layout.addColumnData(new ColumnWeightData(0, 60, true));

    viewer.setContentProvider(new ArrayStructuredContentProvider());
    ITableLabelProvider labelProvider = new ITableLabelProvider() {
        public Image getColumnImage(Object element, int columnIndex) {
            return ItemListPanel.this.itemIcon;
        }

        public String getColumnText(Object element, int columnIndex) {
            return element.toString();
        }

        public void addListener(ILabelProviderListener listener) {
        }

        public void dispose() {
        }

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

        public void removeListener(ILabelProviderListener listener) {
        }
    };
    viewer.setLabelProvider(labelProvider);
    viewer.setInput(this.items);
}

From source file:org.eclipse.team.svn.ui.panel.local.ResourceListPanel.java

License:Open Source License

public void createControlsImpl(Composite parent) {
    Table table = new Table(parent, SWT.V_SCROLL | SWT.FULL_SELECTION | SWT.SINGLE | SWT.BORDER);
    TableLayout layout = new TableLayout();
    table.setLayout(layout);//from  w  w w  .j a  va  2 s.c  o m

    this.tableViewer = new TableViewer(table);
    GridData data = new GridData(GridData.FILL_BOTH);
    data.heightHint = 120;
    this.tableViewer.getTable().setLayoutData(data);

    final TableColumn col = new TableColumn(table, SWT.NONE);
    col.setResizable(true);
    layout.addColumnData(new ColumnWeightData(100, true));

    this.tableViewer.getTable().addControlListener(new ControlAdapter() {
        public void controlResized(ControlEvent e) {
            col.setWidth(ResourceListPanel.this.tableViewer.getTable().getClientArea().width);
        }
    });

    this.tableViewer.setLabelProvider(new ITableLabelProvider() {
        public Image getColumnImage(Object element, int columnIndex) {
            IWorkbenchAdapter adapter = (IWorkbenchAdapter) ((IAdaptable) element)
                    .getAdapter(IWorkbenchAdapter.class);
            if (adapter == null) {
                return null;
            }
            ImageDescriptor descriptor = adapter.getImageDescriptor(element);
            if (descriptor == null) {
                return null;
            }
            Image image = ResourceListPanel.this.images.get(descriptor);
            if (image == null) {
                image = descriptor.createImage();
                ResourceListPanel.this.images.put(descriptor, image);
            }
            return image;
        }

        public String getColumnText(Object element, int columnIndex) {
            IResource resource = (IResource) element;
            if (ResourceListPanel.this.showLocalNames) {
                return resource.getFullPath().toString().substring(1);
            }
            IRepositoryResource node = SVNRemoteStorage.instance().asRepositoryResource(resource);
            return node.getUrl();
        }

        public void addListener(ILabelProviderListener listener) {
        }

        public void dispose() {
        }

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

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

    this.tableViewer.setContentProvider(new ArrayStructuredContentProvider());

    this.tableViewer.setInput(this.resources);
}

From source file:org.eclipse.team.svn.ui.panel.view.property.PropertyKeywordEditPanel.java

License:Open Source License

public void createControlsImpl(Composite parent) {
    Composite composite = new Composite(parent, SWT.NULL);
    GridLayout layout = new GridLayout();
    layout.marginHeight = layout.marginWidth = 0;
    composite.setLayout(layout);/*from  w  ww  .j  av a 2s  .c o m*/
    composite.setLayoutData(new GridData(GridData.FILL_BOTH));

    this.checkboxViewer = CheckboxTableViewer.newCheckList(composite, SWT.BORDER | SWT.FULL_SELECTION);
    GridData data = new GridData(GridData.FILL_BOTH);
    this.checkboxViewer.getTable().setLayoutData(data);

    TableLayout tlayout = new TableLayout();
    this.checkboxViewer.getTable().setLayout(tlayout);

    TableColumn column = new TableColumn(this.checkboxViewer.getTable(), SWT.LEFT);
    column.setText(SVNUIMessages.PropertyKeywordEditPanel_Keyword);
    tlayout.addColumnData(new ColumnWeightData(20, true));

    column = new TableColumn(this.checkboxViewer.getTable(), SWT.LEFT);
    column.setText(SVNUIMessages.PropertyKeywordEditPanel_Description1);
    tlayout.addColumnData(new ColumnWeightData(50, true));

    column = new TableColumn(this.checkboxViewer.getTable(), SWT.LEFT);
    column.setText(SVNUIMessages.PropertyKeywordEditPanel_Sample);
    tlayout.addColumnData(new ColumnWeightData(30, true));

    KeywordTableElement[] elements = new KeywordTableElement[] { this.dateElement, this.revisionElement,
            this.lastChangedByElement, this.headUrlElement, this.idElement, this.headerElement };

    this.checkboxViewer.setContentProvider(new ArrayStructuredContentProvider());

    this.checkboxViewer.addCheckStateListener(new ICheckStateListener() {
        public void checkStateChanged(CheckStateChangedEvent event) {
            KeywordTableElement element = (KeywordTableElement) event.getElement();

            if (element.getCurrentState() == KeywordTableElement.DESELECTED) {
                element.setCurrentState(KeywordTableElement.SELECTED);
            } else if ((element.getCurrentState() == KeywordTableElement.SELECTED)
                    && (element.getInitialState() == KeywordTableElement.MIXED)) {
                element.setCurrentState(KeywordTableElement.MIXED);
            } else {
                element.setCurrentState(KeywordTableElement.DESELECTED);
            }
            PropertyKeywordEditPanel.this.refreshCheckboxState(element);
        }
    });

    this.checkboxViewer.setLabelProvider(new ITableLabelProvider() {
        public Image getColumnImage(Object element, int columnIndex) {
            return null;
        }

        public String getColumnText(Object element, int columnIndex) {
            KeywordTableElement keyElement = (KeywordTableElement) element;
            switch (columnIndex) {
            case 0: {
                return keyElement.getName();
            }
            case 1: {
                return keyElement.getDescription();
            }
            case 2: {
                return keyElement.getSample();
            }
            default: {
                return ""; //$NON-NLS-1$
            }
            }
        }

        public void addListener(ILabelProviderListener listener) {
        }

        public void dispose() {
        }

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

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

    this.checkboxViewer.setInput(elements);
    this.checkboxViewer.getTable().setHeaderVisible(true);

    this.addSelectionButtons(composite);

    if (this.recursionEnabled || this.selectedResources.length > 1) {
        Label separator = new Label(composite, SWT.HORIZONTAL | SWT.SEPARATOR);
        separator.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));

        separator = new Label(composite, SWT.HORIZONTAL | SWT.SEPARATOR);
        separator.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
        separator.setVisible(false);

        Composite subComposite = new Composite(composite, SWT.NONE);
        layout = new GridLayout();
        layout.marginHeight = layout.marginWidth = 0;
        layout.numColumns = 2;
        subComposite.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
        subComposite.setLayout(layout);

        Composite maskComposite = new Composite(subComposite, SWT.NONE);
        layout = new GridLayout();
        layout.marginHeight = layout.marginWidth = 0;
        layout.numColumns = 2;
        maskComposite.setLayout(layout);
        maskComposite.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
        this.useMaskCheckbox = new Button(maskComposite, SWT.CHECK);
        this.useMaskCheckbox.setText(SVNUIMessages.PropertyKeywordEditPanel_UseMask);
        this.maskHistory = new UserInputHistory("keywordsEditPanel"); //$NON-NLS-1$
        this.maskText = new Combo(maskComposite, SWT.BORDER);
        this.maskText.setItems(this.maskHistory.getHistory());
        if (this.maskText.getItemCount() == 0) {
            this.maskText.setText("*"); //$NON-NLS-1$
        } else {
            this.maskText.select(0);
        }
        Listener maskTextListener = new Listener() {
            public void handleEvent(Event event) {
                PropertyKeywordEditPanel.this.checkboxViewer.setAllGrayed(false);
                PropertyKeywordEditPanel.this.changeMixedElementsToChecked();
            }
        };
        this.maskText.addListener(SWT.Selection, maskTextListener);
        this.maskText.addListener(SWT.Modify, maskTextListener);

        this.attachTo(this.maskText, new AbstractVerifierProxy(
                new NonEmptyFieldVerifier(SVNUIMessages.PropertyKeywordEditPanel_Mask_Verifier)) {
            protected boolean isVerificationEnabled(Control input) {
                return PropertyKeywordEditPanel.this.useMaskCheckbox.getSelection();
            }
        });
        data = new GridData();
        data.widthHint = 170;
        this.maskText.setLayoutData(data);

        this.maskText.setEnabled(false);

        this.useMaskCheckbox.addSelectionListener(new SelectionListener() {
            public void widgetSelected(SelectionEvent e) {
                PropertyKeywordEditPanel.this.maskText
                        .setEnabled(PropertyKeywordEditPanel.this.useMaskCheckbox.getSelection());
                PropertyKeywordEditPanel.this.checkboxViewer.setAllGrayed(false);
                PropertyKeywordEditPanel.this.changeMixedElementsToChecked();
                PropertyKeywordEditPanel.this.validateContent();
            }

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

        if (this.recursionEnabled) {
            this.setRecursivelyCheckbox = new Button(subComposite, SWT.CHECK);
            this.setRecursivelyCheckbox.setText(SVNUIMessages.PropertyKeywordEditPanel_Recursively);
            this.setRecursivelyCheckbox
                    .setLayoutData(new GridData(GridData.FILL_HORIZONTAL | GridData.HORIZONTAL_ALIGN_END));
            this.setRecursivelyCheckbox.setSelection(true);
            this.setRecursivelyCheckbox.addSelectionListener(new SelectionListener() {
                public void widgetSelected(SelectionEvent e) {
                    PropertyKeywordEditPanel.this.checkboxViewer.setAllGrayed(false);
                    PropertyKeywordEditPanel.this.changeMixedElementsToChecked();
                }

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

    for (int i = 0; i < elements.length; i++) {
        this.refreshCheckboxState(elements[i]);
    }
}

From source file:org.eclipse.team.svn.ui.preferences.SVNTeamPropsPreferencePage.java

License:Open Source License

protected void createAutopropTable(Composite parent) {
    this.autopropTableViewer = CheckboxTableViewer.newCheckList(parent,
            SWT.BORDER | SWT.FULL_SELECTION | SWT.MULTI | SWT.V_SCROLL | SWT.H_SCROLL);
    TableLayout layout = new TableLayout();
    layout.addColumnData(new ColumnPixelData(20, false));
    layout.addColumnData(new ColumnWeightData(25, true));
    layout.addColumnData(new ColumnWeightData(75, true));

    this.autopropTableViewer.getTable().setLayout(layout);
    this.autopropTableViewer.getTable().setLinesVisible(true);
    this.autopropTableViewer.getTable().setHeaderVisible(true);
    GridData data = new GridData(GridData.FILL_BOTH);
    data.heightHint = 200;//from   w  ww  . ja  v  a2  s  .  c om
    this.autopropTableViewer.getTable().setLayoutData(data);

    this.autopropTableViewer.setLabelProvider(new ITableLabelProvider() {

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

        public String getColumnText(Object element, int columnIndex) {
            if (columnIndex == SVNTeamPropsPreferencePage.COLUMN_INDEX_FILE_NAME) {
                return ((SVNTeamPropsPreferencePage.AutoProperty) element).fileName;
            } else if (columnIndex == SVNTeamPropsPreferencePage.COLUMN_INDEX_PROPERTIES) {
                return ((SVNTeamPropsPreferencePage.AutoProperty) element).properties;
            }
            return ""; //$NON-NLS-1$
        }

        public void addListener(ILabelProviderListener listener) {
        }

        public void dispose() {
        }

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

        public void removeListener(ILabelProviderListener listener) {
        }

    });

    TableColumn column = new TableColumn(this.autopropTableViewer.getTable(), SWT.NONE);
    column.setResizable(false);

    column = new TableColumn(this.autopropTableViewer.getTable(), SWT.NONE);
    column.setText(SVNUIMessages.AutoPropsPreferencePage_columnHeaderFileName);

    column = new TableColumn(this.autopropTableViewer.getTable(), SWT.NONE);
    column.setText(SVNUIMessages.AutoPropsPreferencePage_columnHeaderProperties);
}

From source file:org.eclipse.team.svn.ui.preferences.SVNTeamPropsPreferencePage.java

License:Open Source License

protected void createCustompropTable(Composite parent) {
    this.custompropTableViewer = new TableViewer(parent,
            SWT.BORDER | SWT.FULL_SELECTION | SWT.MULTI | SWT.V_SCROLL | SWT.H_SCROLL);// CheckboxTableViewer.newCheckList(parent, SWT.BORDER | SWT.FULL_SELECTION | SWT.MULTI | SWT.V_SCROLL | SWT.H_SCROLL);
    TableLayout layout = new TableLayout();
    layout.addColumnData(new ColumnWeightData(30, true));
    layout.addColumnData(new ColumnWeightData(70, true));

    this.custompropTableViewer.getTable().setLayout(layout);
    this.custompropTableViewer.getTable().setLinesVisible(true);
    this.custompropTableViewer.getTable().setHeaderVisible(true);
    GridData data = new GridData(GridData.FILL_BOTH);
    data.heightHint = 150;//from   w  w w.j  ava2s  .  c o m
    this.custompropTableViewer.getTable().setLayoutData(data);
    this.custompropTableViewer.setLabelProvider(new ITableLabelProvider() {

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

        public String getColumnText(Object element, int columnIndex) {
            if (columnIndex == 0) {
                return ((PredefinedProperty) element).name;
            } else if (columnIndex == 1) {
                return ((PredefinedProperty) element).validationRegexp;
            }
            return ""; //$NON-NLS-1$
        }

        public void addListener(ILabelProviderListener listener) {
        }

        public void dispose() {
        }

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

        public void removeListener(ILabelProviderListener listener) {
        }

    });

    TableColumn column = new TableColumn(this.custompropTableViewer.getTable(), SWT.NONE);
    column.setText(SVNUIMessages.CustomPropsPreferencePage_columnHeaderPropName);

    column = new TableColumn(this.custompropTableViewer.getTable(), SWT.NONE);
    column.setText(SVNUIMessages.CustomPropsPreferencePage_columnHeaderRegexp);

}