Revision 1714 trunk/org.gvsig.app.document.layout2.app/org.gvsig.app.document.layout2.app.mainplugin/src/main/java/org/gvsig/app/project/documents/layout/tools/LayoutSelectListenerImpl.java

View differences:

LayoutSelectListenerImpl.java
25 25
import java.awt.event.MouseEvent;
26 26
import java.awt.geom.Point2D;
27 27
import java.util.ArrayList;
28

  
29 28
import org.gvsig.andami.PluginServices;
30 29
import org.gvsig.app.project.documents.layout.DefaultLayoutNotification;
31 30
import org.gvsig.app.project.documents.layout.FLayoutGraphics;
......
53 52

  
54 53
    public static final Image icrux = PluginServices.getIconTheme()
55 54
        .get("cursor-selection-complex").getImage();
56
    private Point2D m_pointSelected;
57
    private int index = 0;
58 55
    private ArrayList lastSelect = new ArrayList();
59
    private ObservableHelper observers;
56
    private final ObservableHelper observers;
60 57
    
61 58
    /**
62 59
     * Crea un nuevo LayoutSelectionListenerImpl.
......
74 71
     * @see org.gvsig.fmap.mapcontrol.tools.Listeners.PanListener#move(java.awt.geom.Point2D,
75 72
     *      java.awt.geom.Point2D)
76 73
     */
74
    @Override
77 75
    public void drag(PointEvent event) {
78 76
    }
79 77

  
80 78
    /**
81 79
     * @see org.gvsig.fmap.mapcontrol.tools.Listeners.ToolListener#getCursor()
82 80
     */
81
    @Override
83 82
    public Image getImageCursor() {
84 83
        return icrux;
85 84
    }
......
87 86
    /**
88 87
     * @see org.gvsig.fmap.mapcontrol.tools.Listeners.ToolListener#cancelDrawing()
89 88
     */
89
    @Override
90 90
    public boolean cancelDrawing() {
91 91
        return true;
92 92
    }
93 93

  
94
    @Override
94 95
    public void press(PointEvent event) throws BehaviorException {
95
        m_pointSelected = event.getPoint();
96
        Point2D m_pointSelected = event.getPoint();
96 97
        layoutPanel.getLayoutControl().setIsReSel(true);
97 98
        IFFrame[] fframes = layoutPanel.getLayoutContext().getFFrames();
98
        for (int i = 0; i < fframes.length; i++) {
99
            IFFrame fframe = fframes[i];
100

  
99
        for (IFFrame fframe : fframes) {
101 100
            if (m_pointSelected != null) {
102 101
                if (!event.getEvent().isShiftDown()) {
103 102
                    if (fframe.isSelected()) {
......
112 111
            if (fframe.isSelected()) {
113 112
                layoutPanel.getLayoutControl().setIsReSel(false);
114 113
            }
115

  
116 114
        }
117 115

  
118 116
        if ((layoutPanel.getLayoutControl().getLastPoint() != null)
......
129 127

  
130 128
    }
131 129

  
130
    @Override
132 131
    public void release(PointEvent event) throws BehaviorException {
133 132
        layoutPanel.getLayoutControl().getLayoutFunctions().setSelect();
134 133
        layoutPanel.getLayoutControl().refresh();
135 134
        layoutPanel.getLayoutControl().setIsReSel(false);
136 135
    }
137 136

  
137
    @Override
138 138
    public void click(PointEvent event) {
139
        int index = 0;
139 140
        if (event.getEvent().getButton() == MouseEvent.BUTTON1) {
140
            m_pointSelected = event.getPoint();
141
            Point2D m_pointSelected = event.getPoint();
141 142
            IFFrame[] fframes = layoutPanel.getLayoutContext().getFFrames();
142 143
            if (fframes.length > 0) {
143
                ArrayList<IFFrame> listSelect = new ArrayList<IFFrame>();
144
                for (int j = 0; j < fframes.length; j++) {
145
                    if (fframes[j].getContains(m_pointSelected) != IFFrame.NOSELECT) {
146
                        listSelect.add(fframes[j]);
144
                ArrayList<IFFrame> listSelect = new ArrayList<>();
145
                for (IFFrame fframe : fframes) {
146
                    if (fframe.getContains(m_pointSelected) != IFFrame.NOSELECT) {
147
                        listSelect.add(fframe);
147 148
                    }
148 149
                }
149 150

  
150
                if (listSelect.size() > 0) {
151
                //FIXME: 
152
                if (!listSelect.isEmpty()) {
151 153
                    for (int k = 0; k < listSelect.size(); k++) {
152 154
                        if (listSelect.get(k).isSelected()) {
153 155
                            index = listSelect.size() - k;
......
160 162
                        || (index > (listSelect.size() - 1))) {
161 163
                        index = 0;
162 164
                    }
163
                    for (int j = 0; j < fframes.length; j++) {
164
                        IFFrame fframe = fframes[j];
165

  
165
                    for (IFFrame fframe : fframes) {
166 166
                        if (!event.getEvent().isShiftDown()) {
167 167
                            fframe.setSelected(false);
168 168
                        } else {
......
196 196
        }
197 197
    }
198 198

  
199
    @Override
199 200
    public void move(PointEvent event) throws BehaviorException {
200
        Image cursor = null;
201
        Image cursor;
201 202
        Point2D p = event.getPoint();
202 203
        IFFrame[] fframes = layoutPanel.getLayoutContext().getSelectedFFrames();
203
        for (int i = 0; i < fframes.length; i++) {
204
            if (fframes[i].getContains(p) != IFFrame.NOSELECT) {
205
                cursor = fframes[i].getMapCursor(p);
204
        for (IFFrame fframe : fframes) {
205
            if (fframe.getContains(p) != IFFrame.NOSELECT) {
206
                cursor = fframe.getMapCursor(p);
206 207
            } else {
207 208
                cursor = getImageCursor();
208 209
            }
......
213 214
    }
214 215

  
215 216

  
217
    @Override
216 218
    public void addObserver(Observer o) {
217 219
        observers.addObserver(o);        
218 220
    }
219 221

  
222
    @Override
220 223
    public void deleteObserver(Observer o) {
221 224
      observers.deleteObserver(o);        
222 225
    }
223 226

  
227
    @Override
224 228
    public void deleteObservers() {
225 229
       observers.deleteObservers();        
226 230
    }

Also available in: Unified diff