diff --git a/driveruipanels.cpp b/driveruipanels.cpp index 5b1ca4fe..5b4d2336 100644 --- a/driveruipanels.cpp +++ b/driveruipanels.cpp @@ -211,10 +211,10 @@ scenario_panel::render() { | ( size.x > 0 ? ImGuiWindowFlags_NoResize : 0 ); if( size.x > 0 ) { - ImGui::SetNextWindowSize( ImVec2( size.x, size.y ) ); + ImGui::SetNextWindowSize( ImVec2S( size.x, size.y ) ); } if( size_min.x > 0 ) { - ImGui::SetNextWindowSizeConstraints( ImVec2( size_min.x, size_min.y ), ImVec2( size_max.x, size_max.y ) ); + ImGui::SetNextWindowSizeConstraints( ImVec2S( size_min.x, size_min.y ), ImVec2S( size_max.x, size_max.y ) ); } auto const panelname { ( title.empty() ? @@ -437,10 +437,10 @@ timetable_panel::render() { | ( size.x > 0 ? ImGuiWindowFlags_NoResize : 0 ); if( size.x > 0 ) { - ImGui::SetNextWindowSize( ImVec2( size.x, size.y ) ); + ImGui::SetNextWindowSize( ImVec2S( size.x, size.y ) ); } if( size_min.x > 0 ) { - ImGui::SetNextWindowSizeConstraints( ImVec2( size_min.x, size_min.y ), ImVec2( size_max.x, size_max.y ) ); + ImGui::SetNextWindowSizeConstraints( ImVec2S( size_min.x, size_min.y ), ImVec2S( size_max.x, size_max.y ) ); } auto const panelname { ( title.empty() ? @@ -528,10 +528,10 @@ debug_panel::render() { | ( size.x > 0 ? ImGuiWindowFlags_NoResize : 0 ); if( size.x > 0 ) { - ImGui::SetNextWindowSize( ImVec2( size.x, size.y ) ); + ImGui::SetNextWindowSize( ImVec2S( size.x, size.y ) ); } if( size_min.x > 0 ) { - ImGui::SetNextWindowSizeConstraints( ImVec2( size_min.x, size_min.y ), ImVec2( size_max.x, size_max.y ) ); + ImGui::SetNextWindowSizeConstraints( ImVec2S( size_min.x, size_min.y ), ImVec2S( size_max.x, size_max.y ) ); } auto const panelname { ( title.empty() ? @@ -1342,10 +1342,10 @@ transcripts_panel::render() { | ( size.x > 0 ? ImGuiWindowFlags_NoResize : 0 ); if( size.x > 0 ) { - ImGui::SetNextWindowSize( ImVec2( size.x, size.y ) ); + ImGui::SetNextWindowSize( ImVec2S( size.x, size.y ) ); } if( size_min.x > 0 ) { - ImGui::SetNextWindowSizeConstraints( ImVec2( size_min.x, size_min.y ), ImVec2( size_max.x, size_max.y ) ); + ImGui::SetNextWindowSizeConstraints( ImVec2S( size_min.x, size_min.y ), ImVec2S( size_max.x, size_max.y ) ); } auto const panelname { ( title.empty() ? diff --git a/editoruipanels.cpp b/editoruipanels.cpp index a51095c7..ce746391 100644 --- a/editoruipanels.cpp +++ b/editoruipanels.cpp @@ -261,10 +261,10 @@ itemproperties_panel::render() { | ( size.x > 0 ? ImGuiWindowFlags_NoResize : 0 ); if( size.x > 0 ) { - ImGui::SetNextWindowSize( ImVec2( size.x, size.y ) ); + ImGui::SetNextWindowSize( ImVec2S( size.x, size.y ) ); } if( size_min.x > 0 ) { - ImGui::SetNextWindowSizeConstraints( ImVec2( size_min.x, size_min.y ), ImVec2( size_max.x, size_max.y ) ); + ImGui::SetNextWindowSizeConstraints( ImVec2S( size_min.x, size_min.y ), ImVec2( size_max.x, size_max.y ) ); } auto const panelname { ( title.empty() ? @@ -357,10 +357,10 @@ nodebank_panel::render() { | ( size.x > 0 ? ImGuiWindowFlags_NoResize : 0 ); if( size.x > 0 ) { - ImGui::SetNextWindowSize( ImVec2( size.x, size.y ) ); + ImGui::SetNextWindowSize( ImVec2S( size.x, size.y ) ); } if( size_min.x > 0 ) { - ImGui::SetNextWindowSizeConstraints( ImVec2( size_min.x, size_min.y ), ImVec2( size_max.x, size_max.y ) ); + ImGui::SetNextWindowSizeConstraints( ImVec2S( size_min.x, size_min.y ), ImVec2S( size_max.x, size_max.y ) ); } auto const panelname { ( title.empty() ? diff --git a/launcher/launcheruilayer.cpp b/launcher/launcheruilayer.cpp index 031dcda1..0ab9311d 100644 --- a/launcher/launcheruilayer.cpp +++ b/launcher/launcheruilayer.cpp @@ -29,7 +29,7 @@ void launcher_ui::render_() ImGuiWindowFlags flags = ImGuiWindowFlags_NoTitleBar | ImGuiWindowFlags_NoResize | ImGuiWindowFlags_NoScrollbar | ImGuiWindowFlags_NoCollapse; ImVec2 display_size = ImGui::GetIO().DisplaySize; ImGui::SetNextWindowPos(ImVec2(display_size.x * 0.66f, display_size.y / 2.0f)); - ImGui::SetNextWindowSize(ImVec2(200, -1)); + ImGui::SetNextWindowSize(ImVec2(200 * Global.ui_scale, -1)); if (ImGui::Begin(STR_C("Main menu"), nullptr, flags)) { if (ImGui::Button(STR_C("Scenario list"), ImVec2(-1, 0))) diff --git a/opengl33renderer.cpp b/opengl33renderer.cpp index 0473778a..16bd6c26 100644 --- a/opengl33renderer.cpp +++ b/opengl33renderer.cpp @@ -639,7 +639,7 @@ void opengl33_renderer::draw_debug_ui() } ImGui::End(); - ImGui::SetNextWindowSize(ImVec2(400, 400)); + ImGui::SetNextWindowSize(ImVec2S(400, 400)); if (ImGui::Begin("Pickbuffer") && m_pick_tex) { ImGui::Image(reinterpret_cast(m_pick_tex->id), ImGui::GetContentRegionAvail(), ImVec2(0, 1.0), ImVec2(1.0, 0)); } diff --git a/stdafx.h b/stdafx.h index 2c8661ef..706f0a1d 100644 --- a/stdafx.h +++ b/stdafx.h @@ -110,6 +110,7 @@ int const null_handle = 0; #define glDebug(x) if (GLAD_GL_GREMEDY_string_marker) glStringMarkerGREMEDY(0, __FILE__ ":" STRINGIZE(__LINE__) ": " x); #include "imgui/imgui.h" +#define ImVec2S(a, b) ImVec2(a * Global.ui_scale, b * Global.ui_scale) #include "openglcolor.h" #endif diff --git a/uilayer.cpp b/uilayer.cpp index 6a63657e..730b49e4 100644 --- a/uilayer.cpp +++ b/uilayer.cpp @@ -45,12 +45,12 @@ void ui_panel::render() ((size.x > 0) ? ImGuiWindowFlags_NoResize : 0); if (size.x > 0) - ImGui::SetNextWindowSize(ImVec2(size.x, size.y)); + ImGui::SetNextWindowSize(ImVec2S(size.x, size.y)); else if (size_min.x == -1) - ImGui::SetNextWindowSize(ImVec2(0, 0), ImGuiCond_FirstUseEver); + ImGui::SetNextWindowSize(ImVec2(0, 0), ImGuiCond_FirstUseEver); if (size_min.x > 0) - ImGui::SetNextWindowSizeConstraints(ImVec2(size_min.x, size_min.y), ImVec2(size_max.x, size_max.y)); + ImGui::SetNextWindowSizeConstraints(ImVec2S(size_min.x, size_min.y), ImVec2S(size_max.x, size_max.y)); auto const panelname{(title.empty() ? m_name : title) + "###" + m_name}; if (ImGui::Begin(panelname.c_str(), &is_open, flags)) {