Example usage for org.eclipse.jface.viewers CheckboxTableViewer newCheckList

List of usage examples for org.eclipse.jface.viewers CheckboxTableViewer newCheckList

Introduction

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

Prototype

public static CheckboxTableViewer newCheckList(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:org.jboss.tools.jmx.jvmmonitor.internal.ui.actions.ConfigureColumnsDialog.java

License:Open Source License

/**
 * Creates the columns viewer.//w  w w  . j a  va 2  s. c  o  m
 * 
 * @param parent
 *            The parent composite
 */
private void createColumnsViewer(Composite parent) {
    Label label = new Label(parent, SWT.NONE);
    label.setText(Messages.configureColumnsMessage);
    GridData gridData = new GridData(GridData.FILL_HORIZONTAL);
    gridData.horizontalSpan = 2;
    label.setLayoutData(gridData);

    columnsViewer = CheckboxTableViewer.newCheckList(parent, SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION);
    columnsViewer.getTable().setLayoutData(new GridData(GridData.FILL_BOTH));
    columnsViewer.setLabelProvider(new LabelProvider());
    columnsViewer.setContentProvider(new ArrayContentProvider());
}

From source file:org.jboss.tools.jsf.ui.editor.check.wizards.QuickFixPage.java

License:Open Source License

/**
 * Create the table that shows the markers.
 * /*  www . java  2  s  .  c o m*/
 * @param control
 */
private void createMarkerTable(Composite control) {
    markersTable = CheckboxTableViewer.newCheckList(control, SWT.BORDER | SWT.V_SCROLL | SWT.SINGLE);

    createTableColumns();

    markersTable.setContentProvider(new IStructuredContentProvider() {
        /*
         * (non-Javadoc)
         * 
         * @see org.eclipse.jface.viewers.IContentProvider#dispose()
         */
        public void dispose() {

        }

        /*
         * (non-Javadoc)
         * 
         * @see
         * org.eclipse.jface.viewers.IStructuredContentProvider#getElements
         * (java.lang.Object)
         */
        public Object[] getElements(Object inputElement) {
            IMarkerResolution selected = getSelectedResolution();
            if (selected == null) {
                return new Object[0];
            }

            if (resolutions.containsKey(selected)) {
                return ((Collection) resolutions.get(selected)).toArray();
            }
            return MarkerUtils.EMPTY_MARKER_ARRAY;
        }

        /*
         * (non-Javadoc)
         * 
         * @see
         * org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse
         * .jface.viewers.Viewer, java.lang.Object, java.lang.Object)
         */
        public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {

        }
    });

    markersTable.setLabelProvider(new ITableLabelProvider() {

        /*
         * (non-Javadoc)
         * 
         * @see
         * org.eclipse.jface.viewers.ITableLabelProvider#getColumnImage(
         * java.lang.Object, int)
         */
        public Image getColumnImage(Object element, int columnIndex) {
            if (columnIndex == 0)
                return Util.getImage(((IMarker) element).getAttribute(IMarker.SEVERITY, -1));
            return null;
        }

        /*
         * (non-Javadoc)
         * 
         * @see
         * org.eclipse.jface.viewers.ITableLabelProvider#getColumnText(java
         * .lang.Object, int)
         */
        public String getColumnText(Object element, int columnIndex) {
            IMarker marker = (IMarker) element;
            if (columnIndex == 0)
                return Util.getResourceName(marker);

            // Is the location override set?
            String locationString = marker.getAttribute(IMarker.LOCATION,
                    MarkerSupportInternalUtilities.EMPTY_STRING);
            if (locationString.length() > 0) {
                return locationString;
            }

            // No override so use line number
            int lineNumber = marker.getAttribute(IMarker.LINE_NUMBER, -1);
            String lineNumberString = null;
            if (lineNumber < 0)
                lineNumberString = MarkerMessages.Unknown;
            else
                lineNumberString = NLS.bind(MarkerMessages.label_lineNumber, Integer.toString(lineNumber));

            return lineNumberString;
        }

        /*
         * (non-Javadoc)
         * 
         * @see
         * org.eclipse.jface.viewers.IBaseLabelProvider#addListener(org.
         * eclipse.jface.viewers.ILabelProviderListener)
         */
        public void addListener(ILabelProviderListener listener) {
            // do nothing

        }

        /*
         * (non-Javadoc)
         * 
         * @see org.eclipse.jface.viewers.IBaseLabelProvider#dispose()
         */
        public void dispose() {
            // do nothing

        }

        /*
         * (non-Javadoc)
         * 
         * @see
         * org.eclipse.jface.viewers.IBaseLabelProvider#isLabelProperty(
         * java.lang.Object, java.lang.String)
         */
        public boolean isLabelProperty(Object element, String property) {
            return false;
        }

        /*
         * (non-Javadoc)
         * 
         * @see
         * org.eclipse.jface.viewers.IBaseLabelProvider#removeListener(org
         * .eclipse.jface.viewers.ILabelProviderListener)
         */
        public void removeListener(ILabelProviderListener listener) {
            // do nothing

        }
    });

    markersTable.addCheckStateListener(new ICheckStateListener() {
        /*
         * (non-Javadoc)
         * 
         * @see
         * org.eclipse.jface.viewers.ICheckStateListener#checkStateChanged
         * (org.eclipse.jface.viewers.CheckStateChangedEvent)
         */
        public void checkStateChanged(CheckStateChangedEvent event) {
            if (event.getChecked() == true) {
                setPageComplete(true);
            } else {
                setPageComplete(markersTable.getCheckedElements().length > 0);
            }

        }
    });

    markersTable.addSelectionChangedListener(new ISelectionChangedListener() {
        /*
        * (non-Javadoc)
        * 
        * @seeorg.eclipse.jface.viewers.ISelectionChangedListener#
        * selectionChanged
        * (org.eclipse.jface.viewers.SelectionChangedEvent)
        */
        public void selectionChanged(SelectionChangedEvent event) {

            if (event.getSelection().isEmpty())
                return;
            IMarker marker = (IMarker) ((IStructuredSelection) event.getSelection()).getFirstElement();
            ExtendedMarkersView.openMarkerInEditor(marker,
                    PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage());

        }
    });

    markersTable.setInput(this);
}

From source file:org.jboss.tools.maven.conversion.ui.dialog.IdentifyMavenDependencyPage.java

License:Open Source License

private void displayDependenciesTable(Composite container) {

    GridData gd = new GridData(SWT.FILL, SWT.FILL, true, true, 2, 4);
    gd.heightHint = 500;/*from  w w  w .ja va2  s.  com*/
    gd.widthHint = 545;

    dependenciesViewer = CheckboxTableViewer.newCheckList(container,
            SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION);
    Table table = dependenciesViewer.getTable();
    table.setFocus();
    table.setLayoutData(gd);
    table.setLinesVisible(true);
    table.setHeaderVisible(true);

    TableColumn emptyColumn = new TableColumn(table, SWT.NONE);
    emptyColumn.setWidth(20);

    TableViewerColumn sourceColumn = new TableViewerColumn(dependenciesViewer, SWT.NONE);
    sourceColumn.getColumn().setText("Project Reference");
    sourceColumn.getColumn().setWidth(270);
    sourceColumn.setLabelProvider(new ColumnLabelProvider() {
        @Override
        @SuppressWarnings("unchecked")
        public String getText(Object element) {
            ProjectDependency projectDependency = (ProjectDependency) element;
            return projectDependency.getPath().lastSegment();
        }

        @Override
        public String getToolTipText(Object element) {
            ProjectDependency projectDependency = (ProjectDependency) element;
            if (projectDependency.getDependencyKind() != DependencyKind.Archive) {
                return "";
            }
            try {
                return "SHA1 Checksum : "
                        + IdentificationUtil.getSHA1(ConversionUtils.getFile(projectDependency.getPath()));
            } catch (Exception e) {
                e.printStackTrace();
            }
            return "Unable to compute SHA1 Checksum";
        }

        @Override
        @SuppressWarnings("unchecked")
        public Image getImage(Object element) {
            ProjectDependency projectDependency = (ProjectDependency) element;
            Image img;
            if (projectDependency.getDependencyKind() == ProjectDependency.DependencyKind.Archive) {
                img = jarImage;
            } else {
                img = projectImage;
            }
            return img;
        }
    });

    TableViewerColumn dependencyColumn = new TableViewerColumn(dependenciesViewer, SWT.NONE);
    dependencyColumn.getColumn().setText("Maven Dependency");
    dependencyColumn.getColumn().setWidth(270);
    dependencyColumn.setLabelProvider(new DependencyLabelProvider());

    dependenciesViewer.setContentProvider(ArrayContentProvider.getInstance());
    dependenciesViewer.addCheckStateListener(new ICheckStateListener() {
        public void checkStateChanged(CheckStateChangedEvent event) {
            refresh();
        }
    });
    dependenciesViewer.setInput(dependencyMap.keySet());
    dependenciesViewer.setAllChecked(true);

    dependenciesViewer.getTable().addListener(SWT.MouseDoubleClick,
            new CellListener(dependenciesViewer.getTable()) {

                @Override
                protected void handle(int columnIndex, TableItem item) {
                    if (columnIndex == DEPENDENCY_COLUMN) {
                        ProjectDependency projectDep = (ProjectDependency) item.getData();

                        IdentificationJob job = identificationJobs.get(projectDep);
                        if (Job.RUNNING == job.getState()) {
                            return;
                        }

                        Dependency d = dependencyMap.get(projectDep);
                        EditDependencyDialog editDependencyDialog = new EditDependencyDialog(getShell());
                        editDependencyDialog.setDependency(d);
                        if (editDependencyDialog.open() == Window.OK) {
                            Dependency newDep = editDependencyDialog.getDependency();
                            dependencyMap.put(projectDep, newDep);
                            if (newDep != null && (d == null || !getKey(newDep).equals(getKey(d)))) {
                                resolve(projectDep, newDep);
                            }
                        }
                    }
                }

            });

    addSelectionButton(container, "Select All", true);
    addSelectionButton(container, "Deselect All", false);
    addIdentifyButton(container, "Identify dependencies");
    addStopButton(container, "Stop identification");
}

From source file:org.jboss.tools.maven.ui.preferences.RemoteRepositoriesPreferencePage.java

License:Open Source License

@Override
protected Control createContents(Composite parent) {
    initializeDialogUnits(parent);/*from   w ww.  ja va 2  s .  c  om*/

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

    Label label = new Label(composite, SWT.FILL);
    label.setText(
            "Remote repositories used for dependency identification (only Nexus repositories are supported).");

    // Nexus Repositories
    Group group = new Group(composite, SWT.NONE);
    GridData gd = new GridData(SWT.FILL, SWT.FILL, true, false);
    group.setLayoutData(gd);
    layout = new GridLayout(2, false);
    group.setLayout(layout);
    group.setText("Remote Repositories");
    tableViewer = CheckboxTableViewer.newCheckList(group, SWT.BORDER | SWT.V_SCROLL | SWT.SINGLE);
    Table table = tableViewer.getTable();
    gd = new GridData(GridData.FILL_BOTH);
    gd.heightHint = 300;
    table.setLayoutData(gd);
    table.setHeaderVisible(true);
    table.setLinesVisible(true);

    String[] columnNames = new String[] { "Name", "URL" };
    int[] columnWidths = new int[] { 200, 200 };

    for (int i = 0; i < columnNames.length; i++) {
        TableColumn tc = new TableColumn(table, SWT.LEFT);
        tc.setText(columnNames[i]);
        tc.setWidth(columnWidths[i]);
    }

    ColumnLayoutData[] layouts = { new ColumnWeightData(200, 200), new ColumnWeightData(200, 200) };

    TableLayout tableLayout = new AutoResizeTableLayout(table);
    for (int i = 0; i < layouts.length; i++) {
        tableLayout.addColumnData(layouts[i]);
    }

    nexusRepositories = remoteRepositoryManager.getNexusRepositories();
    tableViewer.setLabelProvider(new NexusRepositoryLabelProvider());
    tableViewer.setContentProvider(new NexusRepositoryContentProvider(nexusRepositories));

    tableViewer.setInput(nexusRepositories);
    for (NexusRepository nexusRepository : nexusRepositories) {
        tableViewer.setChecked(nexusRepository, nexusRepository.isEnabled());
    }
    tableViewer.addCheckStateListener(new ICheckStateListener() {

        public void checkStateChanged(CheckStateChangedEvent event) {
            NexusRepository repository = (NexusRepository) event.getElement();
            repository.setEnabled(!repository.isEnabled());
        }
    });

    createButtons(group, tableViewer);
    return composite;
}

From source file:org.jboss.tools.norestart.fakereplace.ui.internal.preferences.FakeReplaceAgentsPreferencePage.java

License:Open Source License

private void createTable(Composite composite) {
    agentsViewer = CheckboxTableViewer.newCheckList(composite, SWT.BORDER | SWT.FULL_SELECTION);

    agentsViewer.setLabelProvider(new AgentsLabelProvider());

    agentsViewer.setContentProvider(new IStructuredContentProvider() {

        @Override//from w ww .  j  a  v  a  2  s  . co  m
        public Object[] getElements(Object input) {
            if (input instanceof List<?>) {
                List<?> list = (List<?>) input;
                if (!list.isEmpty()) {
                    return list.toArray(new IFakeReplaceAgent[list.size()]);
                }
            }
            return new Object[0];
        }

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

        @Override
        public void dispose() {
        }

    });

    Table table = agentsViewer.getTable();
    table.setLinesVisible(true);
    table.setHeaderVisible(true);
    GridData gd_table = new GridData(SWT.FILL, SWT.FILL, true, true, 2, 3);
    gd_table.heightHint = 151;
    gd_table.widthHint = 333;
    table.setLayoutData(gd_table);

    TableColumn tblclmnName = new TableColumn(table, SWT.NONE);
    tblclmnName.setWidth(100);
    tblclmnName.setText("Name");

    TableColumn tblclmnHome = new TableColumn(table, SWT.NONE);
    tblclmnHome.setWidth(120);
    tblclmnHome.setText("Path");

    Button addButton = new Button(composite, SWT.NONE);
    addButton.setLayoutData(new GridData(SWT.FILL, SWT.TOP, false, false));
    addButton.setText("Add...");
    addButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            FakeReplaceAgentWizard wizard = new FakeReplaceAgentWizard(getForbiddenNames(null));
            WizardDialog dialog = new WizardDialog(getShell(), wizard);
            if (dialog.open() == Window.OK) {
                agents.add(wizard.getResult());
                refreshAgentsViewer();
            }
        }
    });

    final Button editButton = new Button(composite, SWT.NONE);
    editButton.setLayoutData(new GridData(SWT.FILL, SWT.TOP, false, false));
    editButton.setEnabled(false);
    editButton.setText("Edit...");
    editButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            IFakeReplaceAgent agent = getSelectedFakeReplaceAgent();
            FakeReplaceAgentWizard wizard = new FakeReplaceAgentWizard(agent, getForbiddenNames(agent));
            WizardDialog dialog = new WizardDialog(getShell(), wizard);
            if (dialog.open() == Window.OK) {
                IFakeReplaceAgent updatedAgent = wizard.getResult();
                for (int i = 0; i < agents.size(); i++) {
                    if (agent == agents.get(i)) {
                        agents.set(i, updatedAgent);
                        break;
                    }
                }
                refreshAgentsViewer();
            }
        }
    });

    final Button removeButton = new Button(composite, SWT.NONE);
    removeButton.setEnabled(false);
    removeButton.setLayoutData(new GridData(SWT.FILL, SWT.TOP, false, false));
    removeButton.setText("Remove");
    removeButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            IFakeReplaceAgent agent = getSelectedFakeReplaceAgent();
            if (!agent.isReadOnly()) {
                agents.remove(agent);
                refreshAgentsViewer();
            }
        }
    });

    agentsViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            if (agentsViewer.getSelection() instanceof IStructuredSelection) {
                IFakeReplaceAgent agent = getSelectedFakeReplaceAgent();
                removeButton.setEnabled(agent != null && !agent.isReadOnly());
                editButton.setEnabled(agent != null);
            }
        }
    });

    agentsViewer.addCheckStateListener(new ICheckStateListener() {
        @Override
        public void checkStateChanged(CheckStateChangedEvent event) {
            setCheckedAgent((IFakeReplaceAgent) event.getElement());
        }
    });
}

