diff --git a/libs/ui/source/style.cpp b/libs/ui/source/style.cpp index 7322507d..b36f7ba6 100644 --- a/libs/ui/source/style.cpp +++ b/libs/ui/source/style.cpp @@ -9,6 +9,12 @@ namespace psemek::ui if (!dst) dst = src; } + template + void merge(std::shared_ptr & dst, std::shared_ptr const & src) + { + if (!dst) dst = src; + } + void merge(style & dst, style const & src) { merge(dst.bg_color, src.bg_color); @@ -24,6 +30,7 @@ namespace psemek::ui merge(dst.text_color, src.text_color); merge(dst.text_scale, src.text_scale); merge(dst.text_shadow_offset, src.text_shadow_offset); + merge(dst.font, src.font); } style default_style()