Revision: 5500
http://sourceforge.net/p/jump-pilot/code/5500
Author: edso
Date: 2017-09-19 18:08:03 +0000 (Tue, 19 Sep 2017)
Log Message:
-----------
some finetuning for the task status reporting
fix a unnecessary
"
java.lang.StackOverflowError
at
com.vividsolutions.jump.workbench.ui.task.TaskMonitorDialog.report(TaskMonitorDialog.java:236)
"
introduced w/ the CreateGrid changes
Modified Paths:
--------------
core/trunk/src/com/vividsolutions/jump/workbench/ui/task/TaskMonitorDialog.java
core/trunk/src/org/openjump/core/ui/plugin/tools/generate/CreateGridPlugIn.java
Added Paths:
-----------
core/trunk/src/com/vividsolutions/jump/task/RefreshRated.java
Added: core/trunk/src/com/vividsolutions/jump/task/RefreshRated.java
===================================================================
--- core/trunk/src/com/vividsolutions/jump/task/RefreshRated.java
(rev 0)
+++ core/trunk/src/com/vividsolutions/jump/task/RefreshRated.java
2017-09-19 18:08:03 UTC (rev 5500)
@@ -0,0 +1,14 @@
+package com.vividsolutions.jump.task;
+
+public interface RefreshRated {
+ /**
+ * retrieve the interval for updating the ui components
+ * @return interval in milliseconds
+ */
+ public int getRefreshRate();
+
+ /**
+ * set the interval for updating the ui components
+ */
+ public void setRefreshRate(int millisecondDelay);
+}
Property changes on:
core/trunk/src/com/vividsolutions/jump/task/RefreshRated.java
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Modified:
core/trunk/src/com/vividsolutions/jump/workbench/ui/task/TaskMonitorDialog.java
===================================================================
---
core/trunk/src/com/vividsolutions/jump/workbench/ui/task/TaskMonitorDialog.java
2017-09-17 14:42:57 UTC (rev 5499)
+++
core/trunk/src/com/vividsolutions/jump/workbench/ui/task/TaskMonitorDialog.java
2017-09-19 18:08:03 UTC (rev 5500)
@@ -55,12 +55,13 @@
import javax.swing.text.JTextComponent;
import com.vividsolutions.jump.I18N;
+import com.vividsolutions.jump.task.RefreshRated;
import com.vividsolutions.jump.task.TaskMonitorV2;
import com.vividsolutions.jump.workbench.ui.AnimatedClockPanel;
import com.vividsolutions.jump.workbench.ui.ErrorHandler;
-public class TaskMonitorDialog extends JDialog implements TaskMonitorV2 {
+public class TaskMonitorDialog extends JDialog implements TaskMonitorV2,
RefreshRated {
private JPanel mainPanel = new JPanel();
private JPanel labelPanel = new JPanel();
@@ -233,7 +234,7 @@
public void report(int subtasksDone, int totalSubtasks,
String subtaskDescription) {
- report(subtasksDone, totalSubtasks, subtaskDescription);
+ report((long)subtasksDone, (long)totalSubtasks, subtaskDescription);
}
public void allowCancellationRequests() {
Modified:
core/trunk/src/org/openjump/core/ui/plugin/tools/generate/CreateGridPlugIn.java
===================================================================
---
core/trunk/src/org/openjump/core/ui/plugin/tools/generate/CreateGridPlugIn.java
2017-09-17 14:42:57 UTC (rev 5499)
+++
core/trunk/src/org/openjump/core/ui/plugin/tools/generate/CreateGridPlugIn.java
2017-09-19 18:08:03 UTC (rev 5500)
@@ -30,6 +30,7 @@
import com.vividsolutions.jump.feature.FeatureCollection;
import com.vividsolutions.jump.feature.FeatureDataset;
import com.vividsolutions.jump.feature.FeatureSchema;
+import com.vividsolutions.jump.task.RefreshRated;
import com.vividsolutions.jump.task.TaskMonitor;
import com.vividsolutions.jump.task.TaskMonitorUtil;
import com.vividsolutions.jump.task.TaskMonitorV2Util;
@@ -77,6 +78,8 @@
boolean createPolys = false;
TaskMonitor taskMonitor = null;
+ // interval (milliseconds) that taskmonitor is updated
+ private int interval = 300;
public CreateGridPlugIn() {
}
@@ -120,6 +123,8 @@
this.taskMonitor = monitor;
TaskMonitorV2Util.setTitle(monitor, getName());
monitor.allowCancellationRequests();
+ if (monitor instanceof RefreshRated)
+ ((RefreshRated)monitor).setRefreshRate(interval);
createGrid(context);
}
@@ -315,11 +320,10 @@
}
private long lastMsg = 0;
- private long interval = 300;
// report only every <interval> millisecs
private void reportItems(long itemsDone, long itemsTotal, String message ){
long now = Timer.milliSecondsSince(0);
- // show status every .5s
+ // update status every interval millisecs
if (now - interval >= lastMsg) {
lastMsg = now;
TaskMonitorV2Util.report(this.taskMonitor, itemsDone, itemsTotal,
message);
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Jump-pilot-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel