r3515 - trunk/lima-swing/src/main/java/org/chorem/lima/ui/financialtransaction
Author: mallon Date: 2012-07-12 11:32:10 +0200 (Thu, 12 Jul 2012) New Revision: 3515 Url: http://chorem.org/repositories/revision/lima/3515 Log: fixes #691 Correction permettant de selectionner les transactions et entrees, ainsi que de rester sur la m?\195?\170me ligne lors de la saisie du debit / credit dans une entr?\195?\169e. Modified: trunk/lima-swing/src/main/java/org/chorem/lima/ui/financialtransaction/FinancialTransactionTable.java trunk/lima-swing/src/main/java/org/chorem/lima/ui/financialtransaction/FinancialTransactionTableModel.java trunk/lima-swing/src/main/java/org/chorem/lima/ui/financialtransaction/FinancialTransactionViewHandler.java Modified: trunk/lima-swing/src/main/java/org/chorem/lima/ui/financialtransaction/FinancialTransactionTable.java =================================================================== --- trunk/lima-swing/src/main/java/org/chorem/lima/ui/financialtransaction/FinancialTransactionTable.java 2012-07-11 15:00:25 UTC (rev 3514) +++ trunk/lima-swing/src/main/java/org/chorem/lima/ui/financialtransaction/FinancialTransactionTable.java 2012-07-12 09:32:10 UTC (rev 3515) @@ -25,18 +25,6 @@ package org.chorem.lima.ui.financialtransaction; -import java.awt.Color; -import java.awt.Component; -import java.awt.event.KeyAdapter; -import java.awt.event.KeyEvent; -import java.awt.event.MouseAdapter; -import java.awt.event.MouseEvent; -import java.math.BigDecimal; -import java.util.Date; -import javax.swing.SwingUtilities; -import javax.swing.SwingWorker; -import javax.swing.event.CellEditorListener; -import javax.swing.event.ChangeEvent; import org.apache.commons.collections.CollectionUtils; import org.chorem.lima.entity.Account; import org.chorem.lima.entity.Entry; @@ -54,6 +42,15 @@ import org.jdesktop.swingx.decorator.HighlightPredicate; import org.jdesktop.swingx.decorator.Highlighter; +import javax.swing.*; +import java.awt.*; +import java.awt.event.KeyAdapter; +import java.awt.event.KeyEvent; +import java.awt.event.MouseAdapter; +import java.awt.event.MouseEvent; +import java.math.BigDecimal; +import java.util.Date; + /** * Table des transaction qui ajoute des comportement (keys). * @@ -94,31 +91,8 @@ setDefaultEditor(Account.class, new AccountTableCellEditor()); //Get new amount editor - BigDecimalTableCellEditor editor = new BigDecimalTableCellEditor(); + setDefaultEditor(BigDecimal.class, new BigDecimalTableCellEditor()); - // FIXME sletellier 27/06/12 : hack to fix selection of first row on stopEditing cell in last row - editor.addCellEditorListener(new CellEditorListener() { - - @Override - public void editingStopped(ChangeEvent e) { - BigDecimalTableCellEditor editor = (BigDecimalTableCellEditor)e.getSource(); - final int row = editor.getRow(); - SwingUtilities.invokeLater(new Runnable() { - - @Override - public void run() { - getSelectionModel().setSelectionInterval(row, row); - } - }); - } - - @Override - public void editingCanceled(ChangeEvent e) { - // do nothing - } - }); - setDefaultEditor(BigDecimal.class, editor); - //Get new BigDecimal renderer setDefaultRenderer(BigDecimal.class, new BigDecimalTableCellRenderer()); @@ -164,19 +138,12 @@ colorTransaction = new ColorHighlighter(predicate, new Color(255, 198, 209), null); addHighlighter(colorTransaction); - - setTerminateEditOnFocusLost(true); } public FinancialTransactionViewHandler getHandler() { return handler; } - @Override - public void changeSelection(int rowIndex, int columnIndex, boolean toggle, boolean extend) { - super.changeSelection(rowIndex, columnIndex, true, true); - } - private class MyKeyAdapter extends KeyAdapter { @Override Modified: trunk/lima-swing/src/main/java/org/chorem/lima/ui/financialtransaction/FinancialTransactionTableModel.java =================================================================== --- trunk/lima-swing/src/main/java/org/chorem/lima/ui/financialtransaction/FinancialTransactionTableModel.java 2012-07-11 15:00:25 UTC (rev 3514) +++ trunk/lima-swing/src/main/java/org/chorem/lima/ui/financialtransaction/FinancialTransactionTableModel.java 2012-07-12 09:32:10 UTC (rev 3515) @@ -25,11 +25,6 @@ package org.chorem.lima.ui.financialtransaction; -import java.math.BigDecimal; -import java.util.Date; -import java.util.List; -import javax.swing.table.AbstractTableModel; -import org.chorem.lima.LimaContext; import org.chorem.lima.business.api.FinancialTransactionService; import org.chorem.lima.entity.Account; import org.chorem.lima.entity.Entry; @@ -37,6 +32,11 @@ import org.chorem.lima.entity.FinancialTransaction; import org.chorem.lima.service.LimaServiceFactory; +import javax.swing.table.AbstractTableModel; +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + import static org.nuiton.i18n.I18n._; /** @@ -387,13 +387,11 @@ currentEntry.setLettering((String) value); break; case 6: - BigDecimal bigDecimalValue = getBigDecimalValue(value); - currentEntry.setAmount(bigDecimalValue); + currentEntry.setAmount((BigDecimal) value); currentEntry.setDebit(true); break; case 7: - bigDecimalValue = getBigDecimalValue(value); - currentEntry.setAmount(bigDecimalValue); + currentEntry.setAmount((BigDecimal) value); currentEntry.setDebit(false); break; } @@ -420,22 +418,6 @@ fireTableRowsUpdated(trIndex, endIndex); } - protected BigDecimal getBigDecimalValue(Object value) { - - BigDecimal result = (BigDecimal)value; - - //set 0 in case the user type in a non number format - if (result == null) { - result = BigDecimal.ZERO; - } - - //round half up the number using the scale given by the configuration - result = result.setScale(LimaContext.getContext().getConfig().getScale(), - BigDecimal.ROUND_HALF_UP); - - return result; - } - public Object getElementAt(int row) { Object result = transactionAndEntries.get(row); return result; Modified: trunk/lima-swing/src/main/java/org/chorem/lima/ui/financialtransaction/FinancialTransactionViewHandler.java =================================================================== --- trunk/lima-swing/src/main/java/org/chorem/lima/ui/financialtransaction/FinancialTransactionViewHandler.java 2012-07-11 15:00:25 UTC (rev 3514) +++ trunk/lima-swing/src/main/java/org/chorem/lima/ui/financialtransaction/FinancialTransactionViewHandler.java 2012-07-12 09:32:10 UTC (rev 3515) @@ -25,16 +25,6 @@ package org.chorem.lima.ui.financialtransaction; -import java.awt.event.ItemEvent; -import java.util.ArrayList; -import java.util.Calendar; -import java.util.Collection; -import java.util.Collections; -import java.util.Date; -import java.util.List; -import javax.swing.JComboBox; -import javax.swing.JOptionPane; -import javax.swing.ListSelectionModel; import org.apache.commons.lang3.time.DateUtils; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -54,6 +44,15 @@ import org.chorem.lima.entity.FiscalPeriod; import org.chorem.lima.service.LimaServiceFactory; +import javax.swing.*; +import java.awt.event.ItemEvent; +import java.util.ArrayList; +import java.util.Calendar; +import java.util.Collection; +import java.util.Collections; +import java.util.Date; +import java.util.List; + import static org.nuiton.i18n.I18n._; /**
participants (1)
-
mallon@users.chorem.org