1 11 12 package org.eclipse.jdt.internal.ui.text.spelling; 13 14 import java.net.URL ; 15 import java.util.StringTokenizer ; 16 17 import org.eclipse.core.runtime.Plugin; 18 import org.eclipse.core.runtime.Preferences.IPropertyChangeListener; 19 import org.eclipse.core.runtime.Preferences.PropertyChangeEvent; 20 21 import org.eclipse.jdt.core.JavaCore; 22 23 import org.eclipse.jdt.internal.ui.text.spelling.engine.AbstractSpellDictionary; 24 25 30 public class TaskTagDictionary extends AbstractSpellDictionary implements IPropertyChangeListener { 31 32 35 protected final URL getURL() { 36 return null; 37 } 38 39 42 protected synchronized boolean load(final URL url) { 43 44 final Plugin plugin= JavaCore.getPlugin(); 45 if (plugin != null) { 46 47 plugin.getPluginPreferences().addPropertyChangeListener(this); 48 return updateTaskTags(); 49 } 50 return false; 51 } 52 53 56 public void propertyChange(final PropertyChangeEvent event) { 57 58 if (JavaCore.COMPILER_TASK_TAGS.equals(event.getProperty())) 59 updateTaskTags(); 60 } 61 62 65 public synchronized void unload() { 66 67 final Plugin plugin= JavaCore.getPlugin(); 68 if (plugin != null) 69 plugin.getPluginPreferences().removePropertyChangeListener(this); 70 71 super.unload(); 72 } 73 74 79 protected boolean updateTaskTags() { 80 81 final String tags= JavaCore.getOption(JavaCore.COMPILER_TASK_TAGS); 82 if (tags != null) { 83 84 unload(); 85 86 final StringTokenizer tokenizer= new StringTokenizer (tags, ","); while (tokenizer.hasMoreTokens()) 88 hashWord(tokenizer.nextToken()); 89 90 return true; 91 } 92 return false; 93 } 94 95 99 protected String stripNonLetters(String word) { 100 return word; 101 } 102 } 103 | Popular Tags |