From 62223e98510f2c0d735cb7084134c5213c1cb804 Mon Sep 17 00:00:00 2001 From: Jacques Lucke Date: Fri, 6 Nov 2020 14:05:09 +0100 Subject: Refactor: move color settings .blend I/O to blenkernel Ref T76372. --- source/blender/blenkernel/BKE_colortools.h | 5 +++++ source/blender/blenkernel/intern/colortools.c | 18 ++++++++++++++++++ source/blender/blenloader/intern/readfile.c | 12 +----------- source/blender/blenloader/intern/writefile.c | 9 +-------- 4 files changed, 25 insertions(+), 19 deletions(-) (limited to 'source') diff --git a/source/blender/blenkernel/BKE_colortools.h b/source/blender/blenkernel/BKE_colortools.h index e56a1ac9ce3..3631feb5071 100644 --- a/source/blender/blenkernel/BKE_colortools.h +++ b/source/blender/blenkernel/BKE_colortools.h @@ -139,6 +139,11 @@ void BKE_color_managed_view_settings_copy(struct ColorManagedViewSettings *new_s const struct ColorManagedViewSettings *settings); void BKE_color_managed_view_settings_free(struct ColorManagedViewSettings *settings); +void BKE_color_managed_view_settings_blend_write(struct BlendWriter *writer, + struct ColorManagedViewSettings *settings); +void BKE_color_managed_view_settings_blend_read_data(struct BlendDataReader *reader, + struct ColorManagedViewSettings *settings); + void BKE_color_managed_colorspace_settings_init( struct ColorManagedColorspaceSettings *colorspace_settings); void BKE_color_managed_colorspace_settings_copy( diff --git a/source/blender/blenkernel/intern/colortools.c b/source/blender/blenkernel/intern/colortools.c index 8723cd13e35..3eb9fb6161d 100644 --- a/source/blender/blenkernel/intern/colortools.c +++ b/source/blender/blenkernel/intern/colortools.c @@ -1819,6 +1819,24 @@ void BKE_color_managed_view_settings_free(ColorManagedViewSettings *settings) } } +void BKE_color_managed_view_settings_blend_write(BlendWriter *writer, + ColorManagedViewSettings *settings) +{ + if (settings->curve_mapping) { + BKE_curvemapping_blend_write(writer, settings->curve_mapping); + } +} + +void BKE_color_managed_view_settings_blend_read_data(BlendDataReader *reader, + ColorManagedViewSettings *settings) +{ + BLO_read_data_address(reader, &settings->curve_mapping); + + if (settings->curve_mapping) { + BKE_curvemapping_blend_read(reader, settings->curve_mapping); + } +} + void BKE_color_managed_colorspace_settings_init( ColorManagedColorspaceSettings *colorspace_settings) { diff --git a/source/blender/blenloader/intern/readfile.c b/source/blender/blenloader/intern/readfile.c index fcf839f8751..187ecd74739 100644 --- a/source/blender/blenloader/intern/readfile.c +++ b/source/blender/blenloader/intern/readfile.c @@ -3842,16 +3842,6 @@ static void direct_link_object(BlendDataReader *reader, Object *ob) BKE_previewimg_blend_read(reader, ob->preview); } -static void direct_link_view_settings(BlendDataReader *reader, - ColorManagedViewSettings *view_settings) -{ - BLO_read_data_address(reader, &view_settings->curve_mapping); - - if (view_settings->curve_mapping) { - BKE_curvemapping_blend_read(reader, view_settings->curve_mapping); - } -} - /** \} */ /* -------------------------------------------------------------------- */ @@ -4402,7 +4392,7 @@ static void direct_link_scene(BlendDataReader *reader, Scene *sce) BLO_read_list(reader, &(srl->freestyleConfig.linesets)); } - direct_link_view_settings(reader, &sce->view_settings); + BKE_color_managed_view_settings_blend_read_data(reader, &sce->view_settings); BLO_read_data_address(reader, &sce->rigidbody_world); RigidBodyWorld *rbw = sce->rigidbody_world; diff --git a/source/blender/blenloader/intern/writefile.c b/source/blender/blenloader/intern/writefile.c index f5b588883b3..e9cb115a2c5 100644 --- a/source/blender/blenloader/intern/writefile.c +++ b/source/blender/blenloader/intern/writefile.c @@ -1317,13 +1317,6 @@ static void write_sequence_modifiers(BlendWriter *writer, ListBase *modbase) } } -static void write_view_settings(BlendWriter *writer, ColorManagedViewSettings *view_settings) -{ - if (view_settings->curve_mapping) { - BKE_curvemapping_blend_write(writer, view_settings->curve_mapping); - } -} - static void write_scene(BlendWriter *writer, Scene *sce, const void *id_address) { if (BLO_write_is_undo(writer)) { @@ -1521,7 +1514,7 @@ static void write_scene(BlendWriter *writer, Scene *sce, const void *id_address) ntreeBlendWrite(writer, sce->nodetree); } - write_view_settings(writer, &sce->view_settings); + BKE_color_managed_view_settings_blend_write(writer, &sce->view_settings); /* writing RigidBodyWorld data to the blend file */ if (sce->rigidbody_world) { -- cgit v1.2.3