diff --git a/graphic/graphic_2d/native_drawing/drawing_region.h b/graphic/graphic_2d/native_drawing/drawing_region.h index 39eb09315f1966fd014b9e50d8220cb145a6eac9..97ff7ba467c945945fe30438f0c2637d10c5a147 100644 --- a/graphic/graphic_2d/native_drawing/drawing_region.h +++ b/graphic/graphic_2d/native_drawing/drawing_region.h @@ -40,6 +40,7 @@ * @version 1.0 */ +#include "drawing_error_code.h" #include "drawing_types.h" #ifdef __cplusplus @@ -140,6 +141,20 @@ bool OH_Drawing_RegionSetRect(OH_Drawing_Region* region, const OH_Drawing_Rect* */ bool OH_Drawing_RegionSetPath(OH_Drawing_Region* region, const OH_Drawing_Path* path, const OH_Drawing_Region* clip); +/** + * @brief Determines whether the region is a rect with positive dimensional. + * + * @syscap SystemCapability.Graphic.Graphic2D.NativeDrawing + * @param cRegion Indicates the pointer to an OH_Drawing_Region object. + * @param isRect Indicates whether drawable area is a rect. + * @return Returns the error code. + * Returns {@link OH_DRAWING_SUCCESS} if the operation is successful. + * Returns {@link OH_DRAWING_ERROR_INVALID_PARAMETER} if cRegion or isRect is nullptr. + * @since 14 + * @version 1.0 + */ +OH_Drawing_ErrorCode OH_Drawing_RegionIsRect(const OH_Drawing_Region* cRegion, bool* isRect); + /** * @brief Destroys an OH_Drawing_Region object and reclaims the memory occupied by the object. * diff --git a/graphic/graphic_2d/native_drawing/libnative_drawing.ndk.json b/graphic/graphic_2d/native_drawing/libnative_drawing.ndk.json index 3f0f7905b62de328131d4b4575952e30497f76c1..e13ab18ec9dd15f0670f5b62c1070a71b2daa3ec 100644 --- a/graphic/graphic_2d/native_drawing/libnative_drawing.ndk.json +++ b/graphic/graphic_2d/native_drawing/libnative_drawing.ndk.json @@ -1146,6 +1146,10 @@ "first_introduced": "12", "name": "OH_Drawing_RegionSetPath" }, + { + "first_introduced": "14", + "name": "OH_Drawing_RegionIsRect" + }, { "first_introduced": "12", "name": "OH_Drawing_RegionDestroy"