You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2015/01/15 11:27:47 UTC
[07/49] isis git commit: ISIS-537 Use the IConverter that is used to
render numeric data in regular mode to render the compact mode too.
ISIS-537 Use the IConverter that is used to render numeric data in regular mode to render the compact mode too.
This way the floating point types are rendered with the specified precision and scale in compact mode as well.
Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/aecba01e
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/aecba01e
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/aecba01e
Branch: refs/heads/ISIS-970
Commit: aecba01ec04805ad6f1b4fa2f99b8b1037af4c23
Parents: 3cc5cc6
Author: Martin Tzvetanov Grigorov <mg...@apache.org>
Authored: Sun Jan 11 22:32:16 2015 +0100
Committer: Martin Tzvetanov Grigorov <mg...@apache.org>
Committed: Sun Jan 11 22:32:16 2015 +0100
----------------------------------------------------------------------
.../scalars/ScalarPanelTextFieldNumeric.java | 22 ++++++++++++++++++--
.../jdkmath/JavaMathBigDecimalPanel.java | 9 ++++----
.../jdkmath/JavaMathBigIntegerPanel.java | 2 +-
.../components/scalars/primitive/BytePanel.java | 2 +-
.../scalars/primitive/DoublePanel.java | 2 +-
.../scalars/primitive/FloatPanel.java | 2 +-
.../scalars/primitive/IntegerPanel.java | 9 ++++----
.../components/scalars/primitive/LongPanel.java | 2 +-
.../scalars/primitive/ShortPanel.java | 2 +-
9 files changed, 34 insertions(+), 18 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/isis/blob/aecba01e/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ScalarPanelTextFieldNumeric.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ScalarPanelTextFieldNumeric.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ScalarPanelTextFieldNumeric.java
index 1bf5e4c..0410d8a 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ScalarPanelTextFieldNumeric.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ScalarPanelTextFieldNumeric.java
@@ -26,6 +26,7 @@ import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.html.panel.Fragment;
import org.apache.isis.viewer.wicket.model.models.ScalarModel;
+import org.apache.wicket.util.convert.IConverter;
/**
* Panel for rendering numeric scalars.
@@ -34,13 +35,27 @@ public abstract class ScalarPanelTextFieldNumeric<T extends Serializable> extend
private static final long serialVersionUID = 1L;
- public ScalarPanelTextFieldNumeric(final String id, final ScalarModel scalarModel, final Class<T> cls) {
+ /**
+ * The converter that is going to be used for the regular view of the panel, i.e. for the text field.
+ * The same converter should be used to render the compact view as well, to show the same precision and scale
+ * for the floating point types
+ */
+ private final IConverter<T> converter;
+
+ public ScalarPanelTextFieldNumeric(final String id, final ScalarModel scalarModel, final Class<T> cls, final IConverter<T> converter) {
super(id, scalarModel, cls);
+
+ this.converter = converter;
}
protected Component addComponentForCompact() {
Fragment compactFragment = getCompactFragment(CompactType.SPAN);
- final Label label = new Label(ID_SCALAR_IF_COMPACT, newTextFieldValueModel());
+ final Label label = new Label(ID_SCALAR_IF_COMPACT, newTextFieldValueModel()) {
+ @Override
+ public <C> IConverter<C> getConverter(Class<C> type) {
+ return (IConverter<C>) converter;
+ }
+ };
label.setEnabled(false);
@@ -49,4 +64,7 @@ public abstract class ScalarPanelTextFieldNumeric<T extends Serializable> extend
return label;
}
+ public IConverter<T> getConverter() {
+ return converter;
+ }
}
http://git-wip-us.apache.org/repos/asf/isis/blob/aecba01e/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/jdkmath/JavaMathBigDecimalPanel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/jdkmath/JavaMathBigDecimalPanel.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/jdkmath/JavaMathBigDecimalPanel.java
index 2b71c34..9340805 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/jdkmath/JavaMathBigDecimalPanel.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/jdkmath/JavaMathBigDecimalPanel.java
@@ -21,24 +21,23 @@ package org.apache.isis.viewer.wicket.ui.components.scalars.jdkmath;
import java.math.BigDecimal;
+import org.apache.isis.viewer.wicket.model.models.ScalarModel;
+import org.apache.isis.viewer.wicket.ui.components.scalars.ScalarPanelTextFieldNumeric;
import org.apache.wicket.markup.html.form.TextField;
import org.apache.wicket.model.IModel;
import org.apache.wicket.model.Model;
-import org.apache.isis.viewer.wicket.model.models.ScalarModel;
-import org.apache.isis.viewer.wicket.ui.components.scalars.ScalarPanelTextFieldNumeric;
-
/**
* Panel for rendering scalars of type {@link BigDecimal}.
*/
public class JavaMathBigDecimalPanel extends ScalarPanelTextFieldNumeric<BigDecimal> {
private static final long serialVersionUID = 1L;
-
+
private final BigDecimalConverterWithScale converter;
public JavaMathBigDecimalPanel(final String id, final ScalarModel scalarModel, final BigDecimalConverterWithScale converter) {
- super(id, scalarModel, BigDecimal.class);
+ super(id, scalarModel, BigDecimal.class, converter);
this.converter = converter;
}
http://git-wip-us.apache.org/repos/asf/isis/blob/aecba01e/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/jdkmath/JavaMathBigIntegerPanel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/jdkmath/JavaMathBigIntegerPanel.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/jdkmath/JavaMathBigIntegerPanel.java
index 3c70d04..a696fe4 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/jdkmath/JavaMathBigIntegerPanel.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/jdkmath/JavaMathBigIntegerPanel.java
@@ -41,7 +41,7 @@ public class JavaMathBigIntegerPanel extends ScalarPanelTextFieldNumeric<BigInte
private static final String ID_SCALAR_VALUE = "scalarValue";
public JavaMathBigIntegerPanel(final String id, final ScalarModel scalarModel) {
- super(id, scalarModel, BigInteger.class);
+ super(id, scalarModel, BigInteger.class, BigIntegerConverter.INSTANCE);
}
@Override
http://git-wip-us.apache.org/repos/asf/isis/blob/aecba01e/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/BytePanel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/BytePanel.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/BytePanel.java
index a44b121..fb4d87b 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/BytePanel.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/BytePanel.java
@@ -38,7 +38,7 @@ public class BytePanel extends ScalarPanelTextFieldNumeric<Byte> {
private static final long serialVersionUID = 1L;
public BytePanel(final String id, final ScalarModel scalarModel) {
- super(id, scalarModel, Byte.class);
+ super(id, scalarModel, Byte.class, ByteConverter.INSTANCE);
}
@Override
http://git-wip-us.apache.org/repos/asf/isis/blob/aecba01e/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/DoublePanel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/DoublePanel.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/DoublePanel.java
index dad10bf..233ba7b 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/DoublePanel.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/DoublePanel.java
@@ -38,7 +38,7 @@ public class DoublePanel extends ScalarPanelTextFieldNumeric<Double> {
private static final long serialVersionUID = 1L;
public DoublePanel(final String id, final ScalarModel scalarModel) {
- super(id, scalarModel, Double.class);
+ super(id, scalarModel, Double.class, DoubleConverter.INSTANCE);
}
@Override
http://git-wip-us.apache.org/repos/asf/isis/blob/aecba01e/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/FloatPanel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/FloatPanel.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/FloatPanel.java
index 0e4f58e..a8ecd34 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/FloatPanel.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/FloatPanel.java
@@ -38,7 +38,7 @@ public class FloatPanel extends ScalarPanelTextFieldNumeric<Float> {
private static final long serialVersionUID = 1L;
public FloatPanel(final String id, final ScalarModel scalarModel) {
- super(id, scalarModel, Float.class);
+ super(id, scalarModel, Float.class, FloatConverter.INSTANCE);
}
@Override
http://git-wip-us.apache.org/repos/asf/isis/blob/aecba01e/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/IntegerPanel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/IntegerPanel.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/IntegerPanel.java
index 9eb0bee..8fc3ed0 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/IntegerPanel.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/IntegerPanel.java
@@ -19,6 +19,9 @@
package org.apache.isis.viewer.wicket.ui.components.scalars.primitive;
+import org.apache.isis.viewer.wicket.model.models.ScalarModel;
+import org.apache.isis.viewer.wicket.ui.components.scalars.ScalarPanelTextFieldNumeric;
+import org.apache.isis.viewer.wicket.ui.components.scalars.TextFieldValueModel;
import org.apache.wicket.markup.html.form.AbstractTextComponent;
import org.apache.wicket.markup.html.form.TextField;
import org.apache.wicket.model.IModel;
@@ -26,10 +29,6 @@ import org.apache.wicket.model.Model;
import org.apache.wicket.util.convert.IConverter;
import org.apache.wicket.util.convert.converter.IntegerConverter;
-import org.apache.isis.viewer.wicket.model.models.ScalarModel;
-import org.apache.isis.viewer.wicket.ui.components.scalars.ScalarPanelTextFieldNumeric;
-import org.apache.isis.viewer.wicket.ui.components.scalars.TextFieldValueModel;
-
/**
* Panel for rendering scalars of type {@link Integer} or <tt>int</tt>.
*/
@@ -38,7 +37,7 @@ public class IntegerPanel extends ScalarPanelTextFieldNumeric<Integer> {
private static final long serialVersionUID = 1L;
public IntegerPanel(final String id, final ScalarModel scalarModel) {
- super(id, scalarModel, Integer.class);
+ super(id, scalarModel, Integer.class, IntegerConverter.INSTANCE);
}
@Override
http://git-wip-us.apache.org/repos/asf/isis/blob/aecba01e/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/LongPanel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/LongPanel.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/LongPanel.java
index 9d1b548..ac1c916 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/LongPanel.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/LongPanel.java
@@ -38,7 +38,7 @@ public class LongPanel extends ScalarPanelTextFieldNumeric<Long> {
private static final long serialVersionUID = 1L;
public LongPanel(final String id, final ScalarModel scalarModel) {
- super(id, scalarModel, Long.class);
+ super(id, scalarModel, Long.class, LongConverter.INSTANCE);
}
@Override
http://git-wip-us.apache.org/repos/asf/isis/blob/aecba01e/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/ShortPanel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/ShortPanel.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/ShortPanel.java
index 5a26a16..4dbb399 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/ShortPanel.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/primitive/ShortPanel.java
@@ -38,7 +38,7 @@ public class ShortPanel extends ScalarPanelTextFieldNumeric<Short> {
private static final long serialVersionUID = 1L;
public ShortPanel(final String id, final ScalarModel scalarModel) {
- super(id, scalarModel, Short.class);
+ super(id, scalarModel, Short.class, ShortConverter.INSTANCE);
}
@Override