org.eclipse.jface.viewers.TreeViewer#setUseHashlookup ( )源码实例Demo

下面列出了org.eclipse.jface.viewers.TreeViewer#setUseHashlookup ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: xtext-eclipse   文件: OutlinePage.java
protected void configureTree() {
	TreeViewer treeViewer = getTreeViewer();
	contentProvider.setFilterAndSorter(filterAndSorter);
	treeViewer.setUseHashlookup(true);
	// access EMF's image registry now, since it needs a UI-thread.
	ExtendedImageRegistry.getInstance();
	if (treeProvider instanceof IOutlineTreeProvider.Background) {
		showBusyStatus();
		new Job("Initializing Outline") {
			@Override
			protected IStatus run(IProgressMonitor monitor) {
				try {
					initializeTreeContent();
					return Status.OK_STATUS;
				} catch (Throwable e) {
					LOG.error("Error initializing outline", e);
					return Status.OK_STATUS; 
				}
			}
			
		}.schedule();
	} else {
		initializeTreeContent();
	}
}
 
/**
 * Creates tree viewer to manage content
 * 
 * @param parent
 *            parent control
 */
private void createTreeViewer(Composite parent) {
	int style = SWT.H_SCROLL | SWT.V_SCROLL;
	// Create the tree
	Tree widget = new Tree(parent, style);
	// Configure the layout
	GridData data = new GridData(GridData.FILL_BOTH);
	data.heightHint = widget.getItemHeight() * 12;
	widget.setLayoutData(data);

	treeViewer = new TreeViewer(widget);
	namePatternFilter = new QuickOutlineNamePatternFilter();
	treeViewer.addFilter(namePatternFilter);
	treeContentProvider = getContentProvider();
	treeViewer.setContentProvider(treeContentProvider);
	treeLabelProvider = getLabelProvider();
	treeViewer.setLabelProvider(treeLabelProvider);
	treeViewer.setAutoExpandLevel(AbstractTreeViewer.ALL_LEVELS);
	treeViewer.setUseHashlookup(true);
	treeViewer.setInput(getInitialInput());
}
 
源代码3 项目: bonita-studio   文件: BusinessObjectList.java
protected void createViewer(Composite parent, AbstractBdmFormPage formPage) {
    viewer = new TreeViewer(parent, SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER | SWT.FULL_SELECTION);
    viewer.getTree().setLayoutData(GridDataFactory.fillDefaults().span(2, 1).grab(true, true).create());
    formPage.getToolkit().adapt(viewer.getTree());
    viewer.getTree().setData(SWTBotConstants.SWTBOT_WIDGET_ID_KEY, BUSINESS_OBJECT_LIST_VIEWER_ID);
    viewer.addFilter(createSearchFilter());
    viewer.addDoubleClickListener(e -> {
        viewer.setExpandedState(selectionObservable.getValue(),
                !viewer.getExpandedState(selectionObservable.getValue()));
    });

    ColumnViewerToolTipSupport.enableFor(viewer);
    TableLayout layout = new TableLayout();
    layout.addColumnData(new ColumnWeightData(1, true));
    viewer.getTree().setLayout(layout);
    viewer.setUseHashlookup(true);
    createBusinessObjectColumn(viewer, formPage);
    viewer.setContentProvider(new BusinessObjectTreeContentProvider());
    viewer.setComparator(new BusinessObjectViewerComparator());
    viewer.setInput(input);
    addDNDSupport(formPage);
    selectionObservable = ViewerProperties.singleSelection(Object.class).observe(viewer);
}
 
源代码4 项目: APICloud-Studio   文件: SVNWizardPage.java
protected TreeViewer createResourceSelectionTree(Composite composite, int types, int span) {
	TreeViewer tree = new TreeViewer(composite, SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER);
	tree.setUseHashlookup(true);
	tree.setContentProvider(getResourceProvider(types));
	tree.setLabelProvider(
		new DecoratingLabelProvider(
			new WorkbenchLabelProvider(), 
			SVNUIPlugin.getPlugin().getWorkbench().getDecoratorManager().getLabelDecorator()));
	tree.setSorter(new ResourceSorter(ResourceSorter.NAME));
	
	GridData data = new GridData(GridData.FILL_BOTH | GridData.GRAB_VERTICAL);
	data.heightHint = LIST_HEIGHT_HINT;
	data.horizontalSpan = span;
	tree.getControl().setLayoutData(data);
	return tree;
}
 
