Ejemplo n.º 1
0
  /** refreshes the 4 charts and the transactionList */
  public void refresh() {

    // refresh total balance
    double balance = transactionMgr.getBalance();
    financesBalance_LBL.setText("You have $" + balance);
    if (balance < 0)
      financesBalance_LBL.setIcon(new ImageIcon(Finances.class.getResource("/img/Warning.png")));
    else financesBalance_LBL.setIcon(null);

    // refresh 4 types
    DefaultCategoryDataset AssetDataset = new DefaultCategoryDataset();
    AssetDataset = TransactionMgr.getAssetChartData();
    financesAsset_PNL.removeAll();
    financesAsset_PNL.add(renderBarChart(AssetDataset, 0));
    financesAsset_PNL.add(financesRenameAssetCat_BTN);
    financesAsset_PNL.add(financesAssetTransfer_BTN);

    DefaultCategoryDataset LiabilityDataset = new DefaultCategoryDataset();
    LiabilityDataset = TransactionMgr.getLiabilityChartData();
    financesLiability_PNL.removeAll();
    financesLiability_PNL.add(renderBarChart(LiabilityDataset, 1));
    financesLiability_PNL.add(financesRenameLiabilityCat_BTN);
    financesLiability_PNL.add(financesLiabilityTransfer_BTN);

    DefaultCategoryDataset IncomeDataset = new DefaultCategoryDataset();
    IncomeDataset = TransactionMgr.getIncomeChartData();
    financesIncome_PNL.removeAll();
    financesIncome_PNL.add(renderBarChart(IncomeDataset, 2));
    financesIncome_PNL.add(financesRenameIncomeCat_BTN);

    DefaultCategoryDataset ExpenseDataset = new DefaultCategoryDataset();
    ExpenseDataset = TransactionMgr.getExpenseChartData();
    financesExpense_PNL.removeAll();
    financesExpense_PNL.add(renderBarChart(ExpenseDataset, 3));
    financesExpense_PNL.add(financesRenameExpenseCat_BTN);

    // refresh transactionList
    financesTransactionList_PNL.removeAll();
    renderList(financesTransactionList_PNL, TransactionMgr.getTransactionList());

    // refresh line chart
    financesLineChart_PNL.add(renderLineChart(TransactionMgr.getLineChartData()));

    financesMain_FRM.validate();
  }
