MyButton.java 940 B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. package urgrip.toolbar;
  2. import javax.swing.*;
  3. import javax.swing.event.ChangeEvent;
  4. import javax.swing.event.ChangeListener;
  5. import java.awt.event.ActionEvent;
  6. import java.awt.event.ActionListener;
  7. public class MyButton implements ChangeListener, ActionListener {
  8. private final JButton button;
  9. private final HandleButton cb;
  10. public MyButton(JButton b, HandleButton cb) {
  11. b.addChangeListener(this);
  12. b.addActionListener(this);
  13. this.button=b;
  14. this.cb=cb;
  15. }
  16. @Override
  17. public void stateChanged(ChangeEvent e) {
  18. JButton button = (JButton) e.getSource();
  19. if(e.getSource()==button) {
  20. if(button.getModel().isPressed())
  21. cb.down();
  22. else cb.up();
  23. }
  24. }
  25. public void close() {
  26. button.removeChangeListener(this);
  27. }
  28. @Override
  29. public void actionPerformed(ActionEvent e) {
  30. cb.action();
  31. }
  32. }