file(TO_CMAKE_PATH "${CMAKE_SOURCE_DIR}" XCENGINE_EDITOR_UI_TESTS_REPO_ROOT_PATH) function(xcengine_configure_editor_ui_integration_validation_target target) set(options) set(oneValueArgs OUTPUT_NAME) cmake_parse_arguments(XCEDITOR_VALIDATION "${options}" "${oneValueArgs}" "" ${ARGN}) if(NOT TARGET ${target}) message(FATAL_ERROR "Integration validation target '${target}' does not exist.") endif() if(NOT XCEDITOR_VALIDATION_OUTPUT_NAME) message(FATAL_ERROR "Integration validation target '${target}' requires OUTPUT_NAME.") endif() target_link_libraries(${target} PRIVATE XCUIEditorLib editor_ui_integration_host ) if(MSVC) target_compile_options(${target} PRIVATE /utf-8 /FS) set_property(TARGET ${target} PROPERTY MSVC_RUNTIME_LIBRARY "MultiThreaded$<$:Debug>DLL") endif() set_target_properties(${target} PROPERTIES OUTPUT_NAME "${XCEDITOR_VALIDATION_OUTPUT_NAME}" ) endfunction() add_subdirectory(shared) add_subdirectory(shell) add_subdirectory(state) set(EDITOR_UI_INTEGRATION_TARGETS editor_ui_workspace_shell_compose_validation editor_ui_editor_shell_compose_validation editor_ui_editor_shell_interaction_validation editor_ui_dock_host_basic_validation editor_ui_menu_bar_basic_validation editor_ui_panel_frame_basic_validation editor_ui_tab_strip_basic_validation editor_ui_panel_session_flow_validation editor_ui_layout_persistence_validation editor_ui_shortcut_dispatch_validation editor_ui_workspace_interaction_basic_validation ) if(TARGET editor_ui_status_bar_basic_validation) list(APPEND EDITOR_UI_INTEGRATION_TARGETS editor_ui_status_bar_basic_validation) endif() if(TARGET editor_ui_context_menu_basic_validation) list(APPEND EDITOR_UI_INTEGRATION_TARGETS editor_ui_context_menu_basic_validation) endif() if(TARGET editor_ui_viewport_slot_basic_validation) list(APPEND EDITOR_UI_INTEGRATION_TARGETS editor_ui_viewport_slot_basic_validation) endif() if(TARGET editor_ui_viewport_shell_basic_validation) list(APPEND EDITOR_UI_INTEGRATION_TARGETS editor_ui_viewport_shell_basic_validation) endif() if(TARGET editor_ui_workspace_viewport_compose_validation) list(APPEND EDITOR_UI_INTEGRATION_TARGETS editor_ui_workspace_viewport_compose_validation) endif() if(TARGET editor_ui_viewport_input_bridge_basic_validation) list(APPEND EDITOR_UI_INTEGRATION_TARGETS editor_ui_viewport_input_bridge_basic_validation) endif() if(TARGET editor_ui_tree_view_basic_validation) list(APPEND EDITOR_UI_INTEGRATION_TARGETS editor_ui_tree_view_basic_validation) endif() if(TARGET editor_ui_tree_view_multiselect_validation) list(APPEND EDITOR_UI_INTEGRATION_TARGETS editor_ui_tree_view_multiselect_validation) endif() if(TARGET editor_ui_tree_view_inline_rename_validation) list(APPEND EDITOR_UI_INTEGRATION_TARGETS editor_ui_tree_view_inline_rename_validation) endif() if(TARGET editor_ui_property_grid_basic_validation) list(APPEND EDITOR_UI_INTEGRATION_TARGETS editor_ui_property_grid_basic_validation) endif() if(TARGET editor_ui_panel_content_host_basic_validation) list(APPEND EDITOR_UI_INTEGRATION_TARGETS editor_ui_panel_content_host_basic_validation) endif() if(TARGET editor_ui_panel_host_lifecycle_validation) list(APPEND EDITOR_UI_INTEGRATION_TARGETS editor_ui_panel_host_lifecycle_validation) endif() if(TARGET editor_ui_bool_field_basic_validation) list(APPEND EDITOR_UI_INTEGRATION_TARGETS editor_ui_bool_field_basic_validation) endif() if(TARGET editor_ui_number_field_basic_validation) list(APPEND EDITOR_UI_INTEGRATION_TARGETS editor_ui_number_field_basic_validation) endif() if(TARGET editor_ui_asset_field_basic_validation) list(APPEND EDITOR_UI_INTEGRATION_TARGETS editor_ui_asset_field_basic_validation) endif() if(TARGET editor_ui_object_field_basic_validation) list(APPEND EDITOR_UI_INTEGRATION_TARGETS editor_ui_object_field_basic_validation) endif() if(TARGET editor_ui_text_field_basic_validation) list(APPEND EDITOR_UI_INTEGRATION_TARGETS editor_ui_text_field_basic_validation) endif() if(TARGET editor_ui_vector2_field_basic_validation) list(APPEND EDITOR_UI_INTEGRATION_TARGETS editor_ui_vector2_field_basic_validation) endif() if(TARGET editor_ui_vector3_field_basic_validation) list(APPEND EDITOR_UI_INTEGRATION_TARGETS editor_ui_vector3_field_basic_validation) endif() if(TARGET editor_ui_vector4_field_basic_validation) list(APPEND EDITOR_UI_INTEGRATION_TARGETS editor_ui_vector4_field_basic_validation) endif() if(TARGET editor_ui_enum_field_basic_validation) list(APPEND EDITOR_UI_INTEGRATION_TARGETS editor_ui_enum_field_basic_validation) endif() if(TARGET editor_ui_color_field_basic_validation) list(APPEND EDITOR_UI_INTEGRATION_TARGETS editor_ui_color_field_basic_validation) endif() if(TARGET editor_ui_list_view_basic_validation) list(APPEND EDITOR_UI_INTEGRATION_TARGETS editor_ui_list_view_basic_validation) endif() if(TARGET editor_ui_list_view_multiselect_validation) list(APPEND EDITOR_UI_INTEGRATION_TARGETS editor_ui_list_view_multiselect_validation) endif() if(TARGET editor_ui_list_view_inline_rename_validation) list(APPEND EDITOR_UI_INTEGRATION_TARGETS editor_ui_list_view_inline_rename_validation) endif() if(TARGET editor_ui_scroll_view_basic_validation) list(APPEND EDITOR_UI_INTEGRATION_TARGETS editor_ui_scroll_view_basic_validation) endif() add_custom_target(editor_ui_integration_tests DEPENDS ${EDITOR_UI_INTEGRATION_TARGETS} )