aboutsummaryrefslogtreecommitdiff
path: root/include/cru/ui/style
diff options
context:
space:
mode:
Diffstat (limited to 'include/cru/ui/style')
-rw-r--r--include/cru/ui/style/StyleRule.hpp7
-rw-r--r--include/cru/ui/style/Styler.hpp5
2 files changed, 12 insertions, 0 deletions
diff --git a/include/cru/ui/style/StyleRule.hpp b/include/cru/ui/style/StyleRule.hpp
index e6035784..743aa759 100644
--- a/include/cru/ui/style/StyleRule.hpp
+++ b/include/cru/ui/style/StyleRule.hpp
@@ -10,6 +10,13 @@
namespace cru::ui::style {
class StyleRule : public Object {
public:
+ static ClonablePtr<StyleRule> Create(ClonablePtr<Condition> condition,
+ ClonablePtr<Styler> styler,
+ String name = {}) {
+ return ClonablePtr<StyleRule>(new StyleRule(
+ std::move(condition), std::move(styler), std::move(name)));
+ }
+
StyleRule(ClonablePtr<Condition> condition, ClonablePtr<Styler> styler,
String name = {});
diff --git a/include/cru/ui/style/Styler.hpp b/include/cru/ui/style/Styler.hpp
index 721a3bfd..3bf0b027 100644
--- a/include/cru/ui/style/Styler.hpp
+++ b/include/cru/ui/style/Styler.hpp
@@ -25,6 +25,11 @@ class CompoundStyler : public Styler {
new CompoundStyler(std::vector<ClonablePtr<Styler>>{std::move(s)...}));
}
+ static ClonablePtr<CompoundStyler> Create(
+ std::vector<ClonablePtr<Styler>> stylers) {
+ return ClonablePtr<CompoundStyler>(new CompoundStyler(std::move(stylers)));
+ }
+
explicit CompoundStyler(std::vector<ClonablePtr<Styler>> stylers)
: stylers_(std::move(stylers)) {}