Example usage for org.eclipse.jface.viewers TreeViewer getControl

List of usage examples for org.eclipse.jface.viewers TreeViewer getControl

Introduction

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

Prototype

@Override
    public Control getControl() 

Source Link

Usage

From source file:org.kalypso.model.wspm.pdb.ui.internal.admin.state.RemoveStateDialog.java

License:Open Source License

@Override
protected Control createCustomArea(final Composite parent) {
    final TreeViewer viewer = new TreeViewer(parent, SWT.BORDER);
    final GridData data = new GridData(SWT.FILL, SWT.FILL, true, true);
    data.heightHint = 200;/*from  w  w w .  j  a  v  a  2  s .c o m*/
    data.widthHint = 200;
    viewer.getControl().setLayoutData(data);

    viewer.setLabelProvider(new PdbLabelProvider());
    viewer.setContentProvider(new ByStateContentProvider(true));
    viewer.setComparator(new PdbComparator());

    viewer.setInput(m_state);

    return viewer.getControl();
}

From source file:org.kalypso.model.wspm.pdb.ui.internal.admin.waterbody.CannotRemoveWaterBodyDialog.java

License:Open Source License

@Override
protected Control createCustomArea(final Composite parent) {
    final TreeViewer viewer = new TreeViewer(parent, SWT.BORDER);
    final GridData data = new GridData(SWT.FILL, SWT.FILL, true, true);
    data.heightHint = 200;/*from  w w  w.j  a v a  2  s . c  o  m*/
    data.widthHint = 200;
    viewer.getControl().setLayoutData(data);

    viewer.setLabelProvider(new PdbLabelProvider());
    viewer.setContentProvider(new ByStateContentProvider(true));
    viewer.setComparator(new PdbComparator());

    final Object[] referencingData = findAllData(m_waterBody);
    viewer.setInput(referencingData);

    return viewer.getControl();
}

From source file:org.kalypso.model.wspm.pdb.ui.internal.content.ConnectionContentControl.java

License:Open Source License

protected void handleRefreshDone(final IStatus status) {
    final ConnectionInput input = m_refreshJob.getInput();
    final ElementSelector selector = m_refreshJob.getElementToSelect();

    final TreeViewer viewer = m_waterViewer;
    final Runnable operation = new Runnable() {
        @Override//from  w w w.  j  a va2  s  . c  o  m
        public void run() {
            setInput(input);

            final Font normalFont = JFaceResources.getFontRegistry().get(JFaceResources.DIALOG_FONT);
            viewer.getControl().setFont(normalFont);

            applySelection(selector);

            if (status.isOK())
                refreshStatusBar();
            else
                updateStatusBar(status);
        }
    };
    ViewerUtilities.execute(m_waterViewer, operation, true);
}

From source file:org.kalypso.model.wspm.pdb.ui.internal.content.ConnectionViewer.java

License:Open Source License

public void createContextMenu(final IWorkbenchPartSite site) {
    final TreeViewer watersViewer = m_contentViewer.getWatersViewer();
    //    final TreeViewer statesViewer = m_contentViewer.getStatesViewer();

    // FIXME: combined viewer?
    site.setSelectionProvider(watersViewer);

    // create context menu for editor
    final MenuManager menuManager = new MenuManager();
    // add additions separator: if not, eclipse whines
    menuManager.add(new Separator(IWorkbenchActionConstants.MB_ADDITIONS));

    menuManager.addMenuListener(new IMenuListener() {
        @Override/*ww  w .  ja va 2s.c  o m*/
        public void menuAboutToShow(final IMenuManager manager) {
            // Strange, without this listener, the menu does not show up the first time
        }
    });

    final Menu watersMenu = menuManager.createContextMenu(watersViewer.getControl());
    //    final Menu statesMenu = menuManager.createContextMenu( statesViewer.getControl() );

    site.registerContextMenu(site.getId() + ":waters", menuManager, watersViewer); //$NON-NLS-1$
    //site.registerContextMenu( site.getId() + ":states", menuManager, statesViewer ); //$NON-NLS-N$

    watersViewer.getControl().setMenu(watersMenu);
    //    statesViewer.getControl().setMenu( statesMenu );

    final IEvaluationService service = (IEvaluationService) site.getService(IEvaluationService.class);
    service.requestEvaluation(IEvaluationService.PROP_NOTIFYING /* ISources.ACTIVE_CURRENT_SELECTION_NAME */);

    watersViewer.getControl().addDisposeListener(new DisposeListener() {
        @Override
        public void widgetDisposed(final DisposeEvent e) {
            menuManager.dispose();
            site.setSelectionProvider(null);
        }
    });
}

