类org.eclipse.ui.actions.WorkingSetFilterActionGroup源码实例Demo

下面列出了怎么用org.eclipse.ui.actions.WorkingSetFilterActionGroup的API类实例代码及写法,或者点击链接到github查看源代码。

public void init(ICommonActionExtensionSite aSite) {
	viewer = (CommonViewer) aSite.getStructuredViewer();
	contentService = aSite.getContentService();
	filterService = (NavigatorFilterService) contentService.getFilterService();

	extensionStateModel = contentService.findStateModel(WorkingSetsContentProvider.EXTENSION_ID);

	workingSetActionGroup = new WorkingSetFilterActionGroup(aSite.getViewSite().getShell(), filterChangeListener);
	workingSetRootModeActionGroup = new WorkingSetRootModeActionGroup(viewer, extensionStateModel);

	topLevelModeListener = new IPropertyChangeListener() {
		public void propertyChange(PropertyChangeEvent event) {
			setWorkingSet(workingSet);
			viewer.getFrameList().reset();
		}
	};

	if (contentService.isActive(WorkingSetsContentProvider.EXTENSION_ID)) {
		managerChangeListener.listen();
		extensionStateModel.addPropertyChangeListener(topLevelModeListener);
	}

	contentService.getActivationService().addExtensionActivationListener(activationListener);
}
 
源代码2 项目: tmxeditor8   文件: WorkingSetActionProvider.java
public void init(ICommonActionExtensionSite aSite) {
	viewer = (CommonViewer) aSite.getStructuredViewer();
	contentService = aSite.getContentService();
	filterService = (NavigatorFilterService) contentService.getFilterService();

	extensionStateModel = contentService.findStateModel(WorkingSetsContentProvider.EXTENSION_ID);

	workingSetActionGroup = new WorkingSetFilterActionGroup(aSite.getViewSite().getShell(), filterChangeListener);
	workingSetRootModeActionGroup = new WorkingSetRootModeActionGroup(viewer, extensionStateModel);

	topLevelModeListener = new IPropertyChangeListener() {
		public void propertyChange(PropertyChangeEvent event) {
			setWorkingSet(workingSet);
			viewer.getFrameList().reset();
		}
	};

	if (contentService.isActive(WorkingSetsContentProvider.EXTENSION_ID)) {
		managerChangeListener.listen();
		extensionStateModel.addPropertyChangeListener(topLevelModeListener);
	}

	contentService.getActivationService().addExtensionActivationListener(activationListener);
}
 
源代码3 项目: spotbugs   文件: BugActionProvider.java
@Override
public void init(ICommonActionExtensionSite aSite) {
    site = aSite;
    super.init(aSite);
    final StructuredViewer viewer = aSite.getStructuredViewer();
    final BugContentProvider provider = BugContentProvider.getProvider(site.getContentService());

    filterChangeListener = new IPropertyChangeListener() {

        @Override
        public void propertyChange(PropertyChangeEvent event) {
            if (!initDone) {
                return;
            }
            IWorkingSet oldWorkingSet = provider.getCurrentWorkingSet();
            IWorkingSet oldWorkingSet1 = (IWorkingSet) event.getOldValue();
            IWorkingSet newWorkingSet = (IWorkingSet) event.getNewValue();
            if (newWorkingSet != null && (oldWorkingSet == newWorkingSet || oldWorkingSet1 == newWorkingSet)) {
                return;
            }
            if (viewer != null) {
                provider.setCurrentWorkingSet(newWorkingSet);
                if (newWorkingSet == null) {
                    viewer.setInput(ResourcesPlugin.getWorkspace().getRoot());
                } else if (oldWorkingSet != newWorkingSet) {
                    viewer.setInput(newWorkingSet);
                }
            }
        }
    };


    workingSetActionGroup = new WorkingSetFilterActionGroup(aSite.getViewSite().getShell(), filterChangeListener);
    if (provider == null)
        throw new NullPointerException("no provider");
    workingSetActionGroup.setWorkingSet(provider.getCurrentWorkingSet());
    doubleClickAction = new MyAction();
    // only if doubleClickAction must know tree selection:
    viewer.addSelectionChangedListener(doubleClickAction);
    initDone = true;
}
 
源代码4 项目: Pydev   文件: GlobalsTwoPanelElementSelector2.java
/**
 * We need to add the action for the working set.
 */
@Override
protected void fillViewMenu(IMenuManager menuManager) {
    super.fillViewMenu(menuManager);

    workingSetFilterActionGroup = new WorkingSetFilterActionGroup(getShell(), new IPropertyChangeListener() {
        @Override
        public void propertyChange(PropertyChangeEvent event) {
            String property = event.getProperty();

            if (WorkingSetFilterActionGroup.CHANGE_WORKING_SET.equals(property)) {

                IWorkingSet workingSet = (IWorkingSet) event.getNewValue();

                if (workingSet != null && !(workingSet.isAggregateWorkingSet() && workingSet.isEmpty())) {
                    workingSetFilter.setWorkingSet(workingSet);
                    setSubtitle(workingSet.getLabel());
                } else {
                    IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow();

                    if (window != null) {
                        IWorkbenchPage page = window.getActivePage();
                        workingSet = page.getAggregateWorkingSet();

                        if (workingSet.isAggregateWorkingSet() && workingSet.isEmpty()) {
                            workingSet = null;
                        }
                    }

                    workingSetFilter.setWorkingSet(workingSet);
                    setSubtitle(null);
                }

                scheduleRefresh();
            }
        }
    });

    menuManager.add(new Separator());
    workingSetFilterActionGroup.fillContextMenu(menuManager);
}
 
 类所在包
 类方法
 同包方法