From ed872d1bd2a8c50086c1fe4f97420a065f249eb1 Mon Sep 17 00:00:00 2001 From: Vas Crabb Date: Sun, 20 Dec 2020 15:28:27 +1100 Subject: Fix some oversights and emergent behaviour with view selection. Exposed the "native snapview" option on the video manager. Trying to use presence of a single view is a poor proxy that breaks with multi-screen systems. Allow rotation to be changed for native snapshot views, and disable the zoom to screen area control when it has no effect on the selected view. Treat an empty string identically to "auto" for view selectction. Previously this was being used for prefix matching so it would force the first view. (This caused the bad snapshot view selection. It had been relying on "internal" not being a common view name prefix so it fell through to automatic selection, but when changed to an empty string it forced the first view.) Documented "auto" as well as "native" for the -snapview option and changed the default to auto rather than an empty string for consistency with the -viewN options. Added [w]string_view handlers to the stuff that's instantiated in strformat.cpp since we'll be increasingly using them. Cleaned up and updated some documentation. --- src/lib/util/strformat.cpp | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) (limited to 'src/lib/util/strformat.cpp') diff --git a/src/lib/util/strformat.cpp b/src/lib/util/strformat.cpp index e72e8b74a83..e173fb6aadf 100644 --- a/src/lib/util/strformat.cpp +++ b/src/lib/util/strformat.cpp @@ -50,6 +50,7 @@ template void format_argument::static_output(s template void format_argument::static_output(std::ostream &, format_flags const &, void const *); template void format_argument::static_output(std::ostream &, format_flags const &, void const *); template void format_argument::static_output(std::ostream &, format_flags const &, void const *); +template void format_argument::static_output(std::ostream &, format_flags const &, void const *); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); @@ -64,6 +65,7 @@ template bool format_argument::static_make_integer::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); +template bool format_argument::static_make_integer(void const *, int &); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); @@ -78,6 +80,7 @@ template void format_argument::static_store_integer::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); +template void format_argument::static_store_integer(void const *, std::streamoff); template class format_argument; template void format_argument::static_output(std::wostream &, format_flags const &, void const *); @@ -95,6 +98,7 @@ template void format_argument::static_output( template void format_argument::static_output(std::wostream &, format_flags const &, void const *); template void format_argument::static_output(std::wostream &, format_flags const &, void const *); template void format_argument::static_output(std::wostream &, format_flags const &, void const *); +template void format_argument::static_output(std::wostream &, format_flags const &, void const *); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); @@ -110,6 +114,7 @@ template bool format_argument::static_make_integer::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); +template bool format_argument::static_make_integer(void const *, int &); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); @@ -125,6 +130,7 @@ template void format_argument::static_store_integer::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); +template void format_argument::static_store_integer(void const *, std::streamoff); template class format_argument; template void format_argument::static_output(std::iostream &, format_flags const &, void const *); @@ -141,6 +147,7 @@ template void format_argument::static_output( template void format_argument::static_output(std::iostream &, format_flags const &, void const *); template void format_argument::static_output(std::iostream &, format_flags const &, void const *); template void format_argument::static_output(std::iostream &, format_flags const &, void const *); +template void format_argument::static_output(std::iostream &, format_flags const &, void const *); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); @@ -155,6 +162,7 @@ template bool format_argument::static_make_integer::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); +template bool format_argument::static_make_integer(void const *, int &); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); @@ -169,6 +177,7 @@ template void format_argument::static_store_integer::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); +template void format_argument::static_store_integer(void const *, std::streamoff); template class format_argument; template void format_argument::static_output(std::wiostream &, format_flags const &, void const *); @@ -186,6 +195,7 @@ template void format_argument::static_output template void format_argument::static_output(std::wiostream &, format_flags const &, void const *); template void format_argument::static_output(std::wiostream &, format_flags const &, void const *); template void format_argument::static_output(std::wiostream &, format_flags const &, void const *); +template void format_argument::static_output(std::wiostream &, format_flags const &, void const *); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); @@ -201,6 +211,7 @@ template bool format_argument::static_make_integer::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); +template bool format_argument::static_make_integer(void const *, int &); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); @@ -216,6 +227,7 @@ template void format_argument::static_store_integer::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); +template void format_argument::static_store_integer(void const *, std::streamoff); template class format_argument; template void format_argument::static_output(std::ostringstream &, format_flags const &, void const *); @@ -232,6 +244,7 @@ template void format_argument::static_output::static_output(std::ostringstream &, format_flags const &, void const *); template void format_argument::static_output(std::ostringstream &, format_flags const &, void const *); template void format_argument::static_output(std::ostringstream &, format_flags const &, void const *); +template void format_argument::static_output(std::ostringstream &, format_flags const &, void const *); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); @@ -246,6 +259,7 @@ template bool format_argument::static_make_integer::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); +template bool format_argument::static_make_integer(void const *, int &); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); @@ -260,6 +274,7 @@ template void format_argument::static_store_integer::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); +template void format_argument::static_store_integer(void const *, std::streamoff); template class format_argument; template void format_argument::static_output(std::wostringstream &, format_flags const &, void const *); @@ -277,6 +292,7 @@ template void format_argument::static_output::static_output(std::wostringstream &, format_flags const &, void const *); template void format_argument::static_output(std::wostringstream &, format_flags const &, void const *); template void format_argument::static_output(std::wostringstream &, format_flags const &, void const *); +template void format_argument::static_output(std::wostringstream &, format_flags const &, void const *); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); @@ -292,6 +308,7 @@ template bool format_argument::static_make_integer::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); +template bool format_argument::static_make_integer(void const *, int &); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); @@ -307,6 +324,7 @@ template void format_argument::static_store_integer::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); +template void format_argument::static_store_integer(void const *, std::streamoff); template class format_argument; template void format_argument::static_output(std::stringstream &, format_flags const &, void const *); @@ -323,6 +341,7 @@ template void format_argument::static_output::static_output(std::stringstream &, format_flags const &, void const *); template void format_argument::static_output(std::stringstream &, format_flags const &, void const *); template void format_argument::static_output(std::stringstream &, format_flags const &, void const *); +template void format_argument::static_output(std::stringstream &, format_flags const &, void const *); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); @@ -337,6 +356,7 @@ template bool format_argument::static_make_integer::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); +template bool format_argument::static_make_integer(void const *, int &); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); @@ -351,6 +371,7 @@ template void format_argument::static_store_integer::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); +template void format_argument::static_store_integer(void const *, std::streamoff); template class format_argument; template void format_argument::static_output(std::wstringstream &, format_flags const &, void const *); @@ -368,6 +389,7 @@ template void format_argument::static_output::static_output(std::wstringstream &, format_flags const &, void const *); template void format_argument::static_output(std::wstringstream &, format_flags const &, void const *); template void format_argument::static_output(std::wstringstream &, format_flags const &, void const *); +template void format_argument::static_output(std::wstringstream &, format_flags const &, void const *); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); @@ -383,6 +405,7 @@ template bool format_argument::static_make_integer::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); +template bool format_argument::static_make_integer(void const *, int &); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); @@ -398,6 +421,7 @@ template void format_argument::static_store_integer::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); +template void format_argument::static_store_integer(void const *, std::streamoff); template class format_argument; template void format_argument::static_output(ovectorstream &, format_flags const &, void const *); @@ -414,6 +438,7 @@ template void format_argument::static_output( template void format_argument::static_output(ovectorstream &, format_flags const &, void const *); template void format_argument::static_output(ovectorstream &, format_flags const &, void const *); template void format_argument::static_output(ovectorstream &, format_flags const &, void const *); +template void format_argument::static_output(ovectorstream &, format_flags const &, void const *); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); @@ -428,6 +453,7 @@ template bool format_argument::static_make_integer::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); +template bool format_argument::static_make_integer(void const *, int &); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); @@ -442,6 +468,7 @@ template void format_argument::static_store_integer::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); +template void format_argument::static_store_integer(void const *, std::streamoff); template class format_argument; template void format_argument::static_output(wovectorstream &, format_flags const &, void const *); @@ -459,6 +486,7 @@ template void format_argument::static_output template void format_argument::static_output(wovectorstream &, format_flags const &, void const *); template void format_argument::static_output(wovectorstream &, format_flags const &, void const *); template void format_argument::static_output(wovectorstream &, format_flags const &, void const *); +template void format_argument::static_output(wovectorstream &, format_flags const &, void const *); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); @@ -474,6 +502,7 @@ template bool format_argument::static_make_integer::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); +template bool format_argument::static_make_integer(void const *, int &); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); @@ -489,6 +518,7 @@ template void format_argument::static_store_integer::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); +template void format_argument::static_store_integer(void const *, std::streamoff); template class format_argument; template void format_argument::static_output(vectorstream &, format_flags const &, void const *); @@ -505,6 +535,7 @@ template void format_argument::static_output(v template void format_argument::static_output(vectorstream &, format_flags const &, void const *); template void format_argument::static_output(vectorstream &, format_flags const &, void const *); template void format_argument::static_output(vectorstream &, format_flags const &, void const *); +template void format_argument::static_output(vectorstream &, format_flags const &, void const *); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); @@ -519,6 +550,7 @@ template bool format_argument::static_make_integer::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); +template bool format_argument::static_make_integer(void const *, int &); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); @@ -533,6 +565,7 @@ template void format_argument::static_store_integer::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); +template void format_argument::static_store_integer(void const *, std::streamoff); template class format_argument; template void format_argument::static_output(wvectorstream &, format_flags const &, void const *); @@ -550,6 +583,7 @@ template void format_argument::static_output( template void format_argument::static_output(wvectorstream &, format_flags const &, void const *); template void format_argument::static_output(wvectorstream &, format_flags const &, void const *); template void format_argument::static_output(wvectorstream &, format_flags const &, void const *); +template void format_argument::static_output(wvectorstream &, format_flags const &, void const *); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); @@ -565,6 +599,7 @@ template bool format_argument::static_make_integer::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); template bool format_argument::static_make_integer(void const *, int &); +template bool format_argument::static_make_integer(void const *, int &); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); @@ -580,6 +615,7 @@ template void format_argument::static_store_integer::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); template void format_argument::static_store_integer(void const *, std::streamoff); +template void format_argument::static_store_integer(void const *, std::streamoff); template class format_argument_pack; template class format_argument_pack; -- cgit v1.2.3-70-g09d2