21 #include <LLDW_PAINTER_impl.h> 24 #include <LLUI_DISPLAY.h> 27 #include "ui_drawing.h" 34 #define LOG_DRAW_START(fn) LLUI_DISPLAY_logDrawingStart(CONCAT_DEFINES(LOG_DRAW_, fn)) 35 #define LOG_DRAW_END(fn) LLUI_DISPLAY_logDrawingEnd(CONCAT_DEFINES(LOG_DRAW_, fn)) 40 #define LOG_DRAW_drawThickFadedPoint 100 41 #define LOG_DRAW_drawThickFadedLine 101 42 #define LOG_DRAW_drawThickFadedCircle 102 43 #define LOG_DRAW_drawThickFadedCircleArc 103 44 #define LOG_DRAW_drawThickFadedEllipse 104 45 #define LOG_DRAW_drawThickLine 105 46 #define LOG_DRAW_drawThickCircle 106 47 #define LOG_DRAW_drawThickEllipse 107 48 #define LOG_DRAW_drawThickCircleArc 108 50 #define LOG_DRAW_drawFlippedImage 200 51 #define LOG_DRAW_drawRotatedImageNearestNeighbor 201 52 #define LOG_DRAW_drawRotatedImageBilinear 202 53 #define LOG_DRAW_drawScaledImageNearestNeighbor 203 54 #define LOG_DRAW_drawScaledImageBilinear 204 60 void LLDW_PAINTER_IMPL_drawThickFadedPoint(MICROUI_GraphicsContext* gc, jint x, jint y, jint thickness, jint fade) {
61 if (((thickness > 0) || (fade > 0)) && LLUI_DISPLAY_requestDrawing(gc, (SNI_callback)&LLDW_PAINTER_IMPL_drawThickFadedPoint)) {
62 LOG_DRAW_START(drawThickFadedPoint);
63 LLUI_DISPLAY_setDrawingStatus(UI_DRAWING_drawThickFadedPoint(gc, x, y, thickness, fade));
64 LOG_DRAW_END(drawThickFadedPoint);
68 void LLDW_PAINTER_IMPL_drawThickFadedLine(MICROUI_GraphicsContext* gc, jint startX, jint startY, jint endX, jint endY, jint thickness, jint fade, DRAWING_Cap startCap, DRAWING_Cap endCap) {
69 if (((thickness > 0) || (fade > 0)) && LLUI_DISPLAY_requestDrawing(gc, (SNI_callback)&LLDW_PAINTER_IMPL_drawThickFadedLine)) {
70 LOG_DRAW_START(drawThickFadedLine);
71 LLUI_DISPLAY_setDrawingStatus(UI_DRAWING_drawThickFadedLine(gc, startX, startY, endX, endY, thickness, fade, startCap, endCap));
72 LOG_DRAW_END(drawThickFadedLine);
76 void LLDW_PAINTER_IMPL_drawThickFadedCircle(MICROUI_GraphicsContext* gc, jint x, jint y, jint diameter, jint thickness, jint fade) {
77 if (((thickness > 0) || (fade > 0)) && (diameter > 0) && LLUI_DISPLAY_requestDrawing(gc, (SNI_callback)&LLDW_PAINTER_IMPL_drawThickFadedCircle)) {
78 LOG_DRAW_START(drawThickFadedCircle);
79 LLUI_DISPLAY_setDrawingStatus(UI_DRAWING_drawThickFadedCircle(gc, x, y, diameter, thickness, fade));
80 LOG_DRAW_END(drawThickFadedCircle);
84 void LLDW_PAINTER_IMPL_drawThickFadedCircleArc(MICROUI_GraphicsContext* gc, jint x, jint y, jint diameter, jfloat startAngle, jfloat arcAngle, jint thickness, jint fade, DRAWING_Cap start, DRAWING_Cap end) {
85 if (((thickness > 0) || (fade > 0)) && (diameter > 0) && ((int32_t)arcAngle != 0) && LLUI_DISPLAY_requestDrawing(gc, (SNI_callback)&LLDW_PAINTER_IMPL_drawThickFadedCircleArc)) {
86 LOG_DRAW_START(drawThickFadedCircleArc);
87 LLUI_DISPLAY_setDrawingStatus(UI_DRAWING_drawThickFadedCircleArc(gc, x, y, diameter, startAngle, arcAngle, thickness, fade, start, end));
88 LOG_DRAW_END(drawThickFadedCircleArc);
92 void LLDW_PAINTER_IMPL_drawThickFadedEllipse(MICROUI_GraphicsContext* gc, jint x, jint y, jint width, jint height, jint thickness, jint fade) {
93 if (((thickness > 0) || (fade > 0)) && (width > 0) && (height > 0) && LLUI_DISPLAY_requestDrawing(gc, (SNI_callback)&LLDW_PAINTER_IMPL_drawThickFadedEllipse)) {
94 LOG_DRAW_START(drawThickFadedEllipse);
95 LLUI_DISPLAY_setDrawingStatus(UI_DRAWING_drawThickFadedEllipse(gc, x, y, width, height, thickness, fade));
96 LOG_DRAW_END(drawThickFadedEllipse);
100 void LLDW_PAINTER_IMPL_drawThickLine(MICROUI_GraphicsContext* gc, jint startX, jint startY, jint endX, jint endY, jint thickness) {
101 if ((thickness > 0) && LLUI_DISPLAY_requestDrawing(gc, (SNI_callback)&LLDW_PAINTER_IMPL_drawThickLine)) {
102 LOG_DRAW_START(drawThickLine);
103 LLUI_DISPLAY_setDrawingStatus(UI_DRAWING_drawThickLine(gc, startX, startY, endX, endY, thickness));
104 LOG_DRAW_END(drawThickLine);
108 void LLDW_PAINTER_IMPL_drawThickCircle(MICROUI_GraphicsContext* gc, jint x, jint y, jint diameter, jint thickness) {
109 if ((thickness > 0) && (diameter > 0) && LLUI_DISPLAY_requestDrawing(gc, (SNI_callback)&LLDW_PAINTER_IMPL_drawThickCircle)) {
110 LOG_DRAW_START(drawThickCircle);
111 LLUI_DISPLAY_setDrawingStatus(UI_DRAWING_drawThickCircle(gc, x, y, diameter, thickness));
112 LOG_DRAW_END(drawThickCircle);
116 void LLDW_PAINTER_IMPL_drawThickEllipse(MICROUI_GraphicsContext* gc, jint x, jint y, jint width, jint height, jint thickness) {
117 if ((thickness > 0) && (width > 0) && (height > 0) && LLUI_DISPLAY_requestDrawing(gc, (SNI_callback)&LLDW_PAINTER_IMPL_drawThickEllipse)) {
118 LOG_DRAW_START(drawThickEllipse);
119 LLUI_DISPLAY_setDrawingStatus(UI_DRAWING_drawThickEllipse(gc, x, y, width, height, thickness));
120 LOG_DRAW_END(drawThickEllipse);
124 void LLDW_PAINTER_IMPL_drawThickCircleArc(MICROUI_GraphicsContext* gc, jint x, jint y, jint diameter, jfloat startAngle, jfloat arcAngle, jint thickness) {
125 if ((thickness > 0) && (diameter > 0) && ((int32_t)arcAngle != 0) && LLUI_DISPLAY_requestDrawing(gc, (SNI_callback)&LLDW_PAINTER_IMPL_drawThickCircleArc)) {
126 LOG_DRAW_START(drawThickCircleArc);
127 LLUI_DISPLAY_setDrawingStatus(UI_DRAWING_drawThickCircleArc(gc, x, y, diameter, startAngle, arcAngle, thickness));
128 LOG_DRAW_END(drawThickCircleArc);
132 void LLDW_PAINTER_IMPL_drawFlippedImage(MICROUI_GraphicsContext* gc, MICROUI_Image* img, jint regionX, jint regionY, jint width, jint height, jint x, jint y, DRAWING_Flip transformation, jint alpha) {
133 if (!LLUI_DISPLAY_isClosed(img) && (alpha > 0) && LLUI_DISPLAY_requestDrawing(gc, (SNI_callback)&LLDW_PAINTER_IMPL_drawFlippedImage)) {
134 LOG_DRAW_START(drawFlippedImage);
135 LLUI_DISPLAY_setDrawingStatus(UI_DRAWING_drawFlippedImage(gc, img, regionX, regionY, width, height, x, y, transformation, alpha));
136 LOG_DRAW_END(drawFlippedImage);
140 void LLDW_PAINTER_IMPL_drawRotatedImageNearestNeighbor(MICROUI_GraphicsContext* gc, MICROUI_Image* img, jint x, jint y, jint rotationX, jint rotationY, jfloat angle, jint alpha) {
141 if (!LLUI_DISPLAY_isClosed(img) && (alpha > 0) && LLUI_DISPLAY_requestDrawing(gc, (SNI_callback)&LLDW_PAINTER_IMPL_drawRotatedImageNearestNeighbor)) {
142 LOG_DRAW_START(drawRotatedImageNearestNeighbor);
143 LLUI_DISPLAY_setDrawingStatus(UI_DRAWING_drawRotatedImageNearestNeighbor(gc, img, x, y, rotationX, rotationY, angle, alpha));
144 LOG_DRAW_END(drawRotatedImageNearestNeighbor);
148 void LLDW_PAINTER_IMPL_drawRotatedImageBilinear(MICROUI_GraphicsContext* gc, MICROUI_Image* img, jint x, jint y, jint rotationX, jint rotationY, jfloat angle, jint alpha) {
149 if (!LLUI_DISPLAY_isClosed(img) && (alpha > 0) && LLUI_DISPLAY_requestDrawing(gc, (SNI_callback)&LLDW_PAINTER_IMPL_drawRotatedImageBilinear)) {
150 LOG_DRAW_START(drawRotatedImageBilinear);
151 LLUI_DISPLAY_setDrawingStatus(UI_DRAWING_drawRotatedImageBilinear(gc, img, x, y, rotationX, rotationY, angle, alpha));
152 LOG_DRAW_END(drawRotatedImageBilinear);
156 void LLDW_PAINTER_IMPL_drawScaledImageNearestNeighbor(MICROUI_GraphicsContext* gc, MICROUI_Image* img, jint x, jint y, jfloat factorX, jfloat factorY, jint alpha) {
157 if (!LLUI_DISPLAY_isClosed(img) && (alpha > 0) && (factorX > 0.f) && (factorY > 0.f) && LLUI_DISPLAY_requestDrawing(gc, (SNI_callback)&LLDW_PAINTER_IMPL_drawScaledImageNearestNeighbor)) {
158 LOG_DRAW_START(drawScaledImageNearestNeighbor);
159 LLUI_DISPLAY_setDrawingStatus(UI_DRAWING_drawScaledImageNearestNeighbor(gc, img, x, y, factorX, factorY, alpha));
160 LOG_DRAW_END(drawScaledImageNearestNeighbor);
164 void LLDW_PAINTER_IMPL_drawScaledImageBilinear(MICROUI_GraphicsContext* gc, MICROUI_Image* img, jint x, jint y, jfloat factorX, jfloat factorY, jint alpha) {
165 if (!LLUI_DISPLAY_isClosed(img) && (alpha > 0) && (factorX > 0.f) && (factorY > 0.f) && LLUI_DISPLAY_requestDrawing(gc, (SNI_callback)&LLDW_PAINTER_IMPL_drawScaledImageBilinear)) {
166 LOG_DRAW_START(drawScaledImageBilinear);
167 LLUI_DISPLAY_setDrawingStatus(UI_DRAWING_drawScaledImageBilinear(gc, img, x, y, factorX, factorY, alpha));
168 LOG_DRAW_END(drawScaledImageBilinear);