This is an automated email from the ASF dual-hosted git repository.
lkishalmi pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/netbeans.git
The following commit(s) were added to refs/heads/master by this push:
new 93274ab04e YAML Support Layer Code Cleanup
93274ab04e is described below
commit 93274ab04ec381f53408a73540fb958a325f47e9
Author: Laszlo Kishalmi <[email protected]>
AuthorDate: Sun Aug 28 20:35:47 2022 -0700
YAML Support Layer Code Cleanup
---
ide/languages.yaml/nbproject/project.xml | 26 +++---
.../yaml/EmbeddedSectionsHighlighting.java | 3 +
.../modules/languages/yaml/YamlDataObject.java | 69 ----------------
.../modules/languages/yaml/YamlLanguage.java | 85 +++++++++++++++++++-
.../modules/languages/yaml/YamlTokenId.java | 2 +
.../org/netbeans/modules/languages/yaml/layer.xml | 92 +---------------------
.../languages/yaml/ruby/RubyEmbeddingProvider.java | 2 +
7 files changed, 98 insertions(+), 181 deletions(-)
diff --git a/ide/languages.yaml/nbproject/project.xml
b/ide/languages.yaml/nbproject/project.xml
index 09f58a95be..d63462101d 100644
--- a/ide/languages.yaml/nbproject/project.xml
+++ b/ide/languages.yaml/nbproject/project.xml
@@ -142,31 +142,23 @@
</run-dependency>
</dependency>
<dependency>
- <code-name-base>org.openide.filesystems</code-name-base>
- <build-prerequisite/>
- <compile-dependency/>
- <run-dependency>
- <specification-version>9.0</specification-version>
- </run-dependency>
- </dependency>
- <dependency>
- <code-name-base>org.openide.loaders</code-name-base>
+ <code-name-base>org.openide.awt</code-name-base>
<build-prerequisite/>
<compile-dependency/>
<run-dependency>
- <specification-version>7.61</specification-version>
+ <specification-version>7.85</specification-version>
</run-dependency>
</dependency>
<dependency>
- <code-name-base>org.openide.nodes</code-name-base>
+ <code-name-base>org.openide.filesystems</code-name-base>
<build-prerequisite/>
<compile-dependency/>
<run-dependency>
- <specification-version>7.28</specification-version>
+ <specification-version>9.0</specification-version>
</run-dependency>
</dependency>
<dependency>
- <code-name-base>org.openide.util.ui</code-name-base>
+ <code-name-base>org.openide.util</code-name-base>
<build-prerequisite/>
<compile-dependency/>
<run-dependency>
@@ -174,19 +166,19 @@
</run-dependency>
</dependency>
<dependency>
- <code-name-base>org.openide.util</code-name-base>
+ <code-name-base>org.openide.util.lookup</code-name-base>
<build-prerequisite/>
<compile-dependency/>
<run-dependency>
- <specification-version>9.3</specification-version>
+ <specification-version>8.0</specification-version>
</run-dependency>
</dependency>
<dependency>
- <code-name-base>org.openide.util.lookup</code-name-base>
+ <code-name-base>org.openide.util.ui</code-name-base>
<build-prerequisite/>
<compile-dependency/>
<run-dependency>
- <specification-version>8.0</specification-version>
+ <specification-version>9.3</specification-version>
</run-dependency>
</dependency>
<dependency>
diff --git
a/ide/languages.yaml/src/org/netbeans/modules/languages/yaml/EmbeddedSectionsHighlighting.java
b/ide/languages.yaml/src/org/netbeans/modules/languages/yaml/EmbeddedSectionsHighlighting.java
index 964f45473d..6711aad43c 100644
---
a/ide/languages.yaml/src/org/netbeans/modules/languages/yaml/EmbeddedSectionsHighlighting.java
+++
b/ide/languages.yaml/src/org/netbeans/modules/languages/yaml/EmbeddedSectionsHighlighting.java
@@ -27,6 +27,7 @@ import javax.swing.text.BadLocationException;
import javax.swing.text.Document;
import javax.swing.text.StyleConstants;
import org.netbeans.api.editor.mimelookup.MimeLookup;
+import org.netbeans.api.editor.mimelookup.MimeRegistration;
import org.netbeans.api.editor.settings.AttributesUtilities;
import org.netbeans.api.editor.settings.FontColorSettings;
import org.netbeans.api.lexer.TokenHierarchy;
@@ -36,6 +37,7 @@ import org.netbeans.api.lexer.TokenSequence;
import org.netbeans.editor.BaseDocument;
import org.netbeans.editor.Utilities;
import org.netbeans.lib.editor.util.swing.DocumentUtilities;
+import static org.netbeans.modules.languages.yaml.YamlTokenId.YAML_MIME_TYPE;
import org.netbeans.spi.editor.highlighting.HighlightsLayer;
import org.netbeans.spi.editor.highlighting.HighlightsLayerFactory;
import org.netbeans.spi.editor.highlighting.HighlightsSequence;
@@ -255,6 +257,7 @@ public class EmbeddedSectionsHighlighting extends
AbstractHighlightsContainer im
}
} // End of Highlights class
+ @MimeRegistration(mimeType = YAML_MIME_TYPE, service =
HighlightsLayerFactory.class)
public static final class Factory implements HighlightsLayerFactory {
@Override
diff --git
a/ide/languages.yaml/src/org/netbeans/modules/languages/yaml/YamlDataObject.java
b/ide/languages.yaml/src/org/netbeans/modules/languages/yaml/YamlDataObject.java
deleted file mode 100644
index d995063c07..0000000000
---
a/ide/languages.yaml/src/org/netbeans/modules/languages/yaml/YamlDataObject.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.netbeans.modules.languages.yaml;
-
-import java.io.IOException;
-import org.netbeans.core.spi.multiview.MultiViewElement;
-import org.netbeans.core.spi.multiview.text.MultiViewEditorElement;
-import org.openide.filesystems.FileObject;
-import org.openide.loaders.DataNode;
-import org.openide.loaders.DataObjectExistsException;
-import org.openide.loaders.MultiDataObject;
-import org.openide.loaders.MultiFileLoader;
-import org.openide.nodes.Children;
-import org.openide.nodes.Node;
-import org.openide.util.Lookup;
-import org.openide.util.NbBundle;
-import org.openide.windows.TopComponent;
-
-/**
- *
- * @author Ondrej Brejla <[email protected]>
- */
-public class YamlDataObject extends MultiDataObject {
-
- public YamlDataObject(FileObject pf, MultiFileLoader loader) throws
DataObjectExistsException, IOException {
- super(pf, loader);
- registerEditor(YamlTokenId.YAML_MIME_TYPE, true);
- }
-
- @Override
- protected Node createNodeDelegate() {
- return new DataNode(this, Children.LEAF, getLookup());
- }
-
- @Override
- protected int associateLookup() {
- return 1;
- }
-
- @NbBundle.Messages("Source=&Source")
- @MultiViewElement.Registration(
- displayName="#Source",
- iconBase="org/netbeans/modules/languages/yaml/yaml_files_16.png",
- persistenceType=TopComponent.PERSISTENCE_ONLY_OPENED,
- mimeType=YamlTokenId.YAML_MIME_TYPE,
- preferredID="neon.source",
- position=1
- )
- public static MultiViewEditorElement createMultiViewEditorElement(Lookup
context) {
- return new MultiViewEditorElement(context);
- }
-
-}
diff --git
a/ide/languages.yaml/src/org/netbeans/modules/languages/yaml/YamlLanguage.java
b/ide/languages.yaml/src/org/netbeans/modules/languages/yaml/YamlLanguage.java
index 420a5ce7aa..218e7e2b63 100644
---
a/ide/languages.yaml/src/org/netbeans/modules/languages/yaml/YamlLanguage.java
+++
b/ide/languages.yaml/src/org/netbeans/modules/languages/yaml/YamlLanguage.java
@@ -19,6 +19,8 @@
package org.netbeans.modules.languages.yaml;
import org.netbeans.api.lexer.Language;
+import org.netbeans.core.spi.multiview.MultiViewElement;
+import org.netbeans.core.spi.multiview.text.MultiViewEditorElement;
import org.netbeans.modules.csl.api.CodeCompletionHandler;
import org.netbeans.modules.csl.api.InstantRenamer;
import org.netbeans.modules.csl.api.KeystrokeHandler;
@@ -27,7 +29,11 @@ import org.netbeans.modules.csl.api.StructureScanner;
import org.netbeans.modules.csl.spi.DefaultLanguageConfig;
import org.netbeans.modules.csl.spi.LanguageRegistration;
import org.netbeans.modules.parsing.spi.Parser;
+import org.openide.awt.*;
import org.openide.filesystems.MIMEResolver;
+import org.openide.util.Lookup;
+import org.openide.util.NbBundle;
+import org.openide.windows.TopComponent;
/**
* GSF Configuration for YAML
@@ -35,10 +41,68 @@ import org.openide.filesystems.MIMEResolver;
* @author Tor Norbye
*/
@MIMEResolver.ExtensionRegistration(displayName = "#YAMLResolver",
-extension = {"yml", "yaml"},
-mimeType = "text/x-yaml",
-position = 280)
-@LanguageRegistration(mimeType = "text/x-yaml") //NOI18N
+ extension = {"yml", "yaml"},
+ mimeType = "text/x-yaml",
+ position = 280
+)
+@ActionReferences({
+ @ActionReference(
+ path = "Loaders/text/x-yaml/Actions",
+ id = @ActionID(category = "System", id =
"org.openide.actions.OpenAction"),
+ position = 100,
+ separatorAfter = 200
+ ),
+ @ActionReference(
+ path = "Loaders/text/x-yaml/Actions",
+ id = @ActionID(category = "Edit", id =
"org.openide.actions.CutAction"),
+ position = 300
+ ),
+ @ActionReference(
+ path = "Loaders/text/x-yaml/Actions",
+ id = @ActionID(category = "Edit", id =
"org.openide.actions.CopyAction"),
+ position = 400
+ ),
+ @ActionReference(
+ path = "Loaders/text/x-yaml/Actions",
+ id = @ActionID(category = "Edit", id =
"org.openide.actions.PasteAction"),
+ position = 500,
+ separatorAfter = 600
+ ),
+ @ActionReference(
+ path = "Loaders/text/x-yaml/Actions",
+ id = @ActionID(category = "Edit", id =
"org.openide.actions.DeleteAction"),
+ position = 700
+ ),
+ @ActionReference(
+ path = "Loaders/text/x-yaml/Actions",
+ id = @ActionID(category = "System", id =
"org.openide.actions.RenameAction"),
+ position = 800,
+ separatorAfter = 900
+ ),
+ @ActionReference(
+ path = "Loaders/text/x-yaml/Actions",
+ id = @ActionID(category = "System", id =
"org.openide.actions.SaveAsTemplateAction"),
+ position = 1000,
+ separatorAfter = 1100
+ ),
+ @ActionReference(
+ path = "Loaders/text/x-yaml/Actions",
+ id = @ActionID(category = "System", id =
"org.openide.actions.FileSystemAction"),
+ position = 1200,
+ separatorAfter = 1300
+ ),
+ @ActionReference(
+ path = "Loaders/text/x-yaml/Actions",
+ id = @ActionID(category = "System", id =
"org.openide.actions.ToolsAction"),
+ position = 1400
+ ),
+ @ActionReference(
+ path = "Loaders/text/x-yaml/Actions",
+ id = @ActionID(category = "System", id =
"org.openide.actions.PropertiesAction"),
+ position = 1500
+ )
+})
+@LanguageRegistration(mimeType = "text/x-yaml", useMultiview = true) //NOI18N
public class YamlLanguage extends DefaultLanguageConfig {
@Override
@@ -90,4 +154,17 @@ public class YamlLanguage extends DefaultLanguageConfig {
public InstantRenamer getInstantRenamer() {
return null;
}
+
+ @NbBundle.Messages("Source=&Source")
+ @MultiViewElement.Registration(
+ displayName="#Source",
+ iconBase="org/netbeans/modules/languages/yaml/yaml_files_16.png",
+ persistenceType=TopComponent.PERSISTENCE_ONLY_OPENED,
+ mimeType=YamlTokenId.YAML_MIME_TYPE,
+ preferredID="yaml.source",
+ position=100
+ )
+ public static MultiViewEditorElement createMultiViewEditorElement(Lookup
context) {
+ return new MultiViewEditorElement(context);
+ }
}
diff --git
a/ide/languages.yaml/src/org/netbeans/modules/languages/yaml/YamlTokenId.java
b/ide/languages.yaml/src/org/netbeans/modules/languages/yaml/YamlTokenId.java
index 32f9811df7..f0fd5f60fa 100644
---
a/ide/languages.yaml/src/org/netbeans/modules/languages/yaml/YamlTokenId.java
+++
b/ide/languages.yaml/src/org/netbeans/modules/languages/yaml/YamlTokenId.java
@@ -22,6 +22,7 @@ import java.util.Collection;
import java.util.EnumSet;
import java.util.HashMap;
import java.util.Map;
+import org.netbeans.api.editor.mimelookup.MimeRegistration;
import org.netbeans.api.lexer.InputAttributes;
import org.netbeans.api.lexer.Language;
@@ -139,6 +140,7 @@ public enum YamlTokenId implements TokenId {
}
}.language();
+ @MimeRegistration(mimeType = YAML_MIME_TYPE, service = Language.class)
public static Language<YamlTokenId> language() {
return language;
}
diff --git
a/ide/languages.yaml/src/org/netbeans/modules/languages/yaml/layer.xml
b/ide/languages.yaml/src/org/netbeans/modules/languages/yaml/layer.xml
index ac3101adaa..30d90dcb96 100644
--- a/ide/languages.yaml/src/org/netbeans/modules/languages/yaml/layer.xml
+++ b/ide/languages.yaml/src/org/netbeans/modules/languages/yaml/layer.xml
@@ -26,19 +26,6 @@
<folder name="x-yaml">
<attr name="SystemFileSystem.localizingBundle"
stringvalue="org.netbeans.modules.languages.yaml.Bundle"/>
- <file name="language.instance">
- <attr name="instanceCreate"
methodvalue="org.netbeans.modules.languages.yaml.YamlTokenId.language"/>
- <attr name="instanceOf"
stringvalue="org.netbeans.api.lexer.Language"/>
- </file>
-
- <file
name="org-netbeans-modules-languages-yaml-ruby-RubyEmbeddingProvider$Factory.instance">
- <attr name="instanceOf"
stringvalue="org.netbeans.modules.parsing.spi.TaskFactory"/>
- </file>
-
- <file
name="org-netbeans-modules-languages-yaml-EmbeddedSectionsHighlighting$Factory.instance">
- <attr name="instanceOf"
stringvalue="org.netbeans.spi.editor.highlighting.HighlightsLayerFactory"/>
- </file>
-
<folder name="FontsColors">
<folder name="NetBeans">
<folder name="Defaults">
@@ -75,7 +62,7 @@
<file name="TabsAndIndents.instance">
<attr name="instanceOf"
stringvalue="org.netbeans.modules.options.editor.spi.PreferencesCustomizer$Factory"/>
<attr name="instanceCreate"
methodvalue="org.netbeans.modules.options.editor.spi.CustomizerFactories.createDefaultTabsAndIndentsCustomizerFactory"/>
- <attr name="previewTextFile"
stringvalue="org/netbeans/modules/languages/yaml/YamlExample.html"/>
+ <attr name="previewTextFile"
stringvalue="org/netbeans/modules/languages/yaml/YamlExample.yaml"/>
<attr name="position" intvalue="100"/>
</file>
</folder>
@@ -100,83 +87,6 @@
<folder name="x-yaml">
<attr name="SystemFileSystem.icon"
urlvalue="nbresloc:/org/netbeans/modules/languages/yaml/yaml_files_16.png"/>
<attr name="iconBase"
stringvalue="org/netbeans/modules/languages/yaml/yaml_files_16.png"/>
- <folder name="Actions">
- <file name="CopyAction.shadow">
- <attr name="originalFile"
stringvalue="Actions/Edit/org-openide-actions-CopyAction.instance"/>
- <attr name="position" intvalue="400"/>
- </file>
- <file name="CutAction.shadow">
- <attr name="originalFile"
stringvalue="Actions/Edit/org-openide-actions-CutAction.instance"/>
- <attr name="position" intvalue="300"/>
- </file>
- <file name="DeleteAction.shadow">
- <attr name="originalFile"
stringvalue="Actions/Edit/org-openide-actions-DeleteAction.instance"/>
- <attr name="position" intvalue="800"/>
- </file>
- <file name="FileSystemAction.shadow">
- <attr name="originalFile"
stringvalue="Actions/System/org-openide-actions-FileSystemAction.instance"/>
- <attr name="position" intvalue="1300"/>
- </file>
- <file name="NewAction.shadow">
- <attr name="originalFile"
stringvalue="Actions/System/org-openide-actions-NewAction.instance"/>
- <attr name="position" intvalue="700"/>
- </file>
- <file name="OpenAction.shadow">
- <attr name="originalFile"
stringvalue="Actions/System/org-openide-actions-OpenAction.instance"/>
- <attr name="position" intvalue="100"/>
- </file>
- <file name="PasteAction.shadow">
- <attr name="originalFile"
stringvalue="Actions/Edit/org-openide-actions-PasteAction.instance"/>
- <attr name="position" intvalue="500"/>
- </file>
- <file name="PropertiesAction.shadow">
- <attr name="originalFile"
stringvalue="Actions/System/org-openide-actions-PropertiesAction.instance"/>
- <attr name="position" intvalue="1600"/>
- </file>
- <file name="RenameAction.shadow">
- <attr name="originalFile"
stringvalue="Actions/System/org-openide-actions-RenameAction.instance"/>
- <attr name="position" intvalue="900"/>
- </file>
- <file name="SaveAsTemplateAction.shadow">
- <attr name="originalFile"
stringvalue="Actions/System/org-openide-actions-SaveAsTemplateAction.instance"/>
- <attr name="position" intvalue="1100"/>
- </file>
- <file name="Separator1.instance">
- <attr name="instanceClass"
stringvalue="javax.swing.JSeparator"/>
- <attr name="position" intvalue="200"/>
- </file>
- <file name="Separator2.instance">
- <attr name="instanceClass"
stringvalue="javax.swing.JSeparator"/>
- <attr name="position" intvalue="600"/>
- </file>
- <file name="Separator3.instance">
- <attr name="instanceClass"
stringvalue="javax.swing.JSeparator"/>
- <attr name="position" intvalue="1000"/>
- </file>
- <file name="Separator4.instance">
- <attr name="instanceClass"
stringvalue="javax.swing.JSeparator"/>
- <attr name="position" intvalue="1200"/>
- </file>
- <file name="Separator5.instance">
- <attr name="instanceClass"
stringvalue="javax.swing.JSeparator"/>
- <attr name="position" intvalue="1400"/>
- </file>
-
-
- <file name="ToolsAction.shadow">
- <attr name="originalFile"
stringvalue="Actions/System/org-openide-actions-ToolsAction.instance"/>
- <attr name="position" intvalue="1500"/>
- </file>
- </folder>
- <folder name="Factories">
- <file name="YamlDataLoader.instance">
- <attr name="SystemFileSystem.icon"
urlvalue="nbresloc:/org/netbeans/modules/languages/yaml/yaml_files_16.png"/>
- <attr name="dataObjectClass"
stringvalue="org.netbeans.modules.languages.yaml.YamlDataObject"/>
- <attr name="instanceCreate"
methodvalue="org.openide.loaders.DataLoaderPool.factory"/>
- <attr name="mimeType" stringvalue="text/x-yaml"/>
- <attr name="position" intvalue="1083"/>
- </file>
- </folder>
</folder>
</folder>
</folder>
diff --git
a/ide/languages.yaml/src/org/netbeans/modules/languages/yaml/ruby/RubyEmbeddingProvider.java
b/ide/languages.yaml/src/org/netbeans/modules/languages/yaml/ruby/RubyEmbeddingProvider.java
index 44a6ee6dc0..ac73ae9300 100644
---
a/ide/languages.yaml/src/org/netbeans/modules/languages/yaml/ruby/RubyEmbeddingProvider.java
+++
b/ide/languages.yaml/src/org/netbeans/modules/languages/yaml/ruby/RubyEmbeddingProvider.java
@@ -24,6 +24,7 @@ import java.util.Collections;
import java.util.List;
import java.util.logging.Logger;
import javax.swing.text.Document;
+import org.netbeans.api.editor.mimelookup.MimeRegistration;
import org.netbeans.api.lexer.Token;
import org.netbeans.api.lexer.TokenHierarchy;
import org.netbeans.api.lexer.TokenSequence;
@@ -200,6 +201,7 @@ public class RubyEmbeddingProvider extends
EmbeddingProvider {
// }
}
+ @MimeRegistration(mimeType = YamlTokenId.YAML_MIME_TYPE, service =
TaskFactory.class)
public static final class Factory extends TaskFactory {
public Factory() {
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists