From 11266e8093e56524a68de1d0a08d275de95c56a0 Mon Sep 17 00:00:00 2001 From: Mikko Rasa Date: Thu, 13 May 2021 16:19:50 +0300 Subject: [PATCH] Add a window size option to viewer --- tools/viewer.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/tools/viewer.cpp b/tools/viewer.cpp index e7af7024..b05e6695 100644 --- a/tools/viewer.cpp +++ b/tools/viewer.cpp @@ -27,6 +27,7 @@ #include #include #include +#include #include #include @@ -105,14 +106,26 @@ private: Viewer::Options::Options(int argc, char **argv) { + string window_size; + GetOpt getopt; getopt.add_option('r', "resources", resource_locations, GetOpt::REQUIRED_ARG); getopt.add_option('a', "animation", animation_name, GetOpt::REQUIRED_ARG); + getopt.add_option('w', "window-size", window_size, GetOpt::REQUIRED_ARG); getopt.add_argument("renderable", renderable_name); getopt(argc, argv); wnd_opts.width = 1024; wnd_opts.height = 768; + if (!window_size.empty()) + { + RegMatch m = Regex("^([1-9][0-9]*)x([1-9][0-9]*)$").match(window_size); + if(!m) + throw usage_error("Invalid window size"); + + wnd_opts.width = lexical_cast(m[1].str); + wnd_opts.height = lexical_cast(m[2].str); + } gl_opts.gl_version_major = Graphics::GLOptions::LATEST_VERSION; gl_opts.core_profile = true; } -- 2.45.2