Subversion Repositories svn.mios

Rev

Rev 628 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 628 Rev 721
Line 34... Line 34...
34
import javax.swing.JLabel;
34
import javax.swing.JLabel;
35
import javax.swing.JPanel;
35
import javax.swing.JPanel;
36
import javax.swing.JSeparator;
36
import javax.swing.JSeparator;
37
import javax.swing.JTabbedPane;
37
import javax.swing.JTabbedPane;
38
38
39
import org.midibox.mios.HexFileUpload;
-
 
40
import org.midibox.mios.HexFileUploadDevice;
39
import org.midibox.mios.HexFileUploadDevice;
41
import org.midibox.mios.HexFileUploadDeviceManager;
40
import org.midibox.mios.HexFileUploadDeviceManager;
42
import org.midibox.utils.gui.ImageLoader;
41
import org.midibox.utils.gui.ImageLoader;
43
42
44
public class HexFileUploadDeviceManagerGUI extends JPanel implements
43
public class HexFileUploadDeviceManagerGUI extends JPanel implements
Line 100... Line 99...
100
99
101
        Iterator it = hexFileUploadDeviceManager.getHexFileUploadDevices()
100
        Iterator it = hexFileUploadDeviceManager.getHexFileUploadDevices()
102
                .iterator();
101
                .iterator();
103
102
104
        while (it.hasNext()) {
103
        while (it.hasNext()) {
105
            HexFileUploadDevice ssrd = (HexFileUploadDevice) it.next();
104
            HexFileUploadDevice hexFileUploadDevice = (HexFileUploadDevice) it
-
 
105
                    .next();
106
106
107
            boolean hasGUI = false;
107
            boolean hasGUI = false;
108
108
109
            Iterator it2 = hexFileUploadGUIs.iterator();
109
            Iterator it2 = hexFileUploadGUIs.iterator();
110
110
111
            while (it2.hasNext()) {
111
            while (it2.hasNext()) {
112
                HexFileUploadGUI ssrg = (HexFileUploadGUI) it2.next();
-
 
113
112
-
 
113
                HexFileUploadGUI hexFileUploadGUI = (HexFileUploadGUI) it2
-
 
114
                        .next();
-
 
115
114
                if (ssrg.getHexFileUpload() == ssrd.getHexFileUpload()) {
116
                if (hexFileUploadGUI.getHexFileUpload() == hexFileUploadDevice
-
 
117
                        .getHexFileUpload()) {
115
                    hasGUI = true;
118
                    hasGUI = true;
116
                }
119
                }
117
            }
120
            }
118
121
119
            if (!hasGUI) {
122
            if (!hasGUI) {
-
 
123
120
                HexFileUploadGUI ssrg = new HexFileUploadGUI(ssrd
124
                HexFileUploadGUI hexFileUploadGUI = new HexFileUploadGUI(
121
                        .getHexFileUpload());
125
                        hexFileUploadDevice.getHexFileUpload());
-
 
126
122
                hexFileUploadGUIs.add(ssrg);
127
                hexFileUploadGUIs.add(hexFileUploadGUI);
-
 
128
123
                tabbedPane.addTab(ssrd.getDeviceInfo().getName(), ImageLoader
129
                tabbedPane.addTab(
124
                        .getImageIcon("hex.png"), ssrg);
130
                        hexFileUploadDevice.getDeviceInfo().getName(),
125
                ssrd.getHexFileUpload().addObserver(this);
131
                        ImageLoader.getImageIcon("hex.png"), hexFileUploadGUI);
126
            }
132
            }
127
        }
133
        }
128
134
129
        it = ((Vector) hexFileUploadGUIs.clone()).iterator();
135
        it = ((Vector) hexFileUploadGUIs.clone()).iterator();
