aboutsummaryrefslogtreecommitdiff
path: root/src/win/graph/direct/brush.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/win/graph/direct/brush.cpp')
-rw-r--r--src/win/graph/direct/brush.cpp19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/win/graph/direct/brush.cpp b/src/win/graph/direct/brush.cpp
new file mode 100644
index 00000000..7ddd14b4
--- /dev/null
+++ b/src/win/graph/direct/brush.cpp
@@ -0,0 +1,19 @@
+#include "cru/win/graph/direct/brush.hpp"
+
+#include "cru/win/graph/direct/convert_util.hpp"
+#include "cru/win/graph/direct/direct_factory.hpp"
+#include "cru/win/graph/direct/exception.hpp"
+
+#include <cassert>
+
+namespace cru::platform::graph::win::direct {
+D2DSolidColorBrush::D2DSolidColorBrush(IDirectFactory* factory) {
+ assert(factory);
+ ThrowIfFailed(factory->GetD2D1DeviceContext()->CreateSolidColorBrush(
+ Convert(color_), &brush_));
+}
+
+void D2DSolidColorBrush::OnSetColor(const Color& color) {
+ brush_->SetColor(Convert(color));
+}
+} // namespace cru::platform::graph::win::direct