Ignore:
Timestamp:
2009-10-25T23:09:53+01:00 (15 years ago)
Author:
Gubaer
Message:

Added canceling of DownloadOsmTaskLists
Removed error remembering in the progress dialog

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/Main.java

    r2305 r2322  
    2020import java.util.concurrent.ExecutorService;
    2121import java.util.concurrent.Executors;
     22import java.util.concurrent.Future;
    2223import java.util.regex.Matcher;
    2324import java.util.regex.Pattern;
     
    3233import org.openstreetmap.josm.actions.downloadtasks.DownloadGpsTask;
    3334import org.openstreetmap.josm.actions.downloadtasks.DownloadOsmTask;
     35import org.openstreetmap.josm.actions.downloadtasks.DownloadTask;
     36import org.openstreetmap.josm.actions.downloadtasks.PostDownloadHandler;
    3437import org.openstreetmap.josm.actions.mapmode.MapMode;
    3538import org.openstreetmap.josm.actions.search.SearchAction;
     
    4649import org.openstreetmap.josm.gui.SplashScreen;
    4750import org.openstreetmap.josm.gui.dialogs.LayerListDialog;
    48 import org.openstreetmap.josm.gui.download.DownloadDialog.DownloadTask;
    4951import org.openstreetmap.josm.gui.help.HelpBrowserProxy;
    5052import org.openstreetmap.josm.gui.io.SaveLayersDialog;
     
    421423                //DownloadTask osmTask = main.menu.download.downloadTasks.get(0);
    422424                DownloadTask osmTask = new DownloadOsmTask();
    423                 osmTask.download(main.menu.download, b.min.lat(), b.min.lon(), b.max.lat(), b.max.lon(), null);
     425                Future<?> future = osmTask.download(main.menu.download, b.min.lat(), b.min.lon(), b.max.lat(), b.max.lon(), null);
     426                Main.worker.submit(new PostDownloadHandler(osmTask, future));
    424427            }
    425428            return;
     
    466469            try {
    467470                DownloadTask task = rawGps ? new DownloadGpsTask() : new DownloadOsmTask();
    468                 task.download(main.menu.download, Double.parseDouble(st.nextToken()), Double.parseDouble(st.nextToken()), Double.parseDouble(st.nextToken()), Double.parseDouble(st.nextToken()), null);
     471                // asynchronously launch the download task ...
     472                Future<?> future = task.download(main.menu.download, Double.parseDouble(st.nextToken()), Double.parseDouble(st.nextToken()), Double.parseDouble(st.nextToken()), Double.parseDouble(st.nextToken()), null);
     473                // ... and the continuation when the download is finished (this will wait for the download to finish)
     474                Main.worker.execute(new PostDownloadHandler(task, future));
    469475                return;
    470476            } catch (final NumberFormatException e) {
Note: See TracChangeset for help on using the changeset viewer.