[javafx] IJPL-34876 Declare texts for actions declaratively

GitOrigin-RevId: be7785a70516f27d9b42b21a57a032855628ce80
This commit is contained in:
Yuriy Artamonov
2025-03-03 18:47:15 +00:00
committed by intellij-monorepo-bot
parent a8ae2217c2
commit 7135829719
4 changed files with 12 additions and 27 deletions
+5 -3
View File
@@ -70,7 +70,7 @@
</intentionAction>
<lang.importOptimizer language="XML" implementationClass="org.jetbrains.plugins.javaFX.fxml.codeInsight.JavaFxImportsOptimizer" order="before XML"/>
<psi.referenceContributor implementation="org.jetbrains.plugins.javaFX.fxml.refs.JavaFxReferencesContributor"/>
<psi.referenceContributor language="JAVA" implementation="org.jetbrains.plugins.javaFX.fxml.refs.JavaFxReferencesContributor"/>
<getterSetterProvider implementation="org.jetbrains.plugins.javaFX.codeInsight.JavaFxGetterSetterPrototypeProvider"/>
<packaging.artifactPropertiesProvider implementation="org.jetbrains.plugins.javaFX.packaging.JavaFxArtifactPropertiesProvider"/>
<packaging.artifactType implementation="org.jetbrains.plugins.javaFX.packaging.JavaFxApplicationArtifactType"/>
@@ -114,8 +114,10 @@
</action>
<group id="JavaFxCreateActions">
<action class="org.jetbrains.plugins.javaFX.actions.CreateFxmlFileAction" id="NewFxmlFile"/>
<action class="org.jetbrains.plugins.javaFX.actions.CreateJavaFxApplicationAction" id="NewJavaFXApplication"/>
<action class="org.jetbrains.plugins.javaFX.actions.CreateFxmlFileAction" id="NewFxmlFile"
icon="AllIcons.FileTypes.Xml"/>
<action class="org.jetbrains.plugins.javaFX.actions.CreateJavaFxApplicationAction" id="NewJavaFXApplication"
icon="AllIcons.Nodes.Class"/>
<add-to-group group-id="NewGroup" anchor="after" relative-to-action="NewDir"/>
</group>
@@ -68,10 +68,10 @@ javafx.certificates.dialog.select.file.with.generated.keys=Select file containin
javafx.collapse.subtag.to.attribute.intention=Collapse tag ''{0}'' to attribute
javafx.collapse.subtag.to.attribute.intention.family.name=Collapse tag to attribute
javafx.create.new.fxml.file.description=Create new FXML file
javafx.create.new.fxml.file.title=FXML File
javafx.create.new.application.title=JavaFX Application
javafx.create.new.application.description=Create JavaFX application class
action.NewFxmlFile.description=Create new FXML file
action.NewFxmlFile.text=FXML File
action.NewJavaFXApplication.text=JavaFX Application
action.NewJavaFXApplication.description=Create JavaFX application class
javafx.edit.certificates.dialog.alias=&Alias:
javafx.edit.certificates.dialog.keypass=K&eypass:
javafx.edit.certificates.dialog.keystore=Ke&ystore:
@@ -1,7 +1,6 @@
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package org.jetbrains.plugins.javaFX.actions;
import com.intellij.icons.AllIcons;
import com.intellij.ide.IdeView;
import com.intellij.ide.fileTemplates.FileTemplate;
import com.intellij.ide.fileTemplates.FileTemplateManager;
@@ -19,7 +18,7 @@ import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.psi.JavaPsiFacade;
import com.intellij.psi.PsiDirectory;
import com.intellij.psi.PsiFile;
import com.intellij.psi.util.CachedValueProvider;
import com.intellij.psi.util.CachedValueProvider.Result;
import com.intellij.psi.util.CachedValuesManager;
import com.intellij.util.PathUtil;
import org.jetbrains.annotations.NonNls;
@@ -27,7 +26,6 @@ import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.jps.model.java.JavaModuleSourceRootTypes;
import org.jetbrains.jps.model.module.JpsModuleSourceRootType;
import org.jetbrains.plugins.javaFX.JavaFXBundle;
import org.jetbrains.plugins.javaFX.fxml.JavaFxFileTypeFactory;
import java.util.Arrays;
@@ -38,17 +36,9 @@ import java.util.Set;
import static com.intellij.psi.search.GlobalSearchScope.moduleWithDependenciesAndLibrariesScope;
import static org.jetbrains.plugins.javaFX.fxml.JavaFxCommonNames.JAVAFX_APPLICATION_APPLICATION;
/**
* @author pdolgov
*/
public final class CreateFxmlFileAction extends CreateFromTemplateActionBase {
private static final String INTERNAL_TEMPLATE_NAME = "FxmlFile.fxml";
public CreateFxmlFileAction() {
super(JavaFXBundle.message("javafx.create.new.fxml.file.title"), JavaFXBundle.message("javafx.create.new.fxml.file.description"),
AllIcons.FileTypes.Xml);
}
@Override
public @NotNull ActionUpdateThread getActionUpdateThread() {
return ActionUpdateThread.BGT;
@@ -148,7 +138,7 @@ public final class CreateFxmlFileAction extends CreateFromTemplateActionBase {
return CachedValuesManager.getManager(module.getProject()).getCachedValue(module, () -> {
boolean hasClass = JavaPsiFacade.getInstance(module.getProject())
.findClass(JAVAFX_APPLICATION_APPLICATION, moduleWithDependenciesAndLibrariesScope(module)) != null;
return CachedValueProvider.Result.create(hasClass, ProjectRootManager.getInstance(module.getProject()));
return Result.create(hasClass, ProjectRootManager.getInstance(module.getProject()));
});
}
}
@@ -1,7 +1,6 @@
// Copyright 2000-2021 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package org.jetbrains.plugins.javaFX.actions;
import com.intellij.icons.AllIcons;
import com.intellij.ide.fileTemplates.FileTemplate;
import com.intellij.ide.fileTemplates.FileTemplateManager;
import com.intellij.ide.fileTemplates.actions.CreateFromTemplateActionBase;
@@ -11,21 +10,15 @@ import com.intellij.openapi.project.Project;
import com.intellij.psi.PsiDirectory;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.jps.model.java.JavaSourceRootType;
import org.jetbrains.plugins.javaFX.JavaFXBundle;
import java.util.Set;
import static org.jetbrains.plugins.javaFX.actions.CreateFxmlFileAction.isJavaFxTemplateAvailable;
public final class CreateJavaFxApplicationAction extends CreateFromTemplateActionBase {
final class CreateJavaFxApplicationAction extends CreateFromTemplateActionBase {
private static final String FILE_TEMPLATE_NAME = "JavaFXApplication.java";
public CreateJavaFxApplicationAction() {
super(JavaFXBundle.message("javafx.create.new.application.title"), JavaFXBundle.message("javafx.create.new.application.description"),
AllIcons.Nodes.Class);
}
@Override
public @NotNull ActionUpdateThread getActionUpdateThread() {
return ActionUpdateThread.BGT;