From source file:org.kalypso.model.wspm.pdb.ui.internal.content.statetree.StateTreeComposite.java

License:Open Source License

/** directly set input without using external connection */
public void setInput(final Object[] input) {
    if (isDisposed())
        return;/*from  www  .  j a v  a  2 s  . c o m*/

    final Display display = getDisplay();

    final TreeViewer stateViewer = m_stateViewer;

    final Runnable runnable = new Runnable() {
        @Override
        public void run() {
            if (stateViewer.getControl().isDisposed())
                return;

            stateViewer.setInput(input);
            stateViewer.expandToLevel(1);
        }
    };

    display.asyncExec(runnable);
}

From source file:org.kalypso.ogc.gml.outline.nodes.ThemeNodeContentProvider.java

License:Open Source License

protected void refreshViewer(final Object element) {
    final TreeViewer viewer = getViewer();
    final Control control = viewer.getControl();
    if (control == null || control.isDisposed())
        return;// w w w. ja  va2s  .  c  o m

    final Object elementToRefresh = element == null ? m_viewer.getInput() : element;
    ViewerUtilities.refresh(viewer, elementToRefresh, true);
}

From source file:org.kalypso.ui.addlayer.internal.wms.ImportWmsWizardPage.java

License:Open Source License

@Override
public void createControl(final Composite parent) {
    m_binding = new DatabindingWizardPage(this, null);

    /* Create the main composite. */
    final Composite panel = new Composite(parent, SWT.NONE);
    panel.setLayout(new GridLayout(1, false));
    // panel.setLayoutData( new GridData( SWT.FILL, SWT.FILL, true, true ) );

    createAddressLine(panel).setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));

    /* Capabilities info */
    createCapabilitiesInfo(panel).setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));

    /* Create the section for the layer selection. */
    final Group layerGroup = new Group(panel, SWT.NONE);
    layerGroup.setLayout(new GridLayout(3, false));
    layerGroup.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    layerGroup.setText(Messages.getString("org.kalypso.ui.wizard.wms.pages.ImportWmsWizardPage.7")); //$NON-NLS-1$

    /* The capabilities tree. */
    final TreeViewer capabilitiesTree = new TreeViewer(layerGroup,
            SWT.BORDER | SWT.MULTI | SWT.V_SCROLL | SWT.H_SCROLL);
    capabilitiesTree.setContentProvider(new WMSCapabilitiesContentProvider());
    capabilitiesTree.setLabelProvider(new WMSCapabilitiesLabelProvider());
    capabilitiesTree.setAutoExpandLevel(1);

    final GridData treeData = new GridData(SWT.FILL, SWT.FILL, true, true);
    treeData.widthHint = MIN_LIST_WIDTH;
    treeData.minimumWidth = MIN_LIST_WIDTH;
    treeData.minimumHeight = MIN_LIST_WIDTH;
    capabilitiesTree.getControl().setLayoutData(treeData);

    /* The layer button composite. */
    final GridData layerButtonData = new GridData(SWT.CENTER, SWT.FILL, false, true);
    layerButtonData.widthHint = 37;/*from   ww w  .  j av  a 2s.c o m*/
    layerButtonData.minimumWidth = 37;

    final Composite buttonPanel = new Composite(layerGroup, SWT.NONE);
    buttonPanel.setLayout(new GridLayout(1, false));

    /* The layer viewer. */
    final ListViewer layerViewer = new ListViewer(layerGroup,
            SWT.BORDER | SWT.MULTI | SWT.V_SCROLL | SWT.H_SCROLL);
    layerViewer.setContentProvider(new ArrayContentProvider());
    layerViewer.setLabelProvider(new WMSCapabilitiesLabelProvider());

    final GridData layerViewerData = new GridData(SWT.FILL, SWT.FILL, true, true);
    layerViewerData.widthHint = MIN_LIST_WIDTH;
    layerViewerData.minimumWidth = MIN_LIST_WIDTH;
    layerViewerData.minimumHeight = MIN_LIST_WIDTH;
    layerViewer.getControl().setLayoutData(layerViewerData);
    layerViewer.setComparator(new ViewerComparator());

    /* The multi layer button. */
    createMultiLayerControl(layerGroup);

    /**
     * Actions
     */
    /* The layer button for adding a layer. */
    final IAction addAction = new AddLayerAction(capabilitiesTree, layerViewer, m_data);
    final Button layerButtonAdd = ActionButton.createButton(null, buttonPanel, addAction);
    layerButtonAdd.setLayoutData(new GridData(SWT.CENTER, SWT.CENTER, false, false));

    /* The layer button for removing a layer. */
    // FIXME
    final Action removeAction = new RemoveLayerAction(layerViewer, m_data);
    final Button layerButtonRemove = ActionButton.createButton(null, buttonPanel, removeAction);
    layerButtonRemove.setLayoutData(new GridData(SWT.CENTER, SWT.CENTER, false, false));

    /**
     * Binding
     */
    final IObservableValue targetInput = ViewersObservables.observeInput(capabilitiesTree);
    final IObservableValue modelInput = BeansObservables.observeValue(m_data,
            ICapabilitiesData.PROPERTY_CAPABILITIES);
    m_binding.bindValue(targetInput, modelInput);

    final IObservableSet chosenLayers = m_data.getChosenLayerSet();
    final IBeanValueProperty propertyValue = PojoProperties.value("title"); //$NON-NLS-1$
    ViewerSupport.bind(layerViewer, chosenLayers, propertyValue);

    /* The double click listener for the capabilities tree. */
    capabilitiesTree.addDoubleClickListener(new IDoubleClickListener() {
        @Override
        public void doubleClick(final DoubleClickEvent event) {
            addAction.runWithEvent(null);
        }
    });

    layerViewer.addDoubleClickListener(new IDoubleClickListener() {
        @Override
        public void doubleClick(final DoubleClickEvent event) {
            removeAction.runWithEvent(null);
        }
    });

    /* Set the control. */
    setControl(panel);
}

