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 #include "core/interfaces/native/node/node_api.h"
16
17 #include "core/interfaces/native/node/node_common_modifier.h"
18 #include "core/interfaces/native/node/node_image_span_modifier.h"
19 #include "core/interfaces/native/node/node_image_modifier.h"
20 #include "core/interfaces/native/node/node_list_modifier.h"
21 #include "core/interfaces/native/node/node_list_item_group_modifier.h"
22 #include "core/interfaces/native/node/node_loading_progress_modifier.h"
23 #include "core/interfaces/native/node/node_scroll_modifier.h"
24 #include "core/interfaces/native/node/node_span_modifier.h"
25 #include "core/interfaces/native/node/node_stack_modifier.h"
26 #include "core/interfaces/native/node/node_text_input_modifier.h"
27 #include "core/interfaces/native/node/node_text_area_modifier.h"
28 #include "core/interfaces/native/node/node_xcomponent_modifier.h"
29 #include "core/interfaces/native/node/node_text_modifier.h"
30 #include "core/interfaces/native/node/node_text_modifier.h"
31 #include "core/interfaces/native/node/node_toggle_modifier.h"
32 #include "core/interfaces/native/node/node_swiper_modifier.h"
33
34 namespace OHOS::Ace::NG {
35 namespace {
36 const ArkUINodeModifiers impl = {
37 ARKUI_NODE_MODIFIERS_API_VERSION,
38 NodeModifier::GetCommonModifier,
39 nullptr,
40 nullptr,
41 nullptr,
42 nullptr,
43 NodeModifier::GetTextModifier,
44 nullptr,
45 NodeModifier::GetToggleModifier,
46 NodeModifier::GetImageSpanModifier,
47 nullptr,
48 nullptr,
49 nullptr,
50 nullptr,
51 nullptr,
52 nullptr,
53 nullptr,
54 nullptr,
55 nullptr,
56 nullptr,
57 NodeModifier::GetStackModifier,
58 nullptr,
59 nullptr,
60 nullptr,
61 nullptr,
62 nullptr,
63 NodeModifier::GetTextAreaModifier,
64 nullptr,
65 nullptr,
66 nullptr,
67 NodeModifier::GetImageModifier,
68 nullptr,
69 nullptr,
70 nullptr,
71 nullptr,
72 nullptr,
73 nullptr,
74 nullptr,
75 nullptr,
76 nullptr,
77 nullptr,
78 nullptr,
79 NodeModifier::GetSpanModifier,
80 nullptr,
81 nullptr,
82 nullptr,
83 NodeModifier::GetTextInputModifier,
84 nullptr,
85 nullptr,
86 nullptr,
87 nullptr,
88 nullptr,
89 nullptr,
90 nullptr,
91 nullptr,
92 nullptr,
93 nullptr,
94 nullptr,
95 NodeModifier::GetScrollModifier,
96 nullptr,
97 nullptr,
98 nullptr,
99 nullptr,
100 nullptr,
101 NodeModifier::GetSwiperModifier,
102 nullptr,
103 NodeModifier::GetListModifier,
104 NodeModifier::GetListItemGroupModifier,
105 nullptr,
106 NodeModifier::GetLoadingProgressModifier,
107 nullptr,
108 nullptr,
109 nullptr,
110 #ifdef PLUGIN_COMPONENT_SUPPORTED
111 nullptr,
112 #else
113 nullptr,
114 #endif
115 #ifdef XCOMPONENT_SUPPORTED
116 NodeModifier::GetXComponentModifier,
117 #else
118 nullptr,
119 #endif
120 #ifdef FORM_SUPPORTED
121 nullptr,
122 #else
123 nullptr,
124 #endif
125 nullptr, // FlexModifier
126 nullptr, // ScrollBarModifier
127 nullptr, // ScrollerModifier
128 nullptr, // TabContentModifier
129 nullptr, // TabsControllerModifier
130 nullptr, // GestureModifier
131 nullptr, // BadgeModifier
132 nullptr, // WebModifier
133 nullptr, // RefreshModifier
134 nullptr, // MenuItemGroupModifier
135 nullptr, // SearchControllerModifier
136 nullptr, // SideBarModifier
137 nullptr, // PatternLockControllerModifier
138 nullptr, // TextTimerControllerModifier
139 nullptr, // TextClockControllerModifier
140 nullptr, // RichEditorControllerModifier
141 nullptr, // TextAreaControllerModifier
142 };
143
144 } // namespace
145
146 } // namespace OHOS::Ace::NG
147
148 extern "C" {
149
GetArkUINodeModifiers()150 const ArkUINodeModifiers* GetArkUINodeModifiers()
151 {
152 return &OHOS::Ace::NG::impl;
153 }
154 }
155