ZenScript main repository
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

DComponent.java 1.1KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. /*
  2. * To change this license header, choose License Headers in Project Properties.
  3. * To change this template file, choose Tools | Templates
  4. * and open the template in the editor.
  5. */
  6. package org.openzen.drawablegui;
  7. import org.openzen.drawablegui.live.LiveObject;
  8. /**
  9. *
  10. * @author Hoofdgebruiker
  11. */
  12. public interface DComponent {
  13. void setContext(DDrawingContext context);
  14. LiveObject<DDimensionPreferences> getDimensionPreferences();
  15. DRectangle getBounds();
  16. void setBounds(DRectangle bounds);
  17. void paint(DCanvas canvas);
  18. default void onMouseEnter(DMouseEvent e) {}
  19. default void onMouseExit(DMouseEvent e) {}
  20. default void onMouseMove(DMouseEvent e) {}
  21. default void onMouseDrag(DMouseEvent e) {}
  22. default void onMouseClick(DMouseEvent e) {}
  23. default void onMouseDown(DMouseEvent e) {}
  24. default void onMouseRelease(DMouseEvent e) {}
  25. default void onMouseScroll(DMouseEvent e) {}
  26. default void onFocusLost() {}
  27. default void onFocusGained() {}
  28. default void onKeyTyped(DKeyEvent e) {}
  29. default void onKeyPressed(DKeyEvent e) {}
  30. default void onKeyReleased(DKeyEvent e) {}
  31. }