From source file:org.jboss.tools.openshift.internal.ui.preferences.SSLCertificatesPreferencePage.java

License:Open Source License

@Override
protected void createFieldEditors() {
    Composite composite = getFieldEditorParent();
    adjustGridLayout();//w ww .j ava2s .co  m

    Label label = new Label(composite, SWT.NONE);
    GridData dl = new GridData();
    dl.horizontalSpan = 3;
    label.setLayoutData(dl);
    label.setText("Decisions on untrusted SSL certificates, checked ones are accepted.");

    listViewer = CheckboxTableViewer.newCheckList(composite, SWT.BORDER | SWT.V_SCROLL);
    GridData data = new GridData(GridData.FILL_HORIZONTAL);
    data.horizontalSpan = 2;
    data.heightHint = 100;
    listViewer.getTable().setLayoutData(data);
    listViewer.setLabelProvider(new LP());
    listViewer.setContentProvider(new CP());
    listViewer.getTable().setLinesVisible(true);
    listViewer.getTable().setHeaderVisible(true);

    String[] columnNames = new String[] { "Approved", "Certificate", "Validity" };
    int[] columnWidths = new int[] { 80, 200, 100 };

    for (int i = 0; i < columnNames.length; i++) {
        TableColumn tc = new TableColumn(listViewer.getTable(), SWT.LEFT);
        tc.setText(columnNames[i]);
        tc.setWidth(columnWidths[i]);
        tc.setResizable(i > 0);
    }

    listViewer.setInput(items);
    updateChecked();

    remove = new Button(composite, SWT.PUSH);
    remove.setText("Delete");
    remove.addSelectionListener(new SelectionListener() {

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

        @Override
        public void widgetDefaultSelected(SelectionEvent e) {
            widgetSelected(e);
        }
    });
    GridData d = new GridData();
    d.verticalAlignment = SWT.BEGINNING;
    remove.setLayoutData(d);
    UIUtils.setDefaultButtonWidth(remove);
    listViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            updateRemoveButton();
            updateDetails();
        }
    });
    updateRemoveButton();

    Label detailsLabel = new Label(composite, SWT.NONE);
    GridData d1 = new GridData(GridData.FILL_HORIZONTAL);
    d1.horizontalIndent = 15;
    d1.horizontalSpan = 3;
    detailsLabel.setLayoutData(d1);
    detailsLabel.setText("Certificate details:");

    details = new StyledText(composite, SWT.BORDER | SWT.V_SCROLL | SWT.WRAP);
    details.setEditable(false);
    GridData d2 = new GridData(GridData.FILL_HORIZONTAL);
    d2.horizontalSpan = 2;
    d2.heightHint = 250;
    details.setLayoutData(d2);

    updateDetails();
}

