IJavaRenderer.java 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. package me.hammerle.supersnuvi.javafx;
  2. public interface IJavaRenderer
  3. {
  4. // -------------------------------------------------------------------------
  5. // image rendering
  6. // -------------------------------------------------------------------------
  7. public void drawImage(Image image, double x, double y);
  8. public void drawImage(Image image, double x, double y, double w, double h);
  9. public void drawImage(Image img, double sx, double sy, double sw, double sh, double dx, double dy, double dw, double dh);
  10. // -------------------------------------------------------------------------
  11. // primitive rendering
  12. // -------------------------------------------------------------------------
  13. public double getWidth();
  14. public double getHeight();
  15. public void prepareRendering();
  16. public void save();
  17. public void restore();
  18. public void setFillColor(int r, int g, int b, double alpha);
  19. public void setStrokeColor(int r, int g, int b, double alpha);
  20. public void fillRectangle(double x, double y, double w, double h);
  21. public void setGlobalAlpha(double alpha);
  22. public void setScale(double scale);
  23. // -------------------------------------------------------------------------
  24. // text rendering
  25. // -------------------------------------------------------------------------
  26. public void prepareTextDrawing(int r, int g, int b, double alpha, int width);
  27. public void stopTextDrawing();
  28. public void drawText(double x, double y, char[] text, int max);
  29. public double getTextWidth(int chars);
  30. public double getTextHeight(int lines);
  31. }