Revision 40961 trunk/org.gvsig.desktop/org.gvsig.desktop.library/org.gvsig.fmap.control/src/main/java/org/gvsig/fmap/mapcontrol/tools/CompoundBehavior.java

View differences:

CompoundBehavior.java
43 43
 * @author Pablo Piqueras Bartolom?
44 44
 */
45 45
public class CompoundBehavior extends Behavior {
46
    
46 47
	/**
47 48
	 * List of all behaviors that compound this one.
48 49
	 */
......
71 72
            }
72 73
        }
73 74

  
75
        
76
        boolean first = true;
74 77
		for (int i = 0; i < behaviors.length; i++) {
75
		    
76
			this.behaviors.add(behaviors[i]);
77

  
78
			if (i == 0)
79
				draws.add(Boolean.TRUE);
80
			else
81
				draws.add(Boolean.FALSE);
78
		
79
		    if (!containsBehavior(behaviors[i])) {
80
		        this.behaviors.add(behaviors[i]);
81
		        /*
82
		         * Only the first in set as real-time drawn
83
		         */
84
		        if (first) {
85
		            draws.add(Boolean.TRUE);
86
		        } else {
87
	                draws.add(Boolean.FALSE);
88
		        }
89
		        first = false;
90
		    }
82 91
		}
83 92
	}
84 93

  
......
97 106
	        throw new IllegalArgumentException("mt");
98 107
	    }
99 108
	    
100
		behaviors.add(mt);
101
		draws.add(new Boolean(draw));
109
	    if (!containsBehavior(mt)) {
110
	        behaviors.add(mt);
111
	        draws.add(new Boolean(draw));
112
	    }
102 113
	}
103 114

  
104 115
	/**

Also available in: Unified diff