From source file:org.jboss.tools.project.examples.dialog.xpl.QuickFixPage.java

License:Open Source License

/**
 * Create the table that shows the markers.
 * /*from   w ww .  java2  s .  c  o m*/
 * @param control
 */
private void createMarkerTable(Composite control) {
    markersTable = CheckboxTableViewer.newCheckList(control, SWT.BORDER | SWT.V_SCROLL | SWT.SINGLE);

    createTableColumns();

    markersTable.setContentProvider(new IStructuredContentProvider() {
        /*
         * (non-Javadoc)
         * 
         * @see org.eclipse.jface.viewers.IContentProvider#dispose()
         */
        public void dispose() {

        }

        /*
         * (non-Javadoc)
         * 
         * @see org.eclipse.jface.viewers.IStructuredContentProvider#getElements(java.lang.Object)
         */
        public Object[] getElements(Object inputElement) {
            IMarkerResolution selected = getSelectedResolution();
            if (selected == null) {
                return new Object[0];
            }

            if (resolutions.containsKey(selected)) {
                return ((Collection) resolutions.get(selected)).toArray();
            }
            return EMPTY_MARKER_ARRAY;
        }

        /*
         * (non-Javadoc)
         * 
         * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer,
         *      java.lang.Object, java.lang.Object)
         */
        public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {

        }
    });

    markersTable.setLabelProvider(new ITableLabelProvider() {

        /*
         * (non-Javadoc)
         * 
         * @see org.eclipse.jface.viewers.ITableLabelProvider#getColumnImage(java.lang.Object,
         *      int)
         */
        public Image getColumnImage(Object element, int columnIndex) {
            if (columnIndex == 0)
                return Util.getImage(((IMarker) element).getAttribute(IMarker.SEVERITY, -1));
            return null;
        }

        /*
         * (non-Javadoc)
         * 
         * @see org.eclipse.jface.viewers.ITableLabelProvider#getColumnText(java.lang.Object,
         *      int)
         */
        public String getColumnText(Object element, int columnIndex) {
            if (columnIndex == 0)
                return Util.getResourceName((IMarker) element);
            int line = ((IMarker) element).getAttribute(IMarker.LINE_NUMBER, -1);
            if (line < 0) {
                return MarkerMessages.Unknown;
            }
            return NLS.bind(MarkerMessages.label_lineNumber, Integer.toString(line));
        }

        /*
         * (non-Javadoc)
         * 
         * @see org.eclipse.jface.viewers.IBaseLabelProvider#addListener(org.eclipse.jface.viewers.ILabelProviderListener)
         */
        public void addListener(ILabelProviderListener listener) {
            // do nothing

        }

        /*
         * (non-Javadoc)
         * 
         * @see org.eclipse.jface.viewers.IBaseLabelProvider#dispose()
         */
        public void dispose() {
            // do nothing

        }

        /*
         * (non-Javadoc)
         * 
         * @see org.eclipse.jface.viewers.IBaseLabelProvider#isLabelProperty(java.lang.Object,
         *      java.lang.String)
         */
        public boolean isLabelProperty(Object element, String property) {
            return false;
        }

        /*
         * (non-Javadoc)
         * 
         * @see org.eclipse.jface.viewers.IBaseLabelProvider#removeListener(org.eclipse.jface.viewers.ILabelProviderListener)
         */
        public void removeListener(ILabelProviderListener listener) {
            // do nothing

        }
    });

    markersTable.addCheckStateListener(new ICheckStateListener() {
        /*
         * (non-Javadoc)
         * 
         * @see org.eclipse.jface.viewers.ICheckStateListener#checkStateChanged(org.eclipse.jface.viewers.CheckStateChangedEvent)
         */
        public void checkStateChanged(CheckStateChangedEvent event) {
            if (event.getChecked() == true) {
                setPageComplete(true);
            } else {
                setPageComplete(markersTable.getCheckedElements().length > 0);
            }

        }
    });

    markersTable.addSelectionChangedListener(new ISelectionChangedListener() {
        /*
        * (non-Javadoc)
        * 
        * @see org.eclipse.jface.viewers.ISelectionChangedListener#selectionChanged(org.eclipse.jface.viewers.SelectionChangedEvent)
        */
        public void selectionChanged(SelectionChangedEvent event) {

            if (event.getSelection().isEmpty())
                return;
            IMarker marker = (IMarker) ((IStructuredSelection) event.getSelection()).getFirstElement();
            ExtendedMarkersView.openMarkerInEditor(marker,
                    PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage());

        }
    });

    markersTable.setInput(this);
}

