Ignore:
Timestamp:
10/01/12 12:01:25 (12 years ago)
Author:
fglaser
Message:
  • JFCMonitor: Added new ContainerListener? that listens on component added and component removed events
  • small refactorings
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/quest-jfcmonitor/src/main/java/de/ugoe/cs/quest/jfcmonitor/JFCComponent.java

    r850 r851  
    44import java.awt.Component; 
    55import java.awt.Container; 
     6import java.awt.event.ContainerListener; 
    67import java.beans.PropertyChangeListener; 
    78import java.io.File; 
     
    4647    private static List<PropertyChangeListener> propertyChangeListeners =  
    4748        new ArrayList<PropertyChangeListener>(); 
     49     
     50    private static List<ContainerListener> containerListeners = 
     51                new ArrayList<ContainerListener>(); 
    4852 
    4953    /** 
     
    6064    } 
    6165     
    62     public static void addListener(PropertyChangeListener list){ 
     66    public static void addPropertyChangeListener(PropertyChangeListener list){ 
    6367        propertyChangeListeners.add(list); 
     68    } 
     69     
     70    public static void addContainerListener(ContainerListener list){ 
     71        containerListeners.add(list); 
     72    } 
     73     
     74    public static boolean isKnown(Component component){ 
     75        if (knownComponents.containsKey(component)) 
     76                return true; 
     77        return false; 
    6478    } 
    6579 
     
    190204 
    191205        if (component instanceof Container) { 
     206                for (ContainerListener listener: containerListeners) 
     207                        ((Container) component).addContainerListener(listener); 
     208                 
    192209            for (Component childComponent : ((Container) component).getComponents()) { 
    193210                add(childComponent, this); 
     
    223240        builder.append("  <component"); 
    224241        if (parent != null){ 
     242                if (!JFCComponent.isKnown(parent.component)) 
     243                        throw new AssertionError("Referenced parent is not known."); 
    225244                builder.append(" parent=\"" + Integer.toHexString(parent.component.hashCode()) + "\""); 
    226245        } 
Note: See TracChangeset for help on using the changeset viewer.