/[schmitzm]/branches/1.0-gt2-2.6/src/skrueger/i8n/Translation.java
ViewVC logotype

Diff of /branches/1.0-gt2-2.6/src/skrueger/i8n/Translation.java

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 486 by alfonx, Tue Oct 20 16:25:26 2009 UTC revision 572 by alfonx, Wed Nov 25 07:03:58 2009 UTC
# Line 39  import java.util.Iterator; Line 39  import java.util.Iterator;
39  import java.util.List;  import java.util.List;
40  import java.util.Locale;  import java.util.Locale;
41  import java.util.Random;  import java.util.Random;
42    import java.util.WeakHashMap;
43    
44  import javax.swing.JComponent;  import javax.swing.JComponent;
45    
# Line 64  public class Translation extends HashMap Line 65  public class Translation extends HashMap
65          static final Logger LOGGER = Logger.getLogger(Translation.class);          static final Logger LOGGER = Logger.getLogger(Translation.class);
66          static String activeLang = Locale.getDefault().getLanguage();          static String activeLang = Locale.getDefault().getLanguage();
67    
68          static protected List<PropertyChangeListener> listeners = new ArrayList<PropertyChangeListener>();          static protected WeakHashSet<PropertyChangeListener> listeners = new WeakHashSet<PropertyChangeListener>(
69                            PropertyChangeListener.class);
70    
71          static {          static {
72    
# Line 143  public class Translation extends HashMap Line 145  public class Translation extends HashMap
145    
146                  fireLocaleChangeEvents();                  fireLocaleChangeEvents();
147    
148                  LOGGER.info("skrueger.i8n.Translation switched ActiveLang to " + newLang);                  LOGGER.info("skrueger.i8n.Translation switched ActiveLang to "
149                                    + newLang);
150          }          }
151    
152          /**          /**
# Line 284  public class Translation extends HashMap Line 287  public class Translation extends HashMap
287    
288          /**          /**
289           * {@link PropertyChangeListener} can be registered to be informed when the           * {@link PropertyChangeListener} can be registered to be informed when the
290           * {@link Locale} changed.           * {@link Locale} changed.<br>
291             * The listeners are kept in a {@link WeakHashMap}, so you have to keep a
292             * reference to the listener or it will be removed!
293           *           *
294           * @param propertyChangeListener           * @param propertyChangeListener
295             *            A {@link PropertyChangeListener} that will be called when
296             *            {@link #setActiveLang(String)} changes the language.
297           */           */
298          public static void addLocaleChangeListener(          public static void addLocaleChangeListener(
299                          PropertyChangeListener propertyChangeListener) {                          PropertyChangeListener propertyChangeListener) {
# Line 313  public class Translation extends HashMap Line 320  public class Translation extends HashMap
320           */           */
321          public void addTranslationChangeListener(ActionListener actionListener) {          public void addTranslationChangeListener(ActionListener actionListener) {
322                  if (actionListeners.add(actionListener)) {                  if (actionListeners.add(actionListener)) {
323                          LOGGER.debug("registering a new translationChangeActionListener in the WeakHashSet");                          LOGGER
324                                            .debug("registering a new translationChangeActionListener in the WeakHashSet");
325                  }                  }
326          }          }
327    

Legend:
Removed from v.486  
changed lines
  Added in v.572

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26