11/*
2- * Tencent is pleased to support the open source community by making ovCompose available.
3- * Copyright (C) 2025 Tencent. All rights reserved.
2+ * Tencent is pleased to support the open source community by making ovCompose
3+ * available. Copyright (C) 2025 Tencent. All rights reserved.
44 *
55 * Licensed under the Apache License, Version 2.0 (the "License");
66 * you may not use this file except in compliance with the License.
1515 * limitations under the License.
1616 */
1717
18- #include "napi/native_api.h"
19- #include "../constants/oh_native_enums.h"
18+ #include <napi/native_api.h>
19+ #include <native_drawing/drawing_types.h>
20+
2021#include "../constants/oh_native_constants.h"
21- #include "native_drawing/drawing_types.h"
22- #include <arkui/native_render.h>
2322
2423#ifndef ANDROIDX_COMPOSE_UI_ARKUI_UTILS_OHNATIVECANVAS_EXPORT_H
2524#define ANDROIDX_COMPOSE_UI_ARKUI_UTILS_OHNATIVECANVAS_EXPORT_H
@@ -34,47 +33,82 @@ void androidx_compose_ui_arkui_utils_DisposeOHComposeNativePaint(OHComposeNative
3433// OHNativeCanvasProxy state operations
3534void androidx_compose_ui_arkui_utils_OHNativeCanvasProxy_save (OHNativeCanvasProxy_Handle proxy );
3635void androidx_compose_ui_arkui_utils_OHNativeCanvasProxy_restore (OHNativeCanvasProxy_Handle proxy );
37- void androidx_compose_ui_arkui_utils_OHNativeCanvasProxy_translate (OHNativeCanvasProxy_Handle proxy , float dx , float dy );
38- void androidx_compose_ui_arkui_utils_OHNativeCanvasProxy_setBounds (OHNativeCanvasProxy_Handle proxy , int32_t originX , int32_t originY , int32_t boundsWidth , int32_t boundsHeight );
39- void androidx_compose_ui_arkui_utils_OHNativeCanvasProxy_setPosition (OHNativeCanvasProxy_Handle proxy , int32_t x , int32_t y );
36+ void androidx_compose_ui_arkui_utils_OHNativeCanvasProxy_translate (OHNativeCanvasProxy_Handle proxy , float dx ,
37+ float dy );
38+ void androidx_compose_ui_arkui_utils_OHNativeCanvasProxy_setBounds (OHNativeCanvasProxy_Handle proxy , int32_t originX ,
39+ int32_t originY , int32_t boundsWidth ,
40+ int32_t boundsHeight );
41+ void androidx_compose_ui_arkui_utils_OHNativeCanvasProxy_setPosition (OHNativeCanvasProxy_Handle proxy , int32_t x ,
42+ int32_t y );
4043void androidx_compose_ui_arkui_utils_OHNativeCanvasProxy_setPivot (OHNativeCanvasProxy_Handle proxy , float px , float py );
4144void androidx_compose_ui_arkui_utils_OHNativeCanvasProxy_setOpacity (OHNativeCanvasProxy_Handle proxy , float alpha );
4245
4346// OHNativeCanvasProxy drawCommand
44- void androidx_compose_ui_arkui_utils_OHNativeCanvasProxy_drawRect (OHNativeCanvasProxy_Handle proxy , float left , float top , float right , float bottom , OHComposeNativePaint_Handle paint );
47+ void androidx_compose_ui_arkui_utils_OHNativeCanvasProxy_drawRect (OHNativeCanvasProxy_Handle proxy , float left ,
48+ float top , float right , float bottom ,
49+ OHComposeNativePaint_Handle paint );
4550void androidx_compose_ui_arkui_utils_OHNativeCanvasProxy_finishDraw (OHNativeCanvasProxy_Handle proxy );
46- void androidx_compose_ui_arkui_utils_OHNativeCanvasProxy_drawLayer (OHNativeCanvasProxy_Handle proxy , BaseRenderNode_Handle renderNodeHandle );
47- void androidx_compose_ui_arkui_utils_OHNativeCanvasProxy_drawParagraph (OHNativeCanvasProxy_Handle proxy , BaseRenderNode_Handle paragraphHandle );
51+ void androidx_compose_ui_arkui_utils_OHNativeCanvasProxy_drawLayer (OHNativeCanvasProxy_Handle proxy ,
52+ BaseRenderNode_Handle renderNodeHandle );
53+ void androidx_compose_ui_arkui_utils_OHNativeCanvasProxy_drawParagraph (OHNativeCanvasProxy_Handle proxy ,
54+ BaseRenderNode_Handle paragraphHandle );
4855void androidx_compose_ui_arkui_utils_OHNativeCanvasProxy_attachToRootView (OHNativeCanvasProxy_Handle proxy );
49- void androidx_compose_ui_arkui_utils_OHNativeCanvasProxy_setParent (OHNativeCanvasProxy_Handle proxy , OHNativeCanvasProxy_Handle parentProxy );
50- void androidx_compose_ui_arkui_utils_OHNativeCanvasProxy_drawLine (OHNativeCanvasProxy_Handle proxy , float x1 , float y1 , float x2 , float y2 , OHComposeNativePaint_Handle paint );
51- void androidx_compose_ui_arkui_utils_OHNativeCanvasProxy_drawLayerWithSubproxy (OHNativeCanvasProxy_Handle proxy , OHNativeCanvasProxy_Handle subProxy );
52- void androidx_compose_ui_arkui_utils_OHNativeCanvasProxy_clipRect (OHNativeCanvasProxy_Handle proxy , float left , float top , float right , float bottom , uint32_t clipOp );
53- void androidx_compose_ui_arkui_utils_OHNativeCanvasProxy_drawRoundRect (OHNativeCanvasProxy_Handle proxy , float left , float top , float right , float bottom , float radiusX , float radiusY , OHComposeNativePaint_Handle paint );
56+ void androidx_compose_ui_arkui_utils_OHNativeCanvasProxy_setParent (OHNativeCanvasProxy_Handle proxy ,
57+ OHNativeCanvasProxy_Handle parentProxy );
58+ void androidx_compose_ui_arkui_utils_OHNativeCanvasProxy_drawLine (OHNativeCanvasProxy_Handle proxy , float x1 , float y1 ,
59+ float x2 , float y2 ,
60+ OHComposeNativePaint_Handle paint );
61+ void androidx_compose_ui_arkui_utils_OHNativeCanvasProxy_drawLayerWithSubproxy (OHNativeCanvasProxy_Handle proxy ,
62+ OHNativeCanvasProxy_Handle subProxy );
63+ void androidx_compose_ui_arkui_utils_OHNativeCanvasProxy_clipRect (OHNativeCanvasProxy_Handle proxy , float left ,
64+ float top , float right , float bottom ,
65+ uint32_t clipOp );
66+ void androidx_compose_ui_arkui_utils_OHNativeCanvasProxy_drawRoundRect (OHNativeCanvasProxy_Handle proxy , float left ,
67+ float top , float right , float bottom ,
68+ float radiusX , float radiusY ,
69+ OHComposeNativePaint_Handle paint );
5470
5571// OHComposeNativePaint set paint properties
5672void androidx_compose_ui_arkui_utils_OHComposeNativePaint_setAlpha (OHComposeNativePaint_Handle paint , float alpha );
57- void androidx_compose_ui_arkui_utils_OHComposeNativePaint_setIsAntiAlias (OHComposeNativePaint_Handle paint , bool isAntiAlias );
73+ void androidx_compose_ui_arkui_utils_OHComposeNativePaint_setIsAntiAlias (OHComposeNativePaint_Handle paint ,
74+ bool isAntiAlias );
5875void androidx_compose_ui_arkui_utils_OHComposeNativePaint_setColor (OHComposeNativePaint_Handle paint , uint64_t color );
59- void androidx_compose_ui_arkui_utils_OHComposeNativePaint_setStrokeWidth (OHComposeNativePaint_Handle paint , float strokeWidth );
60- void androidx_compose_ui_arkui_utils_OHComposeNativePaint_setBlendMode (OHComposeNativePaint_Handle paint , uint32_t blendMode );
76+ void androidx_compose_ui_arkui_utils_OHComposeNativePaint_setStrokeWidth (OHComposeNativePaint_Handle paint ,
77+ float strokeWidth );
78+ void androidx_compose_ui_arkui_utils_OHComposeNativePaint_setBlendMode (OHComposeNativePaint_Handle paint ,
79+ uint32_t blendMode );
6180void androidx_compose_ui_arkui_utils_OHComposeNativePaint_setStyle (OHComposeNativePaint_Handle paint , uint32_t style );
62- void androidx_compose_ui_arkui_utils_OHComposeNativePaint_setStrokeCap (OHComposeNativePaint_Handle paint , uint32_t strokeCap );
63- void androidx_compose_ui_arkui_utils_OHComposeNativePaint_setStrokeJoin (OHComposeNativePaint_Handle paint , uint32_t strokeJoin );
64- void androidx_compose_ui_arkui_utils_OHComposeNativePaint_setStrokeMiterLimit (OHComposeNativePaint_Handle paint , float miterLimit );
65- void androidx_compose_ui_arkui_utils_OHComposeNativePaint_setFilterQuality (OHComposeNativePaint_Handle paint , uint32_t quality );
66- void androidx_compose_ui_arkui_utils_OHComposeNativePaint_setShader (OHComposeNativePaint_Handle paint , NativeBasicShader_Handle shader );
67- void androidx_compose_ui_arkui_utils_OHComposeNativePaint_setPathEffect (OHComposeNativePaint_Handle paint , OH_Drawing_PathEffect_Handle pathEffect );
68- void androidx_compose_ui_arkui_utils_OHComposeNativePaint_setColorFilter (OHComposeNativePaint_Handle paint , OH_Drawing_ColorFilter_Handle colorFilter );
81+ void androidx_compose_ui_arkui_utils_OHComposeNativePaint_setStrokeCap (OHComposeNativePaint_Handle paint ,
82+ uint32_t strokeCap );
83+ void androidx_compose_ui_arkui_utils_OHComposeNativePaint_setStrokeJoin (OHComposeNativePaint_Handle paint ,
84+ uint32_t strokeJoin );
85+ void androidx_compose_ui_arkui_utils_OHComposeNativePaint_setStrokeMiterLimit (OHComposeNativePaint_Handle paint ,
86+ float miterLimit );
87+ void androidx_compose_ui_arkui_utils_OHComposeNativePaint_setFilterQuality (OHComposeNativePaint_Handle paint ,
88+ uint32_t quality );
89+ void androidx_compose_ui_arkui_utils_OHComposeNativePaint_setShader (OHComposeNativePaint_Handle paint ,
90+ NativeBasicShader_Handle shader );
91+ void androidx_compose_ui_arkui_utils_OHComposeNativePaint_setPathEffect (OHComposeNativePaint_Handle paint ,
92+ OH_Drawing_PathEffect_Handle pathEffect );
93+ void androidx_compose_ui_arkui_utils_OHComposeNativePaint_setColorFilter (OHComposeNativePaint_Handle paint ,
94+ OH_Drawing_ColorFilter_Handle colorFilter );
6995
7096// NativeShader related methods
71- NativeBasicShader_Handle androidx_compose_ui_arkui_utils_createNativeLinearGradientShader (float startX , float startY , float endX , float endY ,
72- uint32_t * colors , float * colorPositions , uint32_t colorCount , uint32_t tileMode );
73- NativeBasicShader_Handle androidx_compose_ui_arkui_utils_createNativeRadialGradientShader (float centerX , float centerY , float radius ,
74- uint32_t * colors , float * colorPositions , uint32_t colorCount , uint32_t tileMode );
97+ NativeBasicShader_Handle
98+ androidx_compose_ui_arkui_utils_createNativeLinearGradientShader (float startX , float startY , float endX , float endY ,
99+ uint32_t * colors , float * colorPositions ,
100+ uint32_t colorCount , uint32_t tileMode );
101+ NativeBasicShader_Handle
102+ androidx_compose_ui_arkui_utils_createNativeRadialGradientShader (float centerX , float centerY , float radius ,
103+ uint32_t * colors , float * colorPositions ,
104+ uint32_t colorCount , uint32_t tileMode );
75105NativeBasicShader_Handle androidx_compose_ui_arkui_utils_createNativeSweepGradientShader (float centerX , float centerY ,
76- uint32_t * colors , float * colorPositions , uint32_t colorCount );
77- NativeBasicShader_Handle androidx_compose_ui_arkui_utils_createNativeImageShader (OH_Drawing_Image * image , uint32_t tileModeX , uint32_t tileModeY );
106+ uint32_t * colors ,
107+ float * colorPositions ,
108+ uint32_t colorCount );
109+ NativeBasicShader_Handle androidx_compose_ui_arkui_utils_createNativeImageShader (OH_Drawing_Image * image ,
110+ uint32_t tileModeX ,
111+ uint32_t tileModeY );
78112EXTERN_C_END
79113
80114#endif
0 commit comments