From 3de12ed827c3e6f496a4a98f24095eba85f5e94c Mon Sep 17 00:00:00 2001 From: milek7 Date: Tue, 9 Apr 2019 12:07:02 +0200 Subject: [PATCH] enforce cameraview 16:9 aspect --- extras/VS_Dev.cpp | 4 ++-- widgets/cameraview.cpp | 11 +++++++++-- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/extras/VS_Dev.cpp b/extras/VS_Dev.cpp index d594fa35..a9f826f8 100644 --- a/extras/VS_Dev.cpp +++ b/extras/VS_Dev.cpp @@ -7,7 +7,7 @@ using namespace std; VSDev::VSDev() { ifstream DevFile; - DevFile.open("test01.bin"); + DevFile.open("test01.bin", std::ios_base::binary); DevFile.read(this->Frame1TestBuf, sizeof(this->Frame1TestBuf)); DevFile.close(); DevFile.open("test02.bin"); @@ -38,4 +38,4 @@ int VSDev::GetFrameFromStream(char ** Buffer) void VSDev::FreeFrameBuffer(char * Buffer) { //For dev do nothing... -} \ No newline at end of file +} diff --git a/widgets/cameraview.cpp b/widgets/cameraview.cpp index e19b10a5..af3c9d07 100644 --- a/widgets/cameraview.cpp +++ b/widgets/cameraview.cpp @@ -7,8 +7,11 @@ ui::cameraview_panel::cameraview_panel() : ui_panel(LOC_STR(cameraview_window), false) { - size_min = {200, 200}; - size_max = {2000, 2000}; + size_min = { -2, -2 }; +} + +void cameraview_window_callback(ImGuiSizeCallbackData *data) { + data->DesiredSize.y = data->DesiredSize.x * 9.0f / 16.0f; } void ui::cameraview_panel::render() @@ -22,6 +25,10 @@ void ui::cameraview_panel::render() } cv.notify_all(); } + + if (is_open) + ImGui::SetNextWindowSizeConstraints(ImVec2(200, 200), ImVec2(2500, 2500), cameraview_window_callback); + ui_panel::render(); }