target_sources(HiveWE_lib PUBLIC FILE_SET yeet TYPE CXX_MODULES FILES
	"types.ixx"
	"map_global.ixx"
	"globals.ixx"

	"base/map/map.ixx"
	"base/map/resize.cpp"
	"base/map/unused_files.cpp"
	"base/map/protection.ixx"
	"base/binary_reader.ixx"
	"base/doodad.ixx"
	"base/doodads.ixx"
	"base/binary_writer.ixx"
	"base/hierarchy.ixx"
	"base/render_manager.ixx"
	"base/game_cameras.ixx"
	"base/gameplay_constants.ixx"
	"base/imports.ixx"
	"base/map_info.ixx"
	"base/tilesets.ixx"
	"base/pathing_map.ixx"
	"base/regions.ixx"
	"base/camera.ixx"
	"base/world_undo_manager.ixx"
	"base/window_handler.ixx"
	"base/resource_manager.ixx"
	"base/shadow_map.ixx"
	"base/sounds.ixx"
	"base/trigger_strings.ixx"
	"base/physics.ixx"
	"base/terrain_undo.ixx"
	"base/units_undo.ixx"
	"base/pathing_undo.ixx"
	"base/doodads_undo.ixx"
	"base/regions_undo.ixx"
	"base/units.ixx"
	"base/terrain.ixx"

	"base/triggers/triggers.ixx"
	"base/triggers/gui.cpp"
	"base/triggers/map_script.cpp"

	"file_formats/blp.ixx"
	"file_formats/casc.ixx"
	"file_formats/ini.ixx"
	"file_formats/json.ixx"
	"file_formats/mdx/mdx.ixx"

	"file_formats/mpq.ixx"
	"file_formats/slk.ixx"

	"render/vk_context.ixx"
	"render/vk_resources.ixx"
	"render/vk_texture.ixx"
	"render/vk_editable_mesh.ixx"
	"render/vk_brush_overlay.ixx"

	"resources/cliff_mesh.ixx"
	"resources/ground_texture.ixx"

	"resources/texture.ixx"
	"resources/pathing_texture.ixx"
	"resources/qicon_resource.ixx"
	"resources/particle_emitter2_simulation.ixx"
	"resources/particle_emitter2_renderer.ixx"
	"resources/skinned_mesh/render_node.ixx"
	"resources/skinned_mesh/skeleton.ixx"
	"resources/skinned_mesh.ixx"
	"resources/skinned_mesh_globals.ixx"

	"models/tree/ability_tree_model.ixx"
	"models/tree/base_tree_model.ixx"
	"models/tree/buff_tree_model.ixx"
	"models/tree/destructible_tree_model.ixx"
	"models/tree/doodad_tree_model.ixx"
	"models/tree/item_tree_model.ixx"
	"models/tree/unit_tree_model.ixx"
	"models/tree/upgrade_tree_model.ixx"

	"models/list/ability_list_model.ixx"
	"models/list/base_list_model.ixx"
	"models/list/destructible_list_model.ixx"
	"models/list/doodad_list_model.ixx"
	"models/list/item_list_model.ixx"
	"models/list/unit_list_model.ixx"
	"models/list/upgrade_list_model.ixx"
	"models/list/buff_list_model.ixx"

	"models/table_model.ixx"

	"object_editor/slk_conversions.ixx"

	"custom_widgets/aspect_ratio_pixmap_label.ixx"
	"custom_widgets/color_button.ixx"
	"custom_widgets/texture_button.ixx"

	"custom_widgets/qribbon.ixx"
	"custom_widgets/unit_selector.ixx"
	"custom_widgets/flow_layout.ixx"

	"utilities/timer.ixx"
	"utilities/thread_pool.ixx"
	"utilities/utilities.ixx"
	"utilities/texture_icon.ixx"
	"utilities/modification_tables.ixx"
	"utilities/string_hash.ixx"
	"utilities/unordered_map.ixx"
	"utilities/unordered_set.ixx"
	"utilities/no_init_allocator.ixx"
	"utilities/math_operations.ixx"
	"utilities/rects.ixx"
	"utilities/file_paths.ixx"

	"test.ixx"
	"object_editor/ability_list_editor.ixx"
)

