aboutsummaryrefslogtreecommitdiff
path: root/src/platform_win/win_painter.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/platform_win/win_painter.cpp')
-rw-r--r--src/platform_win/win_painter.cpp104
1 files changed, 0 insertions, 104 deletions
diff --git a/src/platform_win/win_painter.cpp b/src/platform_win/win_painter.cpp
deleted file mode 100644
index 7c99146a..00000000
--- a/src/platform_win/win_painter.cpp
+++ /dev/null
@@ -1,104 +0,0 @@
-#include "cru/platform/win/win_painter.hpp"
-
-#include "cru/platform/win/d2d_util.hpp"
-#include "cru/platform/win/exception.hpp"
-#include "cru/platform/win/graph_manager.hpp"
-#include "cru/platform/win/win_brush.hpp"
-#include "cru/platform/win/win_geometry.hpp"
-#include "cru/platform/win/win_native_window.hpp"
-#include "cru/platform/win/win_text_layout.hpp"
-#include "cru/platform/win/window_render_target.hpp"
-
-#include <cassert>
-
-namespace cru::platform::win {
-WinPainter::WinPainter(WinNativeWindow* window) {
- assert(window);
- window_ = window;
- const auto window_render_target = window_->GetWindowRenderTarget();
- render_target_ =
- window_render_target->GetGraphManager()->GetD2D1DeviceContext();
- window_render_target->SetAsTarget();
- render_target_->BeginDraw();
-}
-
-WinPainter::~WinPainter() {
- if (!IsDisposed()) {
- ThrowIfFailed(render_target_->EndDraw());
- }
-}
-
-Matrix WinPainter::GetTransform() {
- assert(!IsDisposed());
- D2D1_MATRIX_3X2_F m;
- render_target_->GetTransform(&m);
- return util::Convert(m);
-}
-
-void WinPainter::SetTransform(const Matrix& matrix) {
- assert(!IsDisposed());
- render_target_->SetTransform(util::Convert(matrix));
-}
-
-void WinPainter::Clear(const ui::Color& color) {
- assert(!IsDisposed());
- render_target_->Clear(util::Convert(color));
-}
-
-void WinPainter::StrokeRectangle(const ui::Rect& rectangle, Brush* brush,
- float width) {
- assert(!IsDisposed());
- const auto b = dynamic_cast<WinBrush*>(brush);
- assert(b);
- render_target_->DrawRectangle(util::Convert(rectangle), b->GetD2DBrush(),
- width);
-}
-
-void WinPainter::FillRectangle(const ui::Rect& rectangle, Brush* brush) {
- assert(!IsDisposed());
- const auto b = dynamic_cast<WinBrush*>(brush);
- assert(b);
- render_target_->FillRectangle(util::Convert(rectangle), b->GetD2DBrush());
-}
-
-void WinPainter::StrokeGeometry(Geometry* geometry, Brush* brush, float width) {
- assert(!IsDisposed());
- const auto g = dynamic_cast<WinGeometry*>(geometry);
- assert(g);
- const auto b = dynamic_cast<WinBrush*>(brush);
- assert(b);
-
- render_target_->DrawGeometry(g->GetNative(), b->GetD2DBrush(), width);
-}
-
-void WinPainter::FillGeometry(Geometry* geometry, Brush* brush) {
- assert(!IsDisposed());
- const auto g = dynamic_cast<WinGeometry*>(geometry);
- assert(g);
- const auto b = dynamic_cast<WinBrush*>(brush);
- assert(b);
-
- render_target_->FillGeometry(g->GetNative(), b->GetD2DBrush());
-}
-
-void WinPainter::DrawText(const ui::Point& offset, TextLayout* text_layout,
- Brush* brush) {
- assert(!IsDisposed());
- const auto t = dynamic_cast<WinTextLayout*>(text_layout);
- assert(t);
- const auto b = dynamic_cast<WinBrush*>(brush);
- assert(b);
-
- render_target_->DrawTextLayout(util::Convert(offset),
- t->GetDWriteTextLayout(), b->GetD2DBrush());
-}
-
-void WinPainter::EndDraw() {
- if (!IsDisposed()) {
- ThrowIfFailed(render_target_->EndDraw());
- render_target_ = nullptr;
- window_->GetWindowRenderTarget()->Present();
- is_disposed = true;
- }
-}
-} // namespace cru::platform::win