1 /*
2  * Copyright (c) 2022-2024 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_JS_VIEW_MODELS_VIEW_ABSTRACT_MODEL_IMPL_H
17 #define FRAMEWORKS_BRIDGE_DECLARATIVE_FRONTEND_JS_VIEW_MODELS_VIEW_ABSTRACT_MODEL_IMPL_H
18 
19 #include "base/utils/macros.h"
20 #include "core/components_ng/base/view_abstract_model.h"
21 #include "core/components_ng/event/gesture_event_hub.h"
22 #include "core/components_ng/pattern/menu/menu_pattern.h"
23 #include "core/components_ng/property/progress_mask_property.h"
24 
25 namespace OHOS::Ace::Framework {
26 
27 class ViewAbstractModelImpl : public ViewAbstractModel {
28 public:
29     ~ViewAbstractModelImpl() override = default;
30 
31     static void SwapBackBorder(const RefPtr<Decoration>& decoration);
32     static OnDragFunc ToDragFunc(NG::OnDragStartFunc&& onDragStart);
33 
34     void SetWidth(const CalcDimension& width) override;
35     void SetHeight(const CalcDimension& height) override;
ClearWidthOrHeight(bool isWidth)36     void ClearWidthOrHeight(bool isWidth) override {};
37     void SetMinWidth(const CalcDimension& minWidth) override;
38     void SetMinHeight(const CalcDimension& minHeight) override;
39     void SetMaxWidth(const CalcDimension& maxWidth) override;
40     void SetMaxHeight(const CalcDimension& maxHeight) override;
ResetMinSize(bool resetWidth)41     void ResetMinSize(bool resetWidth) override {};
ResetMaxSize(bool resetWidth)42     void ResetMaxSize(bool resetWidth) override {};
43 
44     void SetBackgroundColor(const Color& color) override;
45     void SetBackgroundImage(const ImageSourceInfo& src, RefPtr<ThemeConstants> themeConstant) override;
46     void SetBackgroundImageRepeat(const ImageRepeat& imageRepeat) override;
47     void SetBackgroundImageSize(const BackgroundImageSize& bgImgSize) override;
48     void SetBackgroundImagePosition(const BackgroundImagePosition& bgImgPosition) override;
49     void SetBackgroundBlurStyle(const BlurStyleOption& bgBlurStyle) override;
50     void SetPadding(const CalcDimension& value) override;
51     void SetPaddings(const std::optional<CalcDimension>& top, const std::optional<CalcDimension>& bottom,
52         const std::optional<CalcDimension>& left, const std::optional<CalcDimension>& right) override;
SetSafeAreaPadding(const CalcDimension & value)53     void SetSafeAreaPadding(const CalcDimension& value) override {}
SetSafeAreaPaddings(const NG::PaddingProperty & paddings)54     void SetSafeAreaPaddings(const NG::PaddingProperty& paddings) override {}
SetSafeAreaPaddings(const std::optional<CalcDimension> & top,const std::optional<CalcDimension> & bottom,const std::optional<CalcDimension> & left,const std::optional<CalcDimension> & right)55     void SetSafeAreaPaddings(const std::optional<CalcDimension>& top, const std::optional<CalcDimension>& bottom,
56         const std::optional<CalcDimension>& left, const std::optional<CalcDimension>& right) override
57     {}
ResetSafeAreaPadding()58     void ResetSafeAreaPadding() override {}
59     void SetMargin(const CalcDimension& value) override;
60     void SetMargins(const std::optional<CalcDimension>& top, const std::optional<CalcDimension>& bottom,
61         const std::optional<CalcDimension>& left, const std::optional<CalcDimension>& right) override;
62     void SetBorderRadius(const Dimension& value) override;
63     void SetBorderRadius(const std::optional<Dimension>& radiusTopLeft, const std::optional<Dimension>& radiusTopRight,
64         const std::optional<Dimension>& radiusBottomLeft, const std::optional<Dimension>& radiusBottomRight) override;
65     void SetBorderColor(const Color& value) override;
66     void SetBorderColor(const std::optional<Color>& colorLeft, const std::optional<Color>& colorRight,
67         const std::optional<Color>& colorTop, const std::optional<Color>& colorBottom) override;
68     void SetBorderWidth(const Dimension& value) override;
69     void SetBorderWidth(const std::optional<Dimension>& left, const std::optional<Dimension>& right,
70         const std::optional<Dimension>& top, const std::optional<Dimension>& bottom) override;
71     void SetBorderStyle(const BorderStyle& value) override;
72     void SetBorderStyle(const std::optional<BorderStyle>& styleLeft, const std::optional<BorderStyle>& styleRight,
73         const std::optional<BorderStyle>& styleTop, const std::optional<BorderStyle>& styleBottom) override;
74     void SetBorderImage(const RefPtr<BorderImage>& borderImage, uint8_t bitset) override;
75     void SetBorderImageGradient(const NG::Gradient& gradient) override;
76 
SetOuterBorderRadius(const Dimension & value)77     void SetOuterBorderRadius(const Dimension& value) override {}
SetOuterBorderRadius(const std::optional<Dimension> & radiusTopLeft,const std::optional<Dimension> & radiusTopRight,const std::optional<Dimension> & radiusBottomLeft,const std::optional<Dimension> & radiusBottomRight)78     void SetOuterBorderRadius(const std::optional<Dimension>& radiusTopLeft,
79         const std::optional<Dimension>& radiusTopRight, const std::optional<Dimension>& radiusBottomLeft,
80         const std::optional<Dimension>& radiusBottomRight) override {}
SetOuterBorderRadius(const NG::BorderRadiusProperty & borderRadius)81     void SetOuterBorderRadius(const NG::BorderRadiusProperty& borderRadius) override {}
SetOuterBorderColor(const Color & value)82     void SetOuterBorderColor(const Color& value) override {}
SetOuterBorderColor(const std::optional<Color> & colorLeft,const std::optional<Color> & colorRight,const std::optional<Color> & colorTop,const std::optional<Color> & colorBottom)83     void SetOuterBorderColor(const std::optional<Color>& colorLeft, const std::optional<Color>& colorRight,
84         const std::optional<Color>& colorTop, const std::optional<Color>& colorBottom) override {}
SetOuterBorderColor(const NG::BorderColorProperty & borderColors)85     void SetOuterBorderColor(const NG::BorderColorProperty& borderColors) override {}
SetOuterBorderWidth(const Dimension & value)86     void SetOuterBorderWidth(const Dimension& value) override {}
SetOuterBorderWidth(const std::optional<Dimension> & left,const std::optional<Dimension> & right,const std::optional<Dimension> & top,const std::optional<Dimension> & bottom)87     void SetOuterBorderWidth(const std::optional<Dimension>& left, const std::optional<Dimension>& right,
88         const std::optional<Dimension>& top, const std::optional<Dimension>& bottom) override {}
SetOuterBorderStyle(const BorderStyle & value)89     void SetOuterBorderStyle(const BorderStyle& value) override {}
SetOuterBorderStyle(const std::optional<BorderStyle> & styleLeft,const std::optional<BorderStyle> & styleRight,const std::optional<BorderStyle> & styleTop,const std::optional<BorderStyle> & styleBottom)90     void SetOuterBorderStyle(const std::optional<BorderStyle>& styleLeft, const std::optional<BorderStyle>& styleRight,
91         const std::optional<BorderStyle>& styleTop, const std::optional<BorderStyle>& styleBottom) override {}
92 
93     void SetLayoutPriority(int32_t priority) override;
94     void SetPixelRound(uint16_t value) override;
95     void SetLayoutWeight(float value) override;
SetLayoutWeight(const NG::LayoutWeightPair & value)96     void SetLayoutWeight(const NG::LayoutWeightPair& value) override {};
97     void SetLayoutDirection(TextDirection value) override;
98     void SetAspectRatio(float ratio) override;
ResetAspectRatio()99     void ResetAspectRatio() override {};
100     void SetAlign(const Alignment& alignment) override;
101     void SetAlignRules(const std::map<AlignDirection, AlignRule>& alignRules) override;
SetChainStyle(const ChainInfo & chainInfo)102     void SetChainStyle(const ChainInfo& chainInfo) override {}
SetBias(const BiasPair & biasPair)103     void SetBias(const BiasPair& biasPair) override {}
104     void SetUseAlign(
105         AlignDeclarationPtr declaration, AlignDeclaration::Edge edge, const std::optional<Dimension>& offset) override;
106     void SetGrid(std::optional<uint32_t> span, std::optional<int32_t> offset,
107         GridSizeType type = GridSizeType::UNDEFINED) override;
108     void SetZIndex(int32_t value) override;
109 
110     void SetPosition(const Dimension& x, const Dimension& y) override;
111     void SetOffset(const Dimension& x, const Dimension& y) override;
112     void MarkAnchor(const Dimension& x, const Dimension& y) override;
SetPaddings(const NG::PaddingProperty & paddings)113     void SetPaddings(const NG::PaddingProperty& paddings) override {};
SetMargins(const NG::MarginProperty & margins)114     void SetMargins(const NG::MarginProperty& margins) override {};
115 
SetBorderRadius(const NG::BorderRadiusProperty & borderRadius)116     void SetBorderRadius(const NG::BorderRadiusProperty& borderRadius) override {};
SetBorderColor(const NG::BorderColorProperty & borderColors)117     void SetBorderColor(const NG::BorderColorProperty& borderColors) override {};
SetBorderWidth(const std::optional<Dimension> & left,const std::optional<Dimension> & right,const std::optional<Dimension> & top,const std::optional<Dimension> & bottom,bool isLocalized)118     void SetBorderWidth(const std::optional<Dimension>& left, const std::optional<Dimension>& right,
119         const std::optional<Dimension>& top, const std::optional<Dimension>& bottom, bool isLocalized) override {};
120     void SetScale(float x, float y, float z) override;
121     void SetPivot(const Dimension& x, const Dimension& y, const Dimension& z) override;
122     void SetTranslate(const Dimension& x, const Dimension& y, const Dimension& z) override;
123     void SetRotate(float x, float y, float z, float angle, float perspective = 0.0f) override;
124     void SetTransformMatrix(const std::vector<float>& matrix) override;
125 
126     void SetOpacity(double opacity, bool passThrough = false) override;
127     void SetTransition(const NG::TransitionOptions& transitionOptions, bool passThrough = false) override;
128     void SetChainedTransition(const RefPtr<NG::ChainedTransitionEffect>& effect,
129         NG::TransitionFinishCallback&& finishCallback = nullptr) override
130     {}
131     void SetOverlay(
132         const std::string& text, std::function<void()> &&buildFunc, const RefPtr<NG::FrameNode>& contentNode,
133         const std::optional<Alignment>& align, const std::optional<Dimension>& offsetX,
134         const std::optional<Dimension>& offsetY, NG::OverlayType type) override;
135     void SetVisibility(VisibleType visible, std::function<void(int32_t)>&& changeEventFunc) override;
136     void SetSharedTransition(
137         const std::string& shareId, const std::shared_ptr<SharedTransitionOption>& option) override;
138     void SetGeometryTransition(
139         const std::string& id, bool followWithoutTransition = false, bool doRegisterSharedTransition = true) override;
140     void SetMotionPath(const MotionPathOption& option) override;
SetRenderGroup(bool isRenderGroup)141     void SetRenderGroup(bool isRenderGroup) override {}
SetRenderFit(RenderFit renderFit)142     void SetRenderFit(RenderFit renderFit) override {}
143 
144     void SetFlexBasis(const Dimension& value) override;
145     void SetAlignSelf(FlexAlign value) override;
146     void SetFlexShrink(float value) override;
147     void SetFlexGrow(float value) override;
148     void SetDisplayIndex(int32_t value) override;
ResetFlexShrink()149     void ResetFlexShrink() override {};
150 
151     void SetLinearGradient(const NG::Gradient& gradient) override;
152     void SetSweepGradient(const NG::Gradient& gradient) override;
153     void SetRadialGradient(const NG::Gradient& gradient) override;
154 
155     void SetClipShape(const RefPtr<BasicShape>& shape) override;
156     void SetClipEdge(bool isClip) override;
157     void SetMask(const RefPtr<BasicShape>& shape) override;
158 
159     void SetBackdropBlur(const Dimension& radius, const BlurOption& blurOption) override;
SetLinearGradientBlur(NG::LinearGradientBlurPara blurPara)160     void SetLinearGradientBlur(NG::LinearGradientBlurPara blurPara) override {};
SetDynamicDim(float DimDegree)161     void SetDynamicDim(float DimDegree) override {};
SetDynamicLightUp(float rate,float lightUpDegree)162     void SetDynamicLightUp(float rate, float lightUpDegree) override {};
SetBgDynamicBrightness(const BrightnessOption & brightnessOption)163     void SetBgDynamicBrightness(const BrightnessOption& brightnessOption) override {};
SetFgDynamicBrightness(const BrightnessOption & brightnessOption)164     void SetFgDynamicBrightness(const BrightnessOption& brightnessOption) override {};
165     void SetFrontBlur(const Dimension& radius, const BlurOption& blurOption) override;
166     void SetBackShadow(const std::vector<Shadow>& shadows) override;
167     void SetBlendMode(BlendMode blendMode) override;
168     void SetBlendApplyType(BlendApplyType blendApplyType) override;
169     void SetColorBlend(const Color& value) override;
170     void SetWindowBlur(float progress, WindowBlurStyle blurStyle) override;
171     void SetBrightness(const Dimension& value) override;
172     void SetGrayScale(const Dimension& value) override;
173     void SetContrast(const Dimension& value) override;
174     void SetSaturate(const Dimension& value) override;
175     void SetSepia(const Dimension& value) override;
176     void SetInvert(const InvertVariant& invert) override;
SetSystemBarEffect(bool)177     void SetSystemBarEffect(bool) override {};
178     void SetHueRotate(float value) override;
SetUseEffect(bool,EffectType)179     void SetUseEffect(bool, EffectType) override {}
SetUseShadowBatching(bool)180     void SetUseShadowBatching(bool) override {}
SetFreeze(bool)181     void SetFreeze(bool) override {}
182 
SetClickEffectLevel(const ClickEffectLevel & level,float scaleValue)183     void SetClickEffectLevel(const ClickEffectLevel& level, float scaleValue) override {}
184     void SetOnClick(GestureEventFunc&& tapEventFunc, ClickEventFunc&& clickEventFunc,
185         double distanceThreshold) override;
SetOnGestureJudgeBegin(NG::GestureJudgeFunc && gestureJudgeFunc)186     void SetOnGestureJudgeBegin(NG::GestureJudgeFunc&& gestureJudgeFunc) override {}
SetOnTouchIntercept(NG::TouchInterceptFunc && touchInterceptFunc)187     void SetOnTouchIntercept(NG::TouchInterceptFunc&& touchInterceptFunc) override {}
SetShouldBuiltInRecognizerParallelWith(NG::ShouldBuiltInRecognizerParallelWithFunc && shouldBuiltInRecognizerParallelWithFunc)188     void SetShouldBuiltInRecognizerParallelWith(
189         NG::ShouldBuiltInRecognizerParallelWithFunc&& shouldBuiltInRecognizerParallelWithFunc) override
190     {}
SetOnGestureRecognizerJudgeBegin(NG::GestureRecognizerJudgeFunc && gestureRecognizerJudgeFunc,bool exposeInnerGestureFlag)191     void SetOnGestureRecognizerJudgeBegin(
192         NG::GestureRecognizerJudgeFunc&& gestureRecognizerJudgeFunc, bool exposeInnerGestureFlag) override {}
193     void SetOnTouch(TouchEventFunc&& touchEventFunc) override;
194     void SetOnKeyEvent(OnKeyConsumeFunc&& onKeyCallback) override;
195     void SetOnMouse(OnMouseEventFunc&& onMouseEventFunc) override;
196     void SetOnHover(OnHoverFunc&& onHoverEventFunc) override;
SetOnAccessibilityHover(OnAccessibilityHoverFunc && onAccessibilityHoverEventFunc)197     void SetOnAccessibilityHover(OnAccessibilityHoverFunc&& onAccessibilityHoverEventFunc) override {};
198     void SetOnDelete(std::function<void()>&& onDeleteCallback) override;
199     void SetOnAppear(std::function<void()>&& onAppearCallback) override;
SetOnAttach(std::function<void ()> && onAttachCallback)200     void SetOnAttach(std::function<void()>&& onAttachCallback) override {}
201     void SetOnDisAppear(std::function<void()>&& onDisAppearCallback) override;
SetOnDetach(std::function<void ()> && onDetachCallback)202     void SetOnDetach(std::function<void()>&& onDetachCallback) override {}
203     void SetOnAccessibility(std::function<void(const std::string&)>&& onAccessibilityCallback) override;
204     void SetOnRemoteMessage(RemoteCallback&& onRemoteCallback) override;
205     void SetOnFocusMove(std::function<void(int32_t)>&& onFocusMoveCallback) override;
206     void SetOnFocus(OnFocusFunc&& onFocusCallback) override;
207     void SetOnBlur(OnBlurFunc&& onBlurCallback) override;
SetDraggable(bool draggable)208     void SetDraggable(bool draggable) override {}
SetDragPreviewOptions(const NG::DragPreviewOption & previewOption)209     void SetDragPreviewOptions(const NG::DragPreviewOption& previewOption) override {};
210     void SetOnDragStart(NG::OnDragStartFunc&& onDragStart) override;
211     void SetOnPreDrag(NG::OnPreDragFunc&& onPreDrag) override;
212     void SetOnDragEnd(OnNewDragFunc&& onDragEnd) override;
213     void SetOnDragEnter(NG::OnDragDropFunc&& onDragEnter) override;
214     void SetOnDragLeave(NG::OnDragDropFunc&& onDragLeave) override;
215     void SetOnDragMove(NG::OnDragDropFunc&& onDragMove) override;
216     void SetOnDrop(NG::OnDragDropFunc&& onDrop) override;
217     void SetOnVisibleChange(
218         std::function<void(bool, double)>&& onVisibleChange, const std::vector<double>& ratios) override;
219     void SetOnAreaChanged(
220         std::function<void(const Rect& oldRect, const Offset& oldOrigin, const Rect& rect, const Offset& origin)>&&
221             onAreaChanged) override;
SetOnSizeChanged(std::function<void (const NG::RectF & oldRect,const NG::RectF & rect)> && onSizeChanged)222     void SetOnSizeChanged(
223         std::function<void(const NG::RectF& oldRect, const NG::RectF& rect)>&& onSizeChanged) override {};
224 
225     void SetResponseRegion(const std::vector<DimensionRect>& responseRegion) override;
226     void SetEnabled(bool enabled) override;
227     void SetTouchable(bool touchable) override;
228     void SetFocusable(bool focusable) override;
229     void SetFocusNode(bool focus) override;
230     void SetTabIndex(int32_t index) override;
231     void SetFocusOnTouch(bool isSet) override;
232     void SetDefaultFocus(bool isSet) override;
233     void SetGroupDefaultFocus(bool isSet) override;
234     void SetInspectorId(const std::string& inspectorId) override;
235     void SetRestoreId(int32_t restoreId) override;
236     void SetDebugLine(const std::string& line) override;
237     void SetHoverEffect(HoverEffectType hoverEffect) override;
238     void SetHitTestMode(NG::HitTestMode hitTestMode) override;
SetOnTouchTestFunc(NG::OnChildTouchTestFunc && onChildTouchTest)239     void SetOnTouchTestFunc(NG::OnChildTouchTestFunc&& onChildTouchTest) override {};
SetKeyboardShortcut(const std::string & value,const std::vector<ModifierKey> & keys,std::function<void ()> && onKeyboardShortcutAction)240     void SetKeyboardShortcut(const std::string& value, const std::vector<ModifierKey>& keys,
241         std::function<void()>&& onKeyboardShortcutAction) override {};
SetObscured(const std::vector<ObscuredReasons> & reasons)242     void SetObscured(const std::vector<ObscuredReasons>& reasons) override {};
SetPrivacySensitive(bool flag)243     void SetPrivacySensitive(bool flag) override {};
SetMonopolizeEvents(bool monopolizeEvents)244     void SetMonopolizeEvents(bool monopolizeEvents) override {};
245 
246     // Disable event.
DisableOnClick()247     void DisableOnClick() override {};
DisableOnTouch()248     void DisableOnTouch() override {};
DisableOnKeyEvent()249     void DisableOnKeyEvent() override {};
DisableOnHover()250     void DisableOnHover() override {};
DisableOnAccessibilityHover()251     void DisableOnAccessibilityHover() override {};
DisableOnMouse()252     void DisableOnMouse() override {};
DisableOnAppear()253     void DisableOnAppear() override {};
DisableOnDisAppear()254     void DisableOnDisAppear() override {};
DisableOnAttach()255     void DisableOnAttach() override {};
DisableOnDetach()256     void DisableOnDetach() override {};
DisableOnAreaChange()257     void DisableOnAreaChange() override {};
DisableOnFocus()258     void DisableOnFocus() override {};
DisableOnBlur()259     void DisableOnBlur() override {};
260 
261     void BindBackground(std::function<void()>&& buildFunc, const Alignment& align) override;
262     void BindPopup(const RefPtr<PopupParam>& param, const RefPtr<AceType>& customNode) override;
DismissPopup()263     void DismissPopup() override {}
264 
265     void BindMenu(std::vector<NG::OptionParam>&& params, std::function<void()>&& buildFunc,
266         const NG::MenuParam& menuParam) override;
267 
268     void BindContextMenu(ResponseType type, std::function<void()>& buildFunc, const NG::MenuParam& menuParam,
269         std::function<void()>& previewBuildFunc) override;
BindDragWithContextMenuParams(const NG::MenuParam & menuParam)270     void BindDragWithContextMenuParams(const NG::MenuParam& menuParam) override {};
BindContentCover(bool isShow,std::function<void (const std::string &)> && callback,std::function<void ()> && buildFunc,NG::ModalStyle & modalStyle,std::function<void ()> && onAppear,std::function<void ()> && onDisappear,std::function<void ()> && onWillAppear,std::function<void ()> && onWillDisappear,const NG::ContentCoverParam & contentCoverParam)271     void BindContentCover(bool isShow, std::function<void(const std::string&)>&& callback,
272         std::function<void()>&& buildFunc, NG::ModalStyle& modalStyle, std::function<void()>&& onAppear,
273         std::function<void()>&& onDisappear, std::function<void()>&& onWillAppear,
274         std::function<void()>&& onWillDisappear, const NG::ContentCoverParam& contentCoverParam) override
275     {}
BindSheet(bool isShow,std::function<void (const std::string &)> && callback,std::function<void ()> && buildFunc,std::function<void ()> && titleBuildFunc,NG::SheetStyle & sheetStyle,std::function<void ()> && onAppear,std::function<void ()> && onDisappear,std::function<void ()> && shouldDismiss,std::function<void (const int32_t info)> && onWillDismiss,std::function<void ()> && onWillAppear,std::function<void ()> && onWillDisappear,std::function<void (const float)> && onHeightDidChange,std::function<void (const float)> && onDetentsDidChange,std::function<void (const float)> && onWidthDidChange,std::function<void (const float)> && onTypeDidChange,std::function<void ()> && sheetSpringBack)276     void BindSheet(bool isShow, std::function<void(const std::string&)>&& callback, std::function<void()>&& buildFunc,
277         std::function<void()>&& titleBuildFunc, NG::SheetStyle& sheetStyle, std::function<void()>&& onAppear,
278         std::function<void()>&& onDisappear, std::function<void()>&& shouldDismiss,
279         std::function<void(const int32_t info)>&& onWillDismiss, std::function<void()>&& onWillAppear,
280         std::function<void()>&& onWillDisappear, std::function<void(const float)>&& onHeightDidChange,
281         std::function<void(const float)>&& onDetentsDidChange,
282         std::function<void(const float)>&& onWidthDidChange,
283         std::function<void(const float)>&& onTypeDidChange,
284         std::function<void()>&& sheetSpringBack) override
285     {}
DismissSheet()286     void DismissSheet() override {}
DismissContentCover()287     void DismissContentCover() override {}
SheetSpringBack()288     void SheetSpringBack() override {}
289 
290     void SetAccessibilityGroup(bool accessible) override;
291     void SetAccessibilityText(const std::string& text) override;
292     void SetAccessibilityTextHint(const std::string& text) override;
293     void SetAccessibilityDescription(const std::string& description) override;
294     void SetAccessibilityImportance(const std::string& importance) override;
295     void SetAccessibilityVirtualNode(std::function<void()>&& buildFunc) override;
296     void SetAccessibilitySelected(bool selected, bool resetValue) override;
297     void SetAccessibilityChecked(bool checked, bool resetValue) override;
298     void SetAccessibilityTextPreferred(bool accessibilityTextPreferred) override;
299 
SetProgressMask(const RefPtr<NG::ProgressMaskProperty> & progress)300     void SetProgressMask(const RefPtr<NG::ProgressMaskProperty>& progress) override {}
SetForegroundColor(const Color & color)301     void SetForegroundColor(const Color& color) override {}
SetForegroundColorStrategy(const ForegroundColorStrategy & strategy)302     void SetForegroundColorStrategy(const ForegroundColorStrategy& strategy) override {}
SetDrawModifier(const RefPtr<NG::DrawModifier> & drawModifier)303     void SetDrawModifier(const RefPtr<NG::DrawModifier>& drawModifier) override {}
GetFrameNode()304     void* GetFrameNode() override { return nullptr; }
SetAllowDrop(const std::set<std::string> & allowDrop)305     void SetAllowDrop(const std::set<std::string>& allowDrop) override {}
SetDragPreview(const NG::DragDropInfo & info)306     void SetDragPreview(const NG::DragDropInfo& info) override {}
307 
CreateAnimatablePropertyFloat(const std::string & propertyName,float value,const std::function<void (float)> & onCallbackEvent)308     void CreateAnimatablePropertyFloat(const std::string& propertyName, float value,
309         const std::function<void(float)>& onCallbackEvent) override {};
UpdateAnimatablePropertyFloat(const std::string & propertyName,float value)310     void UpdateAnimatablePropertyFloat(const std::string& propertyName, float value) override {};
311 
CreateAnimatableArithmeticProperty(const std::string & propertyName,RefPtr<NG::CustomAnimatableArithmetic> & value,std::function<void (const RefPtr<NG::CustomAnimatableArithmetic> &)> & onCallbackEvent)312     void CreateAnimatableArithmeticProperty(const std::string& propertyName,
313         RefPtr<NG::CustomAnimatableArithmetic>& value,
314         std::function<void(const RefPtr<NG::CustomAnimatableArithmetic>&)>& onCallbackEvent) override {};
UpdateAnimatableArithmeticProperty(const std::string & propertyName,RefPtr<NG::CustomAnimatableArithmetic> & value)315     void UpdateAnimatableArithmeticProperty(const std::string& propertyName,
316         RefPtr<NG::CustomAnimatableArithmetic>& value) override {};
UpdateSafeAreaExpandOpts(const NG::SafeAreaExpandOpts & opts)317     void UpdateSafeAreaExpandOpts(const NG::SafeAreaExpandOpts& opts) override {};
SetDragEventStrictReportingEnabled(bool dragEventStrictReportingEnabled)318     void SetDragEventStrictReportingEnabled(bool dragEventStrictReportingEnabled) override {};
SetBackgroundImageResizableSlice(const ImageResizableSlice & Slice)319     void SetBackgroundImageResizableSlice(const ImageResizableSlice& Slice) override {};
320 
321     // global light
SetLightPosition(const CalcDimension & positionX,const CalcDimension & positionY,const CalcDimension & positionZ)322     void SetLightPosition(
323         const CalcDimension& positionX, const CalcDimension& positionY, const CalcDimension& positionZ) override {};
SetLightIntensity(const float value)324     void SetLightIntensity(const float value) override {};
SetLightColor(const Color & value)325     void SetLightColor(const Color& value) override {};
SetLightIlluminated(const uint32_t value)326     void SetLightIlluminated(const uint32_t value) override {};
SetIlluminatedBorderWidth(const Dimension & value)327     void SetIlluminatedBorderWidth(const Dimension& value) override {};
SetBloom(const float value)328     void SetBloom(const float value) override {};
SetPositionLocalizedEdges(bool needLocalized)329     void SetPositionLocalizedEdges(bool needLocalized) override {};
SetLocalizedMarkAnchor(bool needLocalized)330     void SetLocalizedMarkAnchor(bool needLocalized) override {};
SetOffsetLocalizedEdges(bool needLocalized)331     void SetOffsetLocalizedEdges(bool needLocalized) override {};
332 };
333 
334 } // namespace OHOS::Ace::Framework
335 #endif // FRAMEWORKS_BRIDGE_DECLARATIVE_FRONTEND_JS_VIEW_MODELS_VIEW_ABSTRACT_MODEL_IMPL_H
336