List of usage examples for com.intellij.openapi.wm ToolWindowEP EP_NAME
ExtensionPointName EP_NAME
To view the source code for com.intellij.openapi.wm ToolWindowEP EP_NAME.
Click Source Link
From source file:org.jetbrains.plugins.groovy.mvc.MvcModuleStructureSynchronizer.java
License:Apache License
private void updateProjectViewVisibility() { StartupManager.getInstance(myProject).runWhenProjectIsInitialized(new DumbAwareRunnable() { @Override//from w w w . j a v a 2 s. c o m public void run() { ApplicationManager.getApplication().invokeLater(new Runnable() { @Override public void run() { if (myProject.isDisposed()) return; for (ToolWindowEP ep : ToolWindowEP.EP_NAME.getExtensions()) { if (MvcToolWindowDescriptor.class.isAssignableFrom(ep.getFactoryClass())) { MvcToolWindowDescriptor descriptor = (MvcToolWindowDescriptor) ep .getToolWindowFactory(); String id = descriptor.getToolWindowId(); boolean shouldShow = MvcModuleStructureUtil.hasModulesWithSupport(myProject, descriptor.getFramework()); ToolWindowManager toolWindowManager = ToolWindowManager.getInstance(myProject); ToolWindow toolWindow = toolWindowManager.getToolWindow(id); if (shouldShow && toolWindow == null) { toolWindow = toolWindowManager.registerToolWindow(id, true, ToolWindowAnchor.LEFT, myProject, true); toolWindow.setIcon(descriptor.getFramework().getToolWindowIcon()); descriptor.createToolWindowContent(myProject, toolWindow); } else if (!shouldShow && toolWindow != null) { toolWindowManager.unregisterToolWindow(id); Disposer.dispose(toolWindow.getContentManager()); } } } } }); } }); }