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

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  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 live.LiveObject;
  8. /**
  9. *
  10. * @author Hoofdgebruiker
  11. */
  12. public interface DComponent extends Destructible {
  13. void mount(DComponentContext context);
  14. void unmount();
  15. LiveObject<DSizing> getSizing();
  16. DIRectangle getBounds();
  17. int getBaselineY();
  18. void setBounds(DIRectangle bounds);
  19. default void onMouseEnter(DMouseEvent e) {}
  20. default void onMouseExit(DMouseEvent e) {}
  21. default void onMouseMove(DMouseEvent e) {}
  22. default void onMouseDrag(DMouseEvent e) {}
  23. default void onMouseClick(DMouseEvent e) {}
  24. default void onMouseDown(DMouseEvent e) {}
  25. default void onMouseRelease(DMouseEvent e) {}
  26. default void onMouseScroll(DMouseEvent e) {}
  27. default void onFocusLost() {}
  28. default void onFocusGained() {}
  29. default void onKeyTyped(DKeyEvent e) {}
  30. default void onKeyPressed(DKeyEvent e) {}
  31. default void onKeyReleased(DKeyEvent e) {}
  32. }