diff --git a/pom.xml b/pom.xml
index 9190725..79ffe7c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -5,7 +5,7 @@
org.scijava
pom-scijava
- 6.1.0
+ 7.1.0
diff --git a/src/main/java/org/scijava/ui/swing/widget/SwingNumberWidget.java b/src/main/java/org/scijava/ui/swing/widget/SwingNumberWidget.java
index 914e18c..f95cfaa 100644
--- a/src/main/java/org/scijava/ui/swing/widget/SwingNumberWidget.java
+++ b/src/main/java/org/scijava/ui/swing/widget/SwingNumberWidget.java
@@ -52,10 +52,10 @@
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
+import org.scijava.module.ModuleService;
import org.scijava.plugin.Parameter;
import org.scijava.plugin.Plugin;
import org.scijava.thread.ThreadService;
-import org.scijava.util.NumberUtils;
import org.scijava.widget.InputWidget;
import org.scijava.widget.NumberWidget;
import org.scijava.widget.WidgetModel;
@@ -73,6 +73,9 @@ public class SwingNumberWidget extends SwingInputWidget implements
@Parameter
private ThreadService threadService;
+ @Parameter
+ private ModuleService moduleService;
+
private JScrollBar scrollBar;
private JSlider slider;
private JSpinner spinner;
@@ -123,8 +126,14 @@ else if (model.isStyle(NumberWidget.SLIDER_STYLE)) {
// add spinner widget
final Class> type = model.getItem().getType();
if (model.getValue() == null) {
- final Number defaultValue = NumberUtils.getDefaultValue(min, max, type);
- model.setValue(defaultValue);
+ final Object defaultValue =
+ moduleService.getDefaultValue(model.getItem());
+ if (!(defaultValue instanceof Number)) {
+ throw new IllegalStateException("Invalid default value type: " +
+ defaultValue.getClass().getName());
+ }
+ final Number defaultNumber = (Number) defaultValue;
+ model.setValue(defaultNumber);
}
final Number value = (Number) model.getValue();
final SpinnerNumberModel spinnerModel =