130
136
131
        while (it.hasNext()) {
137
        while (it.hasNext()) {
132
138
133
            HexFileUploadGUI ssrg = (HexFileUploadGUI) it.next();
139
            HexFileUploadGUI hexFileUploadGUI = (HexFileUploadGUI) it.next();
134
140
135
            boolean hasDevice = false;
141
            boolean hasDevice = false;
136
142
137
            Iterator it2 = hexFileUploadDeviceManager.getHexFileUploadDevices()
143
            Iterator it2 = hexFileUploadDeviceManager.getHexFileUploadDevices()
138
                    .iterator();
144
                    .iterator();
139
145
140
            while (it2.hasNext()) {
146
            while (it2.hasNext()) {
-
 
147
141
                HexFileUploadDevice ssrd = (HexFileUploadDevice) it2.next();
148
                HexFileUploadDevice hexFileUploadDevice = (HexFileUploadDevice) it2
-
 
149
                        .next();
-
 
150
142
                if (ssrg.getHexFileUpload() == ssrd.getHexFileUpload()) {
151
                if (hexFileUploadGUI.getHexFileUpload() == hexFileUploadDevice
-
 
152
                        .getHexFileUpload()) {
143
                    hasDevice = true;
153
                    hasDevice = true;
144
                }
154
                }
145
            }
155
            }
146
156
147
            if (!hasDevice) {
157
            if (!hasDevice) {
-
 
158
148
                hexFileUploadGUIs.remove(ssrg);
159
                hexFileUploadGUIs.remove(hexFileUploadGUI);
-
 
160
149
                tabbedPane.remove(ssrg);
161
                tabbedPane.remove(hexFileUploadGUI);
150
                ssrg.getHexFileUpload().deleteObserver(this);
-
 
151
            }
162
            }
-
 
163
        }
-
 
164
-
 
165
        for (int i = 0; i < hexFileUploadDeviceManager
-
 
166
                .getHexFileUploadDevices().size(); i++) {
-
 
167
-
 
168
            HexFileUploadDevice hexFileUploadDevice = (HexFileUploadDevice) hexFileUploadDeviceManager
-
 
169
                    .getHexFileUploadDevices().elementAt(i);
-
 
170
-
 
171
            tabbedPane.setTitleAt(i, hexFileUploadDevice.getDeviceInfo()
-
 
172
                    .getName());
152
        }
173
        }
153
    }
174
    }
154
175
155
    public void addNewUploadTab() {
176
    public void addNewUploadTab() {
156
        hexFileUploadDeviceManager.newHexFileUploadDevice();
177
        hexFileUploadDeviceManager.newHexFileUploadDevice();
Line 165... Line 186...
165
                            .getHexFileUploadDevices().elementAt(selectedTab));
186
                            .getHexFileUploadDevices().elementAt(selectedTab));
166
        }
187
        }
167
    }
188
    }
168
189
169
    public void update(Observable observable, Object object) {
190
    public void update(Observable observable, Object object) {
-
 
191
170
        if (observable == hexFileUploadDeviceManager) {
192
        if (observable == hexFileUploadDeviceManager) {
171
            createGUIs();
-
 
172
        } else if (observable instanceof HexFileUpload) {
-
 
173
            if (object == HexFileUpload.FILE) {
-
 
174
193
175
                Iterator it = hexFileUploadGUIs.iterator();
-
 
176
                int index = 0;
-
 
177
-
 
178
                while (it.hasNext()) {
-
 
179
                    HexFileUploadGUI hfug = (HexFileUploadGUI) it.next();
-
 
180
                    if (hfug.getHexFileUpload() == observable) {
-
 
181
                        tabbedPane
-
 
182
                                .setTitleAt(
-
 
183
                                        index,
-
 
184
                                        ((HexFileUploadDevice) hexFileUploadDeviceManager
-
 
185
                                                .getHexFileUploadDevices()
-
 
186
                                                .elementAt(index))
-
 
187
                                                .getDeviceInfo().getName()
-
 
188
                                                + ": "
-
 
189
                                                + ((HexFileUpload) observable)
-
 
190
                                                        .getFile().getName());
-
 
191
                    }
-
 
192
                    index++;
194
            createGUIs();
193
                }
-
 
194
            }
-
 
195
        }
195
        }
196
    }
196
    }
197
197
198
    public void actionPerformed(ActionEvent ae) {
198
    public void actionPerformed(ActionEvent ae) {
199
199