diff options
Diffstat (limited to 'src/win/native/window_painter.cpp')
-rw-r--r-- | src/win/native/window_painter.cpp | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/src/win/native/window_painter.cpp b/src/win/native/window_painter.cpp index 46364cdd..4e98a7fd 100644 --- a/src/win/native/window_painter.cpp +++ b/src/win/native/window_painter.cpp @@ -1,5 +1,6 @@ #include "window_painter.hpp" +#include "cru/win/exception.hpp" #include "cru/win/graph/graph_manager.hpp" #include "cru/win/native/window_render_target.hpp" @@ -7,7 +8,7 @@ namespace cru::win::native { WindowPainter::WindowPainter(WinNativeWindow* window) - : WinPainter(window->GetWindowRenderTarget() + : D2DPainter(window->GetWindowRenderTarget() ->GetGraphManager() ->GetD2D1DeviceContext()), window_(window) { @@ -18,7 +19,13 @@ WindowPainter::WindowPainter(WinNativeWindow* window) ->BeginDraw(); } +WindowPainter::~WindowPainter() { EndDraw(); } + void WindowPainter::DoEndDraw() { - WinPainter::DoEndDraw(); - window_->GetWindowRenderTarget()->Present(); } + ThrowIfFailed(window_->GetWindowRenderTarget() + ->GetGraphManager() + ->GetD2D1DeviceContext() + ->EndDraw()); + window_->GetWindowRenderTarget()->Present(); +} } // namespace cru::win::native |