diff --git a/src/Main.java b/src/Main.java index c21df79..2dce076 100644 --- a/src/Main.java +++ b/src/Main.java @@ -1,27 +1,14 @@ -import java.awt.BorderLayout; -import java.awt.Container; -import javax.swing.JComponent; import javax.swing.JFrame; -import javax.swing.SwingUtilities; import frames.MainFrame; -import panels.*; public class Main { - + // ------------------------------------------------------------------------- // public static void main(String[] args) { - // ------------------------------------------------------------------------- - // - SwingUtilities.invokeLater(new Runnable() { - public void run() { - - // generate window - JFrame mainFrame = new MainFrame(); - } - }); - // ------------------------------------------------------------------------- + // generate window + JFrame mainFrame = new MainFrame(); } } diff --git a/src/frames/MainFrame.java b/src/frames/MainFrame.java index 485a2a0..56a61cb 100644 --- a/src/frames/MainFrame.java +++ b/src/frames/MainFrame.java @@ -1,28 +1,21 @@ package frames; import java.awt.BorderLayout; -import java.util.HashMap; import javax.swing.JFrame; import javax.swing.JPanel; -import panels.*; -import resources.Customer; +import panels.MainPanel; +import panels.ShowHistoryPanel; import resources.CustomersModel; //------------------------------------------------------------------------- // public class MainFrame extends JFrame implements IMainFrame { - - // field - private State state; // model private CustomersModel model; - // panel - private JPanel curPanel; - // cache private MainPanel mainPanel; private ShowHistoryPanel historyPanel; diff --git a/src/panels/MainPanel.java b/src/panels/MainPanel.java index c2e566c..862a32a 100644 --- a/src/panels/MainPanel.java +++ b/src/panels/MainPanel.java @@ -5,24 +5,14 @@ import java.awt.FlowLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; -import java.util.EventListener; -import java.util.HashMap; -import java.util.Random; -import javax.swing.DefaultListModel; import javax.swing.JButton; -import javax.swing.JList; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JTable; -import javax.swing.JTextField; -import javax.swing.event.TableModelEvent; import javax.swing.table.DefaultTableModel; -import javax.swing.table.TableModel; import frames.IMainFrame; -import frames.MainFrame; -import frames.State; import resources.Customer; import resources.CustomersModel; @@ -44,7 +34,7 @@ // buttons private JButton addButton; private JButton removeButton; - private JButton showDetailButton; + private JButton showHistoryButton; // ------------------------------------------------------------------------- // ------------------------------------------------------------------------- @@ -71,22 +61,22 @@ // add buttons addButton = new JButton("Add"); removeButton = new JButton("Remove"); - showDetailButton = new JButton("Show History"); + showHistoryButton = new JButton("Show History"); // add listener addButton.addActionListener(new AddActionHandler()); removeButton.addActionListener(new RemoveActionHandler()); - showDetailButton.addActionListener(new ShowHistoryActionHandler()); + showHistoryButton.addActionListener(new ShowHistoryActionHandler()); JPanel buttonPanel = new JPanel(); buttonPanel.add(addButton, BorderLayout.WEST); buttonPanel.add(removeButton, BorderLayout.EAST); add(buttonPanel, BorderLayout.CENTER); - // add show detail + // add show history JPanel showButtonPanel = new JPanel(); FlowLayout flowLayout = new FlowLayout(); - showButtonPanel.add(showDetailButton, BorderLayout.SOUTH); + showButtonPanel.add(showHistoryButton, BorderLayout.SOUTH); showButtonPanel.setLayout(flowLayout); add(showButtonPanel, BorderLayout.SOUTH); diff --git a/src/panels/ShowHistoryPanel.java b/src/panels/ShowHistoryPanel.java index d365585..628fb45 100644 --- a/src/panels/ShowHistoryPanel.java +++ b/src/panels/ShowHistoryPanel.java @@ -53,7 +53,7 @@ this.model = model; // initialize table - historiesListModel = new DefaultListModel(); + historiesListModel = new DefaultListModel(); historiesList = new JList(historiesListModel); BoxLayout layout = new BoxLayout(this, BoxLayout.Y_AXIS); @@ -81,8 +81,8 @@ panel.add(payButton); panel.add(backButton); - add(panel); - add(backButton); + this.add(panel); + this.add(backButton); // add listener backButton.addActionListener(new BackActionHandler()); @@ -95,11 +95,11 @@ // public // ------------------------------------------------------------------------- // - public void updateListModelByIndex(int index) { - selectedCustomer = model.getCustomers().get(index); + public void updateListModelByIndex(int customerId) { + selectedCustomer = model.getCustomers().get(customerId); historiesListModel.removeAllElements(); - historiesListModel.addAll(model.getCustomers().get(index).getHistory()); + historiesListModel.addAll(model.getCustomers().get(customerId).getHistory()); nameLabel.setText("name: " + selectedCustomer.getName()); } @@ -130,6 +130,9 @@ // ------------------------------------------------------------------------- // payment button's event private class PaymentActionHandler implements ActionListener { + + // ------------------------------------------------------------------------- + // public void actionPerformed(ActionEvent e) { String text = textField.getText(); diff --git a/src/resources/Customer.java b/src/resources/Customer.java index 225b25d..70c0fdd 100644 --- a/src/resources/Customer.java +++ b/src/resources/Customer.java @@ -1,5 +1,6 @@ package resources; -import java.util.*; + +import java.util.List; //------------------------------------------------------------------------- // todo: add name field @@ -9,31 +10,36 @@ private History history; private Payment payment; private String name; // added - public Customer(String name) { + + public Customer(String name) { // added points = new Points(); total = new Total(); history = new History(total); - payment = new Payment(points,history); - - // added - this.name = name; + payment = new Payment(points, history); + + this.name = name; // added } + public void purchase(int x) { this.payment.purchase(x); } + public int getTotal() { return total.getValue(); } + public int getPayment() { return payment.getValue(); } + public List getHistory() { return history.getValue(); } + public int getPoints() { return points.getValue(); } - + // added public String getName() { return this.name;