ToolWindow
ExtensionPoint Definition
code:PlatformExtensionPoints.xml
<extensionPoint name="toolWindow" beanClass="com.intellij.openapi.wm.ToolWindowEP" dynamic="true">
<with attribute="factoryClass" implements="com.intellij.openapi.wm.ToolWindowFactory"/>
</extensionPoint>
Sample
code:plugin.xml
<idea-plugin>
<extensions defaultExtensionNs="com.intellij">
<toolWindow factoryClass="com.example.intellij.ExampleToolWindowFactory" />
</extensions>
</idea-plugin>
code:ExampleToolWindowFactory.kt
import com.intellij.openapi.project.Project
import com.intellij.openapi.wm.ToolWindow
import com.intellij.openapi.wm.ToolWindowFactory
import com.intellij.ui.content.ContentFactory
import com.intellij.ui.jcef.JBCefBrowser
class ExampleToolWindowFactory: ToolWindowFactory {
override fun createToolWindowContent(project: Project, toolWindow: ToolWindow) {
val content = ContentFactory.getInstance().createContent(browser.component, "", false)
toolWindow.contentManager.addContent(content)
}
}