From source file:org.jboss.tools.runtime.ui.internal.preferences.RuntimePreferencePage.java

License:Open Source License

private TableViewer createDetectorViewer(Composite parent) {
    final CheckboxTableViewer tableViewer = CheckboxTableViewer.newCheckList(parent,
            SWT.BORDER | SWT.V_SCROLL | SWT.SINGLE);
    Table table = tableViewer.getTable();
    GridData gd = new GridData(GridData.FILL_BOTH);
    gd.heightHint = 150;//from  w ww. j  a  v  a2  s  . com
    table.setLayoutData(gd);
    table.setHeaderVisible(true);
    table.setLinesVisible(true);

    String[] columnNames = new String[] { Messages.RuntimePreferencePage_Type,
            Messages.RuntimePreferencePage_Link };

    for (int i = 0; i < columnNames.length; i++) {
        TableColumn tc = new TableColumn(table, SWT.LEFT);
        tc.setText(columnNames[i]);
    }

    ColumnLayoutData[] layouts = { new ColumnWeightData(300, 300), new ColumnWeightData(100, 50) };

    TableLayout layout = new TableLayout();
    for (int i = 0; i < layouts.length; i++) {
        layout.addColumnData(layouts[i]);
    }
    table.setLayout(layout);

    tableViewer.setLabelProvider(new RuntimeDetectorLabelProvider());
    tableViewer.setContentProvider(new RuntimeDetectorContentProvider(runtimeDetectors));

    tableViewer.setInput(runtimeDetectors);
    for (IRuntimeDetector detector : runtimeDetectors) {
        tableViewer.setChecked(detector, detector.isEnabled());
    }
    tableViewer.addCheckStateListener(new ICheckStateListener() {

        public void checkStateChanged(CheckStateChangedEvent event) {
            IRuntimeDetector detector = (IRuntimeDetector) event.getElement();
            if (detector.isValid()) {
                detector.setEnabled(!detector.isEnabled());
            } else {
                MessageDialog.openWarning(getShell(), Messages.RuntimePreferencePage_Information,
                        NLS.bind(Messages.RuntimePreferencePage_Detector_is_invalid, detector.getName()));
                tableViewer.setChecked(detector, false);
            }

        }
    });
    for (int i = 0; i < runtimeDetectors.size(); i++) {
        TableItem item = table.getItem(i);
        Object data = item.getData();
        if (data instanceof IRuntimeDetector) {
            IRuntimeDetector detector = (IRuntimeDetector) data;
            final String preferenceId = detector.getPreferenceId();
            final String prefName = detector.getName();
            if (preferenceId != null && preferenceId.trim().length() > 0) {
                Link link = new Link(table, SWT.NONE);
                link.setText(Messages.RuntimePreferencePage_A_Link_a);
                link.setEnabled(detector.isValid());
                TableEditor editor = new TableEditor(table);
                editor.grabHorizontal = editor.grabVertical = true;
                editor.setEditor(link, item, 1);
                link.addSelectionListener(new SelectionAdapter() {
                    public void widgetSelected(SelectionEvent e) {
                        boolean switchPage = true;
                        if (isDirty)
                            switchPage = MessageDialog.open(MessageDialog.QUESTION, getShell(),
                                    NLS.bind(Messages.RuntimePreferencePage_Open_preferences, prefName),
                                    NLS.bind(Messages.RuntimePreferencePage_You_have_unsaved_changes, prefName),
                                    SWT.NONE);
                        if (switchPage) {
                            if (isDirty) {
                                performOk();
                                RuntimeWorkbenchUtils.refreshPreferencePageUIThread(getShell(), preferenceId);
                            } else {
                                PreferencesUtil.createPreferenceDialogOn(getShell(), preferenceId, null, null);
                            }
                        }
                    }
                });
            }
        }
    }
    return tableViewer;
}

