Coverage Report - org.homeunix.thecave.buddi.view.menu.items.EditEditTransactions
 
Classes in this File Line Coverage Branch Coverage Complexity
EditEditTransactions
40%
9/22
42%
6/14
3.333
 
 1  
 /*
 2  
  * Created on Aug 6, 2007 by wyatt
 3  
  */
 4  
 package org.homeunix.thecave.buddi.view.menu.items;
 5  
 
 6  
 import java.awt.Toolkit;
 7  
 import java.awt.event.ActionEvent;
 8  
 import java.awt.event.KeyEvent;
 9  
 import java.util.List;
 10  
 import java.util.logging.Logger;
 11  
 
 12  
 import javax.swing.KeyStroke;
 13  
 
 14  
 import org.homeunix.thecave.buddi.i18n.keys.MenuKeys;
 15  
 import org.homeunix.thecave.buddi.model.Source;
 16  
 import org.homeunix.thecave.buddi.model.prefs.PrefsModel;
 17  
 import org.homeunix.thecave.buddi.view.MainFrame;
 18  
 import org.homeunix.thecave.buddi.view.TransactionFrame;
 19  
 
 20  
 import ca.digitalcave.moss.swing.MossMenuItem;
 21  
 import ca.digitalcave.moss.swing.exception.WindowOpenException;
 22  
 
 23  
 public class EditEditTransactions extends MossMenuItem{
 24  
         public static final long serialVersionUID = 0;
 25  
         
 26  
         //This has to be a AccountFrame, as we need to get selected accounts.
 27  
         public EditEditTransactions(MainFrame frame) {
 28  30230
                 super(frame, PrefsModel.getInstance().getTranslator().get(MenuKeys.MENU_EDIT_EDIT_TRANSACTIONS),
 29  
                                 KeyStroke.getKeyStroke(KeyEvent.VK_T, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask()));
 30  30230
         }
 31  
         
 32  
         @Override
 33  
         public void updateMenus() {
 34  169890
                 super.updateMenus();
 35  
                 
 36  169890
                 if (((MainFrame) getFrame()).isMyAccountsTabSelected())
 37  164932
                         this.setEnabled(((MainFrame) getFrame()).getSelectedAccounts().size() > 0);
 38  4958
                 else if (((MainFrame) getFrame()).isMyBudgetTabSelected())
 39  2692
                         this.setEnabled(((MainFrame) getFrame()).getSelectedBudgetCategories().size() > 0);
 40  
                 else {
 41  2266
                         this.setEnabled(false);
 42  
                 }
 43  
                 
 44  169890
         }
 45  
         
 46  
         @Override
 47  
         public void actionPerformed(ActionEvent e) {
 48  0
                 ((MainFrame) getFrame()).getDocument().startBatchChange();
 49  
                 List<? extends Source> selectedSources;
 50  
                 
 51  0
                 if (((MainFrame) getFrame()).isMyAccountsTabSelected())
 52  0
                         selectedSources = ((MainFrame) getFrame()).getSelectedAccounts();
 53  0
                 else if (((MainFrame) getFrame()).isMyBudgetTabSelected())
 54  0
                         selectedSources = ((MainFrame) getFrame()).getSelectedBudgetCategories();
 55  
                 else {
 56  0
                         Logger.getLogger(this.getClass().getName()).warning("EditEditTransactions called from a menu other than MyAccounts or MyBudget!");
 57  0
                         return;
 58  
                 }
 59  
                 
 60  0
                 for (Source a : selectedSources) {
 61  
                         try {
 62  0
                                 TransactionFrame transactionsFrame = new TransactionFrame((MainFrame) getFrame(), a);
 63  0
                                 transactionsFrame.openWindow(
 64  
                                                 PrefsModel.getInstance().getWindowSize(((MainFrame) getFrame()).getDocument().getFile() + a.getFullName()), 
 65  
                                                 PrefsModel.getInstance().getWindowLocation(((MainFrame) getFrame()).getDocument().getFile() + a.getFullName()));
 66  
                         }
 67  0
                         catch (WindowOpenException woe){}
 68  
                 }
 69  0
                 ((MainFrame) getFrame()).getDocument().finishBatchChange();
 70  0
         }
 71  
 }