diff --git a/src/main/java/eu/simstadt/regionchooser/RegionChooserBrowser.java b/src/main/java/eu/simstadt/regionchooser/RegionChooserBrowser.java index cce09856b3abd1a49516dc96bead26e0dfc73c60..8e59d50aea9bdf9e0bf0810509b896b0a1cc18fa 100644 --- a/src/main/java/eu/simstadt/regionchooser/RegionChooserBrowser.java +++ b/src/main/java/eu/simstadt/regionchooser/RegionChooserBrowser.java @@ -98,7 +98,7 @@ public Integer call() throws IOException, XPathParseException, NavException, Par downloadTask.setOnRunning(e -> jsApp.call("downloadStart")); - downloadTask.setOnSucceeded(e -> jsApp.call("downloadFinished")); + downloadTask.setOnSucceeded(e -> jsApp.call("downloadFinished", e.getSource().getValue())); new Thread(downloadTask).start(); } diff --git a/src/main/java/eu/simstadt/regionchooser/RegionExtractor.java b/src/main/java/eu/simstadt/regionchooser/RegionExtractor.java index 665c32d96abddf0db163949119f214f55795b3ff..c9c460fcdae6c090ea4c920df8c475338da0e82c 100644 --- a/src/main/java/eu/simstadt/regionchooser/RegionExtractor.java +++ b/src/main/java/eu/simstadt/regionchooser/RegionExtractor.java @@ -88,7 +88,7 @@ static int selectRegionDirectlyFromCityGML(String wktPolygon, String srsName, Wr LOGGER.warning("No building found in the selected region."); } - LOGGER.info("Buildings found in selected region " + foundBuildingsCount); + LOGGER.info("Buildings found in selected region : " + foundBuildingsCount); //NOTE: This could be a problem if header starts with <core:CityModel> and footer ends with </CityModel> sb.append(citygml.getFooter()); return foundBuildingsCount; diff --git a/src/main/resources/eu/simstadt/regionchooser/website/script/simstadt_openlayers.js b/src/main/resources/eu/simstadt/regionchooser/website/script/simstadt_openlayers.js index 7ce789a96857c06b374e1614124d630501284459..99f3b8ec6d26bf18b7eda47648fa7bd81dff42ce 100644 --- a/src/main/resources/eu/simstadt/regionchooser/website/script/simstadt_openlayers.js +++ b/src/main/resources/eu/simstadt/regionchooser/website/script/simstadt_openlayers.js @@ -246,13 +246,17 @@ const regionChooser = (function(){ publicScope.downloadStart = function(){ document.getElementById("download_region_button").disabled = true; document.documentElement.className = 'wait'; - dataPanel.prepend("<h2 id='download_start' class='ok'>Starting to extract region.</h2><br/>\n"); + dataPanel.prepend("<h2 id='download_start' class='ok'>Starting to extract region...</h2><br/>\n"); } - publicScope.downloadFinished = function(){ + publicScope.downloadFinished = function(count){ document.documentElement.className = ''; // Stop waiting document.getElementById("download_start").remove(); - dataPanel.prepend("<h2 class='ok'>Region has been extracted</h2><br/>\n"); + if (count > 0){ + dataPanel.prepend("<h2 class='ok'>Done! (" + count + " buildings found) </h2><br/>\n"); + } else { + dataPanel.prepend("<h2 class='error'>No building has been found in this region</h2><br/>\n"); + } var button = document.getElementById("download_region_button"); if (button){ // Region might have been modified since download start button.disabled = false; @@ -325,6 +329,7 @@ const regionChooser = (function(){ } finally { displayHelp(); document.documentElement.className = ''; // Stop waiting + kml_source.getFeatures().forEach(f => refreshStyle(f, "original")); draw.setActive(true); drawnLayer.getFeatures().clear(); intersections.clear();