diff options
author | crupest <crupest@outlook.com> | 2018-09-10 23:58:34 +0800 |
---|---|---|
committer | crupest <crupest@outlook.com> | 2018-09-10 23:58:34 +0800 |
commit | 9250f4d919bc800fe66a50a0874183458e6ebbbe (patch) | |
tree | 1d25285801a6d92cfa8bde6dd0d13433e05d4c04 /CruUI/graph | |
parent | aa8ba64f4f580552ba14325dd3e04f38a3c9a1de (diff) | |
download | cru-9250f4d919bc800fe66a50a0874183458e6ebbbe.tar.gz cru-9250f4d919bc800fe66a50a0874183458e6ebbbe.tar.bz2 cru-9250f4d919bc800fe66a50a0874183458e6ebbbe.zip |
...
Diffstat (limited to 'CruUI/graph')
-rw-r--r-- | CruUI/graph/graph.cpp | 32 | ||||
-rw-r--r-- | CruUI/graph/graph.h | 35 |
2 files changed, 31 insertions, 36 deletions
diff --git a/CruUI/graph/graph.cpp b/CruUI/graph/graph.cpp index 4f65a86c..00d5137d 100644 --- a/CruUI/graph/graph.cpp +++ b/CruUI/graph/graph.cpp @@ -200,7 +200,7 @@ namespace cru { return std::make_shared<WindowRenderTarget>(this, hwnd); } - Dpi GraphManager::GetDpi() + Dpi GraphManager::GetDpi() const { Dpi dpi; d2d1_factory_->GetDesktopDpi(&dpi.x, &dpi.y); @@ -213,35 +213,5 @@ namespace cru { d2d1_factory_->ReloadSystemMetrics() ); } - - inline int DipToPixelInternal(float dip, float dpi) - { - return static_cast<int>(dip * dpi / 96.0f); - } - - int DipToPixelX(float dipX) - { - return DipToPixelInternal(dipX, Application::GetInstance()->GetGraphManager()->GetDpi().x); - } - - int DipToPixelY(float dipY) - { - return DipToPixelInternal(dipY, Application::GetInstance()->GetGraphManager()->GetDpi().y); - } - - inline float DipToPixelInternal(int pixel, float dpi) - { - return static_cast<float>(pixel) * 96.0f / dpi; - } - - float PixelToDipX(int pixelX) - { - return DipToPixelInternal(pixelX, Application::GetInstance()->GetGraphManager()->GetDpi().x); - } - - float PixelToDipY(int pixelY) - { - return DipToPixelInternal(pixelY, Application::GetInstance()->GetGraphManager()->GetDpi().y); - } } } diff --git a/CruUI/graph/graph.h b/CruUI/graph/graph.h index bb1de716..4f0898d6 100644 --- a/CruUI/graph/graph.h +++ b/CruUI/graph/graph.h @@ -107,7 +107,7 @@ namespace cru std::shared_ptr<WindowRenderTarget> CreateWindowRenderTarget(HWND hwnd); //Get the desktop dpi. - Dpi GetDpi(); + Dpi GetDpi() const; //Reload system metrics including desktop dpi. void ReloadSystemMetrics(); @@ -129,10 +129,35 @@ namespace cru Microsoft::WRL::ComPtr<IDWriteFontCollection> dwrite_system_font_collection_; }; - int DipToPixelX(float dip_x); - int DipToPixelY(float dip_y); - float PixelToDipX(int pixel_x); - float PixelToDipY(int pixel_y); + inline int DipToPixelInternal(const float dip, const float dpi) + { + return static_cast<int>(dip * dpi / 96.0f); + } + + inline int DipToPixelX(const float dip_x) + { + return DipToPixelInternal(dip_x, Application::GetInstance()->GetGraphManager()->GetDpi().x); + } + + inline int DipToPixelY(const float dip_y) + { + return DipToPixelInternal(dip_y, Application::GetInstance()->GetGraphManager()->GetDpi().y); + } + + inline float DipToPixelInternal(const int pixel, const float dpi) + { + return static_cast<float>(pixel) * 96.0f / dpi; + } + + inline float PixelToDipX(const int pixel_x) + { + return DipToPixelInternal(pixel_x, Application::GetInstance()->GetGraphManager()->GetDpi().x); + } + + inline float PixelToDipY(const int pixel_y) + { + return DipToPixelInternal(pixel_y, Application::GetInstance()->GetGraphManager()->GetDpi().y); + } Microsoft::WRL::ComPtr<ID2D1DeviceContext> WindowRenderTarget::GetD2DDeviceContext() const { |