hi,
Does this patch work?
2011/6/27 Robert Gründler <[email protected]>
> Hi again,
>
> i tried to follow the Wiki entry to add SemanticHighlighting to my plugin
> for
> PHP Annotations:
>
> http://wiki.eclipse.org/PDT/**Dev2Dev/Semantic<http://wiki.eclipse.org/PDT/Dev2Dev/Semantic>
>
> by adding an extension point like this:
>
> <extension
> point="org.eclipse.wst.sse.ui.**semanticHighlighting">
> <highlighting
> class="org.eclipse.symfony.ui.**editor.highlighting.**
> AnnotationHighlighting"
> target="org.eclipse.php.core.**phpsource">
> </highlighting>
> </extension>
>
> I'm getting a ClassNotFoundException during startup for
> org.eclipse.symfony.ui.editor.**highlighting.**AnnotationHighlighting,
> although my plugin is exporting the necessary packages.
>
> According to the eclipse irc channel, the way the SemanticHighlighting
> extensions are loaded by the PDT plugin will only work for internal
> pdt-bundle classes (in SemanticHighlightingManager line 71).
>
> Is this a bug in PDT or am i just not providing the extension point
> correctly?
>
> thanks!
>
> -robert
>
>
>
>
> ______________________________**_________________
> pdt-dev mailing list
> [email protected]
> https://dev.eclipse.org/**mailman/listinfo/pdt-dev<https://dev.eclipse.org/mailman/listinfo/pdt-dev>
>
--
Thanks!
Best Regards!
Zhao
### Eclipse Workspace Patch 1.0
#P org.eclipse.php.ui
Index: src/org/eclipse/php/internal/ui/editor/SemanticHighlightingManager.java
===================================================================
RCS file:
/cvsroot/tools/org.eclipse.pdt/plugins/org.eclipse.php.ui/src/org/eclipse/php/internal/ui/editor/SemanticHighlightingManager.java,v
retrieving revision 1.7
diff -u -r1.7 SemanticHighlightingManager.java
--- src/org/eclipse/php/internal/ui/editor/SemanticHighlightingManager.java
21 Apr 2011 06:28:23 -0000 1.7
+++ src/org/eclipse/php/internal/ui/editor/SemanticHighlightingManager.java
27 Jun 2011 12:20:21 -0000
@@ -55,29 +55,13 @@
}
}
- @SuppressWarnings("unchecked")
- private SemanticHighlightingManager loadSemanticHighlighter(String
className)
- throws Exception {
- Class<? extends AbstractSemanticHighlighting> clazz = (Class<?
extends AbstractSemanticHighlighting>) Class
- .forName(className);
- return loadSemanticHighlighter(clazz);
- }
-
- private SemanticHighlightingManager loadSemanticHighlighter(
- Class<? extends AbstractSemanticHighlighting> clazz)
- throws Exception {
- AbstractSemanticHighlighting instance = clazz.newInstance();
- rules.add(instance);
- return this;
- }
-
private SemanticHighlightingManager loadContributor(
IConfigurationElement[] elements) throws Exception {
for (IConfigurationElement element : elements) {
String target = element.getAttribute("target");
if ("org.eclipse.php.core.phpsource".equals(target)) {
- String className =
element.getAttribute("class");
- loadSemanticHighlighter(className);
+ rules.add((AbstractSemanticHighlighting) element
+
.createExecutableExtension("class"));
}
}
return this;
@@ -99,18 +83,21 @@
for (AbstractSemanticHighlighting rule : semanticHighlightings)
{
rule.initDefaultPreferences();
SemanticHighlightingStyle style = rule.getStyle();
- setDefaultAndFireEvent(store,
rule.getColorPreferenceKey(), style
- .getDefaultTextColor());
- store.setDefault(rule.getBoldPreferenceKey(), style
- .isBoldByDefault());
- store.setDefault(rule.getItalicPreferenceKey(), style
- .isItalicByDefault());
- store.setDefault(rule.getStrikethroughPreferenceKey(),
style
- .isStrikethroughByDefault());
- store.setDefault(rule.getUnderlinePreferenceKey(), style
- .isUnderlineByDefault());
- store.setDefault(rule.getEnabledPreferenceKey(), style
- .isEnabledByDefault());
+ setDefaultAndFireEvent(store,
rule.getColorPreferenceKey(),
+ style.getDefaultTextColor());
+ // setDefaultAndFireEvent(store,
+ // rule.getBackgroundColorPreferenceKey(), style
+ // .);
+ store.setDefault(rule.getBoldPreferenceKey(),
+ style.isBoldByDefault());
+ store.setDefault(rule.getItalicPreferenceKey(),
+ style.isItalicByDefault());
+ store.setDefault(rule.getStrikethroughPreferenceKey(),
+ style.isStrikethroughByDefault());
+ store.setDefault(rule.getUnderlinePreferenceKey(),
+ style.isUnderlineByDefault());
+ store.setDefault(rule.getEnabledPreferenceKey(),
+ style.isEnabledByDefault());
}
return this;
}
_______________________________________________
pdt-dev mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/pdt-dev