virtualx-engine/editor/plugins
Yuri Sizov 635b8a1474 Split theme generation logic into several subroutines
This change introduces a new theme configuration struct to be
passed to the aforementioned routines to better control reuse
of styles and definitions in the generator.

Everything not passed and not explicitly shared is scoped so it
is not automatically accessible throughout the routine. This
should ensure that the decision to share styles is a conscious one.

In the future we will try to reduce the number of unique definitions
and share most of it. This PR is a stepping stone on this path.

This also puts the effort into separating redefinitions of
default theme items vs custom types introduced only by the editor.
In a few cases where editor-specific definitions need to reference
default definitions we simply fetch them from the theme. It's not
ideal and hides the dependency a bit, but hopefully these cases
will be abstracted properly in due time.
2024-01-16 11:57:45 +01:00
..
gizmos Update deferred calls to use Callables 2024-01-09 16:11:47 +01:00
tiles Split theme generation logic into several subroutines 2024-01-16 11:57:45 +01:00
abstract_polygon_2d_editor.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
abstract_polygon_2d_editor.h Improve includes of EditorNode (and everything else) 2023-04-07 18:59:49 +02:00
animation_blend_space_1d_editor.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
animation_blend_space_1d_editor.h Make GraphEdit toolbar more customizable 2023-10-02 13:43:08 +02:00
animation_blend_space_2d_editor.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
animation_blend_space_2d_editor.h Make GraphEdit toolbar more customizable 2023-10-02 13:43:08 +02:00
animation_blend_tree_editor_plugin.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
animation_blend_tree_editor_plugin.h Merge pull request #76654 from TokageItLab/improve-filter-util-anim-tree 2024-01-04 16:38:32 +01:00
animation_library_editor.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
animation_library_editor.h Add icon, tooltip, rename button in AnimationLibraryEditor for clarity. 2024-01-11 05:50:29 +01:00
animation_player_editor_plugin.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
animation_player_editor_plugin.h Fix seeking bug in AnimationPlayerEditor 2023-11-22 06:43:26 +09:00
animation_state_machine_editor.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
animation_state_machine_editor.h Fix theme access and improve UX in AnimationTree editor 2023-09-23 21:47:27 +02:00
animation_tree_editor_plugin.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
animation_tree_editor_plugin.h Make GraphEdit toolbar more customizable 2023-10-02 13:43:08 +02:00
asset_library_editor_plugin.cpp Split theme generation logic into several subroutines 2024-01-16 11:57:45 +01:00
asset_library_editor_plugin.h AssetLib: Fix long plugin names breaking the UI 2023-09-30 18:16:39 -05:00
audio_stream_editor_plugin.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
audio_stream_editor_plugin.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
audio_stream_randomizer_editor_plugin.cpp Avoid unnecessary inspector updates when loading or switching scenes 2023-08-12 13:32:59 +02:00
audio_stream_randomizer_editor_plugin.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
bit_map_editor_plugin.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
bit_map_editor_plugin.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
bone_map_editor_plugin.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
bone_map_editor_plugin.h Add const lvalue ref to container parameters 2024-01-05 14:49:57 -03:00
camera_3d_editor_plugin.cpp One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
camera_3d_editor_plugin.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
canvas_item_editor_plugin.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
canvas_item_editor_plugin.h Add const lvalue ref to container parameters 2024-01-05 14:49:57 -03:00
cast_2d_editor_plugin.cpp Add EditorStringNames singleton 2023-09-03 19:58:18 +02:00
cast_2d_editor_plugin.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
collision_polygon_2d_editor_plugin.cpp One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
collision_polygon_2d_editor_plugin.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
collision_shape_2d_editor_plugin.cpp Add EditorStringNames singleton 2023-09-03 19:58:18 +02:00
collision_shape_2d_editor_plugin.h Adds a scale_gizmo_handles entry to the Touchscreen editor settings 2023-05-07 15:55:28 -07:00
control_editor_plugin.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
control_editor_plugin.h Decouple EditorInterface from EditorPlugin 2023-04-17 21:59:09 +02:00
cpu_particles_2d_editor_plugin.cpp Improve the looks of 2D/3D viewport contextual toolbars 2023-09-13 13:04:55 +02:00
cpu_particles_2d_editor_plugin.h Implement conversion from CPUParticles to GPUParticles (3D/2D) 2023-08-19 11:58:57 +03:00
cpu_particles_3d_editor_plugin.cpp Add EditorStringNames singleton 2023-09-03 19:58:18 +02:00
cpu_particles_3d_editor_plugin.h Implement conversion from CPUParticles to GPUParticles (3D/2D) 2023-08-19 11:58:57 +03:00
curve_editor_plugin.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
curve_editor_plugin.h Increase vertical size of CurveEdit when Inspector widens 2023-08-03 16:02:28 -04:00
debugger_editor_plugin.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
debugger_editor_plugin.h Debug CanvasItem redraw 2023-08-28 12:53:56 +02:00
dedicated_server_export_plugin.cpp Add "dedicated server" export mode which can strip unneeded visual resources 2023-01-23 13:24:54 -06:00
dedicated_server_export_plugin.h Re-architect how Android plugins are packaged and handled at export time 2023-07-18 19:14:53 +02:00
editor_debugger_plugin.cpp [Editor] Replace ERR_FAIL_COND with ERR_FAIL_NULL where applicable 2023-09-15 20:15:39 +02:00
editor_debugger_plugin.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
editor_preview_plugins.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
editor_preview_plugins.h Abort threaded preview generators on exit 2023-11-10 15:31:43 +01:00
editor_resource_conversion_plugin.cpp One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
editor_resource_conversion_plugin.h Extract ScriptInstance to simplify includes 2023-09-06 22:54:38 +02:00
editor_resource_tooltip_plugins.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
editor_resource_tooltip_plugins.h Extract ScriptInstance to simplify includes 2023-09-06 22:54:38 +02:00
font_config_plugin.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
font_config_plugin.h Use PropertyUsageFlags enum in parse_property 2023-01-31 23:31:15 +01:00
gdextension_export_plugin.h [iOS, GDExtension] Fix loading and exporting static libraries and xcframeworks. 2023-11-09 20:04:40 +02:00
gpu_particles_2d_editor_plugin.cpp Improve the looks of 2D/3D viewport contextual toolbars 2023-09-13 13:04:55 +02:00
gpu_particles_2d_editor_plugin.h Added option to center image when loading particle emission mask 2023-07-02 12:22:38 +02:00
gpu_particles_3d_editor_plugin.cpp Only allow MeshInstance3D-based nodes in particles emission shape node selector 2023-11-19 11:22:51 +01:00
gpu_particles_3d_editor_plugin.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
gpu_particles_collision_sdf_editor_plugin.cpp Replace flat buttons with flat-styled buttons with a visible pressed state 2023-09-19 22:36:29 +02:00
gpu_particles_collision_sdf_editor_plugin.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
gradient_editor_plugin.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
gradient_editor_plugin.h Overhaul the Gradient Editor 2023-09-21 15:55:28 +03:00
gradient_texture_2d_editor_plugin.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
gradient_texture_2d_editor_plugin.h Extract and reorganize texture resource classes 2023-07-14 20:04:21 +02:00
input_event_editor_plugin.cpp Add EditorStringNames singleton 2023-09-03 19:58:18 +02:00
input_event_editor_plugin.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
light_occluder_2d_editor_plugin.cpp Add EditorUndoRedoManager singleton 2023-01-16 01:11:52 +01:00
light_occluder_2d_editor_plugin.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
lightmap_gi_editor_plugin.cpp Merge pull request #86583 from reduz/lightmapper-dda-fix 2024-01-11 17:37:45 +01:00
lightmap_gi_editor_plugin.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
line_2d_editor_plugin.cpp Add EditorUndoRedoManager singleton 2023-01-16 01:11:52 +01:00
line_2d_editor_plugin.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
material_editor_plugin.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
material_editor_plugin.h Improve material and mesh preview buttons 2023-08-04 01:47:32 +03:00
mesh_editor_plugin.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
mesh_editor_plugin.h Improve material and mesh preview buttons 2023-08-04 01:47:32 +03:00
mesh_instance_3d_editor_plugin.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
mesh_instance_3d_editor_plugin.h Fix accessing editor theme items throughout the UI 2023-09-15 14:51:01 +02:00
mesh_library_editor_plugin.cpp [Editor] Replace ERR_FAIL_COND with ERR_FAIL_NULL where applicable 2023-09-15 20:15:39 +02:00
mesh_library_editor_plugin.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
multimesh_editor_plugin.cpp Only allow MeshInstance3D-inherited nodes in MultiMesh Populate Surface dialog 2023-11-15 12:24:11 +01:00
multimesh_editor_plugin.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
navigation_link_2d_editor_plugin.cpp Add EditorStringNames singleton 2023-09-03 19:58:18 +02:00
navigation_link_2d_editor_plugin.h Rename Navigation uses of 'location' to 'position' 2023-01-26 18:19:03 +01:00
navigation_obstacle_2d_editor_plugin.cpp Rework Navigation Avoidance 2023-05-10 05:01:58 +02:00
navigation_obstacle_2d_editor_plugin.h Rework Navigation Avoidance 2023-05-10 05:01:58 +02:00
navigation_obstacle_3d_editor_plugin.cpp Fix NavigationObstacle3DEditor parenting error 2023-10-27 15:43:28 +02:00
navigation_obstacle_3d_editor_plugin.h Rework Navigation Avoidance 2023-05-10 05:01:58 +02:00
navigation_polygon_editor_plugin.cpp Add 2D navigation mesh baking 2023-09-25 19:48:14 +02:00
navigation_polygon_editor_plugin.h Add 2D navigation mesh baking 2023-09-25 19:48:14 +02:00
node_3d_editor_gizmos.cpp [Editor] Add missing virtual bind to EditorNode3DGizmo(Plugin) 2024-01-06 17:27:50 +01:00
node_3d_editor_gizmos.h Improve editing of box collision shapes 2023-08-03 14:09:10 +02:00
node_3d_editor_plugin.cpp Update deferred calls to use Callables 2024-01-09 16:11:47 +01:00
node_3d_editor_plugin.h Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
occluder_instance_3d_editor_plugin.cpp Replace flat buttons with flat-styled buttons with a visible pressed state 2023-09-19 22:36:29 +02:00
occluder_instance_3d_editor_plugin.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
packed_scene_editor_plugin.cpp Add EditorStringNames singleton 2023-09-03 19:58:18 +02:00
packed_scene_editor_plugin.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
packed_scene_translation_parser_plugin.cpp Parse the names of children of TabContainers on POT generation 2024-01-06 10:52:44 -03:00
packed_scene_translation_parser_plugin.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
particle_process_material_editor_plugin.cpp Improve editing of min/max particle properties 2023-12-20 06:31:08 +01:00
particle_process_material_editor_plugin.h Improve editing of min/max particle properties 2023-12-20 06:31:08 +01:00
path_2d_editor_plugin.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
path_2d_editor_plugin.h Improve Path2D editing 2024-01-05 22:34:31 +01:00
path_3d_editor_plugin.cpp Merge pull request #83741 from BlueCube3310/path-3d-plugin-optimize 2023-12-08 16:58:08 +01:00
path_3d_editor_plugin.h Improve Path3D gizmo usability 2023-10-03 09:43:24 +08:00
physical_bone_3d_editor_plugin.cpp Replace flat buttons with flat-styled buttons with a visible pressed state 2023-09-19 22:36:29 +02:00
physical_bone_3d_editor_plugin.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
polygon_2d_editor_plugin.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
polygon_2d_editor_plugin.h Improve UV editor zoom behavior 2024-01-10 13:27:20 +02:00
polygon_3d_editor_plugin.cpp Make 3D editor gizmos and debug shapes ignore fog 2023-09-27 00:54:57 +02:00
polygon_3d_editor_plugin.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
resource_preloader_editor_plugin.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
resource_preloader_editor_plugin.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
root_motion_editor_plugin.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
root_motion_editor_plugin.h Improve includes of EditorNode (and everything else) 2023-04-07 18:59:49 +02:00
script_editor_plugin.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
script_editor_plugin.h Use mingw-std-threads in MinGW builds 2023-11-18 11:56:05 +01:00
script_text_editor.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
script_text_editor.h Add Duplicate Lines shortcut to CodeTextEditor 2023-09-25 23:41:31 +02:00
SCsub Split Node3DGizmos into dedicated files 2023-04-20 20:12:47 +02:00
shader_editor_plugin.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
shader_editor_plugin.h Handle built-in shaders when closing scene 2024-01-02 16:00:11 +01:00
shader_file_editor_plugin.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
shader_file_editor_plugin.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
skeleton_2d_editor_plugin.cpp Fix accessing editor theme items throughout the UI 2023-09-15 14:51:01 +02:00
skeleton_2d_editor_plugin.h Improve includes of EditorNode (and everything else) 2023-04-07 18:59:49 +02:00
skeleton_3d_editor_plugin.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
skeleton_3d_editor_plugin.h Update deferred calls to use Callables 2024-01-09 16:11:47 +01:00
skeleton_ik_3d_editor_plugin.cpp Make SkeletonIk3D node usable 2023-09-28 07:38:50 +03:00
skeleton_ik_3d_editor_plugin.h Improve includes of EditorNode (and everything else) 2023-04-07 18:59:49 +02:00
sprite_2d_editor_plugin.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
sprite_2d_editor_plugin.h Add zoom controls to Sprite2DPlugin 2023-11-07 20:30:33 +02:00
sprite_frames_editor_plugin.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
sprite_frames_editor_plugin.h Defer updating the animations Tree in SpriteFramesEditor to avoid crashes 2023-10-18 06:46:03 +08:00
style_box_editor_plugin.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
style_box_editor_plugin.h Improve StyleBox preview a little 2023-05-24 15:40:56 +02:00
sub_viewport_preview_editor_plugin.cpp One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
sub_viewport_preview_editor_plugin.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
text_editor.cpp Update deferred calls to use Callables 2024-01-09 16:11:47 +01:00
text_editor.h Add Duplicate Lines shortcut to CodeTextEditor 2023-09-25 23:41:31 +02:00
text_shader_editor.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
text_shader_editor.h Add Duplicate Lines shortcut to CodeTextEditor 2023-09-25 23:41:31 +02:00
texture_3d_editor_plugin.cpp Add bulk change guards to successive theme overrides in Editor and GUI 2023-10-19 18:14:14 +02:00
texture_3d_editor_plugin.h Add bulk change guards to successive theme overrides in Editor and GUI 2023-10-19 18:14:14 +02:00
texture_editor_plugin.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
texture_editor_plugin.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
texture_layered_editor_plugin.cpp Add bulk change guards to successive theme overrides in Editor and GUI 2023-10-19 18:14:14 +02:00
texture_layered_editor_plugin.h Add bulk change guards to successive theme overrides in Editor and GUI 2023-10-19 18:14:14 +02:00
texture_region_editor_plugin.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
texture_region_editor_plugin.h Fix multiple usability issues in the texture region editor 2023-08-27 14:25:49 +02:00
theme_editor_plugin.cpp Split theme generation logic into several subroutines 2024-01-16 11:57:45 +01:00
theme_editor_plugin.h Add const lvalue ref to container parameters 2024-01-05 14:49:57 -03:00
theme_editor_preview.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
theme_editor_preview.h Add theme contexts to various parts of the editor 2023-09-06 19:40:43 +02:00
version_control_editor_plugin.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
version_control_editor_plugin.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00
visual_shader_editor_plugin.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
visual_shader_editor_plugin.h Remove unnecessary assignments 2023-12-13 11:06:26 -05:00
voxel_gi_editor_plugin.cpp Replace flat buttons with flat-styled buttons with a visible pressed state 2023-09-19 22:36:29 +02:00
voxel_gi_editor_plugin.h One Copyright Update to rule them all 2023-01-05 13:25:55 +01:00