• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 #include "core/interfaces/native/node/alphabet_indexer_modifier.h"
17 #include "core/interfaces/native/node/badge_modifier.h"
18 #include "core/interfaces/native/node/blank_modifier.h"
19 #include "core/interfaces/native/node/button_modifier.h"
20 #include "core/interfaces/native/node/calendar_picker_modifier.h"
21 #include "core/interfaces/native/node/checkboxgroup_modifier.h"
22 #include "core/interfaces/native/node/column_modifier.h"
23 #include "core/interfaces/native/node/column_split_modifier.h"
24 #include "core/interfaces/native/node/common_shape_modifier.h"
25 #include "core/interfaces/native/node/counter_modifier.h"
26 #include "core/interfaces/native/node/data_panel_modifier.h"
27 #include "core/interfaces/native/node/divider_modifier.h"
28 #include "core/interfaces/native/node/flex_modifier.h"
29 #include "core/interfaces/native/node/frame_node_modifier.h"
30 #include "core/interfaces/native/node/gauge_modifier.h"
31 #include "core/interfaces/native/node/grid_col_modifier.h"
32 #include "core/interfaces/native/node/grid_item_modifier.h"
33 #include "core/interfaces/native/node/grid_modifier.h"
34 #include "core/interfaces/native/node/grid_row_modifier.h"
35 #include "core/interfaces/native/node/hyperlink_modifier.h"
36 #include "core/interfaces/native/node/image_animator_modifier.h"
37 #include "core/interfaces/native/node/lazy_grid_layout_modifier.h"
38 #include "core/interfaces/native/node/line_modifier.h"
39 #include "core/interfaces/native/node/linear_indicator_modifier.h"
40 #include "core/interfaces/native/node/marquee_modifier.h"
41 #include "core/interfaces/native/node/menu_item_modifier.h"
42 #include "core/interfaces/native/node/menu_modifier.h"
43 #include "core/interfaces/native/node/nav_destination_modifier.h"
44 #include "core/interfaces/native/node/nav_router_modifier.h"
45 #include "core/interfaces/native/node/navigation_modifier.h"
46 #include "core/interfaces/native/node/navigator_modifier.h"
47 #include "core/interfaces/native/node/node_canvas_modifier.h"
48 #include "core/interfaces/native/node/node_checkbox_modifier.h"
49 #include "core/interfaces/native/node/node_common_modifier.h"
50 #include "core/interfaces/native/node/node_container_modifier.h"
51 #include "core/interfaces/native/node/node_container_span_modifier.h"
52 #include "core/interfaces/native/node/node_content_modifier.h"
53 #include "core/interfaces/native/node/node_custom_node_ext_modifier.h"
54 #include "core/interfaces/native/node/node_date_picker_modifier.h"
55 #include "core/interfaces/native/node/node_folder_stack_modifier.h"
56 #include "core/interfaces/native/node/node_gesture_modifier.h"
57 #include "core/interfaces/native/node/node_image_modifier.h"
58 #include "core/interfaces/native/node/node_image_span_modifier.h"
59 #include "core/interfaces/native/node/node_indicator_modifier.h"
60 #include "core/interfaces/native/node/node_list_item_group_modifier.h"
61 #include "core/interfaces/native/node/node_list_item_modifier.h"
62 #include "core/interfaces/native/node/node_list_modifier.h"
63 #include "core/interfaces/native/node/node_loading_progress_modifier.h"
64 #include "core/interfaces/native/node/node_refresh_modifier.h"
65 #include "core/interfaces/native/node/node_relative_container_modifier.h"
66 #include "core/interfaces/native/node/node_render_node_modifier.h"
67 #include "core/interfaces/native/node/node_scroll_bar_modifier.h"
68 #include "core/interfaces/native/node/node_scroll_modifier.h"
69 #include "core/interfaces/native/node/node_slider_modifier.h"
70 #include "core/interfaces/native/node/node_span_modifier.h"
71 #include "core/interfaces/native/node/node_stack_modifier.h"
72 #include "core/interfaces/native/node/node_swiper_modifier.h"
73 #include "core/interfaces/native/node/node_symbol_glyph_modifier.h"
74 #include "core/interfaces/native/node/node_symbol_span_modifier.h"
75 #include "core/interfaces/native/node/node_text_area_modifier.h"
76 #include "core/interfaces/native/node/node_text_input_modifier.h"
77 #include "core/interfaces/native/node/node_text_modifier.h"
78 #include "core/interfaces/native/node/node_textpicker_modifier.h"
79 #include "core/interfaces/native/node/node_timepicker_modifier.h"
80 #include "core/interfaces/native/node/node_toggle_modifier.h"
81 #include "core/interfaces/native/node/panel_modifier.h"
82 #include "core/interfaces/native/node/particle_modifier.h"
83 #include "core/interfaces/native/node/path_modifier.h"
84 #include "core/interfaces/native/node/pattern_lock_modifier.h"
85 #include "core/interfaces/native/node/polygon_modifier.h"
86 #include "core/interfaces/native/node/polyline_modifier.h"
87 #include "core/interfaces/native/node/progress_modifier.h"
88 #ifdef QRCODEGEN_SUPPORT
89 #include "core/interfaces/native/node/qrcode_modifier.h"
90 #endif
91 #include "core/interfaces/native/node/radio_modifier.h"
92 #include "core/interfaces/native/node/rating_modifier.h"
93 #include "core/interfaces/native/node/rect_modifier.h"
94 #include "core/interfaces/native/node/render_node_modifier.h"
95 #include "core/interfaces/native/node/rich_editor_modifier.h"
96 #include "core/interfaces/native/node/row_modifier.h"
97 #include "core/interfaces/native/node/row_split_modifier.h"
98 #include "core/interfaces/native/node/scrollable_modifier.h"
99 #include "core/interfaces/native/node/scroller_modifier.h"
100 #include "core/interfaces/native/node/search_modifier.h"
101 #include "core/interfaces/native/node/select_modifier.h"
102 #include "core/interfaces/native/node/shape_modifier.h"
103 #include "core/interfaces/native/node/side_bar_container_modifier.h"
104 #include "core/interfaces/native/node/stepper_item_modifier.h"
105 #include "core/interfaces/native/node/stepper_modifier.h"
106 #include "core/interfaces/native/node/swiper_controller_modifier.h"
107 #include "core/interfaces/native/node/tab_content_modifier.h"
108 #include "core/interfaces/native/node/tabs_modifier.h"
109 #include "core/interfaces/native/node/text_clock_modifier.h"
110 #include "core/interfaces/native/node/text_timer_modifier.h"
111 #include "core/interfaces/native/node/theme_modifier.h"
112 #include "core/interfaces/native/node/video_modifier.h"
113 #include "core/interfaces/native/node/water_flow_modifier.h"
114 
115 #ifdef MODEL_COMPONENT_SUPPORTED
116 #include "core/interfaces/native/node/node_component3d_modifier.h"
117 #endif
118 
119 #ifdef PLUGIN_COMPONENT_SUPPORTED
120 #include "core/interfaces/native/node/plugin_modifier.h"
121 #endif
122 
123 #ifdef XCOMPONENT_SUPPORTED
124 #include "core/interfaces/native/node/node_xcomponent_modifier.h"
125 #endif
126 
127 #ifdef FORM_SUPPORTED
128 #include "core/interfaces/native/node/form_component_modifier.h"
129 #endif
130 
131 #ifdef WEB_SUPPORTED
132 #include "core/interfaces/native/node/web_modifier.h"
133 #endif
134 
135 #ifdef WINDOW_SCENE_SUPPORTED
136 #include "core/interfaces/native/node/embeddedComponent_modifier.h"
137 #endif
138 
139 using namespace OHOS::Ace::NG;
140 
141 #define MODIFIER_COUNTS 9
142 #define MODIFIER_COUNTS_CJ 8
143 #define BLANK_LINES 6
144 
145 extern "C" {
GetArkUINodeModifiers()146 const ArkUINodeModifiers* GetArkUINodeModifiers()
147 {
148     CHECK_INITIALIZED_FIELDS_BEGIN(); // don't move this line
149     static ArkUINodeModifiers impl = {
150         .version = ARKUI_NODE_MODIFIERS_API_VERSION,
151         .getCommonModifier = NodeModifier::GetCommonModifier,
152         .getCheckboxGroupModifier = NodeModifier::GetCheckboxGroupModifier,
153         .getCounterModifier = NodeModifier::GetCounterModifier,
154         .getRowModifier = NodeModifier::GetRowModifier,
155         .getRowSplitModifier = NodeModifier::GetRowSplitModifier,
156         .getTextModifier = NodeModifier::GetTextModifier,
157         .getButtonModifier = NodeModifier::GetButtonModifier,
158         .getToggleModifier = NodeModifier::GetToggleModifier,
159         .getImageSpanModifier = NodeModifier::GetImageSpanModifier,
160         .getBlankModifier = NodeModifier::GetBlankModifier,
161         .getSearchModifier = NodeModifier::GetSearchModifier,
162         .getSelectModifier = NodeModifier::GetSelectModifier,
163         .getRadioModifier = NodeModifier::GetRadioModifier,
164         .getCheckboxModifier = NodeModifier::GetCheckboxModifier,
165         .getTimepickerModifier = NodeModifier::GetTimepickerModifier,
166         .getTextPickerModifier = NodeModifier::GetTextPickerModifier,
167         .getRatingModifier = NodeModifier::GetRatingModifier,
168         .getSliderModifier = NodeModifier::GetSliderModifier,
169         .getDividerModifier = NodeModifier::GetDividerModifier,
170         .getStackModifier = NodeModifier::GetStackModifier,
171     #ifndef ARKUI_WEARABLE
172         .getFolderStackModifier = NodeModifier::GetFolderStackModifier,
173     #else
174         .getFolderStackModifier = nullptr,
175     #endif
176         .getNavDestinationModifier = NodeModifier::GetNavDestinationModifier,
177         .getGridModifier = NodeModifier::GetGridModifier,
178         .getGridColModifier = NodeModifier::GetGridColModifier,
179         .getGridRowModifier = NodeModifier::GetGridRowModifier,
180         .getPanelModifier = NodeModifier::GetPanelModifier,
181         .getTextAreaModifier = NodeModifier::GetTextAreaModifier,
182         .getNavigationModifier = NodeModifier::GetNavigationModifier,
183         .getColumnModifier = NodeModifier::GetColumnModifier,
184         .getRichEditorModifier = NodeModifier::GetRichEditorModifier,
185         .getImageModifier = NodeModifier::GetImageModifier,
186         .getVideoModifier = NodeModifier::GetVideoModifier,
187         .getVideoControllerModifier = nullptr,
188         .getNavigatorModifier = NodeModifier::GetNavigatorModifier,
189         .getNavRouterModifier = NodeModifier::GetNavRouterModifier,
190         .getNodeContainerModifier = NodeModifier::GetNodeContainerModifier,
191         .getPatternLockModifier = NodeModifier::GetPatternLockModifier,
192         .getColumnSplitModifier = NodeModifier::GetColumnSplitModifier,
193         .getLineModifier = NodeModifier::GetLineModifier,
194         .getPathModifier = NodeModifier::GetPathModifier,
195         .getPolygonModifier = NodeModifier::GetPolygonModifier,
196         .getPolylineModifier = NodeModifier::GetPolylineModifier,
197         .getSpanModifier = NodeModifier::GetSpanModifier,
198         .getImageAnimatorModifier = NodeModifier::GetImageAnimatorModifier,
199         .getSideBarContainerModifier = NodeModifier::GetSideBarContainerModifier,
200     #ifndef ARKUI_WEARABLE
201         .getCalendarPickerModifier = NodeModifier::GetCalendarPickerModifier,
202     #else
203         .getCalendarPickerModifier = nullptr,
204     #endif
205         .getTextInputModifier = NodeModifier::GetTextInputModifier,
206         .getTabsModifier = NodeModifier::GetTabsModifier,
207         .getStepperItemModifier = NodeModifier::GetStepperItemModifier,
208         .getHyperlinkModifier = NodeModifier::GetHyperlinkModifier,
209         .getMarqueeModifier = NodeModifier::GetMarqueeModifier,
210         .getMenuItemModifier = NodeModifier::GetMenuItemModifier,
211         .getMenuModifier = NodeModifier::GetMenuModifier,
212         .getDatePickerModifier = NodeModifier::GetDatePickerModifier,
213         .getWaterFlowModifier = NodeModifier::GetWaterFlowModifier,
214         .getAlphabetIndexerModifier = NodeModifier::GetAlphabetIndexerModifier,
215         .getDataPanelModifier = NodeModifier::GetDataPanelModifier,
216         .getGaugeModifier = NodeModifier::GetGaugeModifier,
217         .getScrollModifier = NodeModifier::GetScrollModifier,
218         .getScrollableModifier = NodeModifier::GetScrollableModifier,
219         .getGridItemModifier = NodeModifier::GetGridItemModifier,
220         .getProgressModifier = NodeModifier::GetProgressModifier,
221         .getCommonShapeModifier = NodeModifier::GetCommonShapeModifier,
222         .getShapeModifier = NodeModifier::GetShapeModifier,
223         .getRectModifier = NodeModifier::GetRectModifier,
224         .getSwiperModifier = NodeModifier::GetSwiperModifier,
225         .getListItemModifier = NodeModifier::GetListItemModifier,
226         .getListModifier = NodeModifier::GetListModifier,
227         .getListItemGroupModifier = NodeModifier::GetListItemGroupModifier,
228     #ifdef QRCODEGEN_SUPPORT
229         .getQRCodeModifier = NodeModifier::GetQRCodeModifier,
230     #else
231         .getQRCodeModifier = nullptr,
232     #endif
233         .getLoadingProgressModifier = NodeModifier::GetLoadingProgressModifier,
234         .getTextClockModifier = NodeModifier::GetTextClockModifier,
235         .getTextTimerModifier = NodeModifier::GetTextTimerModifier,
236         .getRenderNodeModifier = NodeModifier::GetRenderNodeModifier,
237         .getFrameNodeModifier = NodeModifier::GetFrameNodeModifier,
238     #ifdef PLUGIN_COMPONENT_SUPPORTED
239         .getPluginModifier = NodeModifier::GetPluginModifier,
240     #else
241         .getPluginModifier = nullptr,
242     #endif
243     #ifdef XCOMPONENT_SUPPORTED
244         .getXComponentModifier = NodeModifier::GetXComponentModifier,
245     #else
246         .getXComponentModifier = nullptr,
247     #endif
248         .getUIStateModifier = NodeModifier::GetUIStateModifier,
249     #ifdef FORM_SUPPORTED
250         .getFormComponentModifier = NodeModifier::GetFormComponentModifier,
251     #else
252         .getFormComponentModifier = nullptr,
253     #endif
254         .getFlexModifier = NodeModifier::GetFlexModifier, // FlexModifier
255         .getScrollBarModifier = NodeModifier::GetScrollBarModifier, // ScrollBarModifier
256         .getScrollerModifier = NodeModifier::GetScrollerModifier,
257         .getTabContentModifier = NodeModifier::GetTabContentModifier,
258         .getTabsControllerModifier = nullptr, // TabsControllerModifier
259         .getSwiperControllerModifier = NodeModifier::GetSwiperControllerModifier,
260         .getGestureModifier = NodeModifier::GetGestureModifier, // GestureModifier
261         .getBadgeModifier = NodeModifier::GetBadgeModifier, // BadgeModifier
262     #ifdef WEB_SUPPORTED
263         .getWebModifier = NodeModifier::GetWebModifier, // WebModifier
264     #else
265         .getWebModifier = nullptr, // WebModifier
266     #endif
267         .getRefreshModifier = NodeModifier::GetRefreshModifier, // RefreshModifier
268         .getMenuItemGroupModifier = nullptr, // MenuItemGroupModifier
269         .getSearchControllerModifier = nullptr, // SearchControllerModifier
270         .getSideBarModifier = nullptr, // SideBarModifier
271         .getPatternLockControllerModifier = nullptr, // PatternLockControllerModifier
272         .getTextTimerControllerModifier = nullptr, // TextTimerControllerModifier
273         .getTextClockControllerModifier = nullptr, // TextClockControllerModifier
274         .getRichEditorControllerModifier = nullptr, // RichEditorControllerModifier
275         .getTextAreaControllerModifier = nullptr, // TextAreaControllerModifier
276         .getRelativeContainerModifier = NodeModifier::GetRelativeContainerModifier, // RelativeContainerModifier
277         .getParticleModifier = NodeModifier::GetParticleModifier,
278         .getNodeContentModifier = NodeModifier::GetNodeContentModifier,
279         .getSymbolGlyphModifier = NodeModifier::GetSymbolGlyphModifier,
280         .getSymbolSpanModifier = NodeModifier::GetSymbolSpanModifier,
281     #ifdef MODEL_COMPONENT_SUPPORTED
282         .getComponent3DModifier = NodeModifier::GetComponent3DModifier,
283     #else
284         .getComponent3DModifier = nullptr,
285     #endif
286         .getContainerSpanModifier = NodeModifier::GetContainerSpanModifier,
287         .getCustomNodeExtModifier = nullptr,
288         .getThemeModifier = NodeModifier::GetThemeModifier,
289         .getLinearIndicatorModifier = NodeModifier::GetLinearIndicatorModifier,
290         .getIndicatorComponentModifier = NodeModifier::GetIndicatorComponentModifier,
291         .getLazyGridLayoutModifier = NodeModifier::GetLazyGridLayoutModifier,
292     #ifdef WINDOW_SCENE_SUPPORTED
293         .getEmbeddedComponentModifier = NodeModifier::GetEmbeddedComponentModifier,
294     #else
295         .getEmbeddedComponentModifier = nullptr,
296     #endif
297         .getCanvasModifier = NodeModifier::GetCanvasModifier,
298         .getStepperModifier = NodeModifier::GetStepperModifier,
299         .getNDKRenderNodeModifier = NodeModifier::GetNDKRenderNodeModifier,
300     };
301     CHECK_INITIALIZED_FIELDS_END(impl, MODIFIER_COUNTS, 0, 0); // don't move this line.
302     return &impl;
303 }
304 
GetCJUINodeModifiers()305 const CJUINodeModifiers* GetCJUINodeModifiers()
306 {
307     CHECK_INITIALIZED_FIELDS_BEGIN(); // don't move this line
308     static CJUINodeModifiers modifiers {
309         .version = ARKUI_NODE_MODIFIERS_API_VERSION,
310         .getCommonModifier = NodeModifier::GetCJUICommonModifier,
311         .getCheckboxGroupModifier = NodeModifier::GetCJUICheckboxGroupModifier,
312         .getCounterModifier = NodeModifier::GetCJUICounterModifier,
313         .getRowModifier = NodeModifier::GetCJUIRowModifier,
314         .getRowSplitModifier = NodeModifier::GetCJUIRowSplitModifier,
315         .getTextModifier = NodeModifier::GetCJUITextModifier,
316         .getButtonModifier = NodeModifier::GetCJUIButtonModifier,
317         .getToggleModifier = NodeModifier::GetCJUIToggleModifier,
318         .getImageSpanModifier = NodeModifier::GetCJUIImageSpanModifier,
319         .getBlankModifier = NodeModifier::GetCJUIBlankModifier,
320         .getSearchModifier = NodeModifier::GetCJUISearchModifier,
321         .getSelectModifier = NodeModifier::GetCJUISelectModifier,
322         .getRadioModifier = NodeModifier::GetCJUIRadioModifier,
323         .getCheckboxModifier = NodeModifier::GetCJUICheckboxModifier,
324         .getTimepickerModifier = NodeModifier::GetCJUITimepickerModifier,
325         .getTextPickerModifier = NodeModifier::GetCJUITextPickerModifier,
326         .getRatingModifier = NodeModifier::GetCJUIRatingModifier,
327         .getSliderModifier = NodeModifier::GetCJUISliderModifier,
328         .getDividerModifier = NodeModifier::GetCJUIDividerModifier,
329         .getStackModifier = NodeModifier::GetCJUIStackModifier,
330     #ifndef ARKUI_WEARABLE
331         .getFolderStackModifier = NodeModifier::GetCJUIFolderStackModifier,
332     #else
333         .getFolderStackModifier = nullptr,
334     #endif
335         .getNavDestinationModifier = NodeModifier::GetCJUINavDestinationModifier,
336         .getGridModifier = NodeModifier::GetCJUIGridModifier,
337         .getGridColModifier = NodeModifier::GetCJUIGridColModifier,
338         .getGridRowModifier = NodeModifier::GetCJUIGridRowModifier,
339         .getPanelModifier = NodeModifier::GetCJUIPanelModifier,
340         .getTextAreaModifier = NodeModifier::GetCJUITextAreaModifier,
341         .getNavigationModifier = NodeModifier::GetCJUINavigationModifier,
342         .getColumnModifier = NodeModifier::GetCJUIColumnModifier,
343         .getRichEditorModifier = NodeModifier::GetCJUIRichEditorModifier,
344         .getImageModifier = NodeModifier::GetCJUIImageModifier,
345         .getVideoModifier = NodeModifier::GetCJUIVideoModifier,
346         .getVideoControllerModifier = nullptr,
347         .getNavigatorModifier = nullptr,
348         .getNavRouterModifier = NodeModifier::GetCJUINavRouterModifier,
349         .getNodeContainerModifier = NodeModifier::GetCJUINodeContainerModifier,
350         .getPatternLockModifier = NodeModifier::GetCJUIPatternLockModifier,
351         .getColumnSplitModifier = NodeModifier::GetCJUIColumnSplitModifier,
352         .getLineModifier = NodeModifier::GetCJUILineModifier,
353         .getPathModifier = NodeModifier::GetCJUIPathModifier,
354         .getPolygonModifier = NodeModifier::GetCJUIPolygonModifier,
355         .getPolylineModifier = NodeModifier::GetCJUIPolylineModifier,
356         .getSpanModifier = NodeModifier::GetCJUISpanModifier,
357         .getImageAnimatorModifier = NodeModifier::GetCJUIImageAnimatorModifier,
358         .getSideBarContainerModifier = NodeModifier::GetCJUISideBarContainerModifier,
359     #ifndef ARKUI_WEARABLE
360         .getCalendarPickerModifier = NodeModifier::GetCJUICalendarPickerModifier,
361     #else
362         .getCalendarPickerModifier = nullptr,
363     #endif
364         .getTextInputModifier = NodeModifier::GetCJUITextInputModifier,
365         .getTabsModifier = NodeModifier::GetCJUITabsModifier,
366         .getStepperItemModifier = NodeModifier::GetCJUIStepperItemModifier,
367         .getHyperlinkModifier = NodeModifier::GetCJUIHyperlinkModifier,
368         .getMarqueeModifier = NodeModifier::GetCJUIMarqueeModifier,
369         .getMenuItemModifier = nullptr,
370         .getMenuModifier = NodeModifier::GetCJUIMenuModifier,
371         .getDatePickerModifier = NodeModifier::GetCJUIDatePickerModifier,
372         .getWaterFlowModifier = NodeModifier::GetCJUIWaterFlowModifier,
373         .getAlphabetIndexerModifier = NodeModifier::GetCJUIAlphabetIndexerModifier,
374         .getDataPanelModifier = NodeModifier::GetCJUIDataPanelModifier,
375         .getGaugeModifier = NodeModifier::GetCJUIGaugeModifier,
376         .getScrollModifier = NodeModifier::GetCJUIScrollModifier,
377         .getGridItemModifier = NodeModifier::GetCJUIGridItemModifier,
378         .getProgressModifier = NodeModifier::GetCJUIProgressModifier,
379         .getCommonShapeModifier = NodeModifier::GetCJUICommonShapeModifier,
380         .getShapeModifier = NodeModifier::GetCJUIShapeModifier,
381         .getRectModifier = NodeModifier::GetCJUIRectModifier,
382         .getSwiperModifier = NodeModifier::GetCJUISwiperModifier,
383         .getListItemModifier = NodeModifier::GetCJUIListItemModifier,
384         .getListModifier = NodeModifier::GetCJUIListModifier,
385         .getListItemGroupModifier = NodeModifier::GetCJUIListItemGroupModifier,
386     #ifdef QRCODEGEN_SUPPORT
387         .getQRCodeModifier = NodeModifier::GetCJUIQRCodeModifier,
388     #else
389         .getQRCodeModifier = nullptr,
390     #endif
391         .getLoadingProgressModifier = NodeModifier::GetCJUILoadingProgressModifier,
392         .getTextClockModifier = NodeModifier::GetCJUITextClockModifier,
393         .getTextTimerModifier = NodeModifier::GetCJUITextTimerModifier,
394         .getRenderNodeModifier = NodeModifier::GetCJUIRenderNodeModifier,
395         .getFrameNodeModifier = NodeModifier::GetCJUIFrameNodeModifier,
396 
397     #ifdef PLUGIN_COMPONENT_SUPPORTED
398         .getPluginModifier = NodeModifier::GetCJUIPluginModifier,
399     #else
400         .getPluginModifier = nullptr,
401     #endif
402 
403     #ifdef XCOMPONENT_SUPPORTED
404         .getXComponentModifier = NodeModifier::GetCJUIXComponentModifier,
405     #else
406         .getXComponentModifier = nullptr,
407     #endif
408 
409         .getUIStateModifier = NodeModifier::GetCJUIStateModifier,
410 
411     #ifdef FORM_SUPPORTED
412         .getFormComponentModifier = NodeModifier::GetCJUIFormComponentModifier,
413     #else
414         .getFormComponentModifier = nullptr,
415     #endif
416         .getFlexModifier = NodeModifier::GetCJUIFlexModifier, // FlexModifier
417         .getScrollBarModifier = NodeModifier::GetCJUIScrollBarModifier, // ScrollBarModifier
418         .getScrollerModifier = NodeModifier::GetCJUIScrollerModifier,
419         .getTabContentModifier = NodeModifier::GetCJUITabContentModifier,
420         .getTabsControllerModifier = nullptr, // TabsControllerModifier
421         .getSwiperControllerModifier = NodeModifier::GetCJUISwiperControllerModifier,
422         .getGestureModifier = NodeModifier::GetCJUIGestureModifier, // GestureModifier
423         .getBadgeModifier = nullptr, // BadgeModifier
424     #ifdef WEB_SUPPORTED
425         .getWebModifier = NodeModifier::GetCJUIWebModifier, // WebModifier
426     #else
427         .getWebModifier = nullptr, // WebModifier
428     #endif
429         .getRefreshModifier = NodeModifier::GetCJUIRefreshModifier, // RefreshModifier
430         .getMenuItemGroupModifier = nullptr, // MenuItemGroupModifier
431         .getSearchControllerModifier = nullptr, // SearchControllerModifier
432         .getSideBarModifier = nullptr, // SideBarModifier
433         .getPatternLockControllerModifier = nullptr, // PatternLockControllerModifier
434         .getTextTimerControllerModifier = nullptr, // TextTimerControllerModifier
435         .getTextClockControllerModifier = nullptr, // TextClockControllerModifier
436         .getRichEditorControllerModifier = nullptr, // RichEditorControllerModifier
437         .getTextAreaControllerModifier = nullptr, // TextAreaControllerModifier
438         .getRelativeContainerModifier = NodeModifier::GetCJUIRelativeContainerModifier, // RelativeContainerModifier
439         .getNodeContentModifier = NodeModifier::GetCJUINodeContentModifier,
440         .getParticleModifier = NodeModifier::GetCJUIParticleModifier,
441         .getSymbolGlyphModifier = NodeModifier::GetCJUISymbolGlyphModifier,
442         .getSymbolSpanModifier = NodeModifier::GetCJUISymbolSpanModifier,
443 
444     #ifdef MODEL_COMPONENT_SUPPORTED
445         .getComponent3DModifier = NodeModifier::GetCJUIComponent3DModifier,
446     #else
447         .getComponent3DModifier = nullptr,
448     #endif
449 
450         .getContainerSpanModifier = NodeModifier::GetCJUIContainerSpanModifier,
451     };
452     CHECK_INITIALIZED_FIELDS_END(modifiers, MODIFIER_COUNTS_CJ, BLANK_LINES, 0); // don't move this line
453     return &modifiers;
454 }
455 }
456