mirror of
https://github.com/JetBrains/intellij-sdk-code-samples.git
synced 2025-07-27 16:57:49 +08:00
2024.1 Release: update pages, extension point lists, code samples, etc. (#1265)
This commit is contained in:
parent
4ec2775bac
commit
88ea433b58
2
.github/workflows/code-samples.yml
vendored
2
.github/workflows/code-samples.yml
vendored
@ -7,7 +7,7 @@ on:
|
||||
paths: [ 'code_samples/**','.github/workflows/code-samples.yml' ]
|
||||
|
||||
env:
|
||||
PLUGIN_VERIFIER_IDE_VERSIONS: '2023.1.5 2023.2.5 2023.3'
|
||||
PLUGIN_VERIFIER_IDE_VERSIONS: '2023.2.6 2023.3.6 2024.1'
|
||||
|
||||
jobs:
|
||||
|
||||
|
@ -18,7 +18,7 @@ java {
|
||||
|
||||
// See https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html
|
||||
intellij {
|
||||
version.set("2023.1.5")
|
||||
version.set("2023.2.6")
|
||||
}
|
||||
|
||||
tasks {
|
||||
@ -28,7 +28,7 @@ tasks {
|
||||
|
||||
patchPluginXml {
|
||||
version.set("${project.version}")
|
||||
sinceBuild.set("231")
|
||||
untilBuild.set("233.*")
|
||||
sinceBuild.set("232")
|
||||
untilBuild.set("241.*")
|
||||
}
|
||||
}
|
||||
|
@ -22,7 +22,7 @@ java {
|
||||
|
||||
// See https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html
|
||||
intellij {
|
||||
version.set("2023.1.5")
|
||||
version.set("2023.2.6")
|
||||
plugins.set(listOf("com.intellij.java"))
|
||||
}
|
||||
|
||||
@ -33,7 +33,7 @@ tasks {
|
||||
|
||||
patchPluginXml {
|
||||
version.set("${project.version}")
|
||||
sinceBuild.set("231")
|
||||
untilBuild.set("233.*")
|
||||
sinceBuild.set("232")
|
||||
untilBuild.set("241.*")
|
||||
}
|
||||
}
|
||||
|
@ -22,7 +22,7 @@ java {
|
||||
|
||||
// See https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html
|
||||
intellij {
|
||||
version.set("2023.1.5")
|
||||
version.set("2023.2.6")
|
||||
plugins.set(listOf("com.intellij.java"))
|
||||
}
|
||||
|
||||
@ -33,7 +33,7 @@ tasks {
|
||||
|
||||
patchPluginXml {
|
||||
version.set("${project.version}")
|
||||
sinceBuild.set("231")
|
||||
untilBuild.set("233.*")
|
||||
sinceBuild.set("232")
|
||||
untilBuild.set("241.*")
|
||||
}
|
||||
}
|
||||
|
@ -18,7 +18,7 @@ java {
|
||||
|
||||
// See https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html
|
||||
intellij {
|
||||
version.set("2023.1.5")
|
||||
version.set("2023.2.6")
|
||||
}
|
||||
|
||||
tasks {
|
||||
@ -28,7 +28,7 @@ tasks {
|
||||
|
||||
patchPluginXml {
|
||||
version.set("${project.version}")
|
||||
sinceBuild.set("231")
|
||||
untilBuild.set("233.*")
|
||||
sinceBuild.set("232")
|
||||
untilBuild.set("241.*")
|
||||
}
|
||||
}
|
||||
|
@ -18,7 +18,7 @@ java {
|
||||
|
||||
// See https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html
|
||||
intellij {
|
||||
version.set("2023.1.5")
|
||||
version.set("2023.2.6")
|
||||
}
|
||||
|
||||
tasks {
|
||||
@ -28,7 +28,7 @@ tasks {
|
||||
|
||||
patchPluginXml {
|
||||
version.set("${project.version}")
|
||||
sinceBuild.set("231")
|
||||
untilBuild.set("233.*")
|
||||
sinceBuild.set("232")
|
||||
untilBuild.set("241.*")
|
||||
}
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright 2000-2023 JetBrains s.r.o. and other contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
|
||||
package org.intellij.sdk.facet;
|
||||
|
||||
@ -9,7 +9,6 @@ import com.intellij.openapi.module.Module;
|
||||
import com.intellij.openapi.module.ModuleType;
|
||||
import icons.SdkIcons;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import javax.swing.*;
|
||||
|
||||
@ -46,7 +45,6 @@ final class DemoFacetType extends FacetType<DemoFacet, DemoFacetConfiguration> {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
public Icon getIcon() {
|
||||
return SdkIcons.Sdk_default_icon;
|
||||
|
@ -18,7 +18,7 @@ java {
|
||||
|
||||
// See https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html
|
||||
intellij {
|
||||
version.set("2023.1.5")
|
||||
version.set("2023.2.6")
|
||||
plugins.set(listOf("com.intellij.java"))
|
||||
}
|
||||
|
||||
@ -29,7 +29,7 @@ tasks {
|
||||
|
||||
patchPluginXml {
|
||||
version.set("${project.version}")
|
||||
sinceBuild.set("231")
|
||||
untilBuild.set("233.*")
|
||||
sinceBuild.set("232")
|
||||
untilBuild.set("241.*")
|
||||
}
|
||||
}
|
||||
|
@ -19,7 +19,7 @@ java {
|
||||
|
||||
// See https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html
|
||||
intellij {
|
||||
version.set("2023.1.5")
|
||||
version.set("2023.2.6")
|
||||
}
|
||||
|
||||
tasks {
|
||||
@ -29,8 +29,8 @@ tasks {
|
||||
|
||||
patchPluginXml {
|
||||
version.set("${project.version}")
|
||||
sinceBuild.set("231")
|
||||
untilBuild.set("233.*")
|
||||
sinceBuild.set("232")
|
||||
untilBuild.set("241.*")
|
||||
}
|
||||
|
||||
compileKotlin {
|
||||
|
@ -18,7 +18,7 @@ java {
|
||||
|
||||
// See https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html
|
||||
intellij {
|
||||
version.set("2023.1.5")
|
||||
version.set("2023.2.6")
|
||||
}
|
||||
|
||||
tasks {
|
||||
@ -28,7 +28,7 @@ tasks {
|
||||
|
||||
patchPluginXml {
|
||||
version.set("${project.version}")
|
||||
sinceBuild.set("231")
|
||||
untilBuild.set("233.*")
|
||||
sinceBuild.set("232")
|
||||
untilBuild.set("241.*")
|
||||
}
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright 2000-2023 JetBrains s.r.o. and other contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
|
||||
package org.intellij.sdk.liveTemplates;
|
||||
|
||||
@ -27,7 +27,7 @@ final class TitleCaseMacro extends MacroBase {
|
||||
if (text == null) {
|
||||
return null;
|
||||
}
|
||||
if (text.length() > 0) {
|
||||
if (!text.isEmpty()) {
|
||||
// Capitalize the start of every word
|
||||
text = StringUtil.toTitleCase(text);
|
||||
}
|
||||
|
@ -3,6 +3,7 @@
|
||||
plugins {
|
||||
id("java")
|
||||
id("org.jetbrains.intellij") version "1.17.3"
|
||||
id("org.jetbrains.kotlin.jvm") version "1.9.23"
|
||||
}
|
||||
|
||||
group = "org.intellij.sdk"
|
||||
@ -18,7 +19,7 @@ java {
|
||||
|
||||
// See https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html
|
||||
intellij {
|
||||
version.set("2023.1.5")
|
||||
version.set("2023.2.6")
|
||||
}
|
||||
|
||||
tasks {
|
||||
@ -28,7 +29,7 @@ tasks {
|
||||
|
||||
patchPluginXml {
|
||||
version.set("${project.version}")
|
||||
sinceBuild.set("231")
|
||||
untilBuild.set("233.*")
|
||||
sinceBuild.set("232")
|
||||
untilBuild.set("241.*")
|
||||
}
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright 2000-2022 JetBrains s.r.o. and other contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
|
||||
package org.intellij.sdk.maxOpenProjects;
|
||||
|
||||
@ -14,11 +14,6 @@ public class ProjectCloseListener implements ProjectManagerListener {
|
||||
|
||||
@Override
|
||||
public void projectClosed(@NotNull Project project) {
|
||||
// Ensure this isn't part of testing
|
||||
if (ApplicationManager.getApplication().isUnitTestMode()) {
|
||||
return;
|
||||
}
|
||||
|
||||
// Get the counting service
|
||||
ProjectCountingService projectCountingService =
|
||||
ApplicationManager.getApplication().getService(ProjectCountingService.class);
|
||||
|
@ -1,41 +0,0 @@
|
||||
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
|
||||
package org.intellij.sdk.maxOpenProjects;
|
||||
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.startup.StartupActivity;
|
||||
import com.intellij.openapi.ui.Messages;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Invoked on opening a project.
|
||||
*/
|
||||
final class ProjectOpenStartupActivity implements StartupActivity.DumbAware {
|
||||
|
||||
@Override
|
||||
public void runActivity(@NotNull Project project) {
|
||||
// Ensure this isn't part of testing
|
||||
if (ApplicationManager.getApplication().isUnitTestMode()) {
|
||||
return;
|
||||
}
|
||||
|
||||
// Get the counting service
|
||||
ProjectCountingService projectCountingService =
|
||||
ApplicationManager.getApplication().getService(ProjectCountingService.class);
|
||||
// Increment the project count
|
||||
projectCountingService.increaseOpenProjectCount();
|
||||
|
||||
// See if the total # of projects violates the limit.
|
||||
if (projectCountingService.isOpenProjectsLimitExceeded()) {
|
||||
// Transitioned to outside the limit
|
||||
String title = String.format("Opening Project \"%s\"", project.getName());
|
||||
String message = "<br>The number of open projects exceeds the SDK plugin max_opened_projects limit.<br><br>";
|
||||
|
||||
ApplicationManager.getApplication().invokeLater(() ->
|
||||
Messages.showMessageDialog(project, message, title, Messages.getInformationIcon())
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,29 @@
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
package org.intellij.sdk.maxOpenProjects
|
||||
|
||||
import com.intellij.openapi.application.ApplicationManager
|
||||
import com.intellij.openapi.project.DumbAware
|
||||
import com.intellij.openapi.project.Project
|
||||
import com.intellij.openapi.startup.ProjectActivity
|
||||
import com.intellij.openapi.ui.Messages
|
||||
|
||||
/**
|
||||
* Invoked on opening a project.
|
||||
*/
|
||||
internal class ProjectOpenStartupActivity : ProjectActivity, DumbAware {
|
||||
override suspend fun execute(project: Project) {
|
||||
val application = ApplicationManager.getApplication()
|
||||
val projectCountingService = application.getService(ProjectCountingService::class.java)
|
||||
projectCountingService.increaseOpenProjectCount()
|
||||
if (projectCountingService.isOpenProjectsLimitExceeded) {
|
||||
application.invokeLater {
|
||||
Messages.showMessageDialog(
|
||||
project,
|
||||
"The number of open projects exceeded the limit while opening the '${project.name}' project.",
|
||||
"Open Projects Limit Exceeded",
|
||||
Messages.getInformationIcon()
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -18,7 +18,7 @@ java {
|
||||
|
||||
// See https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html
|
||||
intellij {
|
||||
version.set("2023.1.5")
|
||||
version.set("2023.2.6")
|
||||
}
|
||||
|
||||
tasks {
|
||||
@ -28,7 +28,7 @@ tasks {
|
||||
|
||||
patchPluginXml {
|
||||
version.set("${project.version}")
|
||||
sinceBuild.set("231")
|
||||
untilBuild.set("233.*")
|
||||
sinceBuild.set("232")
|
||||
untilBuild.set("241.*")
|
||||
}
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright 2000-2022 JetBrains s.r.o. and other contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
|
||||
package org.intellij.sdk.module;
|
||||
|
||||
@ -6,6 +6,7 @@ import com.intellij.ide.util.projectWizard.ModuleBuilder;
|
||||
import com.intellij.ide.util.projectWizard.ModuleWizardStep;
|
||||
import com.intellij.ide.util.projectWizard.WizardContext;
|
||||
import com.intellij.openapi.Disposable;
|
||||
import com.intellij.openapi.module.ModuleType;
|
||||
import com.intellij.openapi.roots.ModifiableRootModel;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
@ -17,7 +18,7 @@ public class DemoModuleBuilder extends ModuleBuilder {
|
||||
}
|
||||
|
||||
@Override
|
||||
public DemoModuleType getModuleType() {
|
||||
public ModuleType<DemoModuleBuilder> getModuleType() {
|
||||
return DemoModuleType.getInstance();
|
||||
}
|
||||
|
||||
|
@ -31,7 +31,7 @@ tasks {
|
||||
|
||||
patchPluginXml {
|
||||
version.set("${project.version}")
|
||||
sinceBuild.set("231")
|
||||
untilBuild.set("233.*")
|
||||
sinceBuild.set("232")
|
||||
untilBuild.set("241.*")
|
||||
}
|
||||
}
|
||||
|
@ -18,7 +18,7 @@ java {
|
||||
|
||||
// See https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html
|
||||
intellij {
|
||||
version.set("2023.1.5")
|
||||
version.set("2023.2.6")
|
||||
plugins.set(listOf("com.intellij.java"))
|
||||
}
|
||||
|
||||
@ -29,7 +29,7 @@ tasks {
|
||||
|
||||
patchPluginXml {
|
||||
version.set("${project.version}")
|
||||
sinceBuild.set("231")
|
||||
untilBuild.set("233.*")
|
||||
sinceBuild.set("232")
|
||||
untilBuild.set("241.*")
|
||||
}
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright 2000-2023 JetBrains s.r.o. and other contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
|
||||
package org.intellij.sdk.project.model;
|
||||
|
||||
@ -62,8 +62,7 @@ public class LibrariesAction extends AnAction {
|
||||
final ProjectFileIndex fileIndex = ProjectRootManager.getInstance(project).getFileIndex();
|
||||
StringBuilder jars = new StringBuilder();
|
||||
for (OrderEntry orderEntry : fileIndex.getOrderEntriesForFile(virtualFile)) {
|
||||
if (orderEntry instanceof LibraryOrderEntry) {
|
||||
final LibraryOrderEntry libraryEntry = (LibraryOrderEntry) orderEntry;
|
||||
if (orderEntry instanceof LibraryOrderEntry libraryEntry) {
|
||||
final Library library = libraryEntry.getLibrary();
|
||||
if (library == null) {
|
||||
continue;
|
||||
@ -79,7 +78,7 @@ public class LibrariesAction extends AnAction {
|
||||
}
|
||||
String fileAndLibs;
|
||||
if (jars.length() > 0) {
|
||||
fileAndLibs = virtualFile.getName() + ": " + jars.toString();
|
||||
fileAndLibs = virtualFile.getName() + ": " + jars;
|
||||
} else {
|
||||
fileAndLibs = "None";
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright 2000-2023 JetBrains s.r.o. and other contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
|
||||
package org.intellij.sdk.project.model;
|
||||
|
||||
@ -32,7 +32,7 @@ public class ShowSourceRootsActions extends AnAction {
|
||||
sourceRootsList.append(file.getUrl()).append("\n");
|
||||
}
|
||||
Messages.showInfoMessage(
|
||||
"Source roots for the " + projectName + " plugin:\n" + sourceRootsList.toString(),
|
||||
"Source roots for the " + projectName + " plugin:\n" + sourceRootsList,
|
||||
"Project Properties"
|
||||
);
|
||||
}
|
||||
|
@ -18,7 +18,7 @@ java {
|
||||
|
||||
// See https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html
|
||||
intellij {
|
||||
version.set("2023.1.5")
|
||||
version.set("2023.2.6")
|
||||
}
|
||||
|
||||
tasks {
|
||||
@ -28,7 +28,7 @@ tasks {
|
||||
|
||||
patchPluginXml {
|
||||
version.set("${project.version}")
|
||||
sinceBuild.set("231")
|
||||
untilBuild.set("233.*")
|
||||
sinceBuild.set("232")
|
||||
untilBuild.set("241.*")
|
||||
}
|
||||
}
|
||||
|
@ -18,7 +18,7 @@ java {
|
||||
|
||||
// See https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html
|
||||
intellij {
|
||||
version.set("2023.1.5")
|
||||
version.set("2023.2.6")
|
||||
}
|
||||
|
||||
tasks {
|
||||
@ -28,7 +28,7 @@ tasks {
|
||||
|
||||
patchPluginXml {
|
||||
version.set("${project.version}")
|
||||
sinceBuild.set("231")
|
||||
untilBuild.set("233.*")
|
||||
sinceBuild.set("232")
|
||||
untilBuild.set("241.*")
|
||||
}
|
||||
}
|
||||
|
@ -18,7 +18,7 @@ java {
|
||||
|
||||
// See https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html
|
||||
intellij {
|
||||
version.set("2023.1.5")
|
||||
version.set("2023.2.6")
|
||||
plugins.set(listOf("com.intellij.java"))
|
||||
}
|
||||
|
||||
@ -29,7 +29,7 @@ tasks {
|
||||
|
||||
patchPluginXml {
|
||||
version.set("${project.version}")
|
||||
sinceBuild.set("231")
|
||||
untilBuild.set("233.*")
|
||||
sinceBuild.set("232")
|
||||
untilBuild.set("241.*")
|
||||
}
|
||||
}
|
||||
|
@ -18,7 +18,7 @@ java {
|
||||
|
||||
// See https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html
|
||||
intellij {
|
||||
version.set("2023.1.5")
|
||||
version.set("2023.2.6")
|
||||
}
|
||||
|
||||
tasks {
|
||||
@ -28,7 +28,7 @@ tasks {
|
||||
|
||||
patchPluginXml {
|
||||
version.set("${project.version}")
|
||||
sinceBuild.set("231")
|
||||
untilBuild.set("233.*")
|
||||
sinceBuild.set("232")
|
||||
untilBuild.set("241.*")
|
||||
}
|
||||
}
|
||||
|
@ -18,7 +18,7 @@ java {
|
||||
|
||||
// See https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html
|
||||
intellij {
|
||||
version.set("2023.1.5")
|
||||
version.set("2023.2.6")
|
||||
}
|
||||
|
||||
tasks {
|
||||
@ -28,7 +28,7 @@ tasks {
|
||||
|
||||
patchPluginXml {
|
||||
version.set("${project.version}")
|
||||
sinceBuild.set("231")
|
||||
untilBuild.set("233.*")
|
||||
sinceBuild.set("232")
|
||||
untilBuild.set("241.*")
|
||||
}
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright 2000-2022 JetBrains s.r.o. and other contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
|
||||
package org.intellij.sdk.settings;
|
||||
|
||||
@ -8,7 +8,6 @@ import com.intellij.openapi.components.State;
|
||||
import com.intellij.openapi.components.Storage;
|
||||
import com.intellij.util.xmlb.XmlSerializerUtil;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
/**
|
||||
* Supports storing the application settings in a persistent way.
|
||||
@ -28,7 +27,6 @@ final class AppSettingsState implements PersistentStateComponent<AppSettingsStat
|
||||
return ApplicationManager.getApplication().getService(AppSettingsState.class);
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
public AppSettingsState getState() {
|
||||
return this;
|
||||
|
@ -31,7 +31,7 @@ java {
|
||||
|
||||
// See https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html
|
||||
intellij {
|
||||
version.set("2023.1.5")
|
||||
version.set("2023.2.6")
|
||||
plugins.set(listOf("com.intellij.java"))
|
||||
}
|
||||
|
||||
@ -42,7 +42,7 @@ tasks {
|
||||
|
||||
patchPluginXml {
|
||||
version.set("${project.version}")
|
||||
sinceBuild.set("231")
|
||||
untilBuild.set("233.*")
|
||||
sinceBuild.set("232")
|
||||
untilBuild.set("241.*")
|
||||
}
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright 2000-2023 JetBrains s.r.o. and other contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
|
||||
package org.intellij.sdk.language;
|
||||
|
||||
@ -10,7 +10,6 @@ import com.intellij.psi.codeStyle.CodeStyleSettings;
|
||||
import com.intellij.psi.codeStyle.CodeStyleSettingsProvider;
|
||||
import com.intellij.psi.codeStyle.CustomCodeStyleSettings;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
final class SimpleCodeStyleSettingsProvider extends CodeStyleSettingsProvider {
|
||||
|
||||
@ -19,7 +18,6 @@ final class SimpleCodeStyleSettingsProvider extends CodeStyleSettingsProvider {
|
||||
return new SimpleCodeStyleSettings(settings);
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
public String getConfigurableDisplayName() {
|
||||
return "Simple";
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright 2000-2023 JetBrains s.r.o. and other contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
|
||||
package org.intellij.sdk.language;
|
||||
|
||||
@ -22,7 +22,6 @@ final class SimpleColorSettingsPage implements ColorSettingsPage {
|
||||
new AttributesDescriptor("Bad value", SimpleSyntaxHighlighter.BAD_CHARACTER)
|
||||
};
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
public Icon getIcon() {
|
||||
return SimpleIcons.FILE;
|
||||
@ -37,18 +36,19 @@ final class SimpleColorSettingsPage implements ColorSettingsPage {
|
||||
@NotNull
|
||||
@Override
|
||||
public String getDemoText() {
|
||||
return "# You are reading the \".properties\" entry.\n" +
|
||||
"! The exclamation mark can also mark text as comments.\n" +
|
||||
"website = https://en.wikipedia.org/\n" +
|
||||
"language = English\n" +
|
||||
"# The backslash below tells the application to continue reading\n" +
|
||||
"# the value onto the next line.\n" +
|
||||
"message = Welcome to \\\n" +
|
||||
" Wikipedia!\n" +
|
||||
"# Add spaces to the key\n" +
|
||||
"key\\ with\\ spaces = This is the value that could be looked up with the key \"key with spaces\".\n" +
|
||||
"# Unicode\n" +
|
||||
"tab : \\u0009";
|
||||
return """
|
||||
# You are reading the ".properties" entry.
|
||||
! The exclamation mark can also mark text as comments.
|
||||
website = https://en.wikipedia.org/
|
||||
language = English
|
||||
# The backslash below tells the application to continue reading
|
||||
# the value onto the next line.
|
||||
message = Welcome to \\
|
||||
Wikipedia!
|
||||
# Add spaces to the key
|
||||
key\\ with\\ spaces = This is the value that could be looked up with the key "key with spaces".
|
||||
# Unicode
|
||||
tab : \\u0009""";
|
||||
}
|
||||
|
||||
@Nullable
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright 2000-2023 JetBrains s.r.o. and other contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
|
||||
package org.intellij.sdk.language;
|
||||
|
||||
@ -7,13 +7,11 @@ import org.jetbrains.annotations.Nullable;
|
||||
|
||||
final class SimpleCommenter implements Commenter {
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
public String getLineCommentPrefix() {
|
||||
return "#";
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
public String getBlockCommentPrefix() {
|
||||
return "";
|
||||
|
@ -1,10 +1,9 @@
|
||||
// Copyright 2000-2023 JetBrains s.r.o. and other contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
|
||||
package org.intellij.sdk.language;
|
||||
|
||||
import com.intellij.openapi.fileTypes.LanguageFileType;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import javax.swing.*;
|
||||
|
||||
@ -34,7 +33,6 @@ public final class SimpleFileType extends LanguageFileType {
|
||||
return "simple";
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
public Icon getIcon() {
|
||||
return SimpleIcons.FILE;
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright 2000-2023 JetBrains s.r.o. and other contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
|
||||
package org.intellij.sdk.language;
|
||||
|
||||
@ -15,7 +15,6 @@ import org.jetbrains.annotations.Nullable;
|
||||
|
||||
final class SimpleFindUsagesProvider implements FindUsagesProvider {
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
public WordsScanner getWordsScanner() {
|
||||
return new DefaultWordsScanner(new SimpleLexerAdapter(),
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright 2000-2023 JetBrains s.r.o. and other contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
|
||||
package org.intellij.sdk.language;
|
||||
|
||||
@ -27,7 +27,9 @@ import java.util.List;
|
||||
final class SimpleFoldingBuilder extends FoldingBuilderEx implements DumbAware {
|
||||
|
||||
@Override
|
||||
public FoldingDescriptor @NotNull [] buildFoldRegions(@NotNull PsiElement root, @NotNull Document document, boolean quick) {
|
||||
public FoldingDescriptor @NotNull [] buildFoldRegions(@NotNull PsiElement root,
|
||||
@NotNull Document document,
|
||||
boolean quick) {
|
||||
// Initialize the group of folding regions that will expand/collapse together.
|
||||
FoldingGroup group = FoldingGroup.newGroup(SimpleAnnotator.SIMPLE_PREFIX_STR);
|
||||
// Initialize the list of folding regions
|
||||
@ -40,7 +42,8 @@ final class SimpleFoldingBuilder extends FoldingBuilderEx implements DumbAware {
|
||||
super.visitLiteralExpression(literalExpression);
|
||||
|
||||
String value = PsiLiteralUtil.getStringLiteralContent(literalExpression);
|
||||
if (value != null && value.startsWith(SimpleAnnotator.SIMPLE_PREFIX_STR + SimpleAnnotator.SIMPLE_SEPARATOR_STR)) {
|
||||
if (value != null &&
|
||||
value.startsWith(SimpleAnnotator.SIMPLE_PREFIX_STR + SimpleAnnotator.SIMPLE_SEPARATOR_STR)) {
|
||||
Project project = literalExpression.getProject();
|
||||
String key = value.substring(
|
||||
SimpleAnnotator.SIMPLE_PREFIX_STR.length() + SimpleAnnotator.SIMPLE_SEPARATOR_STR.length()
|
||||
@ -58,7 +61,7 @@ final class SimpleFoldingBuilder extends FoldingBuilderEx implements DumbAware {
|
||||
}
|
||||
});
|
||||
|
||||
return descriptors.toArray(FoldingDescriptor.EMPTY);
|
||||
return descriptors.toArray(FoldingDescriptor.EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -95,7 +98,9 @@ final class SimpleFoldingBuilder extends FoldingBuilderEx implements DumbAware {
|
||||
return StringUtil.THREE_DOTS;
|
||||
}
|
||||
|
||||
return propertyValue.replaceAll("\n", "\\n").replaceAll("\"", "\\\\\"");
|
||||
return propertyValue
|
||||
.replaceAll("\n", "\\n")
|
||||
.replaceAll("\"", "\\\\\"");
|
||||
}
|
||||
|
||||
return null;
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright 2000-2023 JetBrains s.r.o. and other contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
|
||||
package org.intellij.sdk.language;
|
||||
|
||||
@ -27,19 +27,20 @@ final class SimpleLanguageCodeStyleSettingsProvider extends LanguageCodeStyleSet
|
||||
|
||||
@Override
|
||||
public String getCodeSample(@NotNull SettingsType settingsType) {
|
||||
return "# You are reading the \".properties\" entry.\n" +
|
||||
"! The exclamation mark can also mark text as comments.\n" +
|
||||
"website = https://en.wikipedia.org/\n" +
|
||||
"\n" +
|
||||
"language = English\n" +
|
||||
"# The backslash below tells the application to continue reading\n" +
|
||||
"# the value onto the next line.\n" +
|
||||
"message = Welcome to \\\n" +
|
||||
" Wikipedia!\n" +
|
||||
"# Add spaces to the key\n" +
|
||||
"key\\ with\\ spaces = This is the value that could be looked up with the key \"key with spaces\".\n" +
|
||||
"# Unicode\n" +
|
||||
"tab : \\u0009";
|
||||
return """
|
||||
# You are reading the ".properties" entry.
|
||||
! The exclamation mark can also mark text as comments.
|
||||
website = https://en.wikipedia.org/
|
||||
|
||||
language = English
|
||||
# The backslash below tells the application to continue reading
|
||||
# the value onto the next line.
|
||||
message = Welcome to \\
|
||||
Wikipedia!
|
||||
# Add spaces to the key
|
||||
key\\ with\\ spaces = This is the value that could be looked up with the key "key with spaces".
|
||||
# Unicode
|
||||
tab : \\u0009""";
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright 2000-2023 JetBrains s.r.o. and other contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
|
||||
package org.intellij.sdk.language;
|
||||
|
||||
@ -21,12 +21,11 @@ final class SimpleLineMarkerProvider extends RelatedItemLineMarkerProvider {
|
||||
protected void collectNavigationMarkers(@NotNull PsiElement element,
|
||||
@NotNull Collection<? super RelatedItemLineMarkerInfo<?>> result) {
|
||||
// This must be an element with a literal expression as a parent
|
||||
if (!(element instanceof PsiJavaTokenImpl) || !(element.getParent() instanceof PsiLiteralExpression)) {
|
||||
if (!(element instanceof PsiJavaTokenImpl) || !(element.getParent() instanceof PsiLiteralExpression literalExpression)) {
|
||||
return;
|
||||
}
|
||||
|
||||
// The literal expression must start with the Simple language literal expression
|
||||
PsiLiteralExpression literalExpression = (PsiLiteralExpression) element.getParent();
|
||||
String value = literalExpression.getValue() instanceof String ? (String) literalExpression.getValue() : null;
|
||||
if ((value == null) ||
|
||||
!value.startsWith(SimpleAnnotator.SIMPLE_PREFIX_STR + SimpleAnnotator.SIMPLE_SEPARATOR_STR)) {
|
||||
@ -39,7 +38,7 @@ final class SimpleLineMarkerProvider extends RelatedItemLineMarkerProvider {
|
||||
SimpleAnnotator.SIMPLE_PREFIX_STR.length() + SimpleAnnotator.SIMPLE_SEPARATOR_STR.length()
|
||||
);
|
||||
final List<SimpleProperty> properties = SimpleUtil.findProperties(project, possibleProperties);
|
||||
if (properties.size() > 0) {
|
||||
if (!properties.isEmpty()) {
|
||||
// Add the property to a collection of line marker info
|
||||
NavigationGutterIconBuilder<PsiElement> builder =
|
||||
NavigationGutterIconBuilder.create(SimpleIcons.FILE)
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright 2000-2023 JetBrains s.r.o. and other contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
|
||||
package org.intellij.sdk.language;
|
||||
|
||||
@ -47,7 +47,7 @@ final class SimpleReference extends PsiReferenceBase<PsiElement> implements PsiP
|
||||
List<SimpleProperty> properties = SimpleUtil.findProperties(project);
|
||||
List<LookupElement> variants = new ArrayList<>();
|
||||
for (final SimpleProperty property : properties) {
|
||||
if (property.getKey() != null && property.getKey().length() > 0) {
|
||||
if (property.getKey() != null && !property.getKey().isEmpty()) {
|
||||
variants.add(LookupElementBuilder
|
||||
.create(property).withIcon(SimpleIcons.FILE)
|
||||
.withTypeText(property.getContainingFile().getName())
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
|
||||
package org.intellij.sdk.language;
|
||||
|
||||
@ -34,7 +34,7 @@ final class SimpleSpellcheckingStrategy extends SpellcheckingStrategy {
|
||||
private static class SimpleCommentTokenizer extends Tokenizer<PsiComment> {
|
||||
|
||||
@Override
|
||||
public void tokenize(@NotNull PsiComment element, TokenConsumer consumer) {
|
||||
public void tokenize(@NotNull PsiComment element, @NotNull TokenConsumer consumer) {
|
||||
// Exclude the start of the comment with its # characters from spell checking
|
||||
int startIndex = 0;
|
||||
for (char c : element.textToCharArray()) {
|
||||
@ -53,7 +53,7 @@ final class SimpleSpellcheckingStrategy extends SpellcheckingStrategy {
|
||||
|
||||
private static class SimplePropertyTokenizer extends Tokenizer<SimpleProperty> {
|
||||
|
||||
public void tokenize(@NotNull SimpleProperty element, TokenConsumer consumer) {
|
||||
public void tokenize(@NotNull SimpleProperty element, @NotNull TokenConsumer consumer) {
|
||||
//Spell check the keys and values of properties with different splitters
|
||||
final ASTNode key = element.getNode().findChildByType(SimpleTypes.KEY);
|
||||
if (key != null && key.getTextLength() > 0) {
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
|
||||
package org.intellij.sdk.language;
|
||||
|
||||
@ -13,7 +13,6 @@ import org.jetbrains.annotations.Nullable;
|
||||
|
||||
final class SimpleStructureViewFactory implements PsiStructureViewFactory {
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
public StructureViewBuilder getStructureViewBuilder(@NotNull final PsiFile psiFile) {
|
||||
return new TreeBasedStructureViewBuilder() {
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright 2000-2022 JetBrains s.r.o. and other contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
|
||||
package org.intellij.sdk.language;
|
||||
|
||||
@ -13,7 +13,6 @@ import com.intellij.psi.PsiReference;
|
||||
import com.intellij.psi.codeStyle.CodeStyleManager;
|
||||
import com.intellij.testFramework.fixtures.LightJavaCodeInsightFixtureTestCase;
|
||||
import com.intellij.usageView.UsageInfo;
|
||||
import com.intellij.util.containers.ContainerUtil;
|
||||
import org.intellij.sdk.language.psi.SimpleProperty;
|
||||
|
||||
import java.util.Collection;
|
||||
@ -49,7 +48,7 @@ public class SimpleCodeInsightTest extends LightJavaCodeInsightFixtureTestCase {
|
||||
WriteCommandAction.writeCommandAction(getProject()).run(() ->
|
||||
CodeStyleManager.getInstance(getProject()).reformatText(
|
||||
myFixture.getFile(),
|
||||
ContainerUtil.newArrayList(myFixture.getFile().getTextRange())
|
||||
List.of(myFixture.getFile().getTextRange())
|
||||
)
|
||||
);
|
||||
myFixture.checkResultByFile("DefaultTestData.simple");
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright 2000-2022 JetBrains s.r.o. and other contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
|
||||
package org.intellij.sdk.language;
|
||||
|
||||
@ -22,11 +22,6 @@ public class SimpleParsingTest extends ParsingTestCase {
|
||||
return "src/test/testData";
|
||||
}
|
||||
|
||||
@Override
|
||||
protected boolean skipSpaces() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected boolean includeRanges() {
|
||||
return true;
|
||||
|
@ -18,7 +18,7 @@ java {
|
||||
|
||||
// See https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html
|
||||
intellij {
|
||||
version.set("2023.1.5")
|
||||
version.set("2023.2.6")
|
||||
}
|
||||
|
||||
tasks {
|
||||
@ -28,7 +28,7 @@ tasks {
|
||||
|
||||
patchPluginXml {
|
||||
version.set("${project.version}")
|
||||
sinceBuild.set("231")
|
||||
untilBuild.set("233.*")
|
||||
sinceBuild.set("232")
|
||||
untilBuild.set("241.*")
|
||||
}
|
||||
}
|
||||
|
@ -18,7 +18,7 @@ java {
|
||||
|
||||
// See https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html
|
||||
intellij {
|
||||
version.set("2023.1.5")
|
||||
version.set("2023.2.6")
|
||||
}
|
||||
|
||||
tasks {
|
||||
@ -28,7 +28,7 @@ tasks {
|
||||
|
||||
patchPluginXml {
|
||||
version.set("${project.version}")
|
||||
sinceBuild.set("231")
|
||||
untilBuild.set("233.*")
|
||||
sinceBuild.set("232")
|
||||
untilBuild.set("241.*")
|
||||
}
|
||||
}
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -77,7 +77,7 @@ See also:
|
||||
## ProductInfo
|
||||
{#ProductInfo}
|
||||
|
||||
[`ProductInfo`](%gh-ijpgp%/src/main/kotlin/org/jetbrains/intellij/platform/gradle/model/ProductInfo.kt)
|
||||
[`ProductInfo`](%gh-ijpgp%/src/main/kotlin/org/jetbrains/intellij/platform/gradle/models/ProductInfo.kt)
|
||||
|
||||
Represents information about the IntelliJ Platform product.
|
||||
|
||||
@ -114,7 +114,7 @@ Throws
|
||||
## ProductRelease.Channel
|
||||
{#ProductRelease-Channel}
|
||||
|
||||
[`ProductRelease.Channel`](%gh-ijpgp%/src/main/kotlin/org/jetbrains/intellij/platform/gradle/model/ProductRelease.kt)
|
||||
[`ProductRelease.Channel`](%gh-ijpgp%/src/main/kotlin/org/jetbrains/intellij/platform/gradle/models/ProductRelease.kt)
|
||||
|
||||
List of available channels used by JetBrains IDEs and Android Studio for describing binary releases.
|
||||
|
||||
@ -137,7 +137,7 @@ See also:
|
||||
## ProductReleasesValueSource.FilterParameters
|
||||
{#ProductReleasesValueSource-FilterParameters}
|
||||
|
||||
[`ProductReleasesValueSource.FilterParameters`](%gh-ijpgp%/src/main/kotlin/org/jetbrains/intellij/platform/gradle/provider/ProductReleasesValueSource.kt)
|
||||
[`ProductReleasesValueSource.FilterParameters`](%gh-ijpgp%/src/main/kotlin/org/jetbrains/intellij/platform/gradle/providers/ProductReleasesValueSource.kt)
|
||||
|
||||
Interface that provides a clear way to filter binary product releases for the purposes of IntelliJ Plugin Verifier.
|
||||
|
||||
|
@ -29,7 +29,7 @@ Instead, we recommend using the high-level pattern classes provided by the Intel
|
||||
Some built-in languages in the IntelliJ Platform implement their own pattern classes and can provide additional examples:
|
||||
|
||||
- [`XmlPatterns`](%gh-ic%/xml/xml-psi-api/src/com/intellij/patterns/XmlPatterns.java) provides patterns for XML attributes, values, entities, and texts.
|
||||
- [`PythonPatterns`](%gh-ic%/python/src/com/jetbrains/python/patterns/PythonPatterns.java) provides patterns for literals, strings, arguments, and function/method arguments for Python.
|
||||
- [`PsiJavaPatterns`](%gh-ic%/java/java-psi-api/src/com/intellij/patterns/PsiJavaPatterns.java) provides patterns for literals, strings, arguments, and function/method arguments for Java.
|
||||
- [`DomPatterns`](%gh-ic%/xml/dom-openapi/src/com/intellij/patterns/DomPatterns.java) builds upon `XmlPatterns` and acts as a wrapper to provide further patterns for [DOM-API](xml_dom_api.md).
|
||||
|
||||
## Examples
|
||||
|
@ -435,7 +435,7 @@ to "reserve" Action ID, so they become visible in <ui-path>Settings | Keymap</ui
|
||||
## Executing Actions Programmatically
|
||||
|
||||
Sometimes, it is required to execute actions programmatically, e.g., executing an action implementing logic we need and the implementation is out of our control.
|
||||
Executing actions can be achieved with [`ActionUtils.invokeAction()`](%gh-ic%/platform/platform-api/src/com/intellij/openapi/actionSystem/ex/ActionUtil.java).
|
||||
Executing actions can be achieved with [`ActionUtils.invokeAction()`](%gh-ic%/platform/platform-api/src/com/intellij/openapi/actionSystem/ex/ActionUtil.kt).
|
||||
|
||||
> Executing actions programmatically should be avoided whenever possible.
|
||||
> If an action executed programmatically is under your control, extract its logic to a [service](plugin_services.md) or utility class and call it directly.
|
||||
|
@ -40,7 +40,7 @@ The following steps need to be performed only once for each language that suppor
|
||||
|
||||
**Examples**:
|
||||
- [`JavaStubElementTypes`](%gh-ic%/java/java-psi-impl/src/com/intellij/psi/impl/java/stubs/JavaStubElementTypes.java) registered in [`JavaPsiPlugin.xml`](%gh-ic%/java/java-psi-impl/src/META-INF/JavaPsiPlugin.xml)
|
||||
- see [`Angular2MetadataElementTypes`](%gh-ij-plugins%/AngularJS/src/org/angular2/entities/metadata/Angular2MetadataElementTypes.kt) for Kotlin sample
|
||||
- see [`Angular2MetadataElementTypes`](%gh-ij-plugins%/Angular/src/org/angular2/entities/metadata/Angular2MetadataElementTypes.kt) for Kotlin sample
|
||||
|
||||
</procedure>
|
||||
|
||||
@ -60,7 +60,7 @@ For each element type that needs to be stored in the stub tree, perform the foll
|
||||
Override `getExternalId()` according to common used `externalIdPrefix` for the language (see [](#stubs-setup)).
|
||||
|
||||
For always-leaf stub nodes return `true` from `isAlwaysLeaf()` (2023.3).
|
||||
"Container" stubs that do not serialize any data of their own may implement [`EmptyStubSerializer`](%gh-ic-master%/platform/core-api/src/com/intellij/psi/stubs/EmptyStubSerializer.java) to optimize storage (2023.3).
|
||||
"Container" stubs that do not serialize any data of their own may implement [`EmptyStubSerializer`](%gh-ic%/platform/core-api/src/com/intellij/psi/stubs/EmptyStubSerializer.java) to optimize storage (2023.3).
|
||||
6. Use the class implementing `IStubElementType` as the element type constant when parsing ([example](%gh-ic%/plugins/properties/properties-psi-impl/src/com/intellij/lang/properties/parsing/PropertiesElementTypes.java)).
|
||||
7. Make sure all methods in the PSI element interface access the stub data rather than the PSI tree when appropriate ([example: `Property.getKey()` implementation](%gh-ic%/plugins/properties/properties-psi-impl/src/com/intellij/lang/properties/psi/impl/PropertyImpl.java)).
|
||||
|
||||
|
@ -128,7 +128,7 @@ The following types of values can be persisted:
|
||||
- maps
|
||||
- enums
|
||||
|
||||
For other types, extend [`Converter`](%gh-ic%/platform/util/src/com/intellij/util/xmlb/Converter.java).
|
||||
For other types, extend [`Converter`](%gh-ic-master%/platform/util/src/com/intellij/util/xmlb/api.kt).
|
||||
See the example below.
|
||||
|
||||
#### Converter Example {collapsible="true"}
|
||||
@ -245,12 +245,12 @@ See the [](#defining-the-storage-location) for more details.
|
||||
{style="note"}
|
||||
|
||||
If you want to use the default bean serialization but need to customize the storage format in XML (for example, for compatibility with previous versions of a plugin or externally defined XML formats), use the
|
||||
[`@Tag`](%gh-ic-master%/platform/util/src/com/intellij/util/xmlb/annotations/Tag.java),
|
||||
[`@Attribute`](%gh-ic-master%/platform/util/src/com/intellij/util/xmlb/annotations/Attribute.java),
|
||||
[`@Property`](%gh-ic-master%/platform/util/src/com/intellij/util/xmlb/annotations/Property.java),
|
||||
[`@MapAnnotation`](%gh-ic-master%/platform/util/src/com/intellij/util/xmlb/annotations/MapAnnotation.java),
|
||||
[`@XMap`](%gh-ic-master%/platform/util/src/com/intellij/util/xmlb/annotations/XMap.java),
|
||||
and [`@XCollection`](%gh-ic-master%/platform/util/src/com/intellij/util/xmlb/annotations/XCollection.java)
|
||||
[`@Tag`](%gh-ic%/platform/util/src/com/intellij/util/xmlb/annotations/Tag.java),
|
||||
[`@Attribute`](%gh-ic%/platform/util/src/com/intellij/util/xmlb/annotations/Attribute.java),
|
||||
[`@Property`](%gh-ic%/platform/util/src/com/intellij/util/xmlb/annotations/Property.java),
|
||||
[`@MapAnnotation`](%gh-ic%/platform/util/src/com/intellij/util/xmlb/annotations/MapAnnotation.java),
|
||||
[`@XMap`](%gh-ic%/platform/util/src/com/intellij/util/xmlb/annotations/XMap.java),
|
||||
and [`@XCollection`](%gh-ic%/platform/util/src/com/intellij/util/xmlb/annotations/XCollection.java)
|
||||
annotations.
|
||||
|
||||
If the state to serialize doesn't map cleanly to a JavaBean, then `org.jdom.Element` can be used as the state class.
|
||||
|
@ -6,7 +6,7 @@
|
||||
|
||||
<link-summary>Overview of Extension Points and Listeners for CLion.</link-summary>
|
||||
|
||||
128 Extension Points and 38 Listeners for CLion
|
||||
135 Extension Points and 40 Listeners for CLion
|
||||
|
||||
See [](extension_point_list.md) for IntelliJ Platform.
|
||||
|
||||
@ -18,11 +18,13 @@ See [](extension_point_list.md) for IntelliJ Platform.
|
||||
|
||||
| Topic | Listener |
|
||||
|-------|----------|
|
||||
| [CubeMXManager#TOPIC](https://jb.gg/ipe/listeners?topics=com.intellij.clion.embedded.stm32cubemx.CubeMXManager.CubeStatusListener) | `CubeStatusListener` |
|
||||
| [FileSymbolTablesCache#OUT_OF_CODE_BLOCK_TOPIC](https://jb.gg/ipe/listeners?topics=com.intellij.psi.util.PsiModificationTracker.Listener) ![Project-Level][project-level] | [`Listener`](%gh-ic%/platform/core-api/src/com/intellij/psi/util/PsiModificationTracker.java) |
|
||||
| [CMakeSettingsListener.Companion#TOPIC](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.cmake.CMakeSettingsListener) | `CMakeSettingsListener` |
|
||||
| [Listener.Companion#TOPIC](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.cmake.python.CMakePythonSdkService.Companion.Listener) | `Listener` |
|
||||
| [Listener.Companion#TOPIC](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.cmake.python.CMakePythonSettingListenerService.Companion.Listener) | `Listener` |
|
||||
| [CMakeWorkspaceListener#TOPIC](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.cmake.workspace.CMakeWorkspaceListener) | `CMakeWorkspaceListener` |
|
||||
| [CompDBSettingsListener.Companion#TOPIC](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.compdb.settings.CompDBSettingsListener) | `CompDBSettingsListener` |
|
||||
| [CubeMXManager#TOPIC](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.embedded.stm32cubemx.CubeMXManager.CubeStatusListener) | `CubeStatusListener` |
|
||||
| [CLionExternalBuildManagerListener#TOPIC](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.execution.external.build.CLionExternalBuildManagerListener) | `CLionExternalBuildManagerListener` |
|
||||
| [ClionProjectToolManagerListener.Companion#TOPIC](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.execution.external.build.ClionProjectToolManagerListener) | `ClionProjectToolManagerListener` |
|
||||
| [MakefileBuildTargetsManagerListener#TOPIC](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.makefile.execution.build.MakefileBuildTargetsManagerListener) | `MakefileBuildTargetsManagerListener` |
|
||||
@ -66,7 +68,7 @@ See [](extension_point_list.md) for IntelliJ Platform.
|
||||
| [clangd.clangTidyResolveInfoProvider](https://jb.gg/ipe?extensions=clangd.clangTidyResolveInfoProvider) | `ClangTidyResolveInfoProvider` |
|
||||
| [clangd.clangdAnnotatorUtil](https://jb.gg/ipe?extensions=clangd.clangdAnnotatorUtil) | `ClangAnnotatorUtil` |
|
||||
| [clangd.clangdBridge](https://jb.gg/ipe?extensions=clangd.clangdBridge) | `ClangdBridgeInterface` |
|
||||
| [clangd.externalCompletionProvider](https://jb.gg/ipe?extensions=clangd.externalCompletionProvider) | `ExternalCompletionProvider` |
|
||||
| [clangd.externalCompletionProvider](https://jb.gg/ipe?extensions=clangd.externalCompletionProvider) ![DumbAware][dumb-aware] | `ExternalCompletionProvider` |
|
||||
|
||||
### CidrCoveragePlugin.xml
|
||||
|
||||
@ -87,6 +89,7 @@ See [](extension_point_list.md) for IntelliJ Platform.
|
||||
| [cidr.debugger.backendConsoleInjectionHelper](https://jb.gg/ipe?extensions=cidr.debugger.backendConsoleInjectionHelper) | `BackendConsoleInjectionHelper` |
|
||||
| [cidr.debugger.customDebuggerProvider](https://jb.gg/ipe?extensions=cidr.debugger.customDebuggerProvider) | `CidrCustomDebuggerProvider` |
|
||||
| [cidr.debugger.debugProcessConfigurator](https://jb.gg/ipe?extensions=cidr.debugger.debugProcessConfigurator) | `CidrDebugProcessConfigurator` |
|
||||
| [cidr.debugger.debuggerMessagesProvider](https://jb.gg/ipe?extensions=cidr.debugger.debuggerMessagesProvider) ![Internal][internal] | `CidrDebuggerMessagesProvider` |
|
||||
| [cidr.debugger.disasmRegisterProvider](https://jb.gg/ipe?extensions=cidr.debugger.disasmRegisterProvider) ![Experimental][experimental] | `CidrDisasmRegisterProvider` |
|
||||
| [cidr.debugger.editorsExtension](https://jb.gg/ipe?extensions=cidr.debugger.editorsExtension) | `CidrDebuggerEditorsExtension` |
|
||||
| [cidr.debugger.formatters.natvis.provider](https://jb.gg/ipe?extensions=cidr.debugger.formatters.natvis.provider) | `NatvisFileProvider` |
|
||||
@ -138,6 +141,7 @@ See [](extension_point_list.md) for IntelliJ Platform.
|
||||
| [cidr.lang.customHeaderProvider](https://jb.gg/ipe?extensions=cidr.lang.customHeaderProvider) ![Non-Dynamic][non-dynamic] | `CustomHeaderProvider` |
|
||||
| [cidr.lang.doxygenExtension](https://jb.gg/ipe?extensions=cidr.lang.doxygenExtension) ![Non-Dynamic][non-dynamic] | `Doxygen` |
|
||||
| [cidr.lang.externalResolver](https://jb.gg/ipe?extensions=cidr.lang.externalResolver) | `OCExternalResolver` |
|
||||
| [cidr.lang.fileToBuildSymbolsCollector](https://jb.gg/ipe?extensions=cidr.lang.fileToBuildSymbolsCollector) ![Non-Dynamic][non-dynamic] | `FileToBuildSymbolsCollector` |
|
||||
| [cidr.lang.foreignUsagesRenameProcessor](https://jb.gg/ipe?extensions=cidr.lang.foreignUsagesRenameProcessor) ![Non-Dynamic][non-dynamic] | `OCForeignUsagesRenameProcessor` |
|
||||
| [cidr.lang.groupedFileNaming](https://jb.gg/ipe?extensions=cidr.lang.groupedFileNaming) ![Non-Dynamic][non-dynamic] | `OCGroupedFileNaming` |
|
||||
| [cidr.lang.includeHelper](https://jb.gg/ipe?extensions=cidr.lang.includeHelper) ![Non-Dynamic][non-dynamic] | `OCIncludeHelper` |
|
||||
@ -176,7 +180,7 @@ See [](extension_point_list.md) for IntelliJ Platform.
|
||||
| [cidr.lang.compilerKindProvider](https://jb.gg/ipe?extensions=cidr.lang.compilerKindProvider) | `OCCompilerKindProvider` |
|
||||
| [cidr.lang.compilerResolver](https://jb.gg/ipe?extensions=cidr.lang.compilerResolver) ![Project-Level][project-level] | `OCCompilerResolver` |
|
||||
| [cidr.lang.fileScopeProvider](https://jb.gg/ipe?extensions=cidr.lang.fileScopeProvider) ![Non-Dynamic][non-dynamic] | `OCFileScopeProvider` |
|
||||
| [cidr.lang.fileWideHighlighter](https://jb.gg/ipe?extensions=cidr.lang.fileWideHighlighter) ![Non-Dynamic][non-dynamic] | `FileWideHighlighter` |
|
||||
| [cidr.lang.fileWideHighlighter](https://jb.gg/ipe?extensions=cidr.lang.fileWideHighlighter) ![Non-Dynamic][non-dynamic] ![DumbAware][dumb-aware] | `FileWideHighlighter` |
|
||||
| [cidr.lang.headerSearchRootFactory](https://jb.gg/ipe?extensions=cidr.lang.headerSearchRootFactory) | `HeadersSearchRootFactory` |
|
||||
| [cidr.lang.resolveConfigurationSelector](https://jb.gg/ipe?extensions=cidr.lang.resolveConfigurationSelector) | `OCResolveConfigurationSelector` |
|
||||
| [cidr.projectModel.deserializingVetoCondition](https://jb.gg/ipe?extensions=cidr.projectModel.deserializingVetoCondition) | `OCWorkspaceDeserializingVetoCondition` |
|
||||
@ -279,18 +283,32 @@ See [](extension_point_list.md) for IntelliJ Platform.
|
||||
| [cidr.uml.dragAndDropReceiver](https://jb.gg/ipe?extensions=cidr.uml.dragAndDropReceiver) | `UmlDiagramDragAndDropReceiver` |
|
||||
| [cidr.uml.umlDiagramProvider](https://jb.gg/ipe?extensions=cidr.uml.umlDiagramProvider) | `UmlDiagramLanguage` |
|
||||
|
||||
### com.intellij.rml.dfa.ide
|
||||
|
||||
| Extension Point | Implementation |
|
||||
|-----------------|----------------|
|
||||
| [com.intellij.rml.dfa.debug.provider](https://jb.gg/ipe?extensions=com.intellij.rml.dfa.debug.provider) | `DFADebugProvider` |
|
||||
|
||||
### intellij.clion.profiling.xml
|
||||
### intellij.cidr.profiling.xml
|
||||
|
||||
| Extension Point | Implementation |
|
||||
|-----------------|----------------|
|
||||
| [cidr.profiler.memory.environmentProvider](https://jb.gg/ipe?extensions=cidr.profiler.memory.environmentProvider) ![Non-Dynamic][non-dynamic] | `MemoryProfileEnvironmentProvider` |
|
||||
| [cidr.profiler.memory.presentation](https://jb.gg/ipe?extensions=cidr.profiler.memory.presentation) ![Non-Dynamic][non-dynamic] | `MemoryProfilePresentation` |
|
||||
| [cidr.profiler.valgrind.disabler](https://jb.gg/ipe?extensions=cidr.profiler.valgrind.disabler) | `ValgrindDisabler` |
|
||||
| [cidr.profiler.valgrind.executionContext](https://jb.gg/ipe?extensions=cidr.profiler.valgrind.executionContext) | `ValgrindExecutionContext` |
|
||||
|
||||
### intellij.clion.featuresTrainer.xml
|
||||
|
||||
| Extension Point | Implementation |
|
||||
|-----------------|----------------|
|
||||
| [training.clion.lessons](https://jb.gg/ipe?extensions=training.clion.lessons) | `CLionExternalLessons` |
|
||||
|
||||
### intellij.clion.runFile.xml
|
||||
|
||||
| Extension Point | Implementation |
|
||||
|-----------------|----------------|
|
||||
| [cidr.cpp.runFile.entryPointDetector](https://jb.gg/ipe?extensions=cidr.cpp.runFile.entryPointDetector) | `CppFileEntryPointDetector` |
|
||||
|
||||
### intellij.rml.dfa.devtools.xml
|
||||
|
||||
| Extension Point | Implementation |
|
||||
|-----------------|----------------|
|
||||
| [com.intellij.rml.dfa.devtools.debug.provider](https://jb.gg/ipe?extensions=com.intellij.rml.dfa.devtools.debug.provider) | `DfaDebugProvider` |
|
||||
|
||||
[deprecated]: https://img.shields.io/badge/-Deprecated-lightgrey?style=flat-square
|
||||
[removal]: https://img.shields.io/badge/-Removal-red?style=flat-square
|
||||
|
@ -6,7 +6,7 @@
|
||||
|
||||
<link-summary>Overview of Extension Points and Listeners for DataGrip.</link-summary>
|
||||
|
||||
74 Extension Points and 27 Listeners for DataGrip
|
||||
75 Extension Points and 28 Listeners for DataGrip
|
||||
|
||||
See [](extension_point_list.md) for IntelliJ Platform.
|
||||
|
||||
@ -26,7 +26,6 @@ See [](extension_point_list.md) for IntelliJ Platform.
|
||||
| [DataSourceModelStorage#TOPIC](https://jb.gg/ipe/listeners?topics=com.intellij.database.dataSource.DataSourceModelStorage.Listener) | `Listener` |
|
||||
| [DataSourceStorage#TOPIC](https://jb.gg/ipe/listeners?topics=com.intellij.database.dataSource.DataSourceStorage.Listener) | `Listener` |
|
||||
| [DatabaseConnectionManager#TOPIC](https://jb.gg/ipe/listeners?topics=com.intellij.database.dataSource.DatabaseConnectionManager.Listener) | `Listener` |
|
||||
| [DatabaseModelLoader#TOPIC](https://jb.gg/ipe/listeners?topics=com.intellij.database.dataSource.DatabaseModelLoader.Listener) | `Listener` |
|
||||
| [DatabaseArtifactManager#TOPIC](https://jb.gg/ipe/listeners?topics=com.intellij.database.dataSource.artifacts.DatabaseArtifactManager.ArtifactListener) | `ArtifactListener` |
|
||||
| [DataSourceTestConnectionManager#TOPIC](https://jb.gg/ipe/listeners?topics=com.intellij.database.dataSource.ui.DataSourceTestConnectionManager.Listener) | `Listener` |
|
||||
| [DatabaseTopics#AUDIT_TOPIC](https://jb.gg/ipe/listeners?topics=com.intellij.database.datagrid.DataAuditor) | `DataAuditor` |
|
||||
@ -35,7 +34,9 @@ See [](extension_point_list.md) for IntelliJ Platform.
|
||||
| [DataGridListener#TOPIC](https://jb.gg/ipe/listeners?topics=com.intellij.database.datagrid.DataGridListener) | `DataGridListener` |
|
||||
| [DatabaseTopics#REQUEST_TOPIC](https://jb.gg/ipe/listeners?topics=com.intellij.database.datagrid.DataProducer) | `DataProducer` |
|
||||
| [ImportHead#TOPIC](https://jb.gg/ipe/listeners?topics=com.intellij.database.dbimport.ImportHead.Listener) | `Listener` |
|
||||
| [DbImportDialog#TOPIC](https://jb.gg/ipe/listeners?topics=com.intellij.database.dbimport.editor.DbImportDialog.Listener) | `Listener` |
|
||||
| [ScriptGeneratorDiagnosticListener#TOPIC](https://jb.gg/ipe/listeners?topics=com.intellij.database.dialects.base.generator.ScriptGeneratorDiagnosticListener) | `ScriptGeneratorDiagnosticListener` |
|
||||
| [DatabaseModelLoader#TOPIC](https://jb.gg/ipe/listeners?topics=com.intellij.database.introspection.DatabaseModelLoader.Listener) | `Listener` |
|
||||
| [DataSourceManager#TOPIC](https://jb.gg/ipe/listeners?topics=com.intellij.database.psi.DataSourceManager.Listener) | `Listener` |
|
||||
| [DbPsiFacade#TOPIC](https://jb.gg/ipe/listeners?topics=com.intellij.database.psi.DbPsiFacade.Listener) | `Listener` |
|
||||
| [DataGridAppearanceSettings#TOPIC](https://jb.gg/ipe/listeners?topics=com.intellij.database.settings.DataGridAppearanceSettings.Listener) | `Listener` |
|
||||
@ -113,6 +114,7 @@ See [](extension_point_list.md) for IntelliJ Platform.
|
||||
|
||||
| Extension Point | Implementation |
|
||||
|-----------------|----------------|
|
||||
| [com.intellij.database.cli.runTargetProvider](https://jb.gg/ipe?extensions=com.intellij.database.cli.runTargetProvider) | `CliRunTargetProvider` |
|
||||
| [com.intellij.database.databaseViewStructureExtension](https://jb.gg/ipe?extensions=com.intellij.database.databaseViewStructureExtension) | `DvStructureExtension` |
|
||||
| [com.intellij.database.debuggerFacade](https://jb.gg/ipe?extensions=com.intellij.database.debuggerFacade) | `SqlDebuggerFacade` |
|
||||
| [com.intellij.database.predicatesHelper](https://jb.gg/ipe?extensions=com.intellij.database.predicatesHelper) | `PredicatesHelper` |
|
||||
|
@ -24,6 +24,7 @@ See [](extension_point_list.md) for IntelliJ Platform.
|
||||
| [GoProjectLifecycleListener#TOPIC](https://jb.gg/ipe/listeners?topics=com.goide.project.GoProjectLifecycleListener) | `GoProjectLifecycleListener` |
|
||||
| [VgoProjectSettings#VGO_INTEGRATION_TOPIC](https://jb.gg/ipe/listeners?topics=com.goide.vgo.configuration.VgoProjectSettings.IntegrationListener) | `IntegrationListener` |
|
||||
|
||||
|
||||
### goland.xml
|
||||
|
||||
| Extension Point | Implementation |
|
||||
|
@ -16,7 +16,7 @@ Overview of Extension Points and Listeners for OSS plugins bundled with [](idea_
|
||||
|
||||
<include from="snippets.md" element-id="ep_list_legend"/>
|
||||
|
||||
20 Extension Points and 9 Listeners
|
||||
25 Extension Points and 9 Listeners
|
||||
|
||||
## IntelliJ Open Source Plugins
|
||||
|
||||
@ -26,7 +26,7 @@ Overview of Extension Points and Listeners for OSS plugins bundled with [](idea_
|
||||
|-------|----------|
|
||||
| [ChangeListener#TOPIC](https://jb.gg/ipe/listeners?topics=com.intellij.dts.settings.DtsSettings.ChangeListener) ![Project-Level][project-level] | [`ChangeListener`](%gh-ij-plugins%/dts/src/com/intellij/dts/settings/DtsSettings.kt) |
|
||||
| [FlexBuildConfigurationChangeListener#TOPIC](https://jb.gg/ipe/listeners?topics=com.intellij.lang.javascript.flex.projectStructure.model.impl.FlexBuildConfigurationChangeListener) | [`FlexBuildConfigurationChangeListener`](%gh-ij-plugins%/flex/src/com/intellij/lang/javascript/flex/projectStructure/model/impl/FlexBuildConfigurationChangeListener.java) |
|
||||
| [SerialSettingsChangeListener#TOPIC](https://jb.gg/ipe/listeners?topics=com.intellij.plugins.serialmonitor.service.SerialSettingsChangeListener) | [`SerialSettingsChangeListener`](%gh-ij-plugins%/serial-monitor/src/main/java/com/intellij/plugins/serialmonitor/service/SerialSettingsChangeListener.java) |
|
||||
| [SerialPortsListener.Companion#SERIAL_PORTS_TOPIC](https://jb.gg/ipe/listeners?topics=com.intellij.plugins.serialmonitor.service.SerialPortsListener) | [`SerialPortsListener`](%gh-ij-plugins%/serial-monitor/src/main/java/com/intellij/plugins/serialmonitor/service/SerialPortsListener.kt) |
|
||||
| [PlatformioServiceKt#PLATFORMIO_UPDATES_TOPIC](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.embedded.platformio.PlatformioUpdatesNotifier) ![Project-Level][project-level] | [`PlatformioUpdatesNotifier`](%gh-ij-plugins%/platformio/src/com/jetbrains/cidr/cpp/embedded/platformio/PlatformioService.kt) |
|
||||
| [PlatformioSettingsListener.Companion#TOPIC](https://jb.gg/ipe/listeners?topics=com.jetbrains.cidr.cpp.embedded.platformio.project.PlatformioSettingsListener) | [`PlatformioSettingsListener`](%gh-ij-plugins%/platformio/src/com/jetbrains/cidr/cpp/embedded/platformio/project/PlatformioSettings.kt) |
|
||||
| [DartAnalysisServerMessages#DART_ANALYSIS_TOPIC](https://jb.gg/ipe/listeners?topics=com.jetbrains.lang.dart.analyzer.DartAnalysisServerMessages.DartAnalysisNotifier) | [`DartAnalysisNotifier`](%gh-ij-plugins%/Dart/src/com/jetbrains/lang/dart/analyzer/DartAnalysisServerMessages.java) |
|
||||
@ -37,12 +37,24 @@ Overview of Extension Points and Listeners for OSS plugins bundled with [](idea_
|
||||
|
||||
### AngularJS
|
||||
|
||||
[`AngularJS`](%gh-ij-plugins%/AngularJS/resources/META-INF/plugin.xml)
|
||||
[`AngularJS`](%gh-ij-plugins%/Angular/resources/META-INF/plugin.xml)
|
||||
|
||||
| Extension Point | Implementation |
|
||||
|-----------------|----------------|
|
||||
| [org.angular2.frameworkHandler](https://jb.gg/ipe?extensions=org.angular2.frameworkHandler) ![Experimental][experimental] | [`Angular2FrameworkHandler`](%gh-ij-plugins%/AngularJS/src/org/angular2/entities/Angular2FrameworkHandler.kt) |
|
||||
| [org.angular2.templateScopesProvider](https://jb.gg/ipe?extensions=org.angular2.templateScopesProvider) | [`Angular2TemplateScopesProvider`](%gh-ij-plugins%/AngularJS/src/org/angular2/codeInsight/template/Angular2TemplateScopesProvider.kt) |
|
||||
| [org.angular2.configProvider](https://jb.gg/ipe?extensions=org.angular2.configProvider) | [`AngularConfigProvider`](%gh-ij-plugins%/Angular/src/org/angular2/cli/config/AngularConfigProvider.kt) |
|
||||
| [org.angular2.entitiesSource](https://jb.gg/ipe?extensions=org.angular2.entitiesSource) | [`Angular2EntitiesSource`](%gh-ij-plugins%/Angular/src/org/angular2/entities/Angular2EntitiesSource.kt) |
|
||||
| [org.angular2.frameworkHandler](https://jb.gg/ipe?extensions=org.angular2.frameworkHandler) ![Experimental][experimental] | [`Angular2FrameworkHandler`](%gh-ij-plugins%/Angular/src/org/angular2/entities/Angular2FrameworkHandler.kt) |
|
||||
| [org.angular2.importsHandler](https://jb.gg/ipe?extensions=org.angular2.importsHandler) | [`Angular2ImportsHandler`](%gh-ij-plugins%/Angular/src/org/angular2/codeInsight/imports/Angular2ImportsHandler.kt) |
|
||||
| [org.angular2.jsHandlersFactory](https://jb.gg/ipe?extensions=org.angular2.jsHandlersFactory) | [`Angular2JSHandlersFactory`](%gh-ij-plugins%/Angular/src/org/angular2/codeInsight/Angular2HandlersFactory.kt) |
|
||||
| [org.angular2.templateScopesProvider](https://jb.gg/ipe?extensions=org.angular2.templateScopesProvider) | [`Angular2TemplateScopesProvider`](%gh-ij-plugins%/Angular/src/org/angular2/codeInsight/template/Angular2TemplateScopesProvider.kt) |
|
||||
|
||||
### com.intellij.dts
|
||||
|
||||
[`com.intellij.dts`](%gh-ij-plugins%/dts/resources/META-INF/plugin.xml)
|
||||
|
||||
| Extension Point | Implementation |
|
||||
|-----------------|----------------|
|
||||
| [com.intellij.clion.dtsUtil](https://jb.gg/ipe?extensions=com.intellij.clion.dtsUtil) | [`DtsCLionUtil`](%gh-ij-plugins%/dts/src/com/intellij/dts/clion/DtsCLionUtil.kt) |
|
||||
|
||||
### com.intellij.flex
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
|
||||
<link-summary>Overview of Extension Points and Listeners for Spring API.</link-summary>
|
||||
|
||||
52 Extension Points and 5 Listeners for Spring API
|
||||
53 Extension Points and 5 Listeners for Spring API
|
||||
|
||||
<include from="snippets.md" element-id="ep_list_legend"/>
|
||||
|
||||
@ -29,6 +29,7 @@
|
||||
|-----------------|----------------|
|
||||
| [com.intellij.spring.autodetected.filesets](https://jb.gg/ipe?extensions=com.intellij.spring.autodetected.filesets) | `SpringAutodetectedFilesetsSearcher` |
|
||||
| [com.intellij.spring.autodetected.models](https://jb.gg/ipe?extensions=com.intellij.spring.autodetected.models) | `SpringAutodetectedModelsSearcher` |
|
||||
| [com.intellij.spring.beanClassLineMarker](https://jb.gg/ipe?extensions=com.intellij.spring.beanClassLineMarker) | `BeanClassLineMarker` |
|
||||
| [com.intellij.spring.beans.stereotype](https://jb.gg/ipe?extensions=com.intellij.spring.beans.stereotype) | `SpringBeanStereotype` |
|
||||
| [com.intellij.spring.componentScanExtender](https://jb.gg/ipe?extensions=com.intellij.spring.componentScanExtender) | `ComponentScanExtender` |
|
||||
| [com.intellij.spring.conditionalEvaluatorProvider](https://jb.gg/ipe?extensions=com.intellij.spring.conditionalEvaluatorProvider) | `ConditionalEvaluatorProvider` |
|
||||
@ -50,6 +51,7 @@
|
||||
| [com.intellij.spring.placeholderReferenceResolver](https://jb.gg/ipe?extensions=com.intellij.spring.placeholderReferenceResolver) | `SpringPlaceholderReferenceResolver` |
|
||||
| [com.intellij.spring.resourceTypeProvider](https://jb.gg/ipe?extensions=com.intellij.spring.resourceTypeProvider) | `SpringResourceTypeProvider` |
|
||||
| [com.intellij.spring.scriptBeanPsiClassDiscoverer](https://jb.gg/ipe?extensions=com.intellij.spring.scriptBeanPsiClassDiscoverer) | `ScriptBeanPsiClassDiscoverer` |
|
||||
| [com.intellij.spring.settingsProvider](https://jb.gg/ipe?extensions=com.intellij.spring.settingsProvider) | `SpringSettingsProvider` |
|
||||
| [com.intellij.spring.testingAnnotationsProvider](https://jb.gg/ipe?extensions=com.intellij.spring.testingAnnotationsProvider) | `SpringTestingAnnotationsProvider` |
|
||||
| [com.intellij.spring.testingImplicitContextsProvider](https://jb.gg/ipe?extensions=com.intellij.spring.testingImplicitContextsProvider) | `SpringTestingImplicitContextsProvider` |
|
||||
| [com.intellij.spring.valueConverter](https://jb.gg/ipe?extensions=com.intellij.spring.valueConverter) | `SpringValueConvertersProvider` |
|
||||
@ -89,7 +91,6 @@
|
||||
| Extension Point | Implementation |
|
||||
|-----------------|----------------|
|
||||
| [com.intellij.spring.mvc.applicationPathProvider](https://jb.gg/ipe?extensions=com.intellij.spring.mvc.applicationPathProvider) | `SpringApplicationPathProvider` |
|
||||
| [com.intellij.spring.mvc.applicationPortProvider](https://jb.gg/ipe?extensions=com.intellij.spring.mvc.applicationPortProvider) | `SpringApplicationPortProvider` |
|
||||
| [com.intellij.spring.mvc.mergingMvcRequestMappingLineMarkerProvider](https://jb.gg/ipe?extensions=com.intellij.spring.mvc.mergingMvcRequestMappingLineMarkerProvider) | `SpringMergingMvcRequestMappingLineMarkerProvider` |
|
||||
| [com.intellij.spring.mvc.springEndpointsIconProvider](https://jb.gg/ipe?extensions=com.intellij.spring.mvc.springEndpointsIconProvider) | `SpringEndpointsIconProvider` |
|
||||
| [com.intellij.spring.mvc.viewResolverFactory](https://jb.gg/ipe?extensions=com.intellij.spring.mvc.viewResolverFactory) | `ViewResolverFactory` |
|
||||
|
@ -6,7 +6,7 @@
|
||||
|
||||
<link-summary>Overview of Extension Points and Listeners for PHP.</link-summary>
|
||||
|
||||
61 Extension Points and 10 Listeners for PHP
|
||||
61 Extension Points and 11 Listeners for PHP
|
||||
|
||||
See [](extension_point_list.md) for IntelliJ Platform.
|
||||
|
||||
@ -28,6 +28,7 @@ See [](extension_point_list.md) for IntelliJ Platform.
|
||||
| [StateChangedListener#TOPIC](https://jb.gg/ipe/listeners?topics=com.jetbrains.php.debug.listener.PhpDebugExternalConnectionsAccepter.StateChangedListener) | `StateChangedListener` |
|
||||
| [RectorChangesListener#TOPIC](https://jb.gg/ipe/listeners?topics=com.jetbrains.php.rector.RectorChangesListener) | `RectorChangesListener` |
|
||||
| [PhpRemoteInterpreterChangedListener#TOPIC](https://jb.gg/ipe/listeners?topics=com.jetbrains.php.remote.interpreter.ui.PhpRemoteInterpreterConfigurationForm.PhpRemoteInterpreterChangedListener) | `PhpRemoteInterpreterChangedListener` |
|
||||
| [CustomExpectationNotifier.Companion#TOPIC](https://jb.gg/ipe/listeners?topics=com.pestphp.pest.features.customExpectations.CustomExpectationNotifier) ![Project-Level][project-level] | `CustomExpectationNotifier` |
|
||||
|
||||
|
||||
### com.intellij.phing
|
||||
|
@ -6,7 +6,7 @@
|
||||
|
||||
<link-summary>Overview of Extension Points and Listeners for Rider.</link-summary>
|
||||
|
||||
109 Extension Points and 5 Listeners for Rider
|
||||
128 Extension Points and 7 Listeners for Rider
|
||||
|
||||
See [](extension_point_list.md) for IntelliJ Platform.
|
||||
|
||||
@ -20,7 +20,9 @@ See [](extension_point_list.md) for IntelliJ Platform.
|
||||
|-------|----------|
|
||||
| [RiderStyleCopConfigurable#STYLE_COP_CONFIGURABLE_TOPIC](https://jb.gg/ipe/listeners?topics=com.intellij.application.options.editor.EditorOptionsListener) | [`EditorOptionsListener`](%gh-ic%/platform/platform-impl/src/com/intellij/application/options/editor/EditorOptionsListener.java) |
|
||||
| [SSHCredentialsInClipboardNotifier.Companion#SSH_CREDENTIALS_IN_CLIPBOARD_TOPIC](https://jb.gg/ipe/listeners?topics=com.jetbrains.rider.debugger.attach.remoting.SSHCredentialsInClipboardNotifier) | `SSHCredentialsInClipboardNotifier` |
|
||||
| [DotnetDebuggerSymbolsLoadedListener.Companion#TOPIC](https://jb.gg/ipe/listeners?topics=com.jetbrains.rider.debugger.modulesView.actions.DotnetDebuggerSymbolsLoadedListener) | `DotnetDebuggerSymbolsLoadedListener` |
|
||||
| [FrontendTypedHandlerManager#BEFORE_TYPING_SENT](https://jb.gg/ipe/listeners?topics=com.jetbrains.rider.editorActions.IFrontendTypingListener) | `IFrontendTypingListener` |
|
||||
| [RiderDockerDeploymentListener.Companion#TOPIC](https://jb.gg/ipe/listeners?topics=com.jetbrains.rider.plugins.appender.docker.deployment.RiderDockerDeploymentListener) | `RiderDockerDeploymentListener` |
|
||||
| [MSBuildEvaluationListener.Companion#TOPIC](https://jb.gg/ipe/listeners?topics=com.jetbrains.rider.run.environment.MSBuildEvaluationListener) | `MSBuildEvaluationListener` |
|
||||
| [RiderGlobalBackendProgressListener#TOPIC](https://jb.gg/ipe/listeners?topics=com.jetbrains.rider.services.RiderGlobalProgressHost.RiderGlobalBackendProgressListener) | `RiderGlobalBackendProgressListener` |
|
||||
|
||||
@ -38,6 +40,12 @@ See [](extension_point_list.md) for IntelliJ Platform.
|
||||
| [com.jetbrains.rider-cpp.run.configurations.cpp](https://jb.gg/ipe?extensions=com.jetbrains.rider-cpp.run.configurations.cpp) ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `CppConfigurationParametersExtension` |
|
||||
| [com.jetbrains.rider-cpp.run.configurations.cpp.launch.profile](https://jb.gg/ipe?extensions=com.jetbrains.rider-cpp.run.configurations.cpp.launch.profile) ![Non-Dynamic][non-dynamic] | `CppProjectLaunchProfile` |
|
||||
|
||||
### com.jetbrains.rider.razor
|
||||
|
||||
| Extension Point | Implementation |
|
||||
|-----------------|----------------|
|
||||
| [com.intellij.rider.blazorDialectSubstitutor](https://jb.gg/ipe?extensions=com.intellij.rider.blazorDialectSubstitutor) ![Non-Dynamic][non-dynamic] | `BlazorHtmlDialectSubstitutor` |
|
||||
|
||||
### DotNetPlugin.xml
|
||||
|
||||
| Extension Point | Implementation |
|
||||
@ -53,19 +61,26 @@ See [](extension_point_list.md) for IntelliJ Platform.
|
||||
| [com.intellij.lang.altEnter](https://jb.gg/ipe?extensions=com.intellij.lang.altEnter) ![Non-Dynamic][non-dynamic] | `BulbMenuModelFactory` |
|
||||
| [com.intellij.lang.altEnter.popupModelDelegate](https://jb.gg/ipe?extensions=com.intellij.lang.altEnter.popupModelDelegate) ![Non-Dynamic][non-dynamic] | `PopupModelDelegate` |
|
||||
| [com.intellij.projectModelViewUpdater](https://jb.gg/ipe?extensions=com.intellij.projectModelViewUpdater) ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `ProjectModelViewUpdater` |
|
||||
| [com.intellij.protocolComponentFactory](https://jb.gg/ipe?extensions=com.intellij.protocolComponentFactory) ![Deprecated][deprecated] ![Non-Dynamic][non-dynamic] | `ProtocolComponentFactory` |
|
||||
| [com.intellij.rdclient.preemptiveCompletionSuppressor](https://jb.gg/ipe?extensions=com.intellij.rdclient.preemptiveCompletionSuppressor) ![Non-Dynamic][non-dynamic] | `PreemptiveCompletionSuppressor` |
|
||||
| [com.intellij.rdclient.typingPolicy](https://jb.gg/ipe?extensions=com.intellij.rdclient.typingPolicy) ![Non-Dynamic][non-dynamic] | `CustomTypingSessionPolicy` |
|
||||
| [com.intellij.rider.action.fallback.strategy](https://jb.gg/ipe?extensions=com.intellij.rider.action.fallback.strategy) ![Non-Dynamic][non-dynamic] | `RiderAsyncBackendDelegatingActionFallbackStrategy` |
|
||||
| [com.intellij.rider.altEnter.layouter](https://jb.gg/ipe?extensions=com.intellij.rider.altEnter.layouter) ![Non-Dynamic][non-dynamic] | `RiderAltEnterLayouter` |
|
||||
| [com.intellij.rider.backendCrashAnalyser](https://jb.gg/ipe?extensions=com.intellij.rider.backendCrashAnalyser) ![Non-Dynamic][non-dynamic] | `BackendCrashAnalyzer` |
|
||||
| [com.intellij.rider.backendLogXmlPathProvider](https://jb.gg/ipe?extensions=com.intellij.rider.backendLogXmlPathProvider) ![Non-Dynamic][non-dynamic] | `RiderCustomBackendLogXmlPathProvider` |
|
||||
| [com.intellij.rider.breakingWorkflowChangeInterceptor](https://jb.gg/ipe?extensions=com.intellij.rider.breakingWorkflowChangeInterceptor) ![Non-Dynamic][non-dynamic] ![Experimental][experimental] ![Internal][internal] | `RiderBreakingWorkflowChangeInterceptor` |
|
||||
| [com.intellij.rider.codeStyleContentConverter](https://jb.gg/ipe?extensions=com.intellij.rider.codeStyleContentConverter) ![Non-Dynamic][non-dynamic] | `RiderCodeStyleContentPageConverter` |
|
||||
| [com.intellij.rider.credentials.provider](https://jb.gg/ipe?extensions=com.intellij.rider.credentials.provider) ![Non-Dynamic][non-dynamic] | `ICredentialsProvider` |
|
||||
| [com.intellij.rider.diagnostics.specialPathsProvider](https://jb.gg/ipe?extensions=com.intellij.rider.diagnostics.specialPathsProvider) ![Non-Dynamic][non-dynamic] | `SpecialPathsProvider` |
|
||||
| [com.intellij.rider.documentBehaviour](https://jb.gg/ipe?extensions=com.intellij.rider.documentBehaviour) ![Non-Dynamic][non-dynamic] | `RiderDocumentBehaviour` |
|
||||
| [com.intellij.rider.extraSettingsSync](https://jb.gg/ipe?extensions=com.intellij.rider.extraSettingsSync) ![Non-Dynamic][non-dynamic] | `ExtraSettingsSync` |
|
||||
| [com.intellij.rider.fileBreadcrumbExtensions](https://jb.gg/ipe?extensions=com.intellij.rider.fileBreadcrumbExtensions) | `CustomFileBreadcrumbExtensions` |
|
||||
| [com.intellij.rider.markup.cacheFilter](https://jb.gg/ipe?extensions=com.intellij.rider.markup.cacheFilter) | `RiderMarkupFSCacheFilter` |
|
||||
| [com.intellij.rider.grave.filter](https://jb.gg/ipe?extensions=com.intellij.rider.grave.filter) ![Experimental][experimental] | `RiderHighlightingGraveFilter` |
|
||||
| [com.intellij.rider.namingPageProvider](https://jb.gg/ipe?extensions=com.intellij.rider.namingPageProvider) ![Non-Dynamic][non-dynamic] | `NamingPageProvider` |
|
||||
| [com.intellij.rider.protocol.hostFlagsProvider](https://jb.gg/ipe?extensions=com.intellij.rider.protocol.hostFlagsProvider) ![Non-Dynamic][non-dynamic] | `RiderBackendFlagsProvider` |
|
||||
| [com.intellij.rider.protocol.hostEnvProvider](https://jb.gg/ipe?extensions=com.intellij.rider.protocol.hostEnvProvider) ![Non-Dynamic][non-dynamic] | `RiderBackendEnvProvider` |
|
||||
| [com.intellij.rider.riderApplicationPreloadListener](https://jb.gg/ipe?extensions=com.intellij.rider.riderApplicationPreloadListener) ![Non-Dynamic][non-dynamic] | `RiderApplicationPreloadListener` |
|
||||
| [com.intellij.rider.wrappedMergeableIconProvider](https://jb.gg/ipe?extensions=com.intellij.rider.wrappedMergeableIconProvider) ![Non-Dynamic][non-dynamic] | `RiderWrappedMergeableIconProvider` |
|
||||
| [com.intellij.selfProfilingPaths.customizer](https://jb.gg/ipe?extensions=com.intellij.selfProfilingPaths.customizer) ![Non-Dynamic][non-dynamic] | `DotnetSelfProfilerPathsCustomizer` |
|
||||
| [com.intellij.solutionLoadNotification](https://jb.gg/ipe?extensions=com.intellij.solutionLoadNotification) ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `SolutionLoadNotification` |
|
||||
|
||||
### DotNetProjectView.xml
|
||||
@ -75,25 +90,19 @@ See [](extension_point_list.md) for IntelliJ Platform.
|
||||
| [com.intellij.rider.projectModelIconProvider](https://jb.gg/ipe?extensions=com.intellij.rider.projectModelIconProvider) | `ProjectModelIconProvider` |
|
||||
| [com.intellij.rider.workspaceCountableProjectsPolicy](https://jb.gg/ipe?extensions=com.intellij.rider.workspaceCountableProjectsPolicy) | `CountableProjectsPolicy` |
|
||||
|
||||
### iniPluginCppPart.xml
|
||||
|
||||
| Extension Point | Implementation |
|
||||
|-----------------|----------------|
|
||||
| [rider.cpp.debugProcessExtension](https://jb.gg/ipe?extensions=rider.cpp.debugProcessExtension) | `RiderCppDebugProcessExtension` |
|
||||
|
||||
### intellij.rider.cpp.debugger
|
||||
|
||||
| Extension Point | Implementation |
|
||||
|-----------------|----------------|
|
||||
| [com.intellij.rider.cpp.debuggerSettings](https://jb.gg/ipe?extensions=com.intellij.rider.cpp.debuggerSettings) ![Non-Dynamic][non-dynamic] | `CppDebuggerSettings` |
|
||||
|
||||
### org.jetbrains.plugins.clion.radler
|
||||
|
||||
| Extension Point | Implementation |
|
||||
|-----------------|----------------|
|
||||
| [com.intellij.rider.refactoringPageProvider](https://jb.gg/ipe?extensions=com.intellij.rider.refactoringPageProvider) ![Non-Dynamic][non-dynamic] | `RefactoringPageProvider` |
|
||||
|
||||
### plugin.xml
|
||||
|
||||
| Extension Point | Implementation |
|
||||
|-----------------|----------------|
|
||||
| [com.intellij.rider.client.typedHandler](https://jb.gg/ipe?extensions=com.intellij.rider.client.typedHandler) | `RiderClientLookupTypedHandler` |
|
||||
|
||||
### rider-plugins-appender.database.xml
|
||||
### intellij.rider.plugins.appender.database.xml
|
||||
|
||||
| Extension Point | Implementation |
|
||||
|-----------------|----------------|
|
||||
@ -105,52 +114,61 @@ See [](extension_point_list.md) for IntelliJ Platform.
|
||||
| [com.intellij.rider.database.jdbcUrlToConnectionStringConverter](https://jb.gg/ipe?extensions=com.intellij.rider.database.jdbcUrlToConnectionStringConverter) ![Project-Level][project-level] | `JdbcUrlToConnectionStringConverter` |
|
||||
| [com.intellij.rider.database.schemaCompareDataModelCreatedListener](https://jb.gg/ipe?extensions=com.intellij.rider.database.schemaCompareDataModelCreatedListener) ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `SchemaCompareDataModelCreatedListener` |
|
||||
|
||||
### rider-plugins-appender.docker.xml
|
||||
### intellij.rider.plugins.appender.docker.xml
|
||||
|
||||
| Extension Point | Implementation |
|
||||
|-----------------|----------------|
|
||||
| [com.intellij.rider.dockerDebugProvider](https://jb.gg/ipe?extensions=com.intellij.rider.dockerDebugProvider) ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `IRiderDockerDebugProvider` |
|
||||
| [com.intellij.rider.dockerDeploymentTransformer](https://jb.gg/ipe?extensions=com.intellij.rider.dockerDeploymentTransformer) ![Non-Dynamic][non-dynamic] ![Internal][internal] ![Project-Level][project-level] | `RiderDockerDeploymentTransformer` |
|
||||
|
||||
### rider-plugins-appender.javascript.xml
|
||||
### intellij.rider.plugins.appender.javascript.xml
|
||||
|
||||
| Extension Point | Implementation |
|
||||
|-----------------|----------------|
|
||||
| [JavaScript.packageJson.configuration.handler](https://jb.gg/ipe?extensions=JavaScript.packageJson.configuration.handler) ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `RiderPackageJsonConfiguratorHandler` |
|
||||
|
||||
### RiderCppCore.xml
|
||||
### intellij.rider.plugins.cwm
|
||||
|
||||
| Extension Point | Implementation |
|
||||
|-----------------|----------------|
|
||||
| [com.jetbrains.rider.cpp.fileType.cppFileTypeIconProvider](https://jb.gg/ipe?extensions=com.jetbrains.rider.cpp.fileType.cppFileTypeIconProvider) ![Non-Dynamic][non-dynamic] | `CppFileTypeIconProvider` |
|
||||
| [com.intellij.rider.client.typedHandler](https://jb.gg/ipe?extensions=com.intellij.rider.client.typedHandler) | `RiderClientLookupTypedHandler` |
|
||||
|
||||
### org.jetbrains.plugins.clion.radler
|
||||
|
||||
| Extension Point | Implementation |
|
||||
|-----------------|----------------|
|
||||
| [com.intellij.rider.refactoringPageProvider](https://jb.gg/ipe?extensions=com.intellij.rider.refactoringPageProvider) ![Non-Dynamic][non-dynamic] | `RefactoringPageProvider` |
|
||||
|
||||
### RiderExtensionPoints.xml
|
||||
|
||||
| Extension Point | Implementation |
|
||||
|-----------------|----------------|
|
||||
| [com.intellij.dotNetRuntimeType](https://jb.gg/ipe?extensions=com.intellij.dotNetRuntimeType) ![Non-Dynamic][non-dynamic] | `DotNetRuntimeType` |
|
||||
| [com.intellij.fileSystemExplorerCustomization](https://jb.gg/ipe?extensions=com.intellij.fileSystemExplorerCustomization) ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `FileSystemExplorerCustomization` |
|
||||
| [com.intellij.moveProviderExtension](https://jb.gg/ipe?extensions=com.intellij.moveProviderExtension) ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `MoveProviderExtension` |
|
||||
| [com.intellij.nestingRulesLanguageExtensions](https://jb.gg/ipe?extensions=com.intellij.nestingRulesLanguageExtensions) ![Non-Dynamic][non-dynamic] | `RiderNestingRulesLanguageExtensions` |
|
||||
| [com.intellij.nugetCredentialProvider](https://jb.gg/ipe?extensions=com.intellij.nugetCredentialProvider) ![Non-Dynamic][non-dynamic] | `NuGetCredentialProvider` |
|
||||
| [com.intellij.openDirectoryExtensions](https://jb.gg/ipe?extensions=com.intellij.openDirectoryExtensions) ![Non-Dynamic][non-dynamic] | `OpenDirectoryExtensions` |
|
||||
| [com.intellij.projectModelViewExtensions](https://jb.gg/ipe?extensions=com.intellij.projectModelViewExtensions) ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `ProjectModelViewExtensions` |
|
||||
| [com.intellij.projectTemplateProvider](https://jb.gg/ipe?extensions=com.intellij.projectTemplateProvider) ![Non-Dynamic][non-dynamic] | `RiderProjectTemplateProvider` |
|
||||
| [com.intellij.projectTemplateCustomizer](https://jb.gg/ipe?extensions=com.intellij.projectTemplateCustomizer) ![Non-Dynamic][non-dynamic] | `ProjectTemplateCustomizer` |
|
||||
| [com.intellij.projectTemplateProvider](https://jb.gg/ipe?extensions=com.intellij.projectTemplateProvider) ![Deprecated][deprecated] ![Non-Dynamic][non-dynamic] | `RiderProjectTemplateProvider` |
|
||||
| [com.intellij.projectTemplateProviderNew](https://jb.gg/ipe?extensions=com.intellij.projectTemplateProviderNew) ![Non-Dynamic][non-dynamic] | `ProjectTemplateProvider` |
|
||||
| [com.intellij.rider.ProfileActionPrinter](https://jb.gg/ipe?extensions=com.intellij.rider.ProfileActionPrinter) ![Non-Dynamic][non-dynamic] | `ProfileActionPrinter` |
|
||||
| [com.intellij.rider.ProjectTypesProvider](https://jb.gg/ipe?extensions=com.intellij.rider.ProjectTypesProvider) ![Non-Dynamic][non-dynamic] | `RiderProjectTypesProvider` |
|
||||
| [com.intellij.rider.SolutionFileTypesProvider](https://jb.gg/ipe?extensions=com.intellij.rider.SolutionFileTypesProvider) ![Non-Dynamic][non-dynamic] | `SolutionFileTypesProvider` |
|
||||
| [com.intellij.rider.action.technical.support.info.provider](https://jb.gg/ipe?extensions=com.intellij.rider.action.technical.support.info.provider) ![Non-Dynamic][non-dynamic] | `RiderTechnicalSupportInfoProvider` |
|
||||
| [com.intellij.rider.android.project.validator](https://jb.gg/ipe?extensions=com.intellij.rider.android.project.validator) ![Non-Dynamic][non-dynamic] | `ICustomAndroidProjectValidator` |
|
||||
| [com.intellij.rider.backendCrashAnalyser](https://jb.gg/ipe?extensions=com.intellij.rider.backendCrashAnalyser) ![Non-Dynamic][non-dynamic] | `BackendCrashAnalyzer` |
|
||||
| [com.intellij.rider.breakpoint.customPanelProvider](https://jb.gg/ipe?extensions=com.intellij.rider.breakpoint.customPanelProvider) ![Non-Dynamic][non-dynamic] | `IDotNetLineBreakpointCustomPanelsProvider` |
|
||||
| [com.intellij.rider.breakpoint.customPopupActionsProvider](https://jb.gg/ipe?extensions=com.intellij.rider.breakpoint.customPopupActionsProvider) ![Non-Dynamic][non-dynamic] | `IDotNetLineBreakpointPopupActionsProvider` |
|
||||
| [com.intellij.rider.build.riderBuildConsoleDecorator](https://jb.gg/ipe?extensions=com.intellij.rider.build.riderBuildConsoleDecorator) ![Project-Level][project-level] | `RiderBuildConsoleDecorator` |
|
||||
| [com.intellij.rider.buildButtonModeProvider](https://jb.gg/ipe?extensions=com.intellij.rider.buildButtonModeProvider) | `BuildButtonModeProvider` |
|
||||
| [com.intellij.rider.cleanupAction](https://jb.gg/ipe?extensions=com.intellij.rider.cleanupAction) ![Non-Dynamic][non-dynamic] | `CleanupAction` |
|
||||
| [com.intellij.rider.codeLens.vcsDeclarationRangesProvider](https://jb.gg/ipe?extensions=com.intellij.rider.codeLens.vcsDeclarationRangesProvider) ![Non-Dynamic][non-dynamic] | `VcsDeclarationRangesProvider` |
|
||||
| [com.intellij.rider.completion.csharpIdentifierPartHelper](https://jb.gg/ipe?extensions=com.intellij.rider.completion.csharpIdentifierPartHelper) ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `CSharpIdentifierPartHelper` |
|
||||
| [com.intellij.rider.completion.preselectionStrategy](https://jb.gg/ipe?extensions=com.intellij.rider.completion.preselectionStrategy) ![Non-Dynamic][non-dynamic] | `RiderFrontendLanguagesPreselectionStrategy` |
|
||||
| [com.intellij.rider.configurationExecutorExtension](https://jb.gg/ipe?extensions=com.intellij.rider.configurationExecutorExtension) ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `RiderConfigurationExecutorExtension` |
|
||||
| [com.intellij.rider.configurationLaunchSettingsExtension](https://jb.gg/ipe?extensions=com.intellij.rider.configurationLaunchSettingsExtension) ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `RiderConfigurationLaunchSettingsExtension` |
|
||||
| [com.intellij.rider.consoleFilter](https://jb.gg/ipe?extensions=com.intellij.rider.consoleFilter) | `RiderConsoleFilterExtension` |
|
||||
| [com.intellij.rider.debug.breakpoint.handler.factory](https://jb.gg/ipe?extensions=com.intellij.rider.debug.breakpoint.handler.factory) ![Non-Dynamic][non-dynamic] | `IDotNetSupportedBreakpointHandlerFactory` |
|
||||
| [com.intellij.rider.debugger.value.evaluator.factory](https://jb.gg/ipe?extensions=com.intellij.rider.debugger.value.evaluator.factory) ![Non-Dynamic][non-dynamic] | `RiderCustomComponentEvaluatorFactory` |
|
||||
| [com.intellij.rider.debugger.value.presenter](https://jb.gg/ipe?extensions=com.intellij.rider.debugger.value.presenter) ![Non-Dynamic][non-dynamic] | `RiderDebuggerValuePresenter` |
|
||||
| [com.intellij.rider.debuggerSupportPolicy](https://jb.gg/ipe?extensions=com.intellij.rider.debuggerSupportPolicy) ![Non-Dynamic][non-dynamic] | `RiderDebuggerSupportPolicy` |
|
||||
| [com.intellij.rider.editSourceSuppressor](https://jb.gg/ipe?extensions=com.intellij.rider.editSourceSuppressor) ![Non-Dynamic][non-dynamic] | `RiderEditSourceSuppressor` |
|
||||
@ -159,26 +177,34 @@ See [](extension_point_list.md) for IntelliJ Platform.
|
||||
| [com.intellij.rider.fileTemplating.postCreateAction](https://jb.gg/ipe?extensions=com.intellij.rider.fileTemplating.postCreateAction) ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `RiderNewFileFromTemplateExtension` |
|
||||
| [com.intellij.rider.findPopupProjectScopeProvider](https://jb.gg/ipe?extensions=com.intellij.rider.findPopupProjectScopeProvider) | `FindPopupProjectScopeProvider` |
|
||||
| [com.intellij.rider.guidPresenter](https://jb.gg/ipe?extensions=com.intellij.rider.guidPresenter) ![Project-Level][project-level] | `GuidGeneratorPresenter` |
|
||||
| [com.intellij.rider.ideaInspectionBackendSuppressionSupport](https://jb.gg/ipe?extensions=com.intellij.rider.ideaInspectionBackendSuppressionSupport) | `IdeaInspectionBackendSuppressionSupport` |
|
||||
| [com.intellij.rider.newFileListener](https://jb.gg/ipe?extensions=com.intellij.rider.newFileListener) ![Project-Level][project-level] | `RiderNewFileListener` |
|
||||
| [com.intellij.rider.newRunConfigurationTreeGroupingProvider](https://jb.gg/ipe?extensions=com.intellij.rider.newRunConfigurationTreeGroupingProvider) ![Non-Dynamic][non-dynamic] | `RiderNewRunConfigurationTreeGroupingProvider` |
|
||||
| [com.intellij.rider.patchCommandLine](https://jb.gg/ipe?extensions=com.intellij.rider.patchCommandLine) ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `PatchCommandLineExtension` |
|
||||
| [com.intellij.rider.pencils.filters.provider](https://jb.gg/ipe?extensions=com.intellij.rider.pencils.filters.provider) ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `PencilsFiltersProvider` |
|
||||
| [com.intellij.rider.pencils.inspectionToolGroup](https://jb.gg/ipe?extensions=com.intellij.rider.pencils.inspectionToolGroup) ![Non-Dynamic][non-dynamic] | `n/a` |
|
||||
| [com.intellij.rider.pencils.pencilsFilterGroup](https://jb.gg/ipe?extensions=com.intellij.rider.pencils.pencilsFilterGroup) ![Non-Dynamic][non-dynamic] | `n/a` |
|
||||
| [com.intellij.rider.problemsView.actionsHandler](https://jb.gg/ipe?extensions=com.intellij.rider.problemsView.actionsHandler) ![Non-Dynamic][non-dynamic] | `RiderProblemsViewActionsHandler` |
|
||||
| [com.intellij.rider.problemsView.problems.notifier](https://jb.gg/ipe?extensions=com.intellij.rider.problemsView.problems.notifier) ![Non-Dynamic][non-dynamic] | `ProblemsViewNotifier` |
|
||||
| [com.intellij.rider.problemsView.problems.processor](https://jb.gg/ipe?extensions=com.intellij.rider.problemsView.problems.processor) ![Non-Dynamic][non-dynamic] | `RiderProblemsDiffProcessor` |
|
||||
| [com.intellij.rider.projectView.actions.projectTemplating.backend.reSharperProjectTemplateCustomizer](https://jb.gg/ipe?extensions=com.intellij.rider.projectView.actions.projectTemplating.backend.reSharperProjectTemplateCustomizer) ![Non-Dynamic][non-dynamic] | `ReSharperProjectTemplateCustomizer` |
|
||||
| [com.intellij.rider.projectView.actions.projectTemplating.backend.reSharperProjectTemplateCustomizer](https://jb.gg/ipe?extensions=com.intellij.rider.projectView.actions.projectTemplating.backend.reSharperProjectTemplateCustomizer) ![Deprecated][deprecated] ![Non-Dynamic][non-dynamic] | `ReSharperProjectTemplateCustomizer` |
|
||||
| [com.intellij.rider.publish.publishSettingsProvider](https://jb.gg/ipe?extensions=com.intellij.rider.publish.publishSettingsProvider) ![Project-Level][project-level] | `IPublishRuntimeCoreSettingsProvider` |
|
||||
| [com.intellij.rider.publishConfigurationProvider](https://jb.gg/ipe?extensions=com.intellij.rider.publishConfigurationProvider) ![Non-Dynamic][non-dynamic] | `RiderContextPublishProvider` |
|
||||
| [com.intellij.rider.refactoringPageProvider](https://jb.gg/ipe?extensions=com.intellij.rider.refactoringPageProvider) ![Non-Dynamic][non-dynamic] | `RefactoringPageProvider` |
|
||||
| [com.intellij.rider.resolveContextWidgetProvider](https://jb.gg/ipe?extensions=com.intellij.rider.resolveContextWidgetProvider) ![Non-Dynamic][non-dynamic] | `RiderResolveContextWidgetProvider` |
|
||||
| [com.intellij.rider.run.configurations.dotNetExe](https://jb.gg/ipe?extensions=com.intellij.rider.run.configurations.dotNetExe) ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `DotNetExeConfigurationExtension` |
|
||||
| [com.intellij.rider.run.configurations.externalRunConfigurationGenerator](https://jb.gg/ipe?extensions=com.intellij.rider.run.configurations.externalRunConfigurationGenerator) ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `ExternalRunConfigurationGeneratorExtension` |
|
||||
| [com.intellij.rider.run.configurations.host](https://jb.gg/ipe?extensions=com.intellij.rider.run.configurations.host) ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `RunConfigurationHostExtensions` |
|
||||
| [com.intellij.rider.run.configurations.host.executor](https://jb.gg/ipe?extensions=com.intellij.rider.run.configurations.host.executor) ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `RunConfigurationHostExecutorExtensions` |
|
||||
| [com.intellij.rider.run.configurations.launchSettings](https://jb.gg/ipe?extensions=com.intellij.rider.run.configurations.launchSettings) ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `LaunchSettingsConfigurationExtension` |
|
||||
| [com.intellij.rider.run.configurations.launchSettings.command](https://jb.gg/ipe?extensions=com.intellij.rider.run.configurations.launchSettings.command) ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `LaunchSettingsCommandExtension` |
|
||||
| [com.intellij.rider.run.configurations.multiPlatform.mac.extension](https://jb.gg/ipe?extensions=com.intellij.rider.run.configurations.multiPlatform.mac.extension) ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `MacRunConfigurationExtension` |
|
||||
| [com.intellij.rider.run.configurations.project](https://jb.gg/ipe?extensions=com.intellij.rider.run.configurations.project) ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `DotNetProjectConfigurationExtension` |
|
||||
| [com.intellij.rider.run.configurations.riderCoreDumpConfigurationProvider](https://jb.gg/ipe?extensions=com.intellij.rider.run.configurations.riderCoreDumpConfigurationProvider) ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `RiderCoreDumpConfigurationProvider` |
|
||||
| [com.intellij.rider.run.configurations.riderCoreDumpConfigurationProvider](https://jb.gg/ipe?extensions=com.intellij.rider.run.configurations.riderCoreDumpConfigurationProvider) ![Non-Dynamic][non-dynamic] | `RiderCoreDumpConfigurationProvider` |
|
||||
| [com.intellij.rider.run.configurations.uwp](https://jb.gg/ipe?extensions=com.intellij.rider.run.configurations.uwp) ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `UwpConfigurationExtension` |
|
||||
| [com.intellij.rider.runToPopupShowPolicy](https://jb.gg/ipe?extensions=com.intellij.rider.runToPopupShowPolicy) ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `RiderRunToPopupShowPolicy` |
|
||||
| [com.intellij.rider.runWidgetSuspenderExtension](https://jb.gg/ipe?extensions=com.intellij.rider.runWidgetSuspenderExtension) ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `RunWidgetSuspenderExtension` |
|
||||
| [com.intellij.rider.runtime.dotNetRuntimeAutodetect](https://jb.gg/ipe?extensions=com.intellij.rider.runtime.dotNetRuntimeAutodetect) ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `DotNetRuntimeAutodetect` |
|
||||
| [com.intellij.rider.solutionConfigurationPresenter](https://jb.gg/ipe?extensions=com.intellij.rider.solutionConfigurationPresenter) | `SolutionConfigurationPresenter` |
|
||||
| [com.intellij.rider.solutionConfigurationToolbarCustomizer](https://jb.gg/ipe?extensions=com.intellij.rider.solutionConfigurationToolbarCustomizer) | `SolutionConfigurationToolbarCustomizer` |
|
||||
| [com.intellij.rider.unitTesting.actionsProvider](https://jb.gg/ipe?extensions=com.intellij.rider.unitTesting.actionsProvider) ![Non-Dynamic][non-dynamic] ![Project-Level][project-level] | `RiderUnitTestActionsProvider` |
|
||||
|
@ -6,7 +6,7 @@
|
||||
|
||||
<link-summary>Overview of Extension Points and Listeners for RubyMine.</link-summary>
|
||||
|
||||
79 Extension Points and 11 Listeners for RubyMine
|
||||
80 Extension Points and 12 Listeners for RubyMine
|
||||
|
||||
See [](extension_point_list.md) for IntelliJ Platform.
|
||||
|
||||
@ -25,6 +25,7 @@ See [](extension_point_list.md) for IntelliJ Platform.
|
||||
| [InflectorService#INFLECTIONS_CHANGED](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.rails.InflectorService.InflectionChanged) | `InflectionChanged` |
|
||||
| [AssetsRegistrationWatcher#ASSETS_CHANGED_TOPIC](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.rails.codeInsight.sprockets.assetsPaths.AssetsRegistrationWatcher.AssetsListener) | `AssetsListener` |
|
||||
| [MigrationParser#MIGRATIONS_CHANGED_TOPIC](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.rails.database.MigrationParser.MigrationListener) ![Project-Level][project-level] | `MigrationListener` |
|
||||
| [RailsPathsChangedListener#TOPIC](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.rails.facet.configuration.RailsPathsChangedListener) | `RailsPathsChangedListener` |
|
||||
| [RubyRemoteInterpreterManager#RUBY_REMOTE_SDK_TRANSFER_LISTENER_TOPIC](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.remote.RubyRemoteSdkTransferListener) | `RubyRemoteSdkTransferListener` |
|
||||
| [RequireSetChangedListener#TOPIC](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.ruby.codeInsight.symbols.cache.RequiresIndexExtension.RequireSetChangedListener) | `RequireSetChangedListener` |
|
||||
| [RubySdkType#SDK_PATHS_INITIALIZED_TOPIC](https://jb.gg/ipe/listeners?topics=org.jetbrains.plugins.ruby.ruby.sdk.RubySdkType.SdkPathsInitializedListener) | `SdkPathsInitializedListener` |
|
||||
@ -73,6 +74,7 @@ See [](extension_point_list.md) for IntelliJ Platform.
|
||||
| [org.jetbrains.plugins.ruby.ruby.run.runEnvironmentProvider](https://jb.gg/ipe?extensions=org.jetbrains.plugins.ruby.ruby.run.runEnvironmentProvider) | `RunEnvironmentProvider` |
|
||||
| [org.jetbrains.plugins.ruby.ruby.run.testFrameworkConfigurator](https://jb.gg/ipe?extensions=org.jetbrains.plugins.ruby.ruby.run.testFrameworkConfigurator) | `TestFrameworkConfigurator` |
|
||||
| [org.jetbrains.plugins.ruby.rubyElementNameAndDescriptionProvider](https://jb.gg/ipe?extensions=org.jetbrains.plugins.ruby.rubyElementNameAndDescriptionProvider) | `RubyElementNameAndDescriptionProvider` |
|
||||
| [org.jetbrains.plugins.ruby.rubyLocalVariablesProvider](https://jb.gg/ipe?extensions=org.jetbrains.plugins.ruby.rubyLocalVariablesProvider) | `RubyLocalVariablesProvider` |
|
||||
| [org.jetbrains.plugins.ruby.rubyParamDefSearchTextProvider](https://jb.gg/ipe?extensions=org.jetbrains.plugins.ruby.rubyParamDefSearchTextProvider) | `RubyParamDefSearchTextProvider` |
|
||||
| [org.jetbrains.plugins.ruby.rubyParameterInfoDelegateProvider](https://jb.gg/ipe?extensions=org.jetbrains.plugins.ruby.rubyParameterInfoDelegateProvider) | `RubyParameterInfoDelegateProvider` |
|
||||
| [org.jetbrains.plugins.ruby.rubyRenameProcessor](https://jb.gg/ipe?extensions=org.jetbrains.plugins.ruby.rubyRenameProcessor) | `RenameProcessor` |
|
||||
@ -101,6 +103,7 @@ See [](extension_point_list.md) for IntelliJ Platform.
|
||||
| [org.jetbrains.plugins.ruby.gemFacetEditorTab](https://jb.gg/ipe?extensions=org.jetbrains.plugins.ruby.gemFacetEditorTab) | `GemFacetEditorTabFactory` |
|
||||
| [org.jetbrains.plugins.ruby.generatorConfigurator](https://jb.gg/ipe?extensions=org.jetbrains.plugins.ruby.generatorConfigurator) | `GeneratorActionConfigurator` |
|
||||
| [org.jetbrains.plugins.ruby.i18n.i18nProvider](https://jb.gg/ipe?extensions=org.jetbrains.plugins.ruby.i18n.i18nProvider) | `I18nProvider` |
|
||||
| [org.jetbrains.plugins.ruby.inflectionsProvider](https://jb.gg/ipe?extensions=org.jetbrains.plugins.ruby.inflectionsProvider) | `RubyInflectionsProvider` |
|
||||
| [org.jetbrains.plugins.ruby.methodTypeInfoProvider](https://jb.gg/ipe?extensions=org.jetbrains.plugins.ruby.methodTypeInfoProvider) | `RubyMethodTypeInfoProvider` |
|
||||
| [org.jetbrains.plugins.ruby.rails.assetsPathsProvider](https://jb.gg/ipe?extensions=org.jetbrains.plugins.ruby.rails.assetsPathsProvider) | `SprocketAssetsPathProvider` |
|
||||
| [org.jetbrains.plugins.ruby.rails.sprocketsDirectiveContextProvider](https://jb.gg/ipe?extensions=org.jetbrains.plugins.ruby.rails.sprocketsDirectiveContextProvider) | `SprocketsDirectiveContextProvider` |
|
||||
@ -112,13 +115,12 @@ See [](extension_point_list.md) for IntelliJ Platform.
|
||||
| [org.jetbrains.plugins.ruby.rake.rakeRunCommandLineModifierProvider](https://jb.gg/ipe?extensions=org.jetbrains.plugins.ruby.rake.rakeRunCommandLineModifierProvider) | `RakeRunCommandLineModifierProvider` |
|
||||
| [org.jetbrains.plugins.ruby.rake.runConfigurationSettingsFactory](https://jb.gg/ipe?extensions=org.jetbrains.plugins.ruby.rake.runConfigurationSettingsFactory) | `RakeRunConfigurationSettingsFactory` |
|
||||
| [org.jetbrains.plugins.ruby.rerunFailedTestsActionProvider](https://jb.gg/ipe?extensions=org.jetbrains.plugins.ruby.rerunFailedTestsActionProvider) | `RubyRerunFailedTestsProvider` |
|
||||
| [org.jetbrains.plugins.ruby.ruby.associatedDeclarationProvider](https://jb.gg/ipe?extensions=org.jetbrains.plugins.ruby.ruby.associatedDeclarationProvider) | `RubyAssociatedDeclarationProvider` |
|
||||
| [org.jetbrains.plugins.ruby.ruby.associatedDeclarationProvider](https://jb.gg/ipe?extensions=org.jetbrains.plugins.ruby.ruby.associatedDeclarationProvider) ![DumbAware][dumb-aware] | `RubyAssociatedDeclarationProvider` |
|
||||
| [org.jetbrains.plugins.ruby.ruby.run.configuration.debugger.rubyDebugHelperFactory](https://jb.gg/ipe?extensions=org.jetbrains.plugins.ruby.ruby.run.configuration.debugger.rubyDebugHelperFactory) | `RubyDebugHelperFactory` |
|
||||
| [org.jetbrains.plugins.ruby.ruby.topLevelSymbolProvider](https://jb.gg/ipe?extensions=org.jetbrains.plugins.ruby.ruby.topLevelSymbolProvider) | `RubyTopLevelSymbolProvider` |
|
||||
| [org.jetbrains.plugins.ruby.ruby.typeSignatureProvider](https://jb.gg/ipe?extensions=org.jetbrains.plugins.ruby.ruby.typeSignatureProvider) | `RubyTypeSignatureProvider` |
|
||||
| [org.jetbrains.plugins.ruby.ruby.typeSignatureProvider](https://jb.gg/ipe?extensions=org.jetbrains.plugins.ruby.ruby.typeSignatureProvider) ![DumbAware][dumb-aware] | `RubyTypeSignatureProvider` |
|
||||
| [org.jetbrains.plugins.ruby.rubyFileStructureProvider](https://jb.gg/ipe?extensions=org.jetbrains.plugins.ruby.rubyFileStructureProvider) | `RubyFileStructureViewProvider` |
|
||||
| [org.jetbrains.plugins.ruby.rubyInsertHandlerProvider](https://jb.gg/ipe?extensions=org.jetbrains.plugins.ruby.rubyInsertHandlerProvider) | `RubyInsertHandlerProvider` |
|
||||
| [org.jetbrains.plugins.ruby.rubyLocalVariablesProvider](https://jb.gg/ipe?extensions=org.jetbrains.plugins.ruby.rubyLocalVariablesProvider) | `RubyLocalVariablesProvider` |
|
||||
| [org.jetbrains.plugins.ruby.runConfigurationExtension](https://jb.gg/ipe?extensions=org.jetbrains.plugins.ruby.runConfigurationExtension) | `RubyRunConfigurationExtension` |
|
||||
| [org.jetbrains.plugins.ruby.structureViewCustomizer](https://jb.gg/ipe?extensions=org.jetbrains.plugins.ruby.structureViewCustomizer) | `RubyStructureViewCustomizer` |
|
||||
| [org.jetbrains.plugins.ruby.testing.rspec.rspecContextNameProvider](https://jb.gg/ipe?extensions=org.jetbrains.plugins.ruby.testing.rspec.rspecContextNameProvider) | `RSpecContextNameProvider` |
|
||||
|
@ -11,7 +11,7 @@
|
||||
|
||||
<link-summary>Overview of Extension Points and Listeners for WebStorm.</link-summary>
|
||||
|
||||
69 Extension Points and 5 Listeners for WebStorm
|
||||
74 Extension Points and 5 Listeners for WebStorm
|
||||
|
||||
See [](extension_point_list.md) for IntelliJ Platform and [](oss_plugins_extension_point_list.md) for additional plugins.
|
||||
|
||||
@ -29,6 +29,7 @@ See [](extension_point_list.md) for IntelliJ Platform and [](oss_plugins_extensi
|
||||
| [JSLibraryManager#TOPIC](https://jb.gg/ipe/listeners?topics=com.intellij.lang.javascript.library.JSLibraryManager.JSLibraryManagerChangeListener) ![Project-Level][project-level] | `JSLibraryManagerChangeListener` |
|
||||
| [JSRemoteModulesRegistry#TOPIC](https://jb.gg/ipe/listeners?topics=com.intellij.lang.javascript.modules.remote.JSRemoteModulesChangeListener) | `JSRemoteModulesChangeListener` |
|
||||
|
||||
|
||||
### com.intellij.css
|
||||
|
||||
| Extension Point | Implementation |
|
||||
@ -67,18 +68,22 @@ See [](extension_point_list.md) for IntelliJ Platform and [](oss_plugins_extensi
|
||||
| [JavaScript.classInheritorsProvider](https://jb.gg/ipe?extensions=JavaScript.classInheritorsProvider) | `JSClassInheritorsProvider` |
|
||||
| [JavaScript.completionHelper](https://jb.gg/ipe?extensions=JavaScript.completionHelper) | `JSCompletionHelper` |
|
||||
| [JavaScript.completionPlaceFilter](https://jb.gg/ipe?extensions=JavaScript.completionPlaceFilter) ![Project-Level][project-level] | `JSCompletionPlaceFilterProvider` |
|
||||
| [JavaScript.componentUsageProvider](https://jb.gg/ipe?extensions=JavaScript.componentUsageProvider) | `JSComponentUsageProvider` |
|
||||
| [JavaScript.conditionalCompilationDefinitionsProvider](https://jb.gg/ipe?extensions=JavaScript.conditionalCompilationDefinitionsProvider) | `JSConditionalCompilationDefinitionsProvider` |
|
||||
| [JavaScript.dialectSpecificHandlersFactory](https://jb.gg/ipe?extensions=JavaScript.dialectSpecificHandlersFactory) | `JSDialectSpecificHandlersFactory` |
|
||||
| [JavaScript.elementScopeProvider](https://jb.gg/ipe?extensions=JavaScript.elementScopeProvider) | `JSElementResolveScopeProvider` |
|
||||
| [JavaScript.frameworkIndexingHandler](https://jb.gg/ipe?extensions=JavaScript.frameworkIndexingHandler) | `FrameworkIndexingHandler` |
|
||||
| [JavaScript.frameworkSpecificHandler](https://jb.gg/ipe?extensions=JavaScript.frameworkSpecificHandler) | `JSFrameworkSpecificHandler` |
|
||||
| [JavaScript.frameworkSpecificStructureViewExtension](https://jb.gg/ipe?extensions=JavaScript.frameworkSpecificStructureViewExtension) | `JSFrameworkSpecificStructureExtension` |
|
||||
| [JavaScript.handlersFactory](https://jb.gg/ipe?extensions=JavaScript.handlersFactory) | `JSHandlersFactory` |
|
||||
| [JavaScript.iconProvider](https://jb.gg/ipe?extensions=JavaScript.iconProvider) | `JSIconProvider` |
|
||||
| [JavaScript.importCandidatesFactory](https://jb.gg/ipe?extensions=JavaScript.importCandidatesFactory) | `CandidatesFactory` |
|
||||
| [JavaScript.importCandidatesFilterFactory](https://jb.gg/ipe?extensions=JavaScript.importCandidatesFilterFactory) | `FilterFactory` |
|
||||
| [JavaScript.importModulePathStrategy](https://jb.gg/ipe?extensions=JavaScript.importModulePathStrategy) ![Experimental][experimental] | `JSImportModulePathStrategy` |
|
||||
| [JavaScript.indexedFileTypeProvider](https://jb.gg/ipe?extensions=JavaScript.indexedFileTypeProvider) | `IndexedFileTypeProvider` |
|
||||
| [JavaScript.inheritedLanguagesConfigurableProvider](https://jb.gg/ipe?extensions=JavaScript.inheritedLanguagesConfigurableProvider) | `JSInheritedLanguagesConfigurableProvider` |
|
||||
| [JavaScript.intentionAndInspectionFilter](https://jb.gg/ipe?extensions=JavaScript.intentionAndInspectionFilter) | `IntentionAndInspectionFilter` |
|
||||
| [JavaScript.isNotMinifiedFile.provider](https://jb.gg/ipe?extensions=JavaScript.isNotMinifiedFile.provider) ![Internal][internal] | `JSIsNotMinifiedFileProvider` |
|
||||
| [JavaScript.jestPackageProvider](https://jb.gg/ipe?extensions=JavaScript.jestPackageProvider) | `JestPackageProvider` |
|
||||
| [JavaScript.jsDocCustomTagsHandler](https://jb.gg/ipe?extensions=JavaScript.jsDocCustomTagsHandler) ![Experimental][experimental] | `JSDocCustomTagsHandler` |
|
||||
| [JavaScript.jsxImplementation](https://jb.gg/ipe?extensions=JavaScript.jsxImplementation) | `JSXImplementation` |
|
||||
@ -90,6 +95,7 @@ See [](extension_point_list.md) for IntelliJ Platform and [](oss_plugins_extensi
|
||||
| [JavaScript.nodeModulesIndexableFileNamesProvider](https://jb.gg/ipe?extensions=JavaScript.nodeModulesIndexableFileNamesProvider) | `NodeModulesIndexableFileNamesProvider` |
|
||||
| [JavaScript.nodeRunConfigurationExtension](https://jb.gg/ipe?extensions=JavaScript.nodeRunConfigurationExtension) | `AbstractNodeRunConfigurationExtension` |
|
||||
| [JavaScript.predefinedLibraryProvider](https://jb.gg/ipe?extensions=JavaScript.predefinedLibraryProvider) | `JSPredefinedLibraryProvider` |
|
||||
| [JavaScript.projectGeneratorPanelCustomizer](https://jb.gg/ipe?extensions=JavaScript.projectGeneratorPanelCustomizer) | `ProjectGeneratorSettingsCustomizer` |
|
||||
| [JavaScript.resolveHelper](https://jb.gg/ipe?extensions=JavaScript.resolveHelper) | `JSResolveHelper` |
|
||||
| [JavaScript.runConfigurationBuilder](https://jb.gg/ipe?extensions=JavaScript.runConfigurationBuilder) ![Project-Level][project-level] | `JSRunConfigurationBuilder` |
|
||||
| [JavaScript.scanningFileListenerContributor](https://jb.gg/ipe?extensions=JavaScript.scanningFileListenerContributor) | `ScanningFileListenerContributor` |
|
||||
|
@ -178,7 +178,7 @@ Prior to 2023.1 IDEs were required to have JavaScript plugin installed for the s
|
||||
### Angular
|
||||
|
||||
Angular plugin Web Types are available
|
||||
[here](%gh-ij-plugins%/AngularJS/resources/web-types)
|
||||
[here](%gh-ij-plugins%/Angular/resources/web-types)
|
||||
for reference.
|
||||
Any Web Types file targeting only Angular support should have `framework` property set to `angular`.
|
||||
Highlights: `js/ng-custom-events` contribute symbols with patterns for any custom events supported by Angular `EventManager`s, e.g.:
|
||||
|
@ -57,7 +57,7 @@ Using JCEF requires using a dedicated JetBrains Runtime and enabling JCEF in the
|
||||
|
||||
## Using JCEF In a Plugin
|
||||
|
||||
The core JCEF class exposed by IntelliJ Platform API is [`JBCefApp`](%gh-ic-master%/platform/platform-api/src/com/intellij/ui/jcef/JBCefApp.java).
|
||||
The core JCEF class exposed by IntelliJ Platform API is [`JBCefApp`](%gh-ic%/platform/platform-api/src/com/intellij/ui/jcef/JBCefApp.java).
|
||||
It is responsible for initializing JCEF context and managing its lifecycle.
|
||||
|
||||
There is no need for initializing `JBCefApp` explicitly.
|
||||
@ -80,16 +80,16 @@ JCEF can be unsupported when:
|
||||
|
||||
### Browser
|
||||
|
||||
JCEF browser is represented by [`JBCefBrowser`](%gh-ic-master%/platform/platform-api/src/com/intellij/ui/jcef/JBCefBrowser.java) class.
|
||||
JCEF browser is represented by [`JBCefBrowser`](%gh-ic%/platform/platform-api/src/com/intellij/ui/jcef/JBCefBrowser.java) class.
|
||||
It is responsible for loading and rendering requested documents in the actual Chromium-based browser.
|
||||
|
||||
JCEF browsers can be created either by using the `JBCefBrowser` class' constructors, or via [`JBCefBrowserBuilder`](%gh-ic-master%/platform/platform-api/src/com/intellij/ui/jcef/JBCefBrowserBuilder.java).
|
||||
JCEF browsers can be created either by using the `JBCefBrowser` class' constructors, or via [`JBCefBrowserBuilder`](%gh-ic%/platform/platform-api/src/com/intellij/ui/jcef/JBCefBrowserBuilder.java).
|
||||
Use constructors in the cases when a browser with the default [client](#browser-client) and default options is enough.
|
||||
The builder approach allows using custom clients and configuring other options.
|
||||
|
||||
#### Adding Browser to UI
|
||||
|
||||
[`JBCefBrowser.getComponent()`](%gh-ic-master%/platform/platform-api/src/com/intellij/ui/jcef/JBCefBrowser.java) exposes the UI component embedding the actual browser.
|
||||
[`JBCefBrowser.getComponent()`](%gh-ic%/platform/platform-api/src/com/intellij/ui/jcef/JBCefBrowser.java) exposes the UI component embedding the actual browser.
|
||||
The component is an instance of Swing `JComponent`, which can be added to the plugin UI:
|
||||
|
||||
```java
|
||||
@ -100,7 +100,7 @@ myPanel.add(browser.getComponent());
|
||||
|
||||
#### Loading Documents
|
||||
|
||||
To load a document in the browser, use one of [`JBCefBrowserBase.load*()`](%gh-ic-master%/platform/platform-api/src/com/intellij/ui/jcef/JBCefBrowserBase.java) methods.
|
||||
To load a document in the browser, use one of [`JBCefBrowserBase.load*()`](%gh-ic%/platform/platform-api/src/com/intellij/ui/jcef/JBCefBrowserBase.java) methods.
|
||||
Methods loading documents can be called from both UI and non-UI threads.
|
||||
It is possible to set an initial URL (passed to constructor or builder) that will be loaded when browser is created and initialized.
|
||||
|
||||
@ -114,7 +114,7 @@ Browser client provides an interface for setting up [handlers](#event-handlers)
|
||||
Handlers allow reacting to these events in plugin code and change browser's behavior.
|
||||
Each browser is tied to a single client and a single client can be shared with multiple browser instances.
|
||||
|
||||
Browser client is represented by [`JBCefClient`](%gh-ic-master%/platform/platform-api/src/com/intellij/ui/jcef/JBCefClient.java), which is a wrapper for JCEF's [`CefClient`](%gh-jcef%/org/cef/CefClient.java).
|
||||
Browser client is represented by [`JBCefClient`](%gh-ic%/platform/platform-api/src/com/intellij/ui/jcef/JBCefClient.java), which is a wrapper for JCEF's [`CefClient`](%gh-jcef%/org/cef/CefClient.java).
|
||||
`JBCefClient` allows registering multiple handlers of the same type, which is not possible with `CefClient`.
|
||||
To access the underlying `CefClient` and its API, call `JBCefClient.getCefClient()`.
|
||||
|
||||
@ -178,7 +178,7 @@ It is common to pass `browser.getCefBrowser().getUrl()` or null/empty string, an
|
||||
JCEF doesn't provide direct access to DOM from the plugin code (it may [change](https://youtrack.jetbrains.com/issue/JBR-2046) in the future) and asynchronous communication with JavaScript is achieved with the callback mechanism.
|
||||
It allows executing plugin code from the embedded browser via JavaScript, e.g., when a button or link is clicked, a shortcut is pressed, a JavaScript function is called, etc.
|
||||
|
||||
JavaScript query callback is represented by [`JBCefJSQuery`](%gh-ic-master%/platform/platform-api/src/com/intellij/ui/jcef/JBCefJSQuery.java).
|
||||
JavaScript query callback is represented by [`JBCefJSQuery`](%gh-ic%/platform/platform-api/src/com/intellij/ui/jcef/JBCefJSQuery.java).
|
||||
It is an object bound to a specific browser, and it holds a set of handlers that implement the required plugin behavior.
|
||||
|
||||
Consider a case, which requires opening local files links in the editor and external links in an external browser.
|
||||
@ -245,7 +245,7 @@ See [`JCefImageViewer`](%gh-ic%/images/src/org/intellij/images/editor/impl/jcef/
|
||||
Default browser scrollbars may be insufficient, e.g. when they stand out of the IDE scrollbars look, or specific look and behavior is required.
|
||||
|
||||
In JCEF browsers, scrollbars look and feel can be customized by CSS and JavaScript.
|
||||
IntelliJ Platform provides [`JBCefScrollbarsHelper`](%gh-ic-master%/platform/platform-api/src/com/intellij/ui/jcef/JBCefScrollbarsHelper.java) that allows to customize scrollbars in two ways:
|
||||
IntelliJ Platform provides [`JBCefScrollbarsHelper`](%gh-ic%/platform/platform-api/src/com/intellij/ui/jcef/JBCefScrollbarsHelper.java) that allows to customize scrollbars in two ways:
|
||||
1. Using `JBCefScrollbarsHelper.getOverlayScrollbarStyle()`, which provides the styles adapted to the IDE scrollbars.
|
||||
2. Using [OverlayScrollbars](https://kingsora.github.io/OverlayScrollbars/) library adapted to the IDE look and feel.
|
||||
For the details, see `getOverlayScrollbarsSourceCSS()`, `getOverlayScrollbarsSourceJS()`, and `buildScrollbarsStyle()` Javadocs.
|
||||
@ -253,7 +253,7 @@ IntelliJ Platform provides [`JBCefScrollbarsHelper`](%gh-ic-master%/platform/pla
|
||||
|
||||
### Disposing Resources
|
||||
|
||||
`JBCefBrowser`, `JBCefClient`, and `JBCefJSQuery` classes implement [`JBCefDisposable`](%gh-ic-master%/platform/platform-api/src/com/intellij/ui/jcef/JBCefDisposable.java), which extends [`Disposable`](%gh-ic%/platform/util/src/com/intellij/openapi/Disposable.java).
|
||||
`JBCefBrowser`, `JBCefClient`, and `JBCefJSQuery` classes implement [`JBCefDisposable`](%gh-ic%/platform/platform-api/src/com/intellij/ui/jcef/JBCefDisposable.java), which extends [`Disposable`](%gh-ic%/platform/util/src/com/intellij/openapi/Disposable.java).
|
||||
It means that these classes should clean up their resources according to the rules described on the [](disposers.md) page.
|
||||
|
||||
For example, a custom `JBCefClient` with registered handlers should remove them in the `dispose()` method implementation.
|
||||
|
@ -24,7 +24,7 @@ The bigger picture here is that documentation providers co-exist and if there is
|
||||
the first one that returns a value different from `null` wins.
|
||||
|
||||
Although discouraged, the ordering of documentation providers can be influenced by using the `order` attribute when registering the extension.
|
||||
For instance, [`python-core-common.xml`](%gh-ic%/python/src/META-INF/python-core-common.xml) uses the following to call the external documentation
|
||||
For instance, [`intellij.python.community.impl.xml`](%gh-ic%/python/src/intellij.python.community.impl.xml) uses the following to call the external documentation
|
||||
provider before the default one (registered with `id="pythonDocumentationProvider"`):
|
||||
|
||||
```xml
|
||||
|
@ -117,7 +117,7 @@ Internal templates can be exposed in the <control>Files</control> category by ad
|
||||
```
|
||||
|
||||
**Example**:
|
||||
[`NewKotlinFileAction`](%gh-ic%/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/actions/NewKotlinFileAction.kt) for Kotlin files creation action.
|
||||
[`NewKotlinFileAction`](%gh-ic%/plugins/kotlin/kotlin.ide/src/org/jetbrains/kotlin/idea/actions/NewKotlinFileAction.kt) for Kotlin files creation action.
|
||||
|
||||
## Improving "Save File as Template…" Action
|
||||
|
||||
|
4
v.list
4
v.list
@ -3,8 +3,8 @@
|
||||
SYSTEM "https://resources.jetbrains.com/writerside/1.0/vars.dtd">
|
||||
|
||||
<vars>
|
||||
<var name="ijPlatform" value="2023.3.6"/>
|
||||
<var name="ijPlatformBuild" value="233.15026.9"/>
|
||||
<var name="ijPlatform" value="2024.1"/>
|
||||
<var name="ijPlatformBuild" value="241.14494.240"/>
|
||||
|
||||
<var name="gh-sdk-samples" value="https://github.com/JetBrains/intellij-sdk-code-samples/tree/main"/>
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user