diff options
Diffstat (limited to 'src/win/native')
-rw-r--r-- | src/win/native/win_application.cpp | 9 | ||||
-rw-r--r-- | src/win/native/win_native_window.cpp | 6 | ||||
-rw-r--r-- | src/win/native/window_painter.cpp | 12 | ||||
-rw-r--r-- | src/win/native/window_painter.hpp | 4 | ||||
-rw-r--r-- | src/win/native/window_render_target.cpp | 21 |
5 files changed, 26 insertions, 26 deletions
diff --git a/src/win/native/win_application.cpp b/src/win/native/win_application.cpp index 6c39453f..00a16ff1 100644 --- a/src/win/native/win_application.cpp +++ b/src/win/native/win_application.cpp @@ -1,7 +1,7 @@ #include "cru/win/native/win_application.hpp" #include "cru/win/exception.hpp" -#include "cru/win/graph/graph_manager.hpp" +#include "cru/win/graph/win_graph_factory.hpp" #include "cru/win/native/god_window.hpp" #include "cru/win/native/win_native_window.hpp" #include "god_window_message.hpp" @@ -38,13 +38,14 @@ WinApplication::WinApplication(HINSTANCE h_instance) : h_instance_(h_instance) { if (!::IsWindows8OrGreater()) throw std::runtime_error("Must run on Windows 8 or later."); + graph::WinGraphFactory::CreateInstance(); + god_window_ = std::make_shared<GodWindow>(this); timer_manager_ = std::make_shared<TimerManager>(god_window_.get()); window_manager_ = std::make_shared<WindowManager>(this); } -WinApplication::~WinApplication() { - instance = nullptr; } +WinApplication::~WinApplication() { instance = nullptr; } int WinApplication::Run() { MSG msg; @@ -55,7 +56,7 @@ int WinApplication::Run() { for (const auto& handler : quit_handlers_) handler(); - delete graph::GraphManager::GetInstance(); + delete graph::WinGraphFactory::GetInstance(); delete this; return static_cast<int>(msg.wParam); diff --git a/src/win/native/win_native_window.cpp b/src/win/native/win_native_window.cpp index 1d3b15ba..a2f23a2c 100644 --- a/src/win/native/win_native_window.cpp +++ b/src/win/native/win_native_window.cpp @@ -1,7 +1,7 @@ #include "cru/win/native/win_native_window.hpp" #include "cru/win/exception.hpp" -#include "cru/win/graph/graph_manager.hpp" +#include "cru/win/graph/win_graph_factory.hpp" #include "cru/win/native/win_application.hpp" #include "cru/win/native/window_class.hpp" #include "cru/win/native/window_render_target.hpp" @@ -37,7 +37,7 @@ WinNativeWindow::WinNativeWindow(WinApplication* application, window_manager->RegisterWindow(hwnd_, this); window_render_target_.reset( - new WindowRenderTarget(graph::GraphManager::GetInstance(), hwnd_)); + new WindowRenderTarget(graph::WinGraphFactory::GetInstance(), hwnd_)); } WinNativeWindow::~WinNativeWindow() { @@ -117,7 +117,7 @@ void WinNativeWindow::SetWindowRect(const ui::Rect& rect) { } } -platform::graph::Painter* WinNativeWindow::BeginPaint() { +platform::graph::IPainter* WinNativeWindow::BeginPaint() { return new WindowPainter(this); } diff --git a/src/win/native/window_painter.cpp b/src/win/native/window_painter.cpp index 4e98a7fd..463be128 100644 --- a/src/win/native/window_painter.cpp +++ b/src/win/native/window_painter.cpp @@ -1,29 +1,29 @@ #include "window_painter.hpp" #include "cru/win/exception.hpp" -#include "cru/win/graph/graph_manager.hpp" +#include "cru/win/graph/win_native_factory.hpp" #include "cru/win/native/window_render_target.hpp" #include <cassert> namespace cru::win::native { WindowPainter::WindowPainter(WinNativeWindow* window) - : D2DPainter(window->GetWindowRenderTarget() - ->GetGraphManager() + : WinPainter(window->GetWindowRenderTarget() + ->GetWinNativeFactory() ->GetD2D1DeviceContext()), window_(window) { window->GetWindowRenderTarget()->SetAsTarget(); window->GetWindowRenderTarget() - ->GetGraphManager() + ->GetWinNativeFactory() ->GetD2D1DeviceContext() ->BeginDraw(); } -WindowPainter::~WindowPainter() { EndDraw(); } +WindowPainter::~WindowPainter() { End(); } void WindowPainter::DoEndDraw() { ThrowIfFailed(window_->GetWindowRenderTarget() - ->GetGraphManager() + ->GetWinNativeFactory() ->GetD2D1DeviceContext() ->EndDraw()); window_->GetWindowRenderTarget()->Present(); diff --git a/src/win/native/window_painter.hpp b/src/win/native/window_painter.hpp index 78c0717c..78731ef3 100644 --- a/src/win/native/window_painter.hpp +++ b/src/win/native/window_painter.hpp @@ -1,9 +1,9 @@ #pragma once -#include "cru/win/graph/d2d_painter.hpp" +#include "cru/win/graph/win_painter.hpp" #include "cru/win/native/win_native_window.hpp" namespace cru::win::native { -class WindowPainter : public graph::D2DPainter { +class WindowPainter : public graph::WinPainter { public: explicit WindowPainter(WinNativeWindow* window); WindowPainter(const WindowPainter& other) = delete; diff --git a/src/win/native/window_render_target.cpp b/src/win/native/window_render_target.cpp index c49a920e..606b51f8 100644 --- a/src/win/native/window_render_target.cpp +++ b/src/win/native/window_render_target.cpp @@ -1,18 +1,18 @@ #include "cru/win/native/window_render_target.hpp" #include "cru/win/exception.hpp" -#include "cru/win/graph/graph_manager.hpp" +#include "cru/win/graph/win_native_factory.hpp" #include "dpi_util.hpp" #include <cassert> namespace cru::win::native { -WindowRenderTarget::WindowRenderTarget(graph::GraphManager* graph_manager, +WindowRenderTarget::WindowRenderTarget(graph::IWinNativeFactory* factory, HWND hwnd) { - this->graph_manager_ = graph_manager; + this->factory_ = factory; - const auto d3d11_device = graph_manager->GetD3D11Device(); - const auto dxgi_factory = graph_manager->GetDxgiFactory(); + const auto d3d11_device = factory->GetD3D11Device(); + const auto dxgi_factory = factory->GetDxgiFactory(); // Allocate a descriptor. DXGI_SWAP_CHAIN_DESC1 swap_chain_desc = {0}; @@ -39,8 +39,8 @@ WindowRenderTarget::WindowRenderTarget(graph::GraphManager* graph_manager, } void WindowRenderTarget::ResizeBuffer(const int width, const int height) { - const auto graph_manager = graph_manager_; - const auto d2d1_device_context = graph_manager->GetD2D1DeviceContext(); + const auto factory = factory_; + const auto d2d1_device_context = factory->GetD2D1DeviceContext(); Microsoft::WRL::ComPtr<ID2D1Image> old_target; d2d1_device_context->GetTarget(&old_target); @@ -59,7 +59,7 @@ void WindowRenderTarget::ResizeBuffer(const int width, const int height) { } void WindowRenderTarget::SetAsTarget() { - graph_manager_->GetD2D1DeviceContext()->SetTarget(target_bitmap_.Get()); + factory_->GetD2D1DeviceContext()->SetTarget(target_bitmap_.Get()); } void WindowRenderTarget::Present() { @@ -83,8 +83,7 @@ void WindowRenderTarget::CreateTargetBitmap() { // Get a D2D surface from the DXGI back buffer to use as the D2D render // target. - ThrowIfFailed( - graph_manager_->GetD2D1DeviceContext()->CreateBitmapFromDxgiSurface( - dxgi_back_buffer.Get(), &bitmap_properties, &target_bitmap_)); + ThrowIfFailed(factory_->GetD2D1DeviceContext()->CreateBitmapFromDxgiSurface( + dxgi_back_buffer.Get(), &bitmap_properties, &target_bitmap_)); } } // namespace cru::win::native |