Ejemplo n.º 2
0
  /** Initialize the contents of the frame. */
  private void initialize() {

    // setting up the main window
    financesMain_FRM.getContentPane().setBackground(new Color(255, 255, 255));
    financesMain_FRM.setSize(1200, 750);
    financesMain_FRM.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    financesMain_FRM.add(financesMain_SCP);
    financesMain_PNL.setLayout(
        new MigLayout("", "[400]0[400]0[250:300:350]", "0[100,grow]0[300,grow]0[300,grow]0"));
    financesMain_PNL.setBackground(new Color(255, 255, 255));

    // setting up the top panel
    financesBalance_PNL.setBackground(new Color(255, 255, 255));
    financesBalance_PNL.setLayout(new MigLayout("", "[1100]", "[50]5[30]"));
    financesBalance_PNL.add(financesWelcome_LBL, "cell 0 0, align center");
    if (transactionMgr.getBalance() < 0)
      financesBalance_LBL.setIcon(new ImageIcon(Finances.class.getResource("/img/Warning.png")));
    financesBalance_PNL.add(financesBalance_LBL, "cell 0 1, align center");
    financesMain_PNL.add(financesBalance_PNL, "cell 0 0 3 1,grow");

    // setting up the asset panel
    financesAsset_PNL.setBackground(new Color(255, 255, 255));
    DefaultCategoryDataset AssetDataset = new DefaultCategoryDataset();
    AssetDataset = TransactionMgr.getAssetChartData();
    financesAsset_PNL.add(renderBarChart(AssetDataset, 0));
    financesRenameAssetCat_BTN.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {

            transactionMgr.renameAssetCategories();
          }
        });
    financesAsset_PNL.add(financesRenameAssetCat_BTN);
    financesAssetTransfer_BTN.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {

            transactionMgr.transferIntraAsset();
          }
        });
    financesAsset_PNL.add(financesAssetTransfer_BTN);
    financesMain_PNL.add(financesAsset_PNL, "cell 0 1,grow");

    // setting up the liability panel
    financesLiability_PNL.setBackground(new Color(255, 255, 255));
    DefaultCategoryDataset LiabilityDataset = new DefaultCategoryDataset();
    LiabilityDataset = TransactionMgr.getLiabilityChartData();
    financesLiability_PNL.add(renderBarChart(LiabilityDataset, 1));
    financesRenameLiabilityCat_BTN.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {

            transactionMgr.renameLiabilityCategories();
          }
        });
    financesLiability_PNL.add(financesRenameLiabilityCat_BTN);
    financesLiabilityTransfer_BTN.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            transactionMgr.transferIntraLiability();
          }
        });
    financesLiability_PNL.add(financesLiabilityTransfer_BTN);
    financesMain_PNL.add(financesLiability_PNL, "cell 1 1,grow");

    // setting up the right panel
    financesRight_PNL.setBackground(new Color(255, 255, 255));
    financesRight_PNL.setLayout(new MigLayout("", "0[300,grow]0", "0[40]0[400]0[50]0"));
    financesTransactions_LBL.setFont(new Font("Tahoma", Font.BOLD, 22));
    financesRight_PNL.add(financesTransactions_LBL, "cell 0 0,growx,aligny top");
    financesMain_PNL.add(financesRight_PNL, "cell 2 1 1 2,grow");

    // setting up the transaction list panel and adding it to the right panel
    financesTransactionList_PNL.setBackground(new Color(240, 240, 230));
    renderList(financesTransactionList_PNL, TransactionMgr.getTransactionList());
    financesTransactionList_SCP.setViewportView(financesTransactionList_PNL);
    financesTransactionList_PNL.setLayout(new MigLayout("flowy", "5[grow,left]5", "5[grow,top]5"));
    financesRight_PNL.add(financesTransactionList_SCP, "cell 0 1,grow");
    financesRight_PNL.validate();

    // setting up the crud buttons panel and adding it to the right panel
    financesCrud_PNL.setBackground(new Color(255, 255, 255));
    financesCrud_PNL.setLayout(new MigLayout("", "0[50]3[50]3[50]3[50]3[50]0", "0[50]0"));
    financesRight_PNL.add(financesCrud_PNL, "flowx,cell 0 2");

    // Add the respective buttons with their icon and a simple tooltip
    financesAdd_BTN.setToolTipText("Add an Entry");
    financesAdd_BTN.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            transactionMgr.addTransaction();
          }
        });
    financesCrud_PNL.add(financesAdd_BTN, "cell 0 0");

    financesEdit_BTN.setBackground(new Color(255, 255, 255));
    financesEdit_BTN.setToolTipText("Edit an Entry");
    financesEdit_BTN.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            transactionMgr.editTransaction();
          }
        });
    financesCrud_PNL.add(financesEdit_BTN, "cell 1 0");

    financesDel_BTN.setBackground(new Color(255, 255, 255));
    financesDel_BTN.setToolTipText("Delete an Entry");
    financesDel_BTN.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            transactionMgr.deleteTransaction();
          }
        });
    financesCrud_PNL.add(financesDel_BTN, "cell 2 0");

    financesUndo_BTN.setBackground(new Color(255, 255, 255));
    financesUndo_BTN.setToolTipText("Undo your last transaction");
    financesUndo_BTN.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            transactionMgr.undo();
            refresh();
          }
        });
    financesCrud_PNL.add(financesUndo_BTN, "cell 3 0");

    financesSearch_BTN.setBackground(new Color(255, 255, 255));
    financesSearch_BTN.setToolTipText("Search");
    financesSearch_BTN.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            SearchMgr searchMgr = new SearchMgr();
          }
        });
    financesCrud_PNL.add(financesSearch_BTN, "cell 4 0");

    // setting up the income panel
    financesIncome_PNL.setBackground(new Color(255, 255, 255));
    DefaultCategoryDataset IncomeDataset = new DefaultCategoryDataset();
    IncomeDataset = TransactionMgr.getIncomeChartData();
    financesIncome_PNL.add(renderBarChart(IncomeDataset, 2));
    financesRenameIncomeCat_BTN.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            transactionMgr.renameIncomeCategories();
          }
        });
    financesIncome_PNL.add(financesRenameIncomeCat_BTN);
    financesMain_PNL.add(financesIncome_PNL, "cell 0 2,grow");

    // setting up the expense panel
    financesExpense_PNL.setBackground(new Color(255, 255, 255));
    DefaultCategoryDataset ExpenseDataset = new DefaultCategoryDataset();
    ExpenseDataset = TransactionMgr.getExpenseChartData();
    financesExpense_PNL.add(renderBarChart(ExpenseDataset, 3));
    financesRenameExpenseCat_BTN.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            transactionMgr.renameExpenseCategories();
          }
        });
    financesExpense_PNL.add(financesRenameExpenseCat_BTN);
    financesMain_PNL.add(financesExpense_PNL, "cell 1 2,grow");

    /*
     * setting up the line chart panel
    financesLineChart_PNL.setBackground(new Color(255, 255, 255));
    financesLineChart_PNL.add(renderLineChart(TransactionMgr.getLineChartData()));
    financesMain_PNL.add(financesLineChart_PNL, "cell 0 3 3 1,center");
     */

    // to clear log when exiting the application
    financesMain_FRM.addWindowListener(
        new WindowAdapter() {

          public void windowClosing(WindowEvent e) {
            TransactionMgr.clearLog();
          }
        });
  }