1 /* 2 * Copyright (c) 2023 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16 #ifndef FRAMEWORKS_BRIDGE_DECLARATIVE_FRONTEND_ENGINE_JSI_NATIVEMODULE_ARKTS_NATIVE_IMAGE_BRIDGE_H 17 #define FRAMEWORKS_BRIDGE_DECLARATIVE_FRONTEND_ENGINE_JSI_NATIVEMODULE_ARKTS_NATIVE_IMAGE_BRIDGE_H 18 19 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_api_bridge.h" 20 21 namespace OHOS::Ace::NG { 22 class ImageBridge { 23 public: 24 static bool CheckIsCard(); 25 static ArkUINativeModuleValue SetImageShowSrc(ArkUIRuntimeCallInfo *runtimeCallInfo); 26 static ArkUINativeModuleValue SetCopyOption(ArkUIRuntimeCallInfo *runtimeCallInfo); 27 static ArkUINativeModuleValue ResetCopyOption(ArkUIRuntimeCallInfo *runtimeCallInfo); 28 static ArkUINativeModuleValue SetAutoResize(ArkUIRuntimeCallInfo *runtimeCallInfo); 29 static ArkUINativeModuleValue ResetAutoResize(ArkUIRuntimeCallInfo *runtimeCallInfo); 30 static ArkUINativeModuleValue SetObjectRepeat(ArkUIRuntimeCallInfo *runtimeCallInfo); 31 static ArkUINativeModuleValue ResetObjectRepeat(ArkUIRuntimeCallInfo *runtimeCallInfo); 32 static ArkUINativeModuleValue SetRenderMode(ArkUIRuntimeCallInfo *runtimeCallInfo); 33 static ArkUINativeModuleValue ResetRenderMode(ArkUIRuntimeCallInfo *runtimeCallInfo); 34 static ArkUINativeModuleValue SetSyncLoad(ArkUIRuntimeCallInfo *runtimeCallInfo); 35 static ArkUINativeModuleValue ResetSyncLoad(ArkUIRuntimeCallInfo *runtimeCallInfo); 36 static ArkUINativeModuleValue SetObjectFit(ArkUIRuntimeCallInfo *runtimeCallInfo); 37 static ArkUINativeModuleValue ResetObjectFit(ArkUIRuntimeCallInfo *runtimeCallInfo); 38 static ArkUINativeModuleValue SetFitOriginalSize(ArkUIRuntimeCallInfo *runtimeCallInfo); 39 static ArkUINativeModuleValue ResetFitOriginalSize(ArkUIRuntimeCallInfo *runtimeCallInfo); 40 static ArkUINativeModuleValue SetSourceSize(ArkUIRuntimeCallInfo *runtimeCallInfo); 41 static ArkUINativeModuleValue ResetSourceSize(ArkUIRuntimeCallInfo *runtimeCallInfo); 42 static ArkUINativeModuleValue SetMatchTextDirection(ArkUIRuntimeCallInfo *runtimeCallInfo); 43 static ArkUINativeModuleValue ResetMatchTextDirection(ArkUIRuntimeCallInfo *runtimeCallInfo); 44 static ArkUINativeModuleValue SetFillColor(ArkUIRuntimeCallInfo *runtimeCallInfo); 45 static ArkUINativeModuleValue ResetFillColor(ArkUIRuntimeCallInfo *runtimeCallInfo); 46 static ArkUINativeModuleValue SetAlt(ArkUIRuntimeCallInfo *runtimeCallInfo); 47 static ArkUINativeModuleValue ResetAlt(ArkUIRuntimeCallInfo *runtimeCallInfo); 48 static ArkUINativeModuleValue SetImageInterpolation(ArkUIRuntimeCallInfo *runtimeCallInfo); 49 static ArkUINativeModuleValue ResetImageInterpolation(ArkUIRuntimeCallInfo *runtimeCallInfo); 50 static ArkUINativeModuleValue SetColorFilter(ArkUIRuntimeCallInfo *runtimeCallInfo); 51 static ArkUINativeModuleValue ResetColorFilter(ArkUIRuntimeCallInfo *runtimeCallInfo); 52 static ArkUINativeModuleValue SetDraggable(ArkUIRuntimeCallInfo *runtimeCallInfo); 53 static ArkUINativeModuleValue ResetDraggable(ArkUIRuntimeCallInfo *runtimeCallInfo); 54 static ArkUINativeModuleValue SetBorderRadius(ArkUIRuntimeCallInfo* runtimeCallInfo); 55 static ArkUINativeModuleValue ResetBorderRadius(ArkUIRuntimeCallInfo* runtimeCallInfo); 56 static ArkUINativeModuleValue SetImageBorder(ArkUIRuntimeCallInfo* runtimeCallInfo); 57 static ArkUINativeModuleValue ResetImageBorder(ArkUIRuntimeCallInfo* runtimeCallInfo); 58 static ArkUINativeModuleValue SetImageOpacity(ArkUIRuntimeCallInfo* runtimeCallInfo); 59 static ArkUINativeModuleValue ResetImageOpacity(ArkUIRuntimeCallInfo* runtimeCallInfo); 60 static ArkUINativeModuleValue SetImageTransition(ArkUIRuntimeCallInfo* runtimeCallInfo); 61 static ArkUINativeModuleValue ResetImageTransition(ArkUIRuntimeCallInfo* runtimeCallInfo); 62 static ArkUINativeModuleValue SetEdgeAntialiasing(ArkUIRuntimeCallInfo* runtimeCallInfo); 63 static ArkUINativeModuleValue ResetEdgeAntialiasing(ArkUIRuntimeCallInfo* runtimeCallInfo); 64 static ArkUINativeModuleValue SetResizable(ArkUIRuntimeCallInfo* runtimeCallInfo); 65 static ArkUINativeModuleValue ResetResizable(ArkUIRuntimeCallInfo* runtimeCallInfo); 66 static ArkUINativeModuleValue SetResizableLattice(ArkUIRuntimeCallInfo* runtimeCallInfo); 67 static ArkUINativeModuleValue SetDynamicRangeMode(ArkUIRuntimeCallInfo* runtimeCallInfo); 68 static ArkUINativeModuleValue ResetDynamicRangeMode(ArkUIRuntimeCallInfo* runtimeCallInfo); 69 static ArkUINativeModuleValue SetEnhancedImageQuality(ArkUIRuntimeCallInfo* runtimeCallInfo); 70 static ArkUINativeModuleValue ResetEnhancedImageQuality(ArkUIRuntimeCallInfo* runtimeCallInfo); 71 static ArkUINativeModuleValue SetPrivacySensitive(ArkUIRuntimeCallInfo* runtimeCallInfo); 72 static ArkUINativeModuleValue ResetPrivacySensitive(ArkUIRuntimeCallInfo* runtimeCallInfo); 73 static ArkUINativeModuleValue EnableAnalyzer(ArkUIRuntimeCallInfo* runtimeCallInfo); 74 static ArkUINativeModuleValue AnalyzerConfig(ArkUIRuntimeCallInfo* runtimeCallInfo); 75 static ArkUINativeModuleValue SetOnComplete(ArkUIRuntimeCallInfo *runtimeCallInfo); 76 static ArkUINativeModuleValue ResetOnComplete(ArkUIRuntimeCallInfo* runtimeCallInfo); 77 static ArkUINativeModuleValue SetOnError(ArkUIRuntimeCallInfo* runtimeCallInfo); 78 static ArkUINativeModuleValue ResetOnError(ArkUIRuntimeCallInfo* runtimeCallInfo); 79 static ArkUINativeModuleValue SetOnFinish(ArkUIRuntimeCallInfo* runtimeCallInfo); 80 static ArkUINativeModuleValue ResetOnFinish(ArkUIRuntimeCallInfo* runtimeCallInfo); 81 static ArkUINativeModuleValue SetOrientation(ArkUIRuntimeCallInfo* runtimeCallInfo); 82 static ArkUINativeModuleValue ResetOrientation(ArkUIRuntimeCallInfo* runtimeCallInfo); 83 }; 84 } 85 86 #endif // FRAMEWORKS_BRIDGE_DECLARATIVE_FRONTEND_ENGINE_JSI_NATIVEMODULE_ARKTS_NATIVE_IMAGE_BRIDGE_H