|
43 | 43 | import java.beans.PropertyChangeListener; |
44 | 44 | import java.beans.PropertyDescriptor; |
45 | 45 | import java.lang.reflect.Method; |
| 46 | +import java.math.BigDecimal; |
46 | 47 | import java.sql.SQLException; |
47 | 48 | import java.util.ArrayList; |
48 | 49 | import java.util.Calendar; |
|
57 | 58 | import java.util.Map; |
58 | 59 | import java.util.Set; |
59 | 60 | import java.util.Vector; |
60 | | - |
61 | 61 | import javax.swing.AbstractAction; |
62 | 62 | import javax.swing.Action; |
63 | 63 | import javax.swing.BorderFactory; |
|
88 | 88 | import javax.swing.SwingUtilities; |
89 | 89 |
|
90 | 90 | import edu.ku.brc.specify.datamodel.CollectionObject; |
91 | | -import edu.ku.brc.specify.datamodel.Determination; |
92 | | -import edu.ku.brc.specify.datamodel.Taxon; |
93 | 91 | import edu.ku.brc.ui.*; |
94 | 92 | import org.apache.commons.beanutils.PropertyUtils; |
95 | 93 | import org.apache.commons.lang.StringUtils; |
@@ -5297,7 +5295,7 @@ protected void setDataIntoUI(final boolean doResetAfterFill, |
5297 | 5295 | } |
5298 | 5296 |
|
5299 | 5297 | Object[] values = UIHelper.getFieldValues(cellField.getFieldNames(), dataObj, dg); |
5300 | | - |
| 5298 | + |
5301 | 5299 | setDataIntoUIComp(comp, DataObjFieldFormatMgr.getInstance().format(values[0], dataObjFormatName), defaultValue); |
5302 | 5300 |
|
5303 | 5301 | } else |
@@ -5839,7 +5837,17 @@ public static void setDataIntoUIComp(final Component comp, final Object data, fi |
5839 | 5837 | } else if (comp instanceof JTextField) |
5840 | 5838 | { |
5841 | 5839 | JTextField tf = (JTextField)comp; |
5842 | | - tf.setText(data == null ? "" : data.toString()); |
| 5840 | + tf.setText( |
| 5841 | + data == null |
| 5842 | + ? "" |
| 5843 | + // If the BigDecimal is an integer and not zero, format it to #.0 |
| 5844 | + // otherwise, strip the zeros |
| 5845 | + : data instanceof BigDecimal |
| 5846 | + ? ((((BigDecimal)data).stripTrailingZeros().scale() <= 0 && ((BigDecimal)data).signum() != 0) |
| 5847 | + ? ((BigDecimal)data).stripTrailingZeros().setScale(1).toPlainString() |
| 5848 | + : ((BigDecimal)data).stripTrailingZeros().toPlainString()) |
| 5849 | + : data.toString() |
| 5850 | + ); |
5843 | 5851 | tf.setCaretPosition(0); |
5844 | 5852 |
|
5845 | 5853 | } else if (comp instanceof JTextArea) |
|
0 commit comments