aboutsummaryrefslogtreecommitdiff
path: root/include/cru
diff options
context:
space:
mode:
authorcrupest <crupest@outlook.com>2020-12-24 23:51:15 +0800
committercrupest <crupest@outlook.com>2020-12-24 23:51:15 +0800
commitc80808cf38b863f3bd84400eb7cf948d461238e0 (patch)
treee2f16c02a8bd085d040bbb1392c1021c5a1fc8bc /include/cru
parent253fcf881d04d0c86236e4cf0067f08eea39f051 (diff)
downloadcru-c80808cf38b863f3bd84400eb7cf948d461238e0.tar.gz
cru-c80808cf38b863f3bd84400eb7cf948d461238e0.tar.bz2
cru-c80808cf38b863f3bd84400eb7cf948d461238e0.zip
...
Diffstat (limited to 'include/cru')
-rw-r--r--include/cru/ui/style/ApplyBorderStyleInfo.hpp22
1 files changed, 19 insertions, 3 deletions
diff --git a/include/cru/ui/style/ApplyBorderStyleInfo.hpp b/include/cru/ui/style/ApplyBorderStyleInfo.hpp
index e9c4ca44..5058b51f 100644
--- a/include/cru/ui/style/ApplyBorderStyleInfo.hpp
+++ b/include/cru/ui/style/ApplyBorderStyleInfo.hpp
@@ -1,12 +1,28 @@
#pragma once
+#include <optional>
#include "../Base.hpp"
namespace cru::ui::style {
struct ApplyBorderStyleInfo {
- std::shared_ptr<platform::graphics::IBrush> border_brush;
+ explicit ApplyBorderStyleInfo(
+ std::optional<std::shared_ptr<platform::graphics::IBrush>> border_brush =
+ std::nullopt,
+ std::optional<Thickness> border_thickness = std::nullopt,
+ std::optional<CornerRadius> border_radius = std::nullopt,
+ std::optional<std::shared_ptr<platform::graphics::IBrush>>
+ foreground_brush = std::nullopt,
+ std::optional<std::shared_ptr<platform::graphics::IBrush>>
+ background_brush = std::nullopt)
+ : border_brush(std::move(border_brush)),
+ border_thickness(std::move(border_thickness)),
+ border_radius(std::move(border_radius)),
+ foreground_brush(std::move(foreground_brush)),
+ background_brush(std::move(background_brush)) {}
+
+ std::optional<std::shared_ptr<platform::graphics::IBrush>> border_brush;
std::optional<Thickness> border_thickness;
std::optional<CornerRadius> border_radius;
- std::shared_ptr<platform::graphics::IBrush> foreground_brush;
- std::shared_ptr<platform::graphics::IBrush> background_brush;
+ std::optional<std::shared_ptr<platform::graphics::IBrush>> foreground_brush;
+ std::optional<std::shared_ptr<platform::graphics::IBrush>> background_brush;
};
} // namespace cru::ui::style