import java.awt.event.*;
import javax.swing.*;
import javax.swing.filechooser.FileNameExtensionFilter;
-import javax.swing.table.*;
import java.io.*;
-import java.util.*;
-import java.text.*;
-import java.util.prefs.*;
import java.util.concurrent.*;
-import org.altusmetrum.AltosLib.*;
+import org.altusmetrum.altoslib_2.*;
+import org.altusmetrum.altosuilib_1.*;
public class AltosFlashUI
- extends AltosDialog
+ extends AltosUIDialog
implements ActionListener
{
Container pane;
}
boolean select_debug_dongle() {
- debug_dongle = AltosDeviceDialog.show(frame, Altos.product_any);
+ debug_dongle = AltosDeviceUIDialog.show(frame, Altos.product_any);
if (debug_dongle == null)
return false;
}
}
- class flash_task implements Runnable {
+ class flash_task implements Runnable, AltosFlashListener {
AltosFlashUI ui;
Thread t;
AltosFlash flash;
+ public void position(String in_s, int in_percent) {
+ final String s = in_s;
+ final int percent = in_percent;
+ Runnable r = new Runnable() {
+ public void run() {
+ try {
+ ui.actionPerformed(new ActionEvent(this,
+ percent,
+ s));
+ } catch (Exception ex) {
+ }
+ }
+ };
+ SwingUtilities.invokeLater(r);
+ }
+
public void run () {
try {
- flash = new AltosFlash(ui.file, ui.debug_dongle);
- flash.addActionListener(ui);
+ flash = new AltosFlash(ui.file, new AltosSerial(ui.debug_dongle), this);
final AltosRomconfig current_config = flash.romconfig();
public void run() {
ui.flash = flash;
ui.update_rom_config_info(current_config);
- System.out.printf("Done updating rom config info\n");
await_rom_config.release();
}
});
- System.out.printf("Waiting for rom configuration updates\n");
await_rom_config.acquire();
- System.out.printf("Got rom config update\n");
if (ui.rom_config != null) {
- System.out.printf("rom_config not null\n");
flash.set_romconfig(ui.rom_config);
flash.flash();
}
} catch (InterruptedException ee) {
final Exception e = ee;
- System.out.printf("exception %s\n", e.toString());
SwingUtilities.invokeLater(new Runnable() {
public void run() {
ui.exception(e);
});
} catch (IOException ee) {
final Exception e = ee;
- System.out.printf("exception %s\n", e.toString());
SwingUtilities.invokeLater(new Runnable() {
public void run() {
ui.exception(e);
});
} catch (AltosSerialInUseException ee) {
final Exception e = ee;
- System.out.printf("exception %s\n", e.toString());
SwingUtilities.invokeLater(new Runnable() {
public void run() {
ui.exception(e);