From source file:org.kalypso.ui.editor.gmleditor.part.GMLContentProvider.java

License:Open Source License

protected void handleModelChanged(final ModellEvent modellEvent) {
    if (!m_handleModelEvents)
        return;/* w w  w  . j  a v  a  2 s.c o m*/

    final TreeViewer treeViewer = m_viewer;
    if (treeViewer == null)
        return;

    final Control control = treeViewer.getControl();

    if (modellEvent instanceof FeatureStructureChangeModellEvent) {
        if (m_featureStructureChangedJob != null)
            m_featureStructureChangedJob.cancel();

        m_featureStructureChangedJob = new UIJob(Messages.getString("GMLContentProvider_0")) //$NON-NLS-1$
        {
            @Override
            public IStatus runInUIThread(final IProgressMonitor monitor) {
                if (monitor.isCanceled())
                    return Status.CANCEL_STATUS;
                if (Objects.isNull(control) || control.isDisposed())
                    return Status.CANCEL_STATUS;

                final Object[] expandedElements = treeViewer.getExpandedElements();

                treeViewer.refresh();

                treeViewer.setExpandedElements(expandedElements);

                return Status.OK_STATUS;
            }
        };

        m_featureStructureChangedJob.setSystem(true);
        m_featureStructureChangedJob.setUser(false);

        m_featureStructureChangedJob.schedule(50);

    } else if (modellEvent instanceof FeaturesChangedModellEvent) {
        final FeaturesChangedModellEvent fcme = (FeaturesChangedModellEvent) modellEvent;

        // TODO: ugly abstraction, mover into separate class!
        synchronized (m_featureChangeStack) {
            Collections.addAll(m_featureChangeStack, fcme.getFeatures());

            if (m_featureChangeJob != null) {
                m_featureChangeJob.cancel();
                m_featureChangeJob = null;
            }

            // FIXME; why recreate the job at all?
            final UIJob featureChangeJob = new UIJob(Messages.getString("GMLContentProvider_1")) //$NON-NLS-1$
            {
                @Override
                public IStatus runInUIThread(final IProgressMonitor monitor) {
                    if (monitor.isCanceled())
                        return Status.CANCEL_STATUS;

                    if (Objects.isNull(control) || control.isDisposed())
                        return Status.CANCEL_STATUS;

                    final Feature[] features = popChangedFeatures();

                    for (final Feature feature : features) {
                        // FIXME: handle special case: also refresh elements of tree that reference this feature...

                        treeViewer.refresh(feature, true);
                    }

                    return Status.OK_STATUS;
                }
            };

            featureChangeJob.setSystem(true);
            featureChangeJob.setUser(false);
            featureChangeJob.schedule(50);

            m_featureChangeJob = featureChangeJob;
        }
    }
}

