package jdepend.client.ui.shoppingcart; import java.awt.BorderLayout; import javax.swing.ImageIcon; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JTextField; import javax.swing.border.BevelBorder; import jdepend.framework.exception.JDependException; import jdepend.framework.ui.util.JDependUIUtil; import jdepend.client.ui.JDependCooper; import jdepend.client.ui.shoppingcart.model.ShoppingCart; public class ShoppingCartPanel extends JPanel { private JLabel state; public ShoppingCartPanel(final JDependCooper frame) { this.setLayout(new BorderLayout()); this.setBorder(javax.swing.BorderFactory.createBevelBorder(BevelBorder.LOWERED)); state = new JLabel(); state.setFocusable(false); state.setHorizontalAlignment(JTextField.LEFT); state.addMouseListener(new java.awt.event.MouseAdapter() { @Override public void mouseClicked(java.awt.event.MouseEvent evt) { try { ProductListDialog d = new ProductListDialog(frame); d.setModal(true); d.setVisible(true); } catch (JDependException e) { frame.getResultPanel().showError(e); } } }); this.add(state); this.refreshState(); } public void refreshState() { if (ShoppingCart.getInstance().isEmpty()) { state.setIcon(new ImageIcon(JDependUIUtil.getImage("cart/default.png"))); state.setText(" "); } else { state.setIcon(new ImageIcon(JDependUIUtil.getImage("cart/have.png"))); state.setText(String.valueOf(ShoppingCart.getInstance().getProducts().size())); } } }