List of usage examples for org.eclipse.jface.viewers ITreeSelection size
public int size();
From source file:com.google.gapid.widgets.Widgets.java
License:Apache License
public static TreeViewer createTreeViewer(Tree tree) { TreeViewer viewer = new VisibilityTrackingTreeViewer(tree); viewer.setUseHashlookup(true);/*from w w w .j a v a 2s. co m*/ tree.addListener(SWT.KeyDown, e -> { switch (e.keyCode) { case SWT.ARROW_LEFT: case SWT.ARROW_RIGHT: ITreeSelection selection = viewer.getStructuredSelection(); if (selection.size() == 1) { viewer.setExpandedState(selection.getFirstElement(), e.keyCode == SWT.ARROW_RIGHT); } break; } }); viewer.addDoubleClickListener(new IDoubleClickListener() { @Override public void doubleClick(DoubleClickEvent event) { IStructuredSelection selection = (IStructuredSelection) event.getSelection(); if (selection.size() == 1) { Object element = selection.getFirstElement(); viewer.setExpandedState(element, !viewer.getExpandedState(element)); } } }); return viewer; }
From source file:de.bmw.yamaica.ide.ui.internal.editor.OverviewPage.java
License:Mozilla Public License
private ITreeSelection createSingleSelection(ISelection selection, Object element) { ITreeSelection treeSelection = (ITreeSelection) selection; if (treeSelection.isEmpty() || treeSelection.size() > 1) { Object[] segments = new Object[] { element }; treeSelection = new TreeSelection(new TreePath(segments)); }// w w w . j a v a2 s .c o m return treeSelection; }
From source file:de.bmw.yamaica.ide.ui.internal.editor.OverviewPage.java
License:Mozilla Public License
private void openEditor(ISelection selection) { ITreeSelection treeSelection = (ITreeSelection) selection; if (treeSelection.size() == 1) { Object selectedElement = treeSelection.getFirstElement(); if (selectedElement instanceof IFile) { try { IFile selectedFile = (IFile) selectedElement; String filename = selectedFile.getName(); IWorkbench workbench = PlatformUI.getWorkbench(); IContentType contentType = Platform.getContentTypeManager() .findContentTypeFor(selectedFile.getContents(), filename); IEditorDescriptor editorDescriptor = workbench.getEditorRegistry().getDefaultEditor(filename, contentType);/*from w w w. j a v a 2 s .co m*/ String editorId = null == editorDescriptor ? YamaicaConstants.DEFAULT_TEXT_EDITOR_ID : editorDescriptor.getId(); workbench.getActiveWorkbenchWindow().getPages()[0].openEditor(new FileEditorInput(selectedFile), editorId); } catch (PartInitException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } catch (CoreException e) { e.printStackTrace(); } } } }
From source file:de.byteholder.geoclipse.mapprovider.DialogMPProfile.java
License:Open Source License
private Control createUI114Viewer(final Composite parent, final PixelConverter pixelConverter) { final TreeColumnLayout treeLayout = new TreeColumnLayout(); final Composite layoutContainer = new Composite(parent, SWT.NONE); layoutContainer.setLayout(treeLayout); GridDataFactory.fillDefaults().grab(true, true).applyTo(layoutContainer); {//from ww w. j a v a2 s . co m final Tree tree = new Tree(layoutContainer, SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER | SWT.FULL_SELECTION); tree.setHeaderVisible(true); tree.setLinesVisible(true); /* * tree viewer */ _treeViewer = new ContainerCheckedTreeViewer(tree); _treeViewer.setContentProvider(new MapContentProvider()); _treeViewer.setUseHashlookup(true); _treeViewer.addDoubleClickListener(new IDoubleClickListener() { public void doubleClick(final DoubleClickEvent event) { final Object selectedItem = ((IStructuredSelection) _treeViewer.getSelection()) .getFirstElement(); if (selectedItem != null) { if (selectedItem instanceof TVIMapProvider) { // expand/collapse current item final MP mapProvider = ((TVIMapProvider) selectedItem).getMapProviderWrapper().getMP(); if ((mapProvider instanceof MPWms) == false) { // all none wms map provider can be toggled toggleMapVisibility(tree); } else { // expand/collapse item if (_treeViewer.getExpandedState(selectedItem)) { _treeViewer.collapseToLevel(selectedItem, 1); } else { _treeViewer.expandToLevel(selectedItem, 1); } } } else if (selectedItem instanceof TVIWmsLayer) { toggleMapVisibility(tree); } } } }); _treeViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(final SelectionChangedEvent event) { onSelectMP(event.getSelection()); } }); _treeViewer.addDragSupport(DND.DROP_MOVE, new Transfer[] { LocalSelectionTransfer.getTransfer() }, new DragSourceListener() { public void dragFinished(final DragSourceEvent event) { final LocalSelectionTransfer transfer = LocalSelectionTransfer.getTransfer(); if (event.doit == false) { return; } transfer.setSelection(null); transfer.setSelectionSetTime(0); } public void dragSetData(final DragSourceEvent event) { // data are set in LocalSelectionTransfer } public void dragStart(final DragSourceEvent event) { final LocalSelectionTransfer transfer = LocalSelectionTransfer.getTransfer(); final ITreeSelection selection = (ITreeSelection) _treeViewer.getSelection(); transfer.setSelection(selection); transfer.setSelectionSetTime(_dragStartTime = event.time & 0xFFFFFFFFL); // only ONE map provider/layer is allowed to be dragged final Object firstElement = selection.getFirstElement(); event.doit = (selection.size() == 1) && ((firstElement instanceof TVIMapProvider) || (firstElement instanceof TVIWmsLayer)); } }); _treeViewer.addDropSupport(DND.DROP_MOVE, new Transfer[] { LocalSelectionTransfer.getTransfer() }, new ProfileDropAdapter(this, _treeViewer)); tree.addKeyListener(new KeyListener() { public void keyPressed(final KeyEvent e) { /* * toggle the visibility with the space key */ if (e.keyCode == ' ') { toggleMapVisibility(tree); } } public void keyReleased(final KeyEvent e) { } }); /* * add editing support for the tree */ final TreeViewerFocusCellManager focusCellManager = new TreeViewerFocusCellManager(_treeViewer, new FocusCellOwnerDrawHighlighter(_treeViewer)); final ColumnViewerEditorActivationStrategy actSupport = new ColumnViewerEditorActivationStrategy( _treeViewer) { @Override protected boolean isEditorActivationEvent(final ColumnViewerEditorActivationEvent event) { return (event.eventType == ColumnViewerEditorActivationEvent.TRAVERSAL) || (event.eventType == ColumnViewerEditorActivationEvent.MOUSE_CLICK_SELECTION) || ((event.eventType == ColumnViewerEditorActivationEvent.KEY_PRESSED) && (event.keyCode == SWT.F2)) || (event.eventType == ColumnViewerEditorActivationEvent.PROGRAMMATIC); } }; TreeViewerEditor.create(_treeViewer, // focusCellManager, actSupport, ColumnViewerEditor.TABBING_HORIZONTAL // | ColumnViewerEditor.TABBING_MOVE_TO_ROW_NEIGHBOR // | ColumnViewerEditor.TABBING_VERTICAL | ColumnViewerEditor.KEYBOARD_ACTIVATION); } createUI116ViewerColumns(treeLayout, pixelConverter); return layoutContainer; }
From source file:de.walware.statet.r.internal.objectbrowser.ObjectBrowserView.java
License:Open Source License
private void updateSelectionInfo(final ITreeSelection selection) { final Object previousInfoObject = fCurrentInfoObject; fCurrentInfoObject = null;//from w w w .j a v a 2 s.c o m final RProcess tool = getTool(); if (tool == null) { return; } if (selection.size() == 1) { fCurrentInfoObject = selection.getFirstElement(); final TreePath treePath = selection.getPaths()[0]; final IElementName elementName = getElementName(treePath); final String name = (elementName != null) ? elementName.getDisplayName() : null; if (name != null) { if (fCurrentInfoObject.equals(previousInfoObject)) { clearInfo(); } this.statusLine.setSelectionMessage(new StatusInfo(IStatus.OK, NLS.bind("{0} \u2012 {1}", name, tool.getLabel(ITool.DEFAULT_LABEL)))); //$NON-NLS-1$ return; } } clearInfo(); if (selection.size() > 1) { this.statusLine.setSelectionMessage( new StatusInfo(IStatus.OK, NLS.bind("{0} items selected", selection.size()))); return; } this.statusLine.setSelectionMessage(null); }
From source file:de.walware.statet.r.internal.objectbrowser.OpenInEditorHandler.java
License:Open Source License
@Override public Object execute(final ExecutionEvent event) throws ExecutionException { final IWorkbenchPart activePart = WorkbenchUIUtil.getActivePart(event.getApplicationContext()); if (activePart instanceof ObjectBrowserView) { final ObjectBrowserView browser = (ObjectBrowserView) activePart; final ToolProcess tool = browser.getTool(); final ITreeSelection selection = browser.getSelection(); if (tool == null || selection == null || selection.size() != 1) { return null; }/*from w ww . j av a2 s .c om*/ final RElementName elementName = browser.getElementName(selection.getPaths()[0]); try { IDE.openEditor(browser.getSite().getPage(), new RLiveDataEditorInput(tool, elementName), "de.walware.statet.r.editors.RData", true); //$NON-NLS-1$ } catch (final PartInitException e) { StatusManager.getManager().handle(new Status(IStatus.ERROR, RUI.PLUGIN_ID, "Failed to open the selected element in the data viewer.")); } } return null; }
From source file:de.walware.statet.r.internal.objectbrowser.PrintHandler.java
License:Open Source License
private boolean isValidSelection(ITreeSelection selection) { if (selection == null || selection.size() != 1) { return false; }//from w w w . ja v a2 s . co m Object element = selection.getFirstElement(); if (element instanceof IElementPartition) { final ICombinedRElement rElement = ContentProvider.getCombinedRElement(element); if (rElement == null || rElement.getRObjectType() != RObject.TYPE_LIST) { return false; } } return true; }
From source file:eu.modelwriter.marker.internal.MarkerFactory.java
License:Open Source License
/** * @param selections/*from w w w. j a v a 2 s. c o m*/ * @return */ public static String getQualifiedName(final ITreeSelection selections) { final TreePath[] paths = selections.getPaths(); // Consider only not empty and single selection if (selections.isEmpty() || selections.size() > 1) { return null; } final TreePath path = paths[0]; IElementComparer comparer = null; if (selections instanceof TreeSelection) { comparer = ((TreeSelection) selections).getElementComparer(); } System.out.println(path.hashCode(comparer)); for (int i = 1; i < path.getSegmentCount(); i++) { if (path.getSegment(i) instanceof ResourceFactoryImpl) { final EcoreResourceFactoryImpl eResourceFactory = (EcoreResourceFactoryImpl) path.getSegment(i); System.out.println(eResourceFactory.getClass().getName() + ": " + eResourceFactory.toString()); } else if (path.getSegment(i) instanceof ENamedElement) { final ENamedElement namedElement = (ENamedElement) path.getSegment(i); System.out.println(namedElement.getClass().getName() + ": " + namedElement.getName()); } else { System.out.println("?"); } } return null; }
From source file:net.tourbook.ui.action.ActionExpandSelection.java
License:Open Source License
@Override public void run() { if (_tourViewer == null) { return;// w ww . j a v a 2 s . c o m } final ColumnViewer viewer = _tourViewer.getViewer(); if (viewer instanceof TreeViewer) { final TreeViewer treeViewer = (TreeViewer) viewer; final ITreeSelection selection = (ITreeSelection) treeViewer.getSelection(); if (selection.size() == 0) { return; } final Tree tree = treeViewer.getTree(); tree.setRedraw(false); { for (final Iterator<?> iterator = selection.iterator(); iterator.hasNext();) { treeViewer.expandToLevel(iterator.next(), _expandLevels); } } tree.setRedraw(true); } }
From source file:net.tourbook.ui.views.collateTours.CollatedToursView.java
License:Open Source License
private void enableActions() { final ITreeSelection selection = (ITreeSelection) _tourViewer.getSelection(); /*//w ww . j a va2s .c om * count number of selected items */ int tourItems = 0; TVICollatedTour firstTour = null; for (final Iterator<?> iter = selection.iterator(); iter.hasNext();) { final Object treeItem = iter.next(); if (treeItem instanceof TVICollatedTour) { boolean isDummyTour = false; // check if this is a dummy tour, the last tour is a dummy tour if (treeItem instanceof TVICollatedTour_Event) { if (((TVICollatedTour_Event) treeItem).isLastEvent) { isDummyTour = true; } } if (firstTour == null && !isDummyTour) { firstTour = (TVICollatedTour) treeItem; } tourItems++; } } final int selectedItems = selection.size(); final boolean isTourSelected = tourItems > 0; final boolean isOneTour = tourItems == 1; boolean isDeviceTour = false; final ArrayList<TourType> tourTypes = TourDatabase.getAllTourTypes(); final TVICollatedTour firstElement = (TVICollatedTour) selection.getFirstElement(); final boolean firstElementHasChildren = firstElement == null ? false : firstElement.hasChildren(); TourData firstSavedTour = null; if (isOneTour && firstTour != null) { firstSavedTour = TourManager.getInstance().getTourData(firstTour.getTourId()); isDeviceTour = firstSavedTour.isManualTour() == false; } /* * enable actions */ _tourDoubleClickState.canEditTour = isOneTour; _tourDoubleClickState.canOpenTour = isOneTour; _tourDoubleClickState.canQuickEditTour = isOneTour; _tourDoubleClickState.canEditMarker = isOneTour; _tourDoubleClickState.canAdjustAltitude = isOneTour; _actionComputeDistanceValuesFromGeoposition.setEnabled(isTourSelected); _actionComputeElevationGain.setEnabled(true); _actionEditQuick.setEnabled(isOneTour); _actionEditTour.setEnabled(isOneTour); _actionExportTour.setEnabled(isTourSelected); _actionJoinTours.setEnabled(tourItems > 1); _actionMergeTour.setEnabled(isOneTour && isDeviceTour && firstSavedTour.getMergeSourceTourId() != null); _actionOpenAdjustAltitudeDialog.setEnabled(isOneTour && isDeviceTour); _actionOpenMarkerDialog.setEnabled(isOneTour && isDeviceTour); _actionOpenTour.setEnabled(isOneTour); _actionPrintTour.setEnabled(isTourSelected); _actionReimportSubMenu.setEnabled(isTourSelected); _actionSetAltitudeFromSRTM.setEnabled(isTourSelected); _actionSetOtherPerson.setEnabled(isTourSelected); _actionSetTourType.setEnabled(isTourSelected && tourTypes.size() > 0); _actionCollapseOthers.setEnabled(selectedItems == 1 && firstElementHasChildren); _actionExpandSelection.setEnabled(firstElement == null // ? false : selectedItems == 1 // ? firstElementHasChildren : true); _tagMenuMgr.enableTagActions(isTourSelected, isOneTour, firstTour == null ? null : firstTour.getTagIds()); // TourTypeMenuManager.enableRecentTourTypeActions(isTourSelected, isOneTour // ? firstTour.getTourTypeId() // : TourDatabase.ENTITY_IS_NOT_SAVED); }