target_sources(HiveWE PRIVATE
	"main.cpp"
	"main_window/hivewe.rc"
)

target_sources(HiveWE_lib PRIVATE
	"main_window/hivewe.cpp"
	"main_window/map_widget.cpp"
	"main_window/map_widget.h"
	"main_window/main_ribbon.cpp"

	"brush/brush.cpp"
	"brush/doodad_brush.cpp"
	"brush/pathing_brush.cpp"
	"brush/region_brush.cpp"
	"brush/terrain_brush.cpp"
	"brush/terrain_operators.cpp"
	"brush/unit_brush.cpp"

	"file_formats/mdx/mdl_reader.cpp"
	"file_formats/mdx/mdl_writer.cpp"
	"file_formats/mdx/mdx_reader.cpp"
	"file_formats/mdx/mdx_writer.cpp"
	"file_formats/mdx/optimizer.cpp"
	"file_formats/mdx/utilities.cpp"
	"file_formats/mdx/validator.cpp"


	"menus/doodad_palette.cpp"
	"menus/map_info_editor/map_info_editor.cpp"
	"menus/map_info_editor/description.cpp"
	"menus/map_info_editor/loading_screen.cpp"
	"menus/map_info_editor/options.cpp"
	"menus/map_info_editor/map_size.cpp"
	"menus/scenario_info_editor.cpp"
	"menus/map_protection_dialog.cpp"
	"menus/map_protection_dialog.h"
	"menus/minimap.cpp"
	"menus/palette.cpp"
	"menus/pathing_palette.cpp"
	"menus/region_palette.cpp"
	"menus/settings_editor.cpp"
	"menus/terrain_palette.cpp"
	"menus/unit_palette.cpp"
	"menus/tile_pather.cpp"
	"menus/tile_picker.cpp"
	"menus/tile_setter.cpp"
	"menus/gameplay_constants_editor.cpp"
	"menus/gameplay_constants_editor.h"

	"asset_manager/asset_manager.cpp"
	"asset_manager/asset_manager.h"
	"asset_manager/asset_tree_model.cpp"
	"asset_manager/asset_tree_model.h"

	"models/single_model.cpp"

	"custom_widgets/aspect_ratio_pixmap_label.h"
	"custom_widgets/color_button.h"

	"trigger_editor/trigger_editor.cpp"
	"trigger_editor/search_window.cpp"
	"trigger_editor/jass_editor.cpp"
	"trigger_editor/jass_tokenizer.cpp"
	"trigger_editor/trigger_explorer.cpp"
	"trigger_editor/variable_editor.cpp"
	"trigger_editor/trigger_model.cpp"

	"model_editor/model_editor_camera.cpp"
	"model_editor/model_editor.cpp"
	"model_editor/model_editor_viewport.cpp"
	"model_editor/model_editor_imgui.cpp"

	"object_editor/icon_view.cpp"
	"object_editor/model_view.cpp"
	"object_editor/model_grid_widget.cpp"
	"object_editor/object_editor.cpp"
	"object_editor/global_search.cpp"

	"qt_imgui/imgui_renderer.cpp"
	"qt_imgui/qt_imgui.cpp"

	"render/frame_pacer.cpp"
	"render/frame_pacer.h"
	"render/vk_implementation.cpp"
	"render/vulkan_imgui.cpp"
	"render/vulkan_imgui.h"
	"render/vulkan_viewport.cpp"
	"render/vulkan_viewport.h"
	"render/vulkan_test_modes.cpp"
	"render/vulkan_test_modes.h"
)