From source file:org.kalypso.ui.wizard.gml.GmlFileImportPage.java

License:Open Source License

private Control createTreeView(final Composite composite) {
    final TreeViewer treeViewer = new TreeViewer(composite,
            SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER);

    final GMLContentProvider contentProvider = new GMLContentProvider(true);

    final GMLXPath rootPath = m_data.getRootPath();
    if (rootPath != null)
        contentProvider.setRootPath(rootPath);

    treeViewer.setContentProvider(contentProvider);
    treeViewer.setLabelProvider(new GMLLabelProvider());
    treeViewer.setUseHashlookup(true);//w  w w  .ja va  2  s . co  m

    /* binding */
    final IObservableValue targetInput = ViewersObservables.observeInput(treeViewer);
    final IObservableValue modelInput = BeansObservables.observeValue(m_data,
            GmlFileImportData.PROPERTY_WORKSPACE);
    m_binding.bindValue(targetInput, modelInput);

    final IViewerObservableValue targetSelection = ViewersObservables.observeSinglePostSelection(treeViewer);
    final IObservableValue modelSelection = BeansObservables.observeValue(m_data,
            GmlFileImportData.PROPERTY_SELECTION);
    m_binding.bindValue(targetSelection, modelSelection, new GmlFileSelectionValidator(m_data));

    return treeViewer.getControl();
}

From source file:org.kalypso.ui.wizards.imports.wspmrestart.ImportWspmRestartPage.java

License:Open Source License

@Override
public void createControl(final Composite parent) {
    /* Filters every none-WSPM project */
    final ViewerFilter wspmProjectFilter = new ViewerFilter() {

        @Override//  w ww  .j  a  v a  2s . c om
        public boolean select(final Viewer viewer, final Object parentElement, final Object element) {
            try {
                if (element instanceof IProject) {
                    final IProject project = (IProject) element;
                    if (!project.isOpen())
                        return false;

                    if (project.getNature(ModelNature.ID) == null)
                        return false;

                    final IFolder folder = project.getFolder("Ergebnisse"); //$NON-NLS-1$
                    return folder.exists();
                }

                if (element instanceof IFolder) {
                    final IFolder folder = (IFolder) element;
                    if (folder.getName().equals("Ergebnisse") && parentElement instanceof IProject) //$NON-NLS-1$
                        return true;

                    if (parentElement instanceof IFolder
                            && ((IFolder) parentElement).getName().equals("Ergebnisse")) //$NON-NLS-1$
                    {
                        final IFile file = folder.getFile(PATH_LS_FILE);
                        return file.exists();
                    }

                    return false;
                }
            } catch (final CoreException e) {
                Kalypso1d2dProjectPlugin.getDefault().getLog().log(e.getStatus());
            }

            return false;
        }
    };

    final TreeViewer treeViewer = new TreeViewer(parent);

    treeViewer.setContentProvider(new WorkbenchContentProvider());
    treeViewer.setLabelProvider(new WorkbenchLabelProvider());
    treeViewer.setFilters(new ViewerFilter[] { wspmProjectFilter });
    treeViewer.setInput(ResourcesPlugin.getWorkspace().getRoot());

    treeViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override
        public void selectionChanged(final SelectionChangedEvent event) {
            handleSelectionChanged((IStructuredSelection) event.getSelection());
        }
    });

    setControl(treeViewer.getControl());
}