源代码5 项目: bonita-studio   文件: QueryEditionControl.java
private TreeViewer createQueryViewer(Composite parent) {
    TreeViewer queryViewer = new TreeViewer(parent,
            SWT.FULL_SELECTION | SWT.BORDER | SWT.V_SCROLL | SWT.H_SCROLL | SWT.SINGLE);
    queryViewer.getTree()
            .setLayoutData(GridDataFactory.fillDefaults().grab(false, true).hint(300, SWT.DEFAULT).create());
    queryViewer.getTree().setData(SWTBotConstants.SWTBOT_WIDGET_ID_KEY, QUERY_LIST_VIEWER_ID);
    formPage.getToolkit().adapt(queryViewer.getTree());
    ColumnViewerToolTipSupport.enableFor(queryViewer);
    queryViewer.setUseHashlookup(true);
    queryViewer.addFilter(createSearchFilter());
    queryViewer.addDoubleClickListener(e -> {
        queryViewer.setExpandedState(querySelectedObservable.getValue(),
                !viewer.getExpandedState(querySelectedObservable.getValue()));
    });

    TableLayout layout = new TableLayout();
    layout.addColumnData(new ColumnWeightData(1, true));
    queryViewer.getTree().setLayout(layout);

    createQueryNameColumn(queryViewer);

    provider = new QueryContentProvider();
    queryViewer.setContentProvider(provider);
    return queryViewer;
}
 
protected TreeViewer createCallHierarchyViewer(Composite parent) {
	TreeViewer treeViewer = new TreeViewer(parent);
	treeViewer.getControl().setLayoutData(new GridData(GridData.FILL_BOTH));
	treeViewer.setUseHashlookup(true);
	treeViewer.setAutoExpandLevel(2);
	treeViewer.setLabelProvider(createHierarchyLabelProvider());
	treeViewer.setContentProvider(createHierarchyContentProvider());
	return treeViewer;
}
 
protected void configureTreeViewer(TreeViewer viewer) {
	viewer.setUseHashlookup(true);
	TypeScriptSearchLabelProvider innerLabelProvider= new TypeScriptSearchLabelProvider(this, TypeScriptSearchLabelProvider.SHOW_LABEL);
	viewer.setLabelProvider(new DecoratingTypeScriptSearchLabelProvider(innerLabelProvider));
	viewer.setContentProvider(new TypeScriptSearchTreeContentProvider(this, viewer));
	viewer.setComparator(new DecoratorIgnoringViewerSorter(innerLabelProvider));
	fContentProvider= (ITypeScriptSearchContentProvider) viewer.getContentProvider();
	addDragAdapters(viewer);
}
 
源代码8 项目: olca-app   文件: Navigator.java
@Override
protected void initListeners(TreeViewer viewer) {
	super.initListeners(viewer);
	viewer.setUseHashlookup(true);
	ColumnViewerToolTipSupport.enableFor(viewer);
	viewer.addDoubleClickListener(evt -> {
		var elem = Viewers.getFirst(evt.getSelection());
		if (elem instanceof ModelElement) {
			var model = ((ModelElement) elem).getContent();
			App.openEditor(model);
		} else if (elem instanceof DatabaseElement) {
			var config = ((DatabaseElement) elem).getContent();
			if (config != null && !Database.isActive(config)) {
				new DbActivateAction(config).run();
			}
		} else if (elem instanceof ScriptElement) {
			var file = ((ScriptElement) elem).getContent();
			if (file.isDirectory())
				return;
			if (file.getName().endsWith(".py")) {
				PythonEditor.open(file);
			}
		} else if (elem instanceof LibraryElement) {
			var library = ((LibraryElement) elem).getContent();
			LibraryInfoPage.show(library);
		}
	});
}
 
@Override
public void createControl(Composite parent) {
    super.createControl(parent);

    TreeViewer viewer = getTreeViewer();
    viewer.setContentProvider(new OutlineContentProvider());
    viewer.setLabelProvider(new OutlineStyledLabelProvider());
    viewer.addSelectionChangedListener(this);
    viewer.setAutoExpandLevel(2);
    viewer.setUseHashlookup(true);

    if (currentInput != null) {
        setInput(currentInput);
    }
}
 
@Override
protected void configureTreeViewer(TreeViewer viewer) {
	PostfixLabelProvider postfixLabelProvider= new PostfixLabelProvider(this);
	viewer.setUseHashlookup(true);
	viewer.setComparator(new DecoratorIgnoringViewerSorter(postfixLabelProvider));
	viewer.setLabelProvider(new DecoratingJavaLabelProvider(postfixLabelProvider, false));
	fContentProvider= new LevelTreeContentProvider(this, fCurrentGrouping);
	viewer.setContentProvider(fContentProvider);
	addDragAdapters(viewer);
}
 
