comparison game/Engine.java @ 175:55ea5821c802

Implement "real" widget modality.
author Matti Hamalainen <ccr@tnsp.org>
date Thu, 16 Mar 2017 10:42:54 +0200
parents 8995a0363e0a
children 9d3ff9605555
comparison
equal deleted inserted replaced
174:92df534806c4 175:55ea5821c802
698 widgets.mouseExited(e); 698 widgets.mouseExited(e);
699 } 699 }
700 700
701 public void mousePressed(MouseEvent e) 701 public void mousePressed(MouseEvent e)
702 { 702 {
703 if (widgets.containsObject(aboutBox)) 703 widgets.mousePressed(e);
704 aboutBox.mousePressed(e);
705 else
706 widgets.mousePressed(e);
707 } 704 }
708 705
709 public void mouseReleased(MouseEvent e) 706 public void mouseReleased(MouseEvent e)
710 { 707 {
711 if (widgets.containsObject(aboutBox)) 708 widgets.mouseReleased(e);
712 aboutBox.mouseReleased(e);
713 else
714 widgets.mouseReleased(e);
715 } 709 }
716 710
717 public void mouseClicked(MouseEvent e) 711 public void mouseClicked(MouseEvent e)
718 { 712 {
719 if (!hasFocus()) 713 if (!hasFocus())
723 } 717 }
724 } 718 }
725 719
726 public void mouseWheelMoved(MouseWheelEvent e) 720 public void mouseWheelMoved(MouseWheelEvent e)
727 { 721 {
728 lauta.mouseWheelMoved(e); 722 if (widgets.getActiveModalWidget() == null)
723 lauta.mouseWheelMoved(e);
729 } 724 }
730 725
731 public void keyTyped(KeyEvent e) { } 726 public void keyTyped(KeyEvent e) { }
732 public void keyReleased(KeyEvent e) { } 727 public void keyReleased(KeyEvent e) { }
733 728
734 public void keyPressed(KeyEvent e) 729 public void keyPressed(KeyEvent e)
735 { 730 {
736 // Handle keyboard input 731 widgets.keyPressed(e);
737
738 // About box is modal, so pass key events to it when active
739 if (widgets.containsObject(aboutBox))
740 aboutBox.keyPressed(e);
741 else
742 widgets.keyPressed(e);
743 } 732 }
744 733
745 public void run() 734 public void run()
746 { 735 {
747 while (animEnable) 736 while (animEnable)