This is an automated email from the ASF dual-hosted git repository.
geertjan pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-netbeans.git
The following commit(s) were added to refs/heads/master by this push:
new b10076d NETBEANS-357: corrected the target folder for toolbar link
for action (#409)
b10076d is described below
commit b10076d5487b13cca967a5c15cde2e0d9ec51bb3
Author: Svatopluk Dedic <[email protected]>
AuthorDate: Tue Feb 20 09:39:52 2018 +0100
NETBEANS-357: corrected the target folder for toolbar link for action (#409)
Thanks.
---
editor.lib2/nbproject/project.xml | 9 +++++
.../lib2/EditorActionRegistrationProcessor.java | 3 +-
.../EditorActionRegistrationTest.java | 40 ++++++++++++++++++++++
3 files changed, 51 insertions(+), 1 deletion(-)
diff --git a/editor.lib2/nbproject/project.xml
b/editor.lib2/nbproject/project.xml
index 859f2d2..a05fa92 100644
--- a/editor.lib2/nbproject/project.xml
+++ b/editor.lib2/nbproject/project.xml
@@ -170,6 +170,15 @@
</test-dependency>
<test-dependency>
<code-name-base>org.openide.loaders</code-name-base>
+ <compile-dependency/>
+ </test-dependency>
+ <test-dependency>
+ <code-name-base>org.openide.nodes</code-name-base>
+ <compile-dependency/>
+ </test-dependency>
+ <test-dependency>
+
<code-name-base>org.netbeans.modules.editor</code-name-base>
+ <compile-dependency/>
</test-dependency>
<test-dependency>
<code-name-base>org.openide.util.ui</code-name-base>
diff --git
a/editor.lib2/src/org/netbeans/modules/editor/lib2/EditorActionRegistrationProcessor.java
b/editor.lib2/src/org/netbeans/modules/editor/lib2/EditorActionRegistrationProcessor.java
index e567464..ac999de 100644
---
a/editor.lib2/src/org/netbeans/modules/editor/lib2/EditorActionRegistrationProcessor.java
+++
b/editor.lib2/src/org/netbeans/modules/editor/lib2/EditorActionRegistrationProcessor.java
@@ -257,10 +257,11 @@ public final class EditorActionRegistrationProcessor
extends LayerGeneratingProc
int toolBarPosition = annotation.toolBarPosition();
if (toolBarPosition != Integer.MAX_VALUE) {
StringBuilder toolBarPresenterFilePath = new StringBuilder(50);
- toolBarPresenterFilePath.append("Editors/Toolbar/");
+ toolBarPresenterFilePath.append("Editors/");
if (mimeType.length() > 0) {
toolBarPresenterFilePath.append(mimeType).append("/");
}
+ toolBarPresenterFilePath.append("Toolbars/Default/");
toolBarPresenterFilePath.append(actionName).append(".shadow");
LayerBuilder.File toolBarPresenterShadowFile =
layer.file(toolBarPresenterFilePath.toString());
toolBarPresenterShadowFile.stringvalue("originalFile",
actionFilePath);
diff --git
a/editor.lib2/test/unit/src/org/netbeans/modules/editor/lib2/testactionsregistration/EditorActionRegistrationTest.java
b/editor.lib2/test/unit/src/org/netbeans/modules/editor/lib2/testactionsregistration/EditorActionRegistrationTest.java
index fb6e65b..b410029 100644
---
a/editor.lib2/test/unit/src/org/netbeans/modules/editor/lib2/testactionsregistration/EditorActionRegistrationTest.java
+++
b/editor.lib2/test/unit/src/org/netbeans/modules/editor/lib2/testactionsregistration/EditorActionRegistrationTest.java
@@ -21,10 +21,12 @@ package
org.netbeans.modules.editor.lib2.testactionsregistration;
import java.awt.event.ActionEvent;
import java.io.ByteArrayOutputStream;
+import java.util.List;
import javax.swing.AbstractAction;
import javax.swing.Action;
import org.netbeans.junit.NbTestCase;
import org.netbeans.api.editor.EditorActionRegistration;
+import org.netbeans.modules.editor.impl.ToolbarActionsProvider;
import org.netbeans.modules.editor.lib2.actions.EditorActionUtilities;
import org.netbeans.modules.editor.lib2.actions.SearchableEditorKit;
import org.netbeans.spi.editor.AbstractEditorAction;
@@ -32,6 +34,8 @@ import org.openide.filesystems.FileObject;
import org.openide.filesystems.FileUtil;
import org.openide.util.test.AnnotationProcessorTestUtils;
+import org.openide.loaders.DataShadow;
+
/**
* Test registration of editor actions through an annotation.
*
@@ -93,6 +97,29 @@ public class EditorActionRegistrationTest extends NbTestCase
{
assertTrue((Boolean) a.getValue(AbstractEditorAction.NO_ICON_IN_MENU));
assertTrue((Boolean) a.getValue(AbstractEditorAction.NO_KEY_BINDING));
}
+
+ public void testToolbarRegistration() throws Exception {
+ FileObject toolbarDir =
FileUtil.getConfigFile("/Editors/text/foo/Toolbars/Default");
+ assertNotNull("text/base toolbar directory is null", toolbarDir);
+ FileObject toolbarLink =
toolbarDir.getFileObject(EditorTestActionToolbar.id + ".shadow"); // NOI18N
+ assertNotNull("Action link in toolbar must exist", toolbarLink);
+ FileObject orig = DataShadow.findOriginal(toolbarLink);
+ assertNotNull("Action registration must exist", orig);
+
+ List items = ToolbarActionsProvider.getToolbarItems("text/foo");
+ assertFalse("At least one registration must be present",
items.isEmpty());
+ for (Object o : items) {
+ if (!(o instanceof Action)) {
+ continue;
+ }
+ Action a = (Action)o;
+ String name = (String)a.getValue(Action.NAME);
+ if (EditorTestActionToolbar.id.equals(name)) {
+ return; // OK
+ }
+ }
+ fail("Registered action not found");
+ }
public void testNonPublicClass() throws Exception {
String nonPublicClassSource =
@@ -201,5 +228,18 @@ public class EditorActionRegistrationTest extends
NbTestCase {
}
}
+
+ @EditorActionRegistration(name = "ToolbarIcon", shortDescription = "",
+ mimeType="text/foo", toolBarPosition = 1000)
+ public static final class EditorTestActionToolbar extends AbstractAction {
+ static final String id = "ToolbarIcon";
+ public EditorTestActionToolbar() {
+ }
+ @Override
+ public void actionPerformed(ActionEvent evt) {
+ }
+
+ }
+
}
--
To stop receiving notification emails like this one, please contact
[email protected].
---------------------------------------------------------------------
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