源代码11 项目: Pydev   文件: AbstractSearchIndexResultPage.java
@Override
protected void configureTreeViewer(TreeViewer viewer) {
    viewer.setUseHashlookup(true);
    SearchIndexLabelProvider innerLabelProvider = createSearchIndexLabelProvider();
    viewer.setLabelProvider(new DecoratingFileSearchLabelProvider(innerLabelProvider));
    viewer.setContentProvider(createTreeContentProvider(viewer));
    viewer.setComparator(new DecoratorIgnoringViewerSorter(innerLabelProvider));
    fContentProvider = (ISearchIndexContentProvider) viewer.getContentProvider();
    addDragAdapters(viewer);

    updateGroupWith(viewer);
}
 
源代码12 项目: Pydev   文件: FileSearchPage.java
@Override
protected void configureTreeViewer(TreeViewer viewer) {
    viewer.setUseHashlookup(true);
    FileLabelProvider innerLabelProvider = new FileLabelProvider(this, FileLabelProvider.SHOW_LABEL);
    viewer.setLabelProvider(innerLabelProvider);
    viewer.setContentProvider(new FileTreeContentProvider(this, viewer));
    viewer.setComparator(new DecoratorIgnoringViewerSorter(innerLabelProvider));
    fContentProvider = (IFileSearchContentProvider) viewer.getContentProvider();
    addDragAdapters(viewer);
}
 
源代码13 项目: saros   文件: XMPPSessionDisplayComposite.java
@Override
protected void configureViewer(TreeViewer viewer) {
  viewer.setContentProvider(new SessionContentProvider(new RosterContentProvider()));

  viewer.setLabelProvider(new TreeLabelProvider());
  viewer.setComparator(new SessionComparator(new RosterComparator()));
  viewer.setUseHashlookup(true);
}
 
源代码14 项目: goclipse   文件: AbstractContentOutlinePage.java
protected TreeViewer createTreeViewer(Composite parent) {
	treeViewer = new TreeViewer(parent, SWT.MULTI);
	
	treeViewer.setAutoExpandLevel(TreeViewer.ALL_LEVELS);
	// TODO: allow certain StructureElements to not be initially expanded
	treeViewer.setUseHashlookup(true);
	
	setupTreeViewerListeners();
	createTreeViewerMenu();
	
	return treeViewer;
}
 
源代码15 项目: bonita-studio   文件: SmartImportBdmPage.java
private Composite createMergeViewer(Composite parent) {
    Composite composite = new Composite(parent, SWT.None);
    composite.setLayout(GridLayoutFactory.fillDefaults().spacing(LayoutConstants.getSpacing().x, 1).create());
    composite.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());

    viewer = new TreeViewer(composite,
            SWT.VIRTUAL | SWT.MULTI | SWT.V_SCROLL | SWT.H_SCROLL | SWT.FULL_SELECTION | SWT.BORDER);
    viewer.getTree().setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());
    viewer.setUseHashlookup(true);
    ColumnViewerToolTipSupport.enableFor(viewer);
    viewer.getTree().setHeaderVisible(true);
    viewer.getTree().setLinesVisible(true);
    viewer.setContentProvider(new SmartImportBdmTreeContentProvider());

    TableLayout layout = new TableLayout();
    layout.addColumnData(new ColumnWeightData(6, true));
    layout.addColumnData(new ColumnWeightData(2, true));
    viewer.getTree().setLayout(layout);

    createModelColumn();
    createActionColumn();

    IViewerObservableValue singleSelectionObservable = ViewerProperties.singleSelection().observe(viewer);
    viewer.addDoubleClickListener(e -> viewer.setExpandedState(singleSelectionObservable.getValue(),
            !viewer.getExpandedState(singleSelectionObservable.getValue())));
    return composite;
}
 
源代码16 项目: ADT_Frontend   文件: AbapGitStagingView.java
private TreeViewer createTree(Composite composite) {
	Tree tree = this.toolkit.createTree(composite, SWT.FULL_SELECTION | SWT.MULTI);
	TreeViewer treeViewer = new TreeViewer(tree);
	treeViewer.setUseHashlookup(true);
	return treeViewer;
}
 
源代码17 项目: tlaplus   文件: ErrorTraceTreeViewer.java
ErrorTraceTreeViewer(final Tree parent, final ModelEditor associatedModelEditor) {
	treeViewer = new TreeViewer(parent);
	treeViewer.setUseHashlookup(true);
	treeViewer.setContentProvider(new StateContentProvider());
	ColumnViewerToolTipSupport.enableFor(treeViewer);

	final TraceDisplayResizer resizer = new TraceDisplayResizer(parent);
	final StateLabelProvider labelProvider = new StateLabelProvider();
	for (int i = 0; i < COLUMN_TEXTS.length; i++) {
		final TreeViewerColumn column = new TreeViewerColumn(treeViewer, i);
		column.getColumn().setText(COLUMN_TEXTS[i]);
		column.getColumn().setWidth(COLUMN_WIDTH[i]);
		column.setLabelProvider(labelProvider);
		resizer.setColumnForIndex(column, i);
		column.getColumn().addSelectionListener(new SelectionAdapter() {
			public void widgetSelected(final SelectionEvent e) {
				// reverse the current trace
				final TLCError error = (TLCError) treeViewer.getInput();
				error.reverseTrace();
				// Reset the viewer's selection to the empty selection. With empty
				// selection, the subsequent refresh call does *not* invalidate the
				// StateContentProvider's lazy policy.
				// We know that the user clicked on the tree's column header
				// and the real selection is of little importance.
				treeViewer.setSelection(new ISelection() {
					public boolean isEmpty() {
						return true;
					}
				});
				treeViewer.refresh(false);
				
				// remember the order for next trace shown
				final IDialogSettings dialogSettings = Activator.getDefault().getDialogSettings();
				dialogSettings.put(TLCModelLaunchDataProvider.STATESORTORDER,
						!dialogSettings.getBoolean(TLCModelLaunchDataProvider.STATESORTORDER));
			}
		});
	}
	
       parent.addControlListener(resizer);
	
	errorTraceFontChangeListener = (event) -> {
		if ((event == null) || event.getProperty().equals(ITLCPreferenceConstants.I_TLC_ERROR_TRACE_FONT)) {
			final Font f = JFaceResources.getFont(ITLCPreferenceConstants.I_TLC_ERROR_TRACE_FONT);
			
			JFaceResources.getFontRegistry().put(TLCErrorView.JFACE_ERROR_TRACE_ID, f.getFontData());

			if (treeViewer != null) {
				treeViewer.refresh(true);
			}
		}
	};
	errorTraceFontChangeListener.propertyChange(null);
       JFaceResources.getFontRegistry().addListener(errorTraceFontChangeListener);
       
       createContextMenu();
       
       setModelEditor(associatedModelEditor);
}
 
private Composite createTree(Composite parent) {
    final Composite fileTreeGroup = new Composite(parent, SWT.NONE);
    fileTreeGroup.setLayout(GridLayoutFactory.fillDefaults().numColumns(2).margins(0, 5).create());
    fileTreeGroup.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());

    viewer = new TreeViewer(fileTreeGroup,
            SWT.VIRTUAL | SWT.MULTI | SWT.V_SCROLL | SWT.H_SCROLL | SWT.FULL_SELECTION | SWT.BORDER);
    viewer.getTree().setLayoutData(GridDataFactory.fillDefaults().grab(true, true).hint(600, SWT.DEFAULT).create());
    provider = new ArchiveTreeContentProvider(viewer);
    viewer.setContentProvider(provider);
    viewer.setUseHashlookup(true); // important for lazy behavior!
    viewer.getTree().setHeaderVisible(true);
    viewer.getTree().setLinesVisible(true);
    final TableLayout layout = new TableLayout();
    layout.addColumnData(new ColumnWeightData(6, true));
    layout.addColumnData(new ColumnWeightData(2, true));
    viewer.getTree().setLayout(layout);
    ColumnViewerToolTipSupport.enableFor(viewer);

    final TreeViewerColumn archiveColumn = new TreeViewerColumn(viewer, SWT.NONE);
    archiveColumn.getColumn().setText(Messages.archiveColumn);
    archiveColumn.setLabelProvider(new DelegatingStyledCellLabelProvider(new ImportModelLabelProvider(
            new ImportModelStyler())));

    final TreeViewerColumn actionColumn = new TreeViewerColumn(viewer, SWT.NONE);
    actionColumn.getColumn().setText(Messages.actionColumn);
    actionColumn.setLabelProvider(new LabelProviderBuilder<>()
            .withTextProvider(this::getActionText)
            .createColumnLabelProvider());
    actionColumn.setEditingSupport(new ImportActionEditingSupport(viewer));

    final Composite buttonsComposite = new Composite(fileTreeGroup, SWT.NONE);
    buttonsComposite.setLayout(GridLayoutFactory.fillDefaults().spacing(5, 2).create());
    buttonsComposite.setLayoutData(
            GridDataFactory.swtDefaults().align(SWT.BEGINNING, SWT.TOP).create());

    importActionSelector = new ImportActionSelector(viewer);
    overwriteButton = new ButtonWidget.Builder()
            .withLabel(Messages.overwriteAll)
            .alignLeft()
            .fill()
            .grabHorizontalSpace()
            .minimumWidth(BUTTON_WIDTH)
            .onClick(importActionSelector::selectOverwriteAll)
            .createIn(buttonsComposite);
    overwriteButton.disable();

    keepAllButton = new ButtonWidget.Builder()
            .withLabel(Messages.keepAll)
            .alignLeft()
            .fill()
            .minimumWidth(BUTTON_WIDTH)
            .grabHorizontalSpace()
            .onClick(importActionSelector::selectKeepAll)
            .createIn(buttonsComposite);
    keepAllButton.disable();

    return fileTreeGroup;
}
 
