r3729 - in trunk/lima-swing/src/main: java/org/chorem/lima/ui/account java/org/chorem/lima/ui/financialstatementchart resources/icons
Author: sbavencoff Date: 2014-01-02 15:30:39 +0100 (Thu, 02 Jan 2014) New Revision: 3729 Url: http://chorem.org/projects/lima/repository/revisions/3729 Log: refactor financial statement Added: trunk/lima-swing/src/main/resources/icons/action-financialstatement-add-header.png trunk/lima-swing/src/main/resources/icons/action-financialstatement-add-movement.png trunk/lima-swing/src/main/resources/icons/action-financialstatement-check.png trunk/lima-swing/src/main/resources/icons/action-financialstatement-edit.png trunk/lima-swing/src/main/resources/icons/action-financialstatement-import.png trunk/lima-swing/src/main/resources/icons/action-financialstatement-remove.png Modified: trunk/lima-swing/src/main/java/org/chorem/lima/ui/account/AccountViewHandler.java trunk/lima-swing/src/main/java/org/chorem/lima/ui/financialstatementchart/FinancialStatementChartView.jaxx trunk/lima-swing/src/main/java/org/chorem/lima/ui/financialstatementchart/FinancialStatementChartViewHandler.java Modified: trunk/lima-swing/src/main/java/org/chorem/lima/ui/account/AccountViewHandler.java =================================================================== --- trunk/lima-swing/src/main/java/org/chorem/lima/ui/account/AccountViewHandler.java 2014-01-02 10:35:55 UTC (rev 3728) +++ trunk/lima-swing/src/main/java/org/chorem/lima/ui/account/AccountViewHandler.java 2014-01-02 14:30:39 UTC (rev 3729) @@ -166,7 +166,8 @@ @Override public void mouseClicked(MouseEvent e) { - if (e.getClickCount() == 2 ) { + JXTreeTable source = (JXTreeTable) e.getSource(); + if (source.rowAtPoint(e.getPoint()) >= 0 && e.getClickCount() == 2 ) { updateAccount(); } } Modified: trunk/lima-swing/src/main/java/org/chorem/lima/ui/financialstatementchart/FinancialStatementChartView.jaxx =================================================================== --- trunk/lima-swing/src/main/java/org/chorem/lima/ui/financialstatementchart/FinancialStatementChartView.jaxx 2014-01-02 10:35:55 UTC (rev 3728) +++ trunk/lima-swing/src/main/java/org/chorem/lima/ui/financialstatementchart/FinancialStatementChartView.jaxx 2014-01-02 14:30:39 UTC (rev 3729) @@ -28,6 +28,7 @@ <import> javax.swing.ListSelectionModel org.jdesktop.swingx.decorator.HighlighterFactory + static org.nuiton.i18n.I18n._ </import> <FinancialStatementChartViewHandler id="handler" @@ -35,7 +36,50 @@ <Boolean id="selectedRow" javaBean="false"/> <row> - <cell fill="both" weightx="1" weighty="1" rows='6'> + <cell fill="horizontal"> + <JToolBar floatable="false"> + + <JButton id="addFinancialStatementHeader" + toolTipText="{ _("lima.financialstatement.header.add") + " (Ctrl+Maj+N)"}" + actionIcon='financialstatement-add-header' + onActionPerformed="handler.addFinancialStatementHeader()"/> + + <JButton id="addFinancialStatementMovement" + toolTipText="{ _("lima.financialstatement.movement.add") + " (Ctrl+N)"}" + actionIcon='financialstatement-add-movement' + onActionPerformed="handler.addFinancialStatementMovement()" + enabled="{isSelectedRow()}"/> + + <JButton id="updateButton" + toolTipText="{ _("lima.common.update") + " (Ctrl+M)"}" + actionIcon='financialstatement-edit' + onActionPerformed="handler.updateFinancialStatement()" + enabled="{isSelectedRow()}"/> + + <JButton id="removeButton" + toolTipText="{ _("lima.common.remove") + " (Del)"}" + actionIcon='financialstatement-remove' + onActionPerformed="handler.removeFinancialStatement()" + enabled="{isSelectedRow()}"/> + + <JButton id="importButton" + toolTipText="{ _("lima.ui.importexport.import") + " (Ctrl+I)"}" + actionIcon='financialstatement-import' + onActionPerformed="handler.importFinancialStatementChart()"/> + + <JToolBar.Separator/> + + <JButton id="checkButton" + toolTipText="{ _("lima.financialstatement.check") + " (Ctrl+F)"}" + actionIcon='financialstatement-check' + onActionPerformed="handler.financialStatementChartCheck()"/> + + </JToolBar> + </cell> + </row> + + <row> + <cell fill="both" weightx="1" weighty="1"> <JScrollPane> <FinancialStatementChartTreeTable id="treeTable" constructorParams="getHandler()" @@ -47,44 +91,5 @@ onValueChanged="setSelectedRow(treeTable.getSelectedRow() != -1)"/> </JScrollPane> </cell> - <cell fill="horizontal"> - <JButton id="addFinancialStatementHeader" - text="lima.financialstatement.header.add" - onActionPerformed="getHandler().addFinancialStatementHeader()"/> - </cell> </row> - <row> - <cell fill="horizontal"> - <JButton id="addFinancialStatementMovement" - text="lima.financialstatement.movement.add" - onActionPerformed="getHandler().addFinancialStatementMovement()" - enabled="{isSelectedRow()}"/> - </cell> - </row> - <row> - <cell fill="horizontal"> - <JButton id="updateButton" text="lima.common.update" - onActionPerformed="getHandler().updateFinancialStatement()" - enabled="{isSelectedRow()}"/> - </cell> - </row> - <row> - <cell fill="horizontal"> - <JButton id="removeButton" text="lima.common.remove" - onActionPerformed="getHandler().removeFinancialStatement()" - enabled="{isSelectedRow()}"/> - </cell> - </row> - <row> - <cell fill="horizontal"> - <JButton id="importButton" text="lima.ui.importexport.import" - onActionPerformed="getHandler().importFinancialStatementChart()"/> - </cell> - </row> - <row> - <cell fill="horizontal"> - <JButton id="checkButton" text="lima.financialstatement.check" - onActionPerformed="getHandler().financialStatementChartCheck()"/> - </cell> - </row> </Table> \ No newline at end of file Modified: trunk/lima-swing/src/main/java/org/chorem/lima/ui/financialstatementchart/FinancialStatementChartViewHandler.java =================================================================== --- trunk/lima-swing/src/main/java/org/chorem/lima/ui/financialstatementchart/FinancialStatementChartViewHandler.java 2014-01-02 10:35:55 UTC (rev 3728) +++ trunk/lima-swing/src/main/java/org/chorem/lima/ui/financialstatementchart/FinancialStatementChartViewHandler.java 2014-01-02 14:30:39 UTC (rev 3729) @@ -25,14 +25,6 @@ package org.chorem.lima.ui.financialstatementchart; -import static org.nuiton.i18n.I18n._; - -import java.awt.Component; - -import javax.swing.JOptionPane; -import javax.swing.JTextArea; -import javax.swing.tree.TreePath; - import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.chorem.lima.business.ServiceListener; @@ -48,6 +40,15 @@ import org.jdesktop.swingx.JXTreeTable; import org.nuiton.util.Resource; +import javax.swing.*; +import javax.swing.tree.TreePath; +import java.awt.*; +import java.awt.event.ActionEvent; +import java.awt.event.InputEvent; +import java.awt.event.KeyEvent; + +import static org.nuiton.i18n.I18n._; + /** * Handler associated with account view. * @@ -73,8 +74,76 @@ LimaServiceFactory.getService( FinancialStatementService.class); LimaServiceFactory.addServiceListener(ImportService.class, this); + + init(); } + public void init() { + + InputMap inputMap = view.getInputMap(JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT); + ActionMap actionMap = view.getActionMap(); + + // add action on Ctrl + Maj + N + String binding = "add-FinancialStatementHeader"; + inputMap.put(KeyStroke.getKeyStroke(KeyEvent.VK_N, KeyEvent.CTRL_DOWN_MASK + InputEvent.SHIFT_DOWN_MASK), binding); + actionMap.put(binding, new AbstractAction() { + @Override + public void actionPerformed(ActionEvent e) { + addFinancialStatementHeader(); + } + }); + + // add action on Ctrl + N + binding = "add-FinancialStatementMovement"; + inputMap.put(KeyStroke.getKeyStroke(KeyEvent.VK_N, KeyEvent.CTRL_DOWN_MASK), binding); + actionMap.put(binding, new AbstractAction() { + @Override + public void actionPerformed(ActionEvent e) { + addFinancialStatementMovement(); + } + }); + + // add action on Ctrl + M + binding = "update-FinancialStatement"; + inputMap.put(KeyStroke.getKeyStroke(KeyEvent.VK_M, KeyEvent.CTRL_DOWN_MASK), binding); + actionMap.put(binding, new AbstractAction() { + @Override + public void actionPerformed(ActionEvent e) { + updateFinancialStatement(); + } + }); + + // add action on Delete + binding = "remove-FinancialStatement"; + inputMap.put(KeyStroke.getKeyStroke(KeyEvent.VK_DELETE, 0), binding); + actionMap.put(binding, new AbstractAction() { + @Override + public void actionPerformed(ActionEvent e) { + removeFinancialStatement(); + } + }); + + // add action on Ctrl + I + binding = "import-FinancialStatement"; + inputMap.put(KeyStroke.getKeyStroke(KeyEvent.VK_I, KeyEvent.CTRL_DOWN_MASK), binding); + actionMap.put(binding, new AbstractAction() { + @Override + public void actionPerformed(ActionEvent e) { + importFinancialStatementChart(); + } + }); + + // add action on Ctrl + K + binding = "check-FinancialStatement"; + inputMap.put(KeyStroke.getKeyStroke(KeyEvent.VK_K, KeyEvent.CTRL_DOWN_MASK), binding); + actionMap.put(binding, new AbstractAction() { + @Override + public void actionPerformed(ActionEvent e) { + financialStatementChartCheck(); + } + }); + } + /** Add new account with account form. */ public void addFinancialStatementHeader() { @@ -84,9 +153,22 @@ FinancialStatement newFinancialStatementHeader = new FinancialStatementImpl(); - FinancialStatementHeaderForm financialStatementHeaderForm = + final FinancialStatementHeaderForm financialStatementHeaderForm = new FinancialStatementHeaderForm(view); + financialStatementHeaderForm.setFinancialStatement(newFinancialStatementHeader); + + InputMap inputMap = financialStatementHeaderForm.getRootPane().getInputMap(JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT); + ActionMap actionMap = financialStatementHeaderForm.getRootPane().getActionMap(); + String binding = "dispose"; + inputMap.put(KeyStroke.getKeyStroke(KeyEvent.VK_ESCAPE, 0), binding); + actionMap.put(binding, new AbstractAction() { + @Override + public void actionPerformed(ActionEvent e) { + financialStatementHeaderForm.performCancel(); + } + }); + // jaxx constructor don't call super() ? financialStatementHeaderForm.setLocationRelativeTo(view); financialStatementHeaderForm.setVisible(true); @@ -117,9 +199,21 @@ FinancialStatement newFinancialStatementMovement = new FinancialStatementImpl(); - FinancialStatementMovementForm financialStatementMovementForm = + final FinancialStatementMovementForm financialStatementMovementForm = new FinancialStatementMovementForm(view); financialStatementMovementForm.setFinancialStatement(newFinancialStatementMovement); + + InputMap inputMap = financialStatementMovementForm.getRootPane().getInputMap(JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT); + ActionMap actionMap = financialStatementMovementForm.getRootPane().getActionMap(); + String binding = "dispose"; + inputMap.put(KeyStroke.getKeyStroke(KeyEvent.VK_ESCAPE, 0), binding); + actionMap.put(binding, new AbstractAction() { + @Override + public void actionPerformed(ActionEvent e) { + financialStatementMovementForm.performCancel(); + } + }); + // jaxx constructor don't call super() ? financialStatementMovementForm.setLocationRelativeTo(view); financialStatementMovementForm.setVisible(true); @@ -162,9 +256,20 @@ //test if selectedrow is account or ledger log.debug(financialStatement.getHeader()); if (financialStatement.getHeader()) { - FinancialStatementHeaderForm financialStatementHeaderForm = + final FinancialStatementHeaderForm financialStatementHeaderForm = new FinancialStatementHeaderForm(view); financialStatementHeaderForm.setFinancialStatement(financialStatement); + + InputMap inputMap = financialStatementHeaderForm.getRootPane().getInputMap(JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT); + ActionMap actionMap = financialStatementHeaderForm.getRootPane().getActionMap(); + String binding = "dispose"; + inputMap.put(KeyStroke.getKeyStroke(KeyEvent.VK_ESCAPE, 0), binding); + actionMap.put(binding, new AbstractAction() { + @Override + public void actionPerformed(ActionEvent e) { + financialStatementHeaderForm.performCancel(); + } + }); // jaxx constructor don't call super() ? financialStatementHeaderForm.setLocationRelativeTo(view); financialStatementHeaderForm.setVisible(true); @@ -173,9 +278,21 @@ } // else is a movement else { - FinancialStatementMovementForm financialStatementMovementForm = + final FinancialStatementMovementForm financialStatementMovementForm = new FinancialStatementMovementForm(view); financialStatementMovementForm.setFinancialStatement(financialStatement); + + InputMap inputMap = financialStatementMovementForm.getRootPane().getInputMap(JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT); + ActionMap actionMap = financialStatementMovementForm.getRootPane().getActionMap(); + String binding = "dispose"; + inputMap.put(KeyStroke.getKeyStroke(KeyEvent.VK_ESCAPE, 0), binding); + actionMap.put(binding, new AbstractAction() { + @Override + public void actionPerformed(ActionEvent e) { + financialStatementMovementForm.performCancel(); + } + }); + // jaxx constructor don't call super() ? financialStatementMovementForm.setLocationRelativeTo(view); financialStatementMovementForm.setVisible(true); @@ -226,8 +343,20 @@ } public void importFinancialStatementChart() { - FinancialStatementImportForm form = + final FinancialStatementImportForm form = new FinancialStatementImportForm(); + + InputMap inputMap = form.getRootPane().getInputMap(JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT); + ActionMap actionMap = form.getRootPane().getActionMap(); + String binding = "dispose"; + inputMap.put(KeyStroke.getKeyStroke(KeyEvent.VK_ESCAPE, 0), binding); + actionMap.put(binding, new AbstractAction() { + @Override + public void actionPerformed(ActionEvent e) { + form.performCancel(); + } + }); + form.setLocationRelativeTo(view); form.setVisible(true); Copied: trunk/lima-swing/src/main/resources/icons/action-financialstatement-add-header.png (from rev 3728, trunk/lima-swing/src/main/resources/icons/action-add-financial-transaction.png) =================================================================== (Binary files differ) Copied: trunk/lima-swing/src/main/resources/icons/action-financialstatement-add-movement.png (from rev 3728, trunk/lima-swing/src/main/resources/icons/action-add-entry.png) =================================================================== (Binary files differ) Added: trunk/lima-swing/src/main/resources/icons/action-financialstatement-check.png =================================================================== (Binary files differ) Property changes on: trunk/lima-swing/src/main/resources/icons/action-financialstatement-check.png ___________________________________________________________________ Added: svn:mime-type + application/octet-stream Copied: trunk/lima-swing/src/main/resources/icons/action-financialstatement-edit.png (from rev 3728, trunk/lima-swing/src/main/resources/icons/action-account-edit.png) =================================================================== (Binary files differ) Copied: trunk/lima-swing/src/main/resources/icons/action-financialstatement-import.png (from rev 3728, trunk/lima-swing/src/main/resources/icons/action-account-import.png) =================================================================== (Binary files differ) Copied: trunk/lima-swing/src/main/resources/icons/action-financialstatement-remove.png (from rev 3728, trunk/lima-swing/src/main/resources/icons/action-account-remove.png) =================================================================== (Binary files differ)
participants (1)
-
sbavencoffļ¼ users.chorem.org