From source file:org.jboss.tools.runtime.ui.preferences.RuntimePreferencePage.java

License:Open Source License

private TableViewer createDetectorViewer(Composite parent) {
    final CheckboxTableViewer tableViewer = CheckboxTableViewer.newCheckList(parent,
            SWT.BORDER | SWT.V_SCROLL | SWT.SINGLE);
    Table table = tableViewer.getTable();
    GridData gd = new GridData(GridData.FILL_BOTH);
    gd.heightHint = 150;/*from ww w .java  2s  . c om*/
    table.setLayoutData(gd);
    table.setHeaderVisible(true);
    table.setLinesVisible(true);

    String[] columnNames = new String[] { "Type", "Link" };
    int[] columnWidths = new int[] { 300, 50 };

    for (int i = 0; i < columnNames.length; i++) {
        TableColumn tc = new TableColumn(table, SWT.LEFT);
        tc.setText(columnNames[i]);
        tc.setWidth(columnWidths[i]);
    }

    tableViewer.setLabelProvider(new RuntimeDetectorLabelProvider());
    tableViewer.setContentProvider(new RuntimeDetectorContentProvider(runtimeDetectors));

    tableViewer.setInput(runtimeDetectors);
    for (IRuntimeDetector detector : runtimeDetectors) {
        tableViewer.setChecked(detector, detector.isEnabled());
    }
    tableViewer.addCheckStateListener(new ICheckStateListener() {

        public void checkStateChanged(CheckStateChangedEvent event) {
            IRuntimeDetector detector = (IRuntimeDetector) event.getElement();
            if (detector.isValid()) {
                detector.setEnabled(!detector.isEnabled());
            } else {
                MessageDialog.openWarning(getShell(), "Information",
                        "The '" + detector.getName() + "' detector is invalid.");
                tableViewer.setChecked(detector, false);
            }

        }
    });
    for (int i = 0; i < runtimeDetectors.size(); i++) {
        TableItem item = table.getItem(i);
        Object data = item.getData();
        if (data instanceof IRuntimeDetector) {
            IRuntimeDetector detector = (IRuntimeDetector) data;
            final String preferenceId = detector.getPreferenceId();
            final String prefName = detector.getName();
            if (preferenceId != null && preferenceId.trim().length() > 0) {
                Link link = new Link(table, SWT.NONE);
                link.setText("     <a>Link</a>");
                link.setEnabled(detector.isValid());
                TableEditor editor = new TableEditor(table);
                editor.grabHorizontal = editor.grabVertical = true;
                editor.setEditor(link, item, 1);
                link.addSelectionListener(new SelectionAdapter() {
                    public void widgetSelected(SelectionEvent e) {
                        boolean switchPage = true;
                        if (isDirty)
                            switchPage = MessageDialog.open(MessageDialog.QUESTION, getShell(),
                                    NLS.bind("Open {0} preferences?", prefName),
                                    NLS.bind(
                                            "You have unsaved changes that needs to be saved to show {0}\npreferences. Do you want to save these changes and open {0} preferences?",
                                            prefName),
                                    SWT.NONE);
                        if (switchPage) {
                            if (isDirty) {
                                performOk();
                                RuntimeWorkbenchUtils.refreshPreferencePageUIThread(getShell(), preferenceId);
                            } else {
                                PreferencesUtil.createPreferenceDialogOn(getShell(), preferenceId, null, null);
                            }
                        }
                    }
                });
            }
        }
    }
    return tableViewer;
}

