List of usage examples for org.eclipse.jface.preference PreferenceManager getRootSubNodes
public final IPreferenceNode[] getRootSubNodes()
From source file:com.google.dart.tools.deploy.ApplicationWorkbenchWindowAdvisor.java
License:Open Source License
private void filterUnwantedPreferenceNodes() { PreferenceManager preferenceManager = PlatformUI.getWorkbench().getPreferenceManager(); for (Object elem : preferenceManager.getElements(PreferenceManager.POST_ORDER)) { if (elem instanceof IPreferenceNode) { IPreferenceNode node = (IPreferenceNode) elem; if (isBlacklisted(node)) { if (!preferenceManager.remove(node)) { for (IPreferenceNode rootNode : preferenceManager.getRootSubNodes()) { if (rootNode.findSubNode(node.getId()) != null) { rootNode.remove(node); }//ww w . j ava2 s. c o m } } } } } }
From source file:com.nextep.designer.ApplicationWorkbenchWindowAdvisor.java
License:Open Source License
/** * @see org.eclipse.ui.application.WorkbenchWindowAdvisor#postWindowCreate() *///w w w . j a v a 2s . c om @Override public void postWindowCreate() { super.postWindowCreate(); // Removing the "Team" section from the preferences. PreferenceManager pm = PlatformUI.getWorkbench().getPreferenceManager(); IPreferenceNode[] rootSubNodes = pm.getRootSubNodes(); for (IPreferenceNode node : rootSubNodes) { if (EXCLUDED_PREFERENCE_NODES.contains(node.getId())) { pm.remove(node); log.debug("Removed node [" + node.getId() + "] from preferences"); //$NON-NLS-1$ //$NON-NLS-2$ } } }
From source file:gov.nasa.ensemble.core.rcp.EnsembleWorkbenchWindowAdvisor.java
License:Open Source License
protected final void cleanupPreferencePages() { Collection<Pattern> patterns = new HashSet<Pattern>(); for (String s : getUndesirablePreferencePageIDRegExes()) patterns.add(Pattern.compile(s)); if (patterns.size() == 0) return;//from w w w . ja v a 2 s .c o m PreferenceManager manager = PlatformUI.getWorkbench().getPreferenceManager(); for (IPreferenceNode node : manager.getRootSubNodes()) { for (Pattern pattern : patterns) { if (pattern.matcher(node.getId()).matches()) { manager.remove(node); continue; } } cleanupPreferencePages(node, patterns); } }
From source file:gov.nasa.ensemble.core.rcp.EnsembleWorkbenchWindowAdvisor.java
License:Open Source License
protected final void moveAdvancedPreferencesPages() { Collection<Pattern> patterns = new HashSet<Pattern>(); for (String s : getAdvancedPreferenceRegExp()) patterns.add(Pattern.compile(s)); if (patterns.size() == 0) return;/*from www. j a v a 2 s .c o m*/ PreferenceManager manager = PlatformUI.getWorkbench().getPreferenceManager(); IPreferenceNode[] rootSubNodes = manager.getRootSubNodes(); PreferenceNode advanced = null; Pattern advancePattern = Pattern.compile("AdvancedPreferenceNode"); for (IPreferenceNode node : rootSubNodes) { if (advancePattern.matcher(node.getId()).matches()) { advanced = (PreferenceNode) node; break; } } if (advanced == null) return; for (IPreferenceNode node : rootSubNodes) { for (Pattern pattern : patterns) { if (pattern.matcher(node.getId()).matches()) { manager.remove(node); advanced.add(node); continue; } } } }
From source file:org.bbaw.pdr.ae.standalone.ApplicationWorkbenchAdvisor.java
License:Open Source License
@Override public void postStartup() { // TODO Auto-generated method stub super.postStartup(); // set source parameter with user role. Facade.getInstanz().processUserRole(); //remove unwanted preference pages PreferenceManager pm = PlatformUI.getWorkbench().getPreferenceManager(); IPreferenceNode[] arr = pm.getRootSubNodes(); for (IPreferenceNode pn : arr) { if (pn.getId().equals("org.eclipse.ui.preferencePages.Workbench")) { pn.remove("org.eclipse.equinox.security.ui.category"); pn.remove("org.eclipse.ui.preferencePages.Editors"); pn.remove("org.eclipse.ui.preferencePages.Workspace"); pn.remove("org.eclipse.ui.preferencePages.ContentTypes"); break; }/*from ww w .j a v a 2s.co m*/ } }
From source file:org.eclipse.ui.internal.registry.PreferencePageParameterValues.java
License:Open Source License
public final Map getParameterValues() { if (preferenceMap == null) { preferenceMap = new TreeMap(); final PreferenceManager preferenceManager = PlatformUI.getWorkbench().getPreferenceManager(); collectParameterValues(preferenceMap, preferenceManager.getRootSubNodes(), null); }//from w ww . j a va2s. c o m return preferenceMap; }
From source file:org.talend.commons.ui.utils.workbench.preferences.PreferencesHelper.java
License:Open Source License
/** * //from ww w . ja v a 2 s. com * Use the BFS(Breadth First Search) to remove the preferences ids. */ public static boolean removePages(String[] prefIds) { if (prefIds == null || prefIds.length == 0) { return false; } PreferenceManager preferenceManager = PlatformUI.getWorkbench().getPreferenceManager(); List<String> removedIds = new ArrayList<String>(); IPreferenceNode[] rootSubNodes = preferenceManager.getRootSubNodes(); for (IPreferenceNode node : rootSubNodes) { String id = node.getId(); if (ArrayUtils.contains(prefIds, id)) { preferenceManager.remove(node); removedIds.add(id); } } // do for children for (IPreferenceNode node : rootSubNodes) { removePages(node, prefIds, removedIds); } // List<String> doList = new ArrayList<String>(Arrays.asList(prefIds)); doList.removeAll(removedIds); return doList.isEmpty(); // have done for all, so empty. }
From source file:org.talend.rcp.util.ApplicationDeletionUtil.java
License:Open Source License
public static void removeAndResetPreferencePages(IWorkbenchWindow window, final List<String> prefsId, boolean needReset) { if (prefsId == null || prefsId.isEmpty()) { return;// w w w. j a v a 2 s . c o m } if (window == null) { window = PlatformUI.getWorkbench().getActiveWorkbenchWindow(); } if (window == null) { return; } List<IPreferenceNode> prefsToDelete = new ArrayList<IPreferenceNode>(); List<IPreferenceNode> prefsToDeleteParents = new ArrayList<IPreferenceNode>(); IWorkbench workbench = window.getWorkbench(); if (workbench == null) { return; } PreferenceManager preferenceManager = workbench.getPreferenceManager(); for (IPreferenceNode node : preferenceManager.getRootSubNodes()) { IPreferenceNode existPreferenceNode = existPreferenceNode(prefsToDeleteParents, null, node, prefsId); if (existPreferenceNode != null) { prefsToDelete.add(existPreferenceNode); } } // reset mdm preference ,see TMDM-3215 if (needReset) { resetMDMNode(preferenceManager, prefsToDeleteParents); } if (!prefsToDelete.isEmpty()) { List<IPreferenceNode> tmpPrefsToDelete = new ArrayList<IPreferenceNode>(); for (IPreferenceNode node : preferenceManager.getRootSubNodes()) { for (IPreferenceNode delNode : prefsToDelete) { if (node.remove(delNode)) { tmpPrefsToDelete.add(delNode); } } } prefsToDelete.removeAll(tmpPrefsToDelete); if (!prefsToDelete.isEmpty()) { for (IPreferenceNode parent : prefsToDeleteParents) { for (IPreferenceNode delNode : prefsToDelete) { parent.remove(delNode); } } } } }
From source file:org.talend.rcp.util.ApplicationDeletionUtil.java
License:Open Source License
private static void resetMDMNode(PreferenceManager preferenceManager, List<IPreferenceNode> prefsToDeleteParents) { IPreferenceNode mdmNode = null;/* ww w. j a v a 2s .c o m*/ IPreferenceNode newRepositoryNode = null; for (IPreferenceNode node : preferenceManager.getRootSubNodes()) { String[] nPrefsId = { "org.talend.mdm.repository.ui.preferences.AutoDeployPreferencePage" }; //$NON-NLS-1$ IPreferenceNode existPreferenceNode = existPreferenceNode(prefsToDeleteParents, null, node, Arrays.asList(nPrefsId)); if (existPreferenceNode != null) { mdmNode = existPreferenceNode; } } for (IPreferenceNode node : preferenceManager.getRootSubNodes()) { String[] nPrefsId = { "org.talend.mdm.repository.ui.preferences.RepositoryPreferencePage" }; //$NON-NLS-1$ IPreferenceNode existPreferenceNode = existPreferenceNode(prefsToDeleteParents, null, node, Arrays.asList(nPrefsId)); if (existPreferenceNode != null) { newRepositoryNode = existPreferenceNode; } } if (newRepositoryNode != null && mdmNode != null) newRepositoryNode.add(mdmNode); }
From source file:org.talend.repository.ui.dialog.ProjectSettingDialog.java
License:Open Source License
/** * get all projectsettingPage node dynamic. need get the different result each time. because the tester will calc * dymamic./* ww w . j ava2 s.com*/ * * @return PreferenceManager */ private PreferenceManager getNodeManager() { // PreferenceManager manager = new PreferenceManager(WorkbenchPlugin.PREFERENCE_PAGE_CATEGORY_SEPARATOR); PreferenceManager manager = new PreferenceManager('/'); IExtensionRegistry registry = Platform.getExtensionRegistry(); IConfigurationElement[] configurationElements = registry .getConfigurationElementsFor("org.talend.repository.projectsetting_page"); //$NON-NLS-1$ Map<String, List<IPreferenceNode>> hasCategoriesNodes = new HashMap<String, List<IPreferenceNode>>(); for (IConfigurationElement element : configurationElements) { ProjectSettingNode node = new ProjectSettingNode(element); try { IPreferencePage page = (IPreferencePage) element.createExecutableExtension("class"); //$NON-NLS-1$ node.setPage(page); String id = element.getAttribute("id");//$NON-NLS-1$ IConfigurationElement[] testers = element.getChildren("tester"); if (testers != null && testers.length == 1) { // currently, only one tester is supported. try { IProjectSettingPageTester pageTester = (IProjectSettingPageTester) testers[0] .createExecutableExtension("class"); if (pageTester != null) { if (!pageTester.valid(element, node)) { continue; // don't add this page node. } } } catch (CoreException ex) { // can't create the tester log.log(Level.WARN, "can't create the project setting tester for " + id, ex); } } page.setDescription(element.getAttribute("description")); //$NON-NLS-1$ page.setTitle(element.getAttribute("title")); //$NON-NLS-1$ } catch (CoreException e) { ExceptionHandler.process(e); } // add all into root. manager.addToRoot(node); // has category String category = node.getCategory(); if (category != null && category.length() > 0) { List<IPreferenceNode> list = hasCategoriesNodes.get(category); if (list == null) { list = new ArrayList<IPreferenceNode>(); hasCategoriesNodes.put(category, list); } list.add(node); } } // add the speciall node for maven custom if (GlobalServiceRegister.getDefault().isServiceRegistered(IMavenUIService.class)) { IMavenUIService mavenUIService = (IMavenUIService) GlobalServiceRegister.getDefault() .getService(IMavenUIService.class); IPreferenceNode mavenCostomSetup = manager.find("projectsetting.MavenCustomSetup"); mavenUIService.addCustomMavenSettingChildren(mavenCostomSetup); } // find parent nodes for category Map<String, IPreferenceNode> parentNodesMap = new HashMap<String, IPreferenceNode>(); for (String category : hasCategoriesNodes.keySet()) { IPreferenceNode parent = manager.find(category); if (parent != null) { parentNodesMap.put(category, parent); } } // process children nodes for (String category : hasCategoriesNodes.keySet()) { List<IPreferenceNode> list = hasCategoriesNodes.get(category); if (list != null) { IPreferenceNode parent = parentNodesMap.get(category); Collections.sort(list, COMPARATOR); for (IPreferenceNode node : list) { // if the parent is not valid or not existed. the node won't show also. manager.remove(node); // remove from root node. if (parent != null) { // the parent existed. parent.add(node); } } } } // sort the root nodes List<IPreferenceNode> rootSubNodesList = new ArrayList<IPreferenceNode>( Arrays.asList(manager.getRootSubNodes())); Collections.sort(rootSubNodesList, COMPARATOR); manager.removeAll(); // clean all to re-add for order // add the sorted list to manager for (IPreferenceNode rootSubNode : rootSubNodesList) { manager.addToRoot(rootSubNode); } return manager; }