源代码19 项目: APICloud-Studio   文件: TreeConflictsView.java
public void createPartControl(Composite parent) {
	GridLayout layout = new GridLayout();
	layout.marginWidth = 0;
	layout.marginHeight = 0;
	layout.numColumns = 1;
	parent.setLayout(layout);		

	treeViewer = new TreeViewer(parent, SWT.FULL_SELECTION);
	treeViewer.setLabelProvider(new ConflictsLabelProvider());
	treeViewer.setContentProvider(new ConflictsContentProvider());
	treeViewer.setUseHashlookup(true);
	GridData layoutData = new GridData();
	layoutData.grabExcessHorizontalSpace = true;
	layoutData.grabExcessVerticalSpace = true;
	layoutData.horizontalAlignment = GridData.FILL;
	layoutData.verticalAlignment = GridData.FILL;
	treeViewer.getControl().setLayoutData(layoutData);
	TableLayout tableLayout = new TableLayout();
	treeViewer.getTree().setLayout(tableLayout);

	DisposeListener disposeListener = new DisposeListener() {
		public void widgetDisposed(DisposeEvent e) {
			TreeColumn col = (TreeColumn)e.getSource();
			if (col.getWidth() > 0) settings.put("TreeConflictsView.col." + col.getText(), col.getWidth()); //$NON-NLS-1$
		}			
	};
	for (int i = 0; i < columnHeaders.length; i++) {
		TreeColumn tc = new TreeColumn(treeViewer.getTree(), SWT.NONE,i);
		tc.setResizable(columnLayouts[i].resizable);
		tc.setText(columnHeaders[i]);
		setColumnWidth(tableLayout, disposeListener, tc, i);
	}
	
	treeViewer.getTree().setHeaderVisible(true);
	treeViewer.getTree().setLinesVisible(false);
	
	treeViewer.setInput(this);

	treeViewer.addOpenListener(new IOpenListener() {
		public void open(OpenEvent evt) {
			openAction.run();
		}	
	});
	
	createMenus();
	createToolbar();
	
	String path = settings.get("TreeConflictsView.resource"); //$NON-NLS-1$
	if (path != null) {
		boolean container = settings.getBoolean("TreeConflictsView.container"); //$NON-NLS-1$
		if (container) resource = ResourcesPlugin.getWorkspace().getRoot().getContainerForLocation(new Path(path));
		else resource = ResourcesPlugin.getWorkspace().getRoot().getFileForLocation(new Path(path));
	}
	if (resource == null)
		setContentDescription(Policy.bind("TreeConflictsView.noResource")); //$NON-NLS-1$
	else
		setContentDescription(resource.getFullPath().toString());
}
 
private void createTree(Composite parent) {

		Label label= new Label(parent, SWT.NONE);
		label.setLayoutData(new GridData(SWT.LEAD, SWT.CENTER, false, false));
		label.setText(WorkingSetMessages.JavaWorkingSetPage_workspace_content);

		fTree= new TreeViewer(parent, SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL | SWT.MULTI);
		fTree.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));

		fTree.addFilter(new AddedElementsFilter());
		fTree.setUseHashlookup(true);

		configureTree(fTree);

		fTreeContentProvider= (ITreeContentProvider) fTree.getContentProvider();
	}