From source file:org.jboss.tools.seam.ui.dialog.SeamFacetVersionChangeDialog.java

License:Open Source License

@Override
protected Control createDialogArea(Composite parent) {
    Font mainFont = parent.getFont();
    Composite area = (Composite) super.createDialogArea(parent);
    Composite contents = new Composite(area, SWT.NONE);
    GridData gd = new GridData(GridData.FILL_BOTH);
    // gd.heightHint = 300;
    contents.setLayoutData(gd);/*from ww  w.  ja  va2  s .  c o  m*/
    contents.setLayout(new GridLayout(3, false));
    setTitle(Messages.SeamFacetVersionChangeDialog_Seam_Runtime_Settings);
    setMessage(Messages.SeamFacetVersionChangeDialog_Set_Seam_Runtime);
    getShell().setText(Messages.SeamFacetVersionChangeDialog_Seam_Runtime_Settings);
    applyDialogFont(contents);
    initializeDialogUnits(area);

    Label oldSeamRuntimeLabel = new Label(contents, SWT.NONE);
    oldSeamRuntimeLabel.setText(Messages.SeamFacetVersionChangeDialog_Old_Seam_Runtime);
    String seamRuntimeName = ""; //$NON-NLS-1$
    if (preferences != null) {
        seamRuntimeName = preferences.get(ISeamFacetDataModelProperties.SEAM_RUNTIME_NAME, ""); //$NON-NLS-1$
    }
    seamRuntimeNameText = new Text(contents, SWT.BORDER);
    seamRuntimeNameText.setText(seamRuntimeName);
    gd = new GridData(GridData.FILL_HORIZONTAL);
    gd.horizontalSpan = 2;
    seamRuntimeNameText.setEnabled(false);
    seamRuntimeNameText.setLayoutData(gd);

    Label seamRuntimeLabel = new Label(contents, SWT.NONE);
    seamRuntimeLabel.setText(Messages.SeamFacetVersionChangeDialog_New_Seam_Runtime);
    seamRuntimeCombo = new Combo(contents, SWT.READ_ONLY);
    gd = new GridData(GridData.FILL_HORIZONTAL);
    seamRuntimeCombo.setLayoutData(gd);
    final SeamVersion version = refreshSeamRuntimeCombo();

    Button addSeamRuntime = new Button(contents, SWT.PUSH);
    addSeamRuntime.setText(Messages.SeamFacetVersionChangeDialog_Add);
    addSeamRuntime.addSelectionListener(new SelectionAdapter() {

        @Override
        public void widgetSelected(SelectionEvent e) {
            List<SeamRuntime> added = new ArrayList<SeamRuntime>();
            List<SeamVersion> versions = new ArrayList<SeamVersion>();
            versions.add(version);
            Wizard wiz = new SeamRuntimeNewWizard((List<SeamRuntime>) new ArrayList<SeamRuntime>(
                    Arrays.asList(SeamRuntimeManager.getInstance().getRuntimes())), added, versions);
            WizardDialog dialog = new WizardDialog(Display.getCurrent().getActiveShell(), wiz);
            int ok = dialog.open();
            if (ok == Dialog.OK && !added.isEmpty()) {
                SeamRuntimeManager.getInstance().addRuntime(added.get(0));
                refreshSeamRuntimeCombo();
            }
            refresh();
        }

    });

    Group libraryGroup = new Group(contents, SWT.NONE);
    libraryGroup.setText(Messages.SeamFacetVersionChangeDialog_Libraries);
    gd = new GridData(GridData.FILL_BOTH);
    gd.horizontalSpan = 3;
    libraryGroup.setLayoutData(gd);
    libraryGroup.setLayout(new GridLayout(2, false));
    updateLibs = new Button(libraryGroup, SWT.CHECK);
    gd = new GridData(GridData.FILL_HORIZONTAL);
    gd.horizontalSpan = 2;
    updateLibs.setLayoutData(gd);
    updateLibs.setText(Messages.SeamFacetVersionChangeDialog_Update_libraries);
    updateLibs.setSelection(false);

    Label warProjectLabel = new Label(libraryGroup, SWT.NONE);
    warProjectLabel.setText(NLS.bind(Messages.SeamFacetVersionChangeDialog_Project, warProject.getName()));
    gd = new GridData(GridData.FILL_HORIZONTAL | GridData.CENTER);
    gd.horizontalSpan = 2;
    warProjectLabel.setLayoutData(gd);
    addLabels(libraryGroup);

    removed = CheckboxTableViewer.newCheckList(libraryGroup, SWT.SINGLE | SWT.TOP | SWT.BORDER);
    gd = new GridData(GridData.FILL_BOTH);
    gd.heightHint = 150;
    removed.getTable().setLayoutData(gd);
    removed.getTable().setFont(mainFont);
    IBaseLabelProvider labelProvider = new FileSetLabelProvider();
    removed.setLabelProvider(labelProvider);
    File webLibFolder = getWebLibFolder();

    IStructuredContentProvider rContentProvider = new RemovedFileSetProvider();
    removed.setContentProvider(rContentProvider);
    removed.setInput(webLibFolder);
    removed.getTable().setEnabled(false);

    removed.addCheckStateListener(new ICheckStateListener() {
        public void checkStateChanged(CheckStateChangedEvent event) {
            removed.setSelection(new StructuredSelection(event.getElement()));
        }
    });

    check(removed, rContentProvider);
    added = new ListViewer(libraryGroup, SWT.V_SCROLL | SWT.H_SCROLL | SWT.BORDER);
    gd = new GridData(GridData.FILL_BOTH);
    gd.heightHint = 150;
    added.getList().setLayoutData(gd);
    added.getList().setFont(mainFont);
    added.setLabelProvider(labelProvider);
    SeamVersion newVersion = null;
    if (seamRuntimeCombo.getText().trim().length() > 0) {
        newVersion = SeamRuntimeManager.getInstance().findRuntimeByName(seamRuntimeCombo.getText())
                .getVersion();
    } else {
        newVersion = SeamVersion.findByString(fv.getVersionString());
    }
    IStructuredContentProvider aContentProvider = new WarFileSetProvider(isWarConfiguration(), newVersion);
    added.setContentProvider(aContentProvider);

    added.getList().setEnabled(false);

    File earContentsFolder = getEarContentsFolder();
    if (earContentsFolder != null && earContentsFolder.isDirectory()) {
        Label earProjectLabel = new Label(libraryGroup, SWT.NONE);
        String earProjectName = preferences.get(ISeamFacetDataModelProperties.SEAM_EAR_PROJECT, ""); //$NON-NLS-1$
        earProjectLabel.setText(NLS.bind(Messages.SeamFacetVersionChangeDialog_Project, earProjectName));
        gd = new GridData(GridData.FILL_HORIZONTAL | GridData.CENTER);
        gd.horizontalSpan = 2;
        earProjectLabel.setLayoutData(gd);
        addLabels(libraryGroup);
        removedEar = CheckboxTableViewer.newCheckList(libraryGroup, SWT.SINGLE | SWT.TOP | SWT.BORDER);
        gd = new GridData(GridData.FILL_BOTH);
        gd.heightHint = 150;
        removedEar.getTable().setLayoutData(gd);
        removedEar.getTable().setFont(mainFont);
        removedEar.setLabelProvider(labelProvider);

        IStructuredContentProvider rEarContentProvider = new RemovedFileSetProvider();
        removedEar.setContentProvider(rEarContentProvider);
        removedEar.setInput(earContentsFolder);
        removedEar.getTable().setEnabled(false);

        removedEar.addCheckStateListener(new ICheckStateListener() {
            public void checkStateChanged(CheckStateChangedEvent event) {
                removedEar.setSelection(new StructuredSelection(event.getElement()));
            }
        });

        check(removedEar, rEarContentProvider);
        addedEar = new ListViewer(libraryGroup, SWT.V_SCROLL | SWT.H_SCROLL | SWT.BORDER);
        gd = new GridData(GridData.FILL_BOTH);
        gd.heightHint = 150;
        addedEar.getList().setLayoutData(gd);
        addedEar.getList().setFont(mainFont);
        addedEar.setLabelProvider(labelProvider);
        IStructuredContentProvider aEarContentProvider = new EarFileSetProvider(newVersion);
        addedEar.setContentProvider(aEarContentProvider);

        addedEar.getList().setEnabled(false);

    }
    updateLibs.addSelectionListener(new SelectionAdapter() {

        @Override
        public void widgetSelected(SelectionEvent e) {
            added.getList().setEnabled(updateLibs.getSelection());
            removed.getTable().setEnabled(updateLibs.getSelection());
            if (addedEar != null) {
                removedEar.getTable().setEnabled(updateLibs.getSelection());
                addedEar.getList().setEnabled(updateLibs.getSelection());
            }
        }

    });
    Group noteGroup = new Group(contents, SWT.NONE);
    noteGroup.setText(Messages.SeamFacetVersionChangeDialog_Note);
    noteGroup.setLayout(new GridLayout(2, false));
    gd = new GridData(GridData.FILL_BOTH);
    gd.horizontalSpan = 3;
    noteGroup.setLayoutData(gd);

    Label noteImage = new Label(noteGroup, SWT.NONE);
    Image image = PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_OBJS_WARN_TSK);
    noteImage.setImage(image);
    Label noteLabel = new Label(noteGroup, SWT.NONE);
    noteLabel.setText(Messages.SeamFacetVersionChangeDialog_Note_description);

    seamRuntimeCombo.addSelectionListener(new SelectionAdapter() {

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

    });
    refresh();
    return area;
}