diff --git a/CMakeLists.txt b/CMakeLists.txt index 6d7ad177a..15b61c55e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -338,7 +338,7 @@ set(ES_SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/data/converted/off_svg.cpp ${CMAKE_CURRENT_SOURCE_DIR}/data/converted/fav_add_svg.cpp ${CMAKE_CURRENT_SOURCE_DIR}/data/converted/fav_remove_svg.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/data/converted/slider_knob_png.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/data/converted/slider_knob_svg.cpp ) #SOURCE_GROUP(resources FILES ResourceUtil.cpp) diff --git a/data/ResourceUtil.cpp b/data/ResourceUtil.cpp index b1d85b192..588a0e5d9 100644 --- a/data/ResourceUtil.cpp +++ b/data/ResourceUtil.cpp @@ -20,7 +20,7 @@ const Res2hEntry res2hFiles[res2hNrOfFiles] = { {":/opensans_hebrew_condensed_regular.ttf", opensans_hebrew_condensed_regular_ttf_size, opensans_hebrew_condensed_regular_ttf_data}, {":/option_arrow.svg", option_arrow_svg_size, option_arrow_svg_data}, {":/scroll_gradient.png", scroll_gradient_png_size, scroll_gradient_png_data}, - {":/slider_knob.png", slider_knob_png_size, slider_knob_png_data}, + {":/slider_knob.svg", slider_knob_svg_size, slider_knob_svg_data}, {":/star_filled.svg", star_filled_svg_size, star_filled_svg_data}, {":/star_unfilled.svg", star_unfilled_svg_size, star_unfilled_svg_data}, {":/help/button_a.svg", help_button_a_svg_size, help_button_a_svg_data}, @@ -57,7 +57,7 @@ res2hMapType::value_type mapTemp[] = { std::make_pair(":/opensans_hebrew_condensed_regular.ttf", res2hFiles[13]), std::make_pair(":/option_arrow.svg", res2hFiles[14]), std::make_pair(":/scroll_gradient.png", res2hFiles[15]), - std::make_pair(":/slider_knob.png", res2hFiles[16]), + std::make_pair(":/slider_knob.svg", res2hFiles[16]), std::make_pair(":/star_filled.svg", res2hFiles[17]), std::make_pair(":/star_unfilled.svg", res2hFiles[18]), std::make_pair(":/help/button_a.svg", res2hFiles[19]), diff --git a/data/Resources.h b/data/Resources.h index 0f2d27b55..090c2c4dd 100644 --- a/data/Resources.h +++ b/data/Resources.h @@ -53,8 +53,8 @@ extern const unsigned char option_arrow_svg_data[]; extern const size_t scroll_gradient_png_size; extern const unsigned char scroll_gradient_png_data[]; -extern const size_t slider_knob_png_size; -extern const unsigned char slider_knob_png_data[]; +extern const size_t slider_knob_svg_size; +extern const unsigned char slider_knob_svg_data[]; extern const size_t star_filled_svg_size; extern const unsigned char star_filled_svg_data[]; diff --git a/data/converted/help_dpad_right_svg.cpp b/data/converted/help_dpad_right_svg.cpp index db8c4a7a8..94ded25d2 100644 --- a/data/converted/help_dpad_right_svg.cpp +++ b/data/converted/help_dpad_right_svg.cpp @@ -2,8 +2,8 @@ #include "../Resources.h" -const size_t help_dpad_right_svg_size = 1822; -const unsigned char help_dpad_right_svg_data[1822] = { +const size_t help_dpad_right_svg_size = 3338; +const unsigned char help_dpad_right_svg_data[3338] = { 0x3c,0x3f,0x78,0x6d,0x6c,0x20,0x76,0x65,0x72,0x73, 0x69,0x6f,0x6e,0x3d,0x22,0x31,0x2e,0x30,0x22,0x20, 0x65,0x6e,0x63,0x6f,0x64,0x69,0x6e,0x67,0x3d,0x22, @@ -41,150 +41,301 @@ const unsigned char help_dpad_right_svg_data[1822] = { 0x6c,0x69,0x6e,0x6b,0x22,0x20,0x78,0x3d,0x22,0x30, 0x70,0x78,0x22,0x20,0x79,0x3d,0x22,0x30,0x70,0x78, 0x22,0x0d,0x0a,0x09,0x20,0x77,0x69,0x64,0x74,0x68, - 0x3d,0x22,0x33,0x37,0x2e,0x31,0x33,0x34,0x70,0x78, + 0x3d,0x22,0x33,0x37,0x2e,0x31,0x33,0x33,0x70,0x78, 0x22,0x20,0x68,0x65,0x69,0x67,0x68,0x74,0x3d,0x22, - 0x33,0x37,0x2e,0x31,0x33,0x34,0x70,0x78,0x22,0x20, + 0x33,0x37,0x2e,0x31,0x33,0x33,0x70,0x78,0x22,0x20, 0x76,0x69,0x65,0x77,0x42,0x6f,0x78,0x3d,0x22,0x30, - 0x20,0x30,0x20,0x33,0x37,0x2e,0x31,0x33,0x34,0x20, - 0x33,0x37,0x2e,0x31,0x33,0x34,0x22,0x20,0x65,0x6e, + 0x20,0x30,0x20,0x33,0x37,0x2e,0x31,0x33,0x33,0x20, + 0x33,0x37,0x2e,0x31,0x33,0x33,0x22,0x20,0x65,0x6e, 0x61,0x62,0x6c,0x65,0x2d,0x62,0x61,0x63,0x6b,0x67, 0x72,0x6f,0x75,0x6e,0x64,0x3d,0x22,0x6e,0x65,0x77, 0x20,0x30,0x20,0x30,0x20,0x33,0x37,0x2e,0x31,0x33, - 0x34,0x20,0x33,0x37,0x2e,0x31,0x33,0x34,0x22,0x20, + 0x33,0x20,0x33,0x37,0x2e,0x31,0x33,0x33,0x22,0x20, 0x78,0x6d,0x6c,0x3a,0x73,0x70,0x61,0x63,0x65,0x3d, 0x22,0x70,0x72,0x65,0x73,0x65,0x72,0x76,0x65,0x22, 0x3e,0x0d,0x0a,0x3c,0x67,0x3e,0x0d,0x0a,0x09,0x3c, + 0x67,0x3e,0x0d,0x0a,0x09,0x09,0x3c,0x67,0x3e,0x0d, + 0x0a,0x09,0x09,0x09,0x3c,0x70,0x61,0x74,0x68,0x20, + 0x66,0x69,0x6c,0x6c,0x3d,0x22,0x23,0x37,0x37,0x37, + 0x37,0x37,0x37,0x22,0x20,0x64,0x3d,0x22,0x4d,0x32, + 0x32,0x2e,0x31,0x32,0x32,0x2c,0x33,0x37,0x2e,0x30, + 0x39,0x36,0x68,0x2d,0x37,0x2e,0x31,0x31,0x63,0x2d, + 0x32,0x2e,0x32,0x38,0x39,0x2c,0x30,0x2d,0x33,0x2e, + 0x31,0x31,0x39,0x2d,0x31,0x2e,0x38,0x36,0x36,0x2d, + 0x33,0x2e,0x31,0x31,0x39,0x2d,0x33,0x2e,0x31,0x32, + 0x31,0x76,0x2d,0x38,0x2e,0x37,0x33,0x48,0x33,0x2e, + 0x31,0x35,0x38,0x63,0x2d,0x32,0x2e,0x32,0x39,0x2c, + 0x30,0x2d,0x33,0x2e,0x31,0x32,0x31,0x2d,0x31,0x2e, + 0x38,0x36,0x36,0x2d,0x33,0x2e,0x31,0x32,0x31,0x2d, + 0x33,0x2e,0x31,0x32,0x31,0x0d,0x0a,0x09,0x09,0x09, + 0x09,0x76,0x2d,0x37,0x2e,0x31,0x31,0x32,0x63,0x30, + 0x2d,0x32,0x2e,0x32,0x38,0x39,0x2c,0x31,0x2e,0x38, + 0x36,0x37,0x2d,0x33,0x2e,0x31,0x32,0x2c,0x33,0x2e, + 0x31,0x32,0x31,0x2d,0x33,0x2e,0x31,0x32,0x68,0x38, + 0x2e,0x37,0x33,0x35,0x56,0x33,0x2e,0x31,0x35,0x39, + 0x63,0x30,0x2d,0x32,0x2e,0x32,0x39,0x2c,0x31,0x2e, + 0x38,0x36,0x35,0x2d,0x33,0x2e,0x31,0x32,0x31,0x2c, + 0x33,0x2e,0x31,0x31,0x39,0x2d,0x33,0x2e,0x31,0x32, + 0x31,0x68,0x37,0x2e,0x31,0x31,0x31,0x63,0x32,0x2e, + 0x32,0x39,0x2c,0x30,0x2c,0x33,0x2e,0x31,0x32,0x31, + 0x2c,0x31,0x2e,0x38,0x36,0x37,0x2c,0x33,0x2e,0x31, + 0x32,0x31,0x2c,0x33,0x2e,0x31,0x32,0x31,0x76,0x38, + 0x2e,0x37,0x33,0x32,0x0d,0x0a,0x09,0x09,0x09,0x09, + 0x68,0x38,0x2e,0x37,0x33,0x31,0x63,0x31,0x2e,0x32, + 0x33,0x34,0x2c,0x30,0x2c,0x32,0x2e,0x32,0x30,0x31, + 0x2c,0x30,0x2e,0x35,0x35,0x32,0x2c,0x32,0x2e,0x37, + 0x32,0x32,0x2c,0x31,0x2e,0x35,0x35,0x34,0x63,0x30, + 0x2e,0x33,0x38,0x38,0x2c,0x30,0x2e,0x37,0x34,0x34, + 0x2c,0x30,0x2e,0x33,0x39,0x38,0x2c,0x31,0x2e,0x34, + 0x38,0x32,0x2c,0x30,0x2e,0x33,0x39,0x38,0x2c,0x31, + 0x2e,0x35,0x36,0x33,0x76,0x37,0x2e,0x31,0x31,0x35, + 0x63,0x30,0x2c,0x32,0x2e,0x32,0x39,0x2d,0x31,0x2e, + 0x38,0x36,0x36,0x2c,0x33,0x2e,0x31,0x32,0x31,0x2d, + 0x33,0x2e,0x31,0x32,0x31,0x2c,0x33,0x2e,0x31,0x32, + 0x31,0x68,0x2d,0x38,0x2e,0x37,0x33,0x32,0x76,0x38, + 0x2e,0x37,0x33,0x0d,0x0a,0x09,0x09,0x09,0x09,0x43, + 0x32,0x35,0x2e,0x32,0x34,0x33,0x2c,0x33,0x36,0x2e, + 0x32,0x36,0x35,0x2c,0x32,0x33,0x2e,0x33,0x37,0x36, + 0x2c,0x33,0x37,0x2e,0x30,0x39,0x36,0x2c,0x32,0x32, + 0x2e,0x31,0x32,0x32,0x2c,0x33,0x37,0x2e,0x30,0x39, + 0x36,0x7a,0x20,0x4d,0x33,0x2e,0x31,0x35,0x38,0x2c, + 0x31,0x33,0x2e,0x33,0x39,0x31,0x63,0x2d,0x30,0x2e, + 0x33,0x37,0x36,0x2c,0x30,0x2e,0x30,0x30,0x36,0x2d, + 0x31,0x2e,0x36,0x32,0x31,0x2c,0x30,0x2e,0x31,0x33, + 0x39,0x2d,0x31,0x2e,0x36,0x32,0x31,0x2c,0x31,0x2e, + 0x36,0x32,0x76,0x37,0x2e,0x31,0x31,0x32,0x0d,0x0a, + 0x09,0x09,0x09,0x09,0x63,0x30,0x2e,0x30,0x30,0x35, + 0x2c,0x30,0x2e,0x33,0x37,0x36,0x2c,0x30,0x2e,0x31, + 0x33,0x39,0x2c,0x31,0x2e,0x36,0x32,0x31,0x2c,0x31, + 0x2e,0x36,0x32,0x31,0x2c,0x31,0x2e,0x36,0x32,0x31, + 0x68,0x31,0x30,0x2e,0x32,0x33,0x34,0x76,0x31,0x30, + 0x2e,0x32,0x33,0x63,0x30,0x2e,0x30,0x30,0x35,0x2c, + 0x30,0x2e,0x33,0x37,0x36,0x2c,0x30,0x2e,0x31,0x33, + 0x39,0x2c,0x31,0x2e,0x36,0x32,0x31,0x2c,0x31,0x2e, + 0x36,0x31,0x39,0x2c,0x31,0x2e,0x36,0x32,0x31,0x68, + 0x37,0x2e,0x31,0x30,0x37,0x0d,0x0a,0x09,0x09,0x09, + 0x09,0x63,0x30,0x2e,0x33,0x38,0x34,0x2d,0x30,0x2e, + 0x30,0x30,0x36,0x2c,0x31,0x2e,0x36,0x32,0x34,0x2d, + 0x30,0x2e,0x31,0x34,0x32,0x2c,0x31,0x2e,0x36,0x32, + 0x34,0x2d,0x31,0x2e,0x36,0x32,0x31,0x76,0x2d,0x31, + 0x30,0x2e,0x32,0x33,0x68,0x31,0x30,0x2e,0x32,0x33, + 0x32,0x63,0x30,0x2e,0x33,0x37,0x36,0x2d,0x30,0x2e, + 0x30,0x30,0x36,0x2c,0x31,0x2e,0x36,0x32,0x31,0x2d, + 0x30,0x2e,0x31,0x34,0x2c,0x31,0x2e,0x36,0x32,0x31, + 0x2d,0x31,0x2e,0x36,0x32,0x31,0x76,0x2d,0x37,0x2e, + 0x31,0x31,0x35,0x0d,0x0a,0x09,0x09,0x09,0x09,0x63, + 0x2d,0x30,0x2e,0x30,0x30,0x35,0x2d,0x30,0x2e,0x32, + 0x37,0x39,0x2d,0x30,0x2e,0x31,0x30,0x37,0x2d,0x31, + 0x2e,0x36,0x31,0x37,0x2d,0x31,0x2e,0x36,0x32,0x2d, + 0x31,0x2e,0x36,0x31,0x37,0x48,0x32,0x33,0x2e,0x37, + 0x34,0x35,0x56,0x33,0x2e,0x31,0x35,0x39,0x63,0x2d, + 0x30,0x2e,0x30,0x30,0x36,0x2d,0x30,0x2e,0x33,0x37, + 0x36,0x2d,0x30,0x2e,0x31,0x34,0x2d,0x31,0x2e,0x36, + 0x32,0x31,0x2d,0x31,0x2e,0x36,0x32,0x31,0x2d,0x31, + 0x2e,0x36,0x32,0x31,0x68,0x2d,0x37,0x2e,0x31,0x31, + 0x31,0x0d,0x0a,0x09,0x09,0x09,0x09,0x63,0x2d,0x30, + 0x2e,0x33,0x37,0x36,0x2c,0x30,0x2e,0x30,0x30,0x36, + 0x2d,0x31,0x2e,0x36,0x31,0x39,0x2c,0x30,0x2e,0x31, + 0x33,0x39,0x2d,0x31,0x2e,0x36,0x31,0x39,0x2c,0x31, + 0x2e,0x36,0x32,0x31,0x76,0x31,0x30,0x2e,0x32,0x33, + 0x32,0x48,0x33,0x2e,0x31,0x35,0x38,0x7a,0x22,0x2f, + 0x3e,0x0d,0x0a,0x09,0x09,0x3c,0x2f,0x67,0x3e,0x0d, + 0x0a,0x09,0x3c,0x2f,0x67,0x3e,0x0d,0x0a,0x09,0x3c, 0x67,0x3e,0x0d,0x0a,0x09,0x09,0x3c,0x70,0x61,0x74, - 0x68,0x20,0x66,0x69,0x6c,0x6c,0x3d,0x22,0x6e,0x6f, - 0x6e,0x65,0x22,0x20,0x73,0x74,0x72,0x6f,0x6b,0x65, - 0x3d,0x22,0x23,0x37,0x37,0x37,0x37,0x37,0x37,0x22, - 0x20,0x73,0x74,0x72,0x6f,0x6b,0x65,0x2d,0x77,0x69, - 0x64,0x74,0x68,0x3d,0x22,0x31,0x2e,0x35,0x22,0x20, - 0x73,0x74,0x72,0x6f,0x6b,0x65,0x2d,0x6d,0x69,0x74, - 0x65,0x72,0x6c,0x69,0x6d,0x69,0x74,0x3d,0x22,0x31, - 0x30,0x22,0x20,0x64,0x3d,0x22,0x4d,0x33,0x33,0x2e, - 0x39,0x37,0x36,0x2c,0x31,0x32,0x2e,0x36,0x34,0x31, - 0x68,0x2d,0x39,0x2e,0x34,0x38,0x32,0x56,0x33,0x2e, - 0x31,0x35,0x39,0x0d,0x0a,0x09,0x09,0x09,0x63,0x30, - 0x2c,0x30,0x2c,0x30,0x2d,0x32,0x2e,0x33,0x37,0x31, - 0x2d,0x32,0x2e,0x33,0x37,0x31,0x2d,0x32,0x2e,0x33, - 0x37,0x31,0x68,0x2d,0x37,0x2e,0x31,0x31,0x31,0x63, - 0x30,0x2c,0x30,0x2d,0x32,0x2e,0x33,0x36,0x39,0x2c, - 0x30,0x2d,0x32,0x2e,0x33,0x36,0x39,0x2c,0x32,0x2e, - 0x33,0x37,0x31,0x76,0x39,0x2e,0x34,0x38,0x32,0x48, - 0x33,0x2e,0x31,0x35,0x38,0x63,0x30,0x2c,0x30,0x2d, - 0x32,0x2e,0x33,0x37,0x31,0x2c,0x30,0x2d,0x32,0x2e, - 0x33,0x37,0x31,0x2c,0x32,0x2e,0x33,0x37,0x76,0x37, - 0x2e,0x31,0x31,0x32,0x63,0x30,0x2c,0x30,0x2c,0x30, - 0x2c,0x32,0x2e,0x33,0x37,0x31,0x2c,0x32,0x2e,0x33, - 0x37,0x31,0x2c,0x32,0x2e,0x33,0x37,0x31,0x0d,0x0a, - 0x09,0x09,0x09,0x68,0x39,0x2e,0x34,0x38,0x34,0x76, - 0x39,0x2e,0x34,0x38,0x31,0x63,0x30,0x2c,0x30,0x2c, - 0x30,0x2c,0x32,0x2e,0x33,0x37,0x31,0x2c,0x32,0x2e, - 0x33,0x36,0x39,0x2c,0x32,0x2e,0x33,0x37,0x31,0x68, - 0x37,0x2e,0x31,0x31,0x31,0x63,0x30,0x2c,0x30,0x2c, - 0x32,0x2e,0x33,0x37,0x31,0x2c,0x30,0x2c,0x32,0x2e, - 0x33,0x37,0x31,0x2d,0x32,0x2e,0x33,0x37,0x31,0x76, - 0x2d,0x39,0x2e,0x34,0x38,0x31,0x68,0x39,0x2e,0x34, - 0x38,0x32,0x63,0x30,0x2c,0x30,0x2c,0x32,0x2e,0x33, - 0x37,0x31,0x2c,0x30,0x2c,0x32,0x2e,0x33,0x37,0x31, - 0x2d,0x32,0x2e,0x33,0x37,0x31,0x76,0x2d,0x37,0x2e, - 0x31,0x31,0x32,0x0d,0x0a,0x09,0x09,0x09,0x43,0x33, - 0x36,0x2e,0x33,0x34,0x37,0x2c,0x31,0x35,0x2e,0x30, - 0x31,0x31,0x2c,0x33,0x36,0x2e,0x33,0x34,0x37,0x2c, - 0x31,0x32,0x2e,0x36,0x34,0x31,0x2c,0x33,0x33,0x2e, - 0x39,0x37,0x36,0x2c,0x31,0x32,0x2e,0x36,0x34,0x31, - 0x7a,0x22,0x2f,0x3e,0x0d,0x0a,0x09,0x3c,0x2f,0x67, - 0x3e,0x0d,0x0a,0x09,0x3c,0x70,0x61,0x74,0x68,0x20, - 0x66,0x69,0x6c,0x6c,0x3d,0x22,0x6e,0x6f,0x6e,0x65, - 0x22,0x20,0x73,0x74,0x72,0x6f,0x6b,0x65,0x3d,0x22, - 0x23,0x37,0x37,0x37,0x37,0x37,0x37,0x22,0x20,0x73, - 0x74,0x72,0x6f,0x6b,0x65,0x2d,0x77,0x69,0x64,0x74, - 0x68,0x3d,0x22,0x31,0x2e,0x35,0x22,0x20,0x73,0x74, - 0x72,0x6f,0x6b,0x65,0x2d,0x6d,0x69,0x74,0x65,0x72, - 0x6c,0x69,0x6d,0x69,0x74,0x3d,0x22,0x31,0x30,0x22, - 0x20,0x64,0x3d,0x22,0x4d,0x31,0x38,0x2e,0x35,0x36, - 0x38,0x2c,0x32,0x31,0x2e,0x34,0x36,0x38,0x63,0x31, - 0x2e,0x36,0x30,0x32,0x2c,0x30,0x2c,0x32,0x2e,0x39, - 0x2d,0x31,0x2e,0x32,0x39,0x39,0x2c,0x32,0x2e,0x39, - 0x2d,0x32,0x2e,0x39,0x30,0x31,0x0d,0x0a,0x09,0x09, - 0x63,0x30,0x2d,0x31,0x2e,0x36,0x30,0x32,0x2d,0x31, - 0x2e,0x32,0x39,0x39,0x2d,0x32,0x2e,0x39,0x2d,0x32, - 0x2e,0x39,0x2d,0x32,0x2e,0x39,0x63,0x2d,0x31,0x2e, - 0x36,0x30,0x34,0x2c,0x30,0x2d,0x32,0x2e,0x39,0x2c, - 0x31,0x2e,0x32,0x39,0x39,0x2d,0x32,0x2e,0x39,0x2c, - 0x32,0x2e,0x39,0x43,0x31,0x35,0x2e,0x36,0x36,0x37, - 0x2c,0x32,0x30,0x2e,0x31,0x36,0x39,0x2c,0x31,0x36, - 0x2e,0x39,0x36,0x34,0x2c,0x32,0x31,0x2e,0x34,0x36, - 0x38,0x2c,0x31,0x38,0x2e,0x35,0x36,0x38,0x2c,0x32, - 0x31,0x2e,0x34,0x36,0x38,0x7a,0x22,0x2f,0x3e,0x0d, - 0x0a,0x09,0x3c,0x70,0x61,0x74,0x68,0x20,0x66,0x69, - 0x6c,0x6c,0x3d,0x22,0x6e,0x6f,0x6e,0x65,0x22,0x20, - 0x73,0x74,0x72,0x6f,0x6b,0x65,0x3d,0x22,0x23,0x37, - 0x37,0x37,0x37,0x37,0x37,0x22,0x20,0x73,0x74,0x72, - 0x6f,0x6b,0x65,0x2d,0x77,0x69,0x64,0x74,0x68,0x3d, - 0x22,0x31,0x2e,0x35,0x22,0x20,0x73,0x74,0x72,0x6f, - 0x6b,0x65,0x2d,0x6c,0x69,0x6e,0x65,0x6a,0x6f,0x69, - 0x6e,0x3d,0x22,0x72,0x6f,0x75,0x6e,0x64,0x22,0x20, - 0x73,0x74,0x72,0x6f,0x6b,0x65,0x2d,0x6d,0x69,0x74, - 0x65,0x72,0x6c,0x69,0x6d,0x69,0x74,0x3d,0x22,0x31, - 0x30,0x22,0x20,0x64,0x3d,0x22,0x4d,0x31,0x38,0x2e, - 0x35,0x36,0x37,0x2c,0x33,0x2e,0x32,0x32,0x0d,0x0a, - 0x09,0x09,0x6c,0x2d,0x33,0x2e,0x30,0x30,0x35,0x2c, - 0x34,0x2e,0x36,0x38,0x34,0x68,0x36,0x2e,0x30,0x31, - 0x31,0x4c,0x31,0x38,0x2e,0x35,0x36,0x37,0x2c,0x33, - 0x2e,0x32,0x32,0x7a,0x22,0x2f,0x3e,0x0d,0x0a,0x09, - 0x3c,0x70,0x61,0x74,0x68,0x20,0x66,0x69,0x6c,0x6c, - 0x3d,0x22,0x6e,0x6f,0x6e,0x65,0x22,0x20,0x73,0x74, - 0x72,0x6f,0x6b,0x65,0x3d,0x22,0x23,0x37,0x37,0x37, - 0x37,0x37,0x37,0x22,0x20,0x73,0x74,0x72,0x6f,0x6b, - 0x65,0x2d,0x77,0x69,0x64,0x74,0x68,0x3d,0x22,0x31, - 0x2e,0x35,0x22,0x20,0x73,0x74,0x72,0x6f,0x6b,0x65, - 0x2d,0x6c,0x69,0x6e,0x65,0x6a,0x6f,0x69,0x6e,0x3d, - 0x22,0x72,0x6f,0x75,0x6e,0x64,0x22,0x20,0x73,0x74, - 0x72,0x6f,0x6b,0x65,0x2d,0x6d,0x69,0x74,0x65,0x72, - 0x6c,0x69,0x6d,0x69,0x74,0x3d,0x22,0x31,0x30,0x22, - 0x20,0x64,0x3d,0x22,0x4d,0x33,0x2e,0x31,0x36,0x32, - 0x2c,0x31,0x38,0x2e,0x35,0x36,0x38,0x0d,0x0a,0x09, - 0x09,0x6c,0x34,0x2e,0x36,0x38,0x34,0x2c,0x33,0x2e, - 0x30,0x30,0x35,0x76,0x2d,0x36,0x2e,0x30,0x31,0x31, - 0x4c,0x33,0x2e,0x31,0x36,0x32,0x2c,0x31,0x38,0x2e, - 0x35,0x36,0x38,0x7a,0x22,0x2f,0x3e,0x0d,0x0a,0x09, - 0x3c,0x70,0x61,0x74,0x68,0x20,0x66,0x69,0x6c,0x6c, - 0x3d,0x22,0x23,0x37,0x37,0x37,0x37,0x37,0x37,0x22, - 0x20,0x73,0x74,0x72,0x6f,0x6b,0x65,0x3d,0x22,0x23, - 0x37,0x37,0x37,0x37,0x37,0x37,0x22,0x20,0x73,0x74, - 0x72,0x6f,0x6b,0x65,0x2d,0x77,0x69,0x64,0x74,0x68, - 0x3d,0x22,0x31,0x2e,0x35,0x22,0x20,0x73,0x74,0x72, - 0x6f,0x6b,0x65,0x2d,0x6c,0x69,0x6e,0x65,0x6a,0x6f, - 0x69,0x6e,0x3d,0x22,0x72,0x6f,0x75,0x6e,0x64,0x22, - 0x20,0x73,0x74,0x72,0x6f,0x6b,0x65,0x2d,0x6d,0x69, - 0x74,0x65,0x72,0x6c,0x69,0x6d,0x69,0x74,0x3d,0x22, - 0x31,0x30,0x22,0x20,0x64,0x3d,0x22,0x4d,0x33,0x33, - 0x2e,0x39,0x31,0x36,0x2c,0x31,0x38,0x2e,0x35,0x36, - 0x37,0x0d,0x0a,0x09,0x09,0x6c,0x2d,0x34,0x2e,0x36, - 0x38,0x34,0x2d,0x33,0x2e,0x30,0x30,0x35,0x76,0x36, - 0x2e,0x30,0x31,0x4c,0x33,0x33,0x2e,0x39,0x31,0x36, - 0x2c,0x31,0x38,0x2e,0x35,0x36,0x37,0x7a,0x22,0x2f, - 0x3e,0x0d,0x0a,0x09,0x3c,0x70,0x61,0x74,0x68,0x20, - 0x66,0x69,0x6c,0x6c,0x3d,0x22,0x6e,0x6f,0x6e,0x65, - 0x22,0x20,0x73,0x74,0x72,0x6f,0x6b,0x65,0x3d,0x22, - 0x23,0x37,0x37,0x37,0x37,0x37,0x37,0x22,0x20,0x73, - 0x74,0x72,0x6f,0x6b,0x65,0x2d,0x77,0x69,0x64,0x74, - 0x68,0x3d,0x22,0x31,0x2e,0x35,0x22,0x20,0x73,0x74, - 0x72,0x6f,0x6b,0x65,0x2d,0x6c,0x69,0x6e,0x65,0x63, - 0x61,0x70,0x3d,0x22,0x72,0x6f,0x75,0x6e,0x64,0x22, - 0x20,0x73,0x74,0x72,0x6f,0x6b,0x65,0x2d,0x6c,0x69, - 0x6e,0x65,0x6a,0x6f,0x69,0x6e,0x3d,0x22,0x72,0x6f, - 0x75,0x6e,0x64,0x22,0x20,0x73,0x74,0x72,0x6f,0x6b, - 0x65,0x2d,0x6d,0x69,0x74,0x65,0x72,0x6c,0x69,0x6d, - 0x69,0x74,0x3d,0x22,0x31,0x30,0x22,0x20,0x64,0x3d, - 0x22,0x0d,0x0a,0x09,0x09,0x4d,0x31,0x38,0x2e,0x35, - 0x36,0x37,0x2c,0x33,0x33,0x2e,0x39,0x31,0x35,0x6c, - 0x33,0x2e,0x30,0x30,0x36,0x2d,0x34,0x2e,0x36,0x38, - 0x34,0x68,0x2d,0x36,0x2e,0x30,0x31,0x31,0x4c,0x31, - 0x38,0x2e,0x35,0x36,0x37,0x2c,0x33,0x33,0x2e,0x39, - 0x31,0x35,0x7a,0x22,0x2f,0x3e,0x0d,0x0a,0x3c,0x2f, - 0x67,0x3e,0x0d,0x0a,0x3c,0x2f,0x73,0x76,0x67,0x3e, - 0x0d,0x0a + 0x68,0x20,0x66,0x69,0x6c,0x6c,0x3d,0x22,0x23,0x37, + 0x37,0x37,0x37,0x37,0x37,0x22,0x20,0x64,0x3d,0x22, + 0x4d,0x31,0x38,0x2e,0x35,0x36,0x38,0x2c,0x32,0x32, + 0x2e,0x32,0x31,0x38,0x63,0x2d,0x30,0x2e,0x39,0x37, + 0x36,0x2c,0x30,0x2d,0x31,0x2e,0x38,0x39,0x33,0x2d, + 0x30,0x2e,0x33,0x38,0x2d,0x32,0x2e,0x35,0x38,0x33, + 0x2d,0x31,0x2e,0x30,0x37,0x63,0x2d,0x30,0x2e,0x36, + 0x38,0x39,0x2d,0x30,0x2e,0x36,0x38,0x39,0x2d,0x31, + 0x2e,0x30,0x36,0x38,0x2d,0x31,0x2e,0x36,0x30,0x36, + 0x2d,0x31,0x2e,0x30,0x36,0x37,0x2d,0x32,0x2e,0x35, + 0x38,0x32,0x0d,0x0a,0x09,0x09,0x09,0x63,0x30,0x2d, + 0x32,0x2e,0x30,0x31,0x32,0x2c,0x31,0x2e,0x36,0x33, + 0x37,0x2d,0x33,0x2e,0x36,0x34,0x39,0x2c,0x33,0x2e, + 0x36,0x35,0x2d,0x33,0x2e,0x36,0x34,0x39,0x73,0x33, + 0x2e,0x36,0x34,0x39,0x2c,0x31,0x2e,0x36,0x33,0x37, + 0x2c,0x33,0x2e,0x36,0x34,0x39,0x2c,0x33,0x2e,0x36, + 0x35,0x43,0x32,0x32,0x2e,0x32,0x31,0x37,0x2c,0x32, + 0x30,0x2e,0x35,0x38,0x31,0x2c,0x32,0x30,0x2e,0x35, + 0x38,0x31,0x2c,0x32,0x32,0x2e,0x32,0x31,0x38,0x2c, + 0x31,0x38,0x2e,0x35,0x36,0x38,0x2c,0x32,0x32,0x2e, + 0x32,0x31,0x38,0x7a,0x20,0x4d,0x31,0x38,0x2e,0x35, + 0x36,0x38,0x2c,0x31,0x36,0x2e,0x34,0x31,0x37,0x0d, + 0x0a,0x09,0x09,0x09,0x63,0x2d,0x31,0x2e,0x31,0x38, + 0x36,0x2c,0x30,0x2d,0x32,0x2e,0x31,0x35,0x2c,0x30, + 0x2e,0x39,0x36,0x34,0x2d,0x32,0x2e,0x31,0x35,0x2c, + 0x32,0x2e,0x31,0x35,0x63,0x30,0x2c,0x30,0x2e,0x35, + 0x37,0x35,0x2c,0x30,0x2e,0x32,0x32,0x33,0x2c,0x31, + 0x2e,0x31,0x31,0x35,0x2c,0x30,0x2e,0x36,0x32,0x39, + 0x2c,0x31,0x2e,0x35,0x32,0x31,0x73,0x30,0x2e,0x39, + 0x34,0x36,0x2c,0x30,0x2e,0x36,0x33,0x2c,0x31,0x2e, + 0x35,0x32,0x31,0x2c,0x30,0x2e,0x36,0x33,0x63,0x31, + 0x2e,0x31,0x38,0x36,0x2c,0x30,0x2c,0x32,0x2e,0x31, + 0x34,0x39,0x2d,0x30,0x2e,0x39,0x36,0x35,0x2c,0x32, + 0x2e,0x31,0x34,0x39,0x2d,0x32,0x2e,0x31,0x35,0x31, + 0x0d,0x0a,0x09,0x09,0x09,0x43,0x32,0x30,0x2e,0x37, + 0x31,0x37,0x2c,0x31,0x37,0x2e,0x33,0x38,0x31,0x2c, + 0x31,0x39,0x2e,0x37,0x35,0x33,0x2c,0x31,0x36,0x2e, + 0x34,0x31,0x37,0x2c,0x31,0x38,0x2e,0x35,0x36,0x38, + 0x2c,0x31,0x36,0x2e,0x34,0x31,0x37,0x7a,0x22,0x2f, + 0x3e,0x0d,0x0a,0x09,0x3c,0x2f,0x67,0x3e,0x0d,0x0a, + 0x09,0x3c,0x67,0x3e,0x0d,0x0a,0x09,0x09,0x3c,0x70, + 0x61,0x74,0x68,0x20,0x66,0x69,0x6c,0x6c,0x3d,0x22, + 0x23,0x37,0x37,0x37,0x37,0x37,0x37,0x22,0x20,0x64, + 0x3d,0x22,0x4d,0x32,0x31,0x2e,0x35,0x37,0x33,0x2c, + 0x38,0x2e,0x36,0x35,0x34,0x68,0x2d,0x36,0x2e,0x30, + 0x31,0x31,0x63,0x2d,0x30,0x2e,0x32,0x37,0x34,0x2c, + 0x30,0x2d,0x30,0x2e,0x35,0x32,0x36,0x2d,0x30,0x2e, + 0x31,0x35,0x2d,0x30,0x2e,0x36,0x35,0x38,0x2d,0x30, + 0x2e,0x33,0x39,0x63,0x2d,0x30,0x2e,0x31,0x33,0x31, + 0x2d,0x30,0x2e,0x32,0x34,0x31,0x2d,0x30,0x2e,0x31, + 0x32,0x31,0x2d,0x30,0x2e,0x35,0x33,0x34,0x2c,0x30, + 0x2e,0x30,0x32,0x37,0x2d,0x30,0x2e,0x37,0x36,0x35, + 0x6c,0x33,0x2e,0x30,0x30,0x35,0x2d,0x34,0x2e,0x36, + 0x38,0x34,0x0d,0x0a,0x09,0x09,0x09,0x63,0x30,0x2e, + 0x32,0x37,0x36,0x2d,0x30,0x2e,0x34,0x33,0x31,0x2c, + 0x30,0x2e,0x39,0x38,0x37,0x2d,0x30,0x2e,0x34,0x33, + 0x2c,0x31,0x2e,0x32,0x36,0x32,0x2c,0x30,0x6c,0x33, + 0x2e,0x30,0x30,0x36,0x2c,0x34,0x2e,0x36,0x38,0x34, + 0x63,0x30,0x2e,0x31,0x34,0x38,0x2c,0x30,0x2e,0x32, + 0x33,0x31,0x2c,0x30,0x2e,0x31,0x35,0x39,0x2c,0x30, + 0x2e,0x35,0x32,0x34,0x2c,0x30,0x2e,0x30,0x32,0x37, + 0x2c,0x30,0x2e,0x37,0x36,0x35,0x43,0x32,0x32,0x2e, + 0x30,0x39,0x39,0x2c,0x38,0x2e,0x35,0x30,0x34,0x2c, + 0x32,0x31,0x2e,0x38,0x34,0x37,0x2c,0x38,0x2e,0x36, + 0x35,0x34,0x2c,0x32,0x31,0x2e,0x35,0x37,0x33,0x2c, + 0x38,0x2e,0x36,0x35,0x34,0x7a,0x0d,0x0a,0x09,0x09, + 0x09,0x20,0x4d,0x31,0x36,0x2e,0x39,0x33,0x34,0x2c, + 0x37,0x2e,0x31,0x35,0x34,0x68,0x33,0x2e,0x32,0x36, + 0x37,0x6c,0x2d,0x31,0x2e,0x36,0x33,0x34,0x2d,0x32, + 0x2e,0x35,0x34,0x35,0x4c,0x31,0x36,0x2e,0x39,0x33, + 0x34,0x2c,0x37,0x2e,0x31,0x35,0x34,0x7a,0x22,0x2f, + 0x3e,0x0d,0x0a,0x09,0x3c,0x2f,0x67,0x3e,0x0d,0x0a, + 0x09,0x3c,0x67,0x3e,0x0d,0x0a,0x09,0x09,0x3c,0x70, + 0x61,0x74,0x68,0x20,0x66,0x69,0x6c,0x6c,0x3d,0x22, + 0x23,0x37,0x37,0x37,0x37,0x37,0x37,0x22,0x20,0x64, + 0x3d,0x22,0x4d,0x37,0x2e,0x38,0x34,0x36,0x2c,0x32, + 0x32,0x2e,0x33,0x32,0x33,0x63,0x2d,0x30,0x2e,0x31, + 0x34,0x31,0x2c,0x30,0x2d,0x30,0x2e,0x32,0x38,0x32, + 0x2d,0x30,0x2e,0x30,0x34,0x2d,0x30,0x2e,0x34,0x30, + 0x35,0x2d,0x30,0x2e,0x31,0x31,0x39,0x6c,0x2d,0x34, + 0x2e,0x36,0x38,0x34,0x2d,0x33,0x2e,0x30,0x30,0x35, + 0x63,0x2d,0x30,0x2e,0x32,0x31,0x35,0x2d,0x30,0x2e, + 0x31,0x33,0x38,0x2d,0x30,0x2e,0x33,0x34,0x35,0x2d, + 0x30,0x2e,0x33,0x37,0x35,0x2d,0x30,0x2e,0x33,0x34, + 0x35,0x2d,0x30,0x2e,0x36,0x33,0x31,0x0d,0x0a,0x09, + 0x09,0x09,0x73,0x30,0x2e,0x31,0x33,0x2d,0x30,0x2e, + 0x34,0x39,0x33,0x2c,0x30,0x2e,0x33,0x34,0x35,0x2d, + 0x30,0x2e,0x36,0x33,0x31,0x6c,0x34,0x2e,0x36,0x38, + 0x34,0x2d,0x33,0x2e,0x30,0x30,0x36,0x63,0x30,0x2e, + 0x32,0x33,0x31,0x2d,0x30,0x2e,0x31,0x34,0x37,0x2c, + 0x30,0x2e,0x35,0x32,0x34,0x2d,0x30,0x2e,0x31,0x35, + 0x39,0x2c,0x30,0x2e,0x37,0x36,0x35,0x2d,0x30,0x2e, + 0x30,0x32,0x37,0x63,0x30,0x2e,0x32,0x34,0x2c,0x30, + 0x2e,0x31,0x33,0x31,0x2c,0x30,0x2e,0x33,0x39,0x2c, + 0x30,0x2e,0x33,0x38,0x34,0x2c,0x30,0x2e,0x33,0x39, + 0x2c,0x30,0x2e,0x36,0x35,0x38,0x76,0x36,0x2e,0x30, + 0x31,0x31,0x0d,0x0a,0x09,0x09,0x09,0x63,0x30,0x2c, + 0x30,0x2e,0x32,0x37,0x34,0x2d,0x30,0x2e,0x31,0x35, + 0x2c,0x30,0x2e,0x35,0x32,0x36,0x2d,0x30,0x2e,0x33, + 0x39,0x2c,0x30,0x2e,0x36,0x35,0x38,0x43,0x38,0x2e, + 0x30,0x39,0x34,0x2c,0x32,0x32,0x2e,0x32,0x39,0x32, + 0x2c,0x37,0x2e,0x39,0x37,0x2c,0x32,0x32,0x2e,0x33, + 0x32,0x33,0x2c,0x37,0x2e,0x38,0x34,0x36,0x2c,0x32, + 0x32,0x2e,0x33,0x32,0x33,0x7a,0x20,0x4d,0x34,0x2e, + 0x35,0x35,0x31,0x2c,0x31,0x38,0x2e,0x35,0x36,0x38, + 0x6c,0x32,0x2e,0x35,0x34,0x35,0x2c,0x31,0x2e,0x36, + 0x33,0x33,0x76,0x2d,0x33,0x2e,0x32,0x36,0x36,0x4c, + 0x34,0x2e,0x35,0x35,0x31,0x2c,0x31,0x38,0x2e,0x35, + 0x36,0x38,0x7a,0x22,0x2f,0x3e,0x0d,0x0a,0x09,0x3c, + 0x2f,0x67,0x3e,0x0d,0x0a,0x09,0x3c,0x67,0x3e,0x0d, + 0x0a,0x09,0x09,0x3c,0x70,0x61,0x74,0x68,0x20,0x66, + 0x69,0x6c,0x6c,0x3d,0x22,0x23,0x37,0x37,0x37,0x37, + 0x37,0x37,0x22,0x20,0x64,0x3d,0x22,0x4d,0x33,0x33, + 0x2e,0x39,0x31,0x37,0x2c,0x31,0x38,0x2e,0x35,0x36, + 0x37,0x6c,0x2d,0x34,0x2e,0x36,0x38,0x35,0x2d,0x33, + 0x2e,0x30,0x30,0x35,0x76,0x36,0x2e,0x30,0x31,0x4c, + 0x33,0x33,0x2e,0x39,0x31,0x37,0x2c,0x31,0x38,0x2e, + 0x35,0x36,0x37,0x7a,0x22,0x2f,0x3e,0x0d,0x0a,0x09, + 0x09,0x3c,0x70,0x61,0x74,0x68,0x20,0x66,0x69,0x6c, + 0x6c,0x3d,0x22,0x23,0x37,0x37,0x37,0x37,0x37,0x37, + 0x22,0x20,0x64,0x3d,0x22,0x4d,0x32,0x39,0x2e,0x32, + 0x33,0x32,0x2c,0x32,0x32,0x2e,0x33,0x32,0x32,0x63, + 0x2d,0x30,0x2e,0x31,0x32,0x34,0x2c,0x30,0x2d,0x30, + 0x2e,0x32,0x34,0x37,0x2d,0x30,0x2e,0x30,0x33,0x2d, + 0x30,0x2e,0x33,0x35,0x39,0x2d,0x30,0x2e,0x30,0x39, + 0x32,0x63,0x2d,0x30,0x2e,0x32,0x34,0x31,0x2d,0x30, + 0x2e,0x31,0x33,0x32,0x2d,0x30,0x2e,0x33,0x39,0x31, + 0x2d,0x30,0x2e,0x33,0x38,0x34,0x2d,0x30,0x2e,0x33, + 0x39,0x31,0x2d,0x30,0x2e,0x36,0x35,0x38,0x76,0x2d, + 0x36,0x2e,0x30,0x31,0x0d,0x0a,0x09,0x09,0x09,0x63, + 0x30,0x2d,0x30,0x2e,0x32,0x37,0x34,0x2c,0x30,0x2e, + 0x31,0x34,0x39,0x2d,0x30,0x2e,0x35,0x32,0x36,0x2c, + 0x30,0x2e,0x33,0x39,0x31,0x2d,0x30,0x2e,0x36,0x35, + 0x38,0x63,0x30,0x2e,0x32,0x33,0x39,0x2d,0x30,0x2e, + 0x31,0x33,0x32,0x2c,0x30,0x2e,0x35,0x33,0x33,0x2d, + 0x30,0x2e,0x31,0x32,0x32,0x2c,0x30,0x2e,0x37,0x36, + 0x35,0x2c,0x30,0x2e,0x30,0x32,0x37,0x6c,0x34,0x2e, + 0x36,0x38,0x35,0x2c,0x33,0x2e,0x30,0x30,0x35,0x63, + 0x30,0x2e,0x32,0x31,0x35,0x2c,0x30,0x2e,0x31,0x33, + 0x38,0x2c,0x30,0x2e,0x33,0x34,0x35,0x2c,0x30,0x2e, + 0x33,0x37,0x36,0x2c,0x30,0x2e,0x33,0x34,0x35,0x2c, + 0x30,0x2e,0x36,0x33,0x31,0x0d,0x0a,0x09,0x09,0x09, + 0x73,0x2d,0x30,0x2e,0x31,0x33,0x2c,0x30,0x2e,0x34, + 0x39,0x33,0x2d,0x30,0x2e,0x33,0x34,0x35,0x2c,0x30, + 0x2e,0x36,0x33,0x31,0x6c,0x2d,0x34,0x2e,0x36,0x38, + 0x35,0x2c,0x33,0x2e,0x30,0x30,0x35,0x43,0x32,0x39, + 0x2e,0x35,0x31,0x34,0x2c,0x32,0x32,0x2e,0x32,0x38, + 0x32,0x2c,0x32,0x39,0x2e,0x33,0x37,0x33,0x2c,0x32, + 0x32,0x2e,0x33,0x32,0x32,0x2c,0x32,0x39,0x2e,0x32, + 0x33,0x32,0x2c,0x32,0x32,0x2e,0x33,0x32,0x32,0x7a, + 0x20,0x4d,0x32,0x39,0x2e,0x39,0x38,0x32,0x2c,0x31, + 0x36,0x2e,0x39,0x33,0x34,0x56,0x32,0x30,0x2e,0x32, + 0x6c,0x32,0x2e,0x35,0x34,0x36,0x2d,0x31,0x2e,0x36, + 0x33,0x33,0x0d,0x0a,0x09,0x09,0x09,0x4c,0x32,0x39, + 0x2e,0x39,0x38,0x32,0x2c,0x31,0x36,0x2e,0x39,0x33, + 0x34,0x7a,0x22,0x2f,0x3e,0x0d,0x0a,0x09,0x3c,0x2f, + 0x67,0x3e,0x0d,0x0a,0x09,0x3c,0x67,0x3e,0x0d,0x0a, + 0x09,0x09,0x3c,0x70,0x61,0x74,0x68,0x20,0x66,0x69, + 0x6c,0x6c,0x3d,0x22,0x23,0x37,0x37,0x37,0x37,0x37, + 0x37,0x22,0x20,0x64,0x3d,0x22,0x4d,0x31,0x38,0x2e, + 0x35,0x36,0x37,0x2c,0x33,0x34,0x2e,0x36,0x36,0x35, + 0x4c,0x31,0x38,0x2e,0x35,0x36,0x37,0x2c,0x33,0x34, + 0x2e,0x36,0x36,0x35,0x63,0x2d,0x30,0x2e,0x32,0x35, + 0x35,0x2c,0x30,0x2d,0x30,0x2e,0x34,0x39,0x33,0x2d, + 0x30,0x2e,0x31,0x33,0x2d,0x30,0x2e,0x36,0x33,0x31, + 0x2d,0x30,0x2e,0x33,0x34,0x35,0x6c,0x2d,0x33,0x2e, + 0x30,0x30,0x35,0x2d,0x34,0x2e,0x36,0x38,0x34,0x0d, + 0x0a,0x09,0x09,0x09,0x63,0x2d,0x30,0x2e,0x31,0x34, + 0x38,0x2d,0x30,0x2e,0x32,0x33,0x31,0x2d,0x30,0x2e, + 0x31,0x35,0x38,0x2d,0x30,0x2e,0x35,0x32,0x34,0x2d, + 0x30,0x2e,0x30,0x32,0x37,0x2d,0x30,0x2e,0x37,0x36, + 0x35,0x63,0x30,0x2e,0x31,0x33,0x32,0x2d,0x30,0x2e, + 0x32,0x34,0x31,0x2c,0x30,0x2e,0x33,0x38,0x34,0x2d, + 0x30,0x2e,0x33,0x39,0x31,0x2c,0x30,0x2e,0x36,0x35, + 0x38,0x2d,0x30,0x2e,0x33,0x39,0x31,0x68,0x36,0x2e, + 0x30,0x31,0x31,0x63,0x30,0x2e,0x32,0x37,0x34,0x2c, + 0x30,0x2c,0x30,0x2e,0x35,0x32,0x36,0x2c,0x30,0x2e, + 0x31,0x34,0x39,0x2c,0x30,0x2e,0x36,0x35,0x38,0x2c, + 0x30,0x2e,0x33,0x39,0x31,0x0d,0x0a,0x09,0x09,0x09, + 0x63,0x30,0x2e,0x31,0x33,0x32,0x2c,0x30,0x2e,0x32, + 0x34,0x2c,0x30,0x2e,0x31,0x32,0x31,0x2c,0x30,0x2e, + 0x35,0x33,0x33,0x2d,0x30,0x2e,0x30,0x32,0x37,0x2c, + 0x30,0x2e,0x37,0x36,0x35,0x6c,0x2d,0x33,0x2e,0x30, + 0x30,0x36,0x2c,0x34,0x2e,0x36,0x38,0x34,0x43,0x31, + 0x39,0x2e,0x30,0x36,0x2c,0x33,0x34,0x2e,0x35,0x33, + 0x35,0x2c,0x31,0x38,0x2e,0x38,0x32,0x32,0x2c,0x33, + 0x34,0x2e,0x36,0x36,0x35,0x2c,0x31,0x38,0x2e,0x35, + 0x36,0x37,0x2c,0x33,0x34,0x2e,0x36,0x36,0x35,0x7a, + 0x20,0x4d,0x31,0x36,0x2e,0x39,0x33,0x34,0x2c,0x32, + 0x39,0x2e,0x39,0x38,0x31,0x6c,0x31,0x2e,0x36,0x33, + 0x33,0x2c,0x32,0x2e,0x35,0x34,0x35,0x0d,0x0a,0x09, + 0x09,0x09,0x6c,0x31,0x2e,0x36,0x33,0x34,0x2d,0x32, + 0x2e,0x35,0x34,0x35,0x48,0x31,0x36,0x2e,0x39,0x33, + 0x34,0x7a,0x22,0x2f,0x3e,0x0d,0x0a,0x09,0x3c,0x2f, + 0x67,0x3e,0x0d,0x0a,0x3c,0x2f,0x67,0x3e,0x0d,0x0a, + 0x3c,0x2f,0x73,0x76,0x67,0x3e,0x0d,0x0a }; diff --git a/data/converted/slider_knob_svg.cpp b/data/converted/slider_knob_svg.cpp new file mode 100644 index 000000000..ec7122501 --- /dev/null +++ b/data/converted/slider_knob_svg.cpp @@ -0,0 +1,70 @@ +//this file was auto-generated from "slider_knob.svg" by res2h + +#include "../Resources.h" + +const size_t slider_knob_svg_size = 627; +const unsigned char slider_knob_svg_data[627] = { + 0x3c,0x3f,0x78,0x6d,0x6c,0x20,0x76,0x65,0x72,0x73, + 0x69,0x6f,0x6e,0x3d,0x22,0x31,0x2e,0x30,0x22,0x20, + 0x65,0x6e,0x63,0x6f,0x64,0x69,0x6e,0x67,0x3d,0x22, + 0x75,0x74,0x66,0x2d,0x38,0x22,0x3f,0x3e,0x0d,0x0a, + 0x3c,0x21,0x2d,0x2d,0x20,0x47,0x65,0x6e,0x65,0x72, + 0x61,0x74,0x6f,0x72,0x3a,0x20,0x41,0x64,0x6f,0x62, + 0x65,0x20,0x49,0x6c,0x6c,0x75,0x73,0x74,0x72,0x61, + 0x74,0x6f,0x72,0x20,0x31,0x36,0x2e,0x30,0x2e,0x33, + 0x2c,0x20,0x53,0x56,0x47,0x20,0x45,0x78,0x70,0x6f, + 0x72,0x74,0x20,0x50,0x6c,0x75,0x67,0x2d,0x49,0x6e, + 0x20,0x2e,0x20,0x53,0x56,0x47,0x20,0x56,0x65,0x72, + 0x73,0x69,0x6f,0x6e,0x3a,0x20,0x36,0x2e,0x30,0x30, + 0x20,0x42,0x75,0x69,0x6c,0x64,0x20,0x30,0x29,0x20, + 0x20,0x2d,0x2d,0x3e,0x0d,0x0a,0x3c,0x21,0x44,0x4f, + 0x43,0x54,0x59,0x50,0x45,0x20,0x73,0x76,0x67,0x20, + 0x50,0x55,0x42,0x4c,0x49,0x43,0x20,0x22,0x2d,0x2f, + 0x2f,0x57,0x33,0x43,0x2f,0x2f,0x44,0x54,0x44,0x20, + 0x53,0x56,0x47,0x20,0x31,0x2e,0x31,0x2f,0x2f,0x45, + 0x4e,0x22,0x20,0x22,0x68,0x74,0x74,0x70,0x3a,0x2f, + 0x2f,0x77,0x77,0x77,0x2e,0x77,0x33,0x2e,0x6f,0x72, + 0x67,0x2f,0x47,0x72,0x61,0x70,0x68,0x69,0x63,0x73, + 0x2f,0x53,0x56,0x47,0x2f,0x31,0x2e,0x31,0x2f,0x44, + 0x54,0x44,0x2f,0x73,0x76,0x67,0x31,0x31,0x2e,0x64, + 0x74,0x64,0x22,0x3e,0x0d,0x0a,0x3c,0x73,0x76,0x67, + 0x20,0x76,0x65,0x72,0x73,0x69,0x6f,0x6e,0x3d,0x22, + 0x31,0x2e,0x31,0x22,0x20,0x69,0x64,0x3d,0x22,0x45, + 0x62,0x65,0x6e,0x65,0x5f,0x31,0x22,0x20,0x78,0x6d, + 0x6c,0x6e,0x73,0x3d,0x22,0x68,0x74,0x74,0x70,0x3a, + 0x2f,0x2f,0x77,0x77,0x77,0x2e,0x77,0x33,0x2e,0x6f, + 0x72,0x67,0x2f,0x32,0x30,0x30,0x30,0x2f,0x73,0x76, + 0x67,0x22,0x20,0x78,0x6d,0x6c,0x6e,0x73,0x3a,0x78, + 0x6c,0x69,0x6e,0x6b,0x3d,0x22,0x68,0x74,0x74,0x70, + 0x3a,0x2f,0x2f,0x77,0x77,0x77,0x2e,0x77,0x33,0x2e, + 0x6f,0x72,0x67,0x2f,0x31,0x39,0x39,0x39,0x2f,0x78, + 0x6c,0x69,0x6e,0x6b,0x22,0x20,0x78,0x3d,0x22,0x30, + 0x70,0x78,0x22,0x20,0x79,0x3d,0x22,0x30,0x70,0x78, + 0x22,0x0d,0x0a,0x09,0x20,0x77,0x69,0x64,0x74,0x68, + 0x3d,0x22,0x31,0x36,0x70,0x78,0x22,0x20,0x68,0x65, + 0x69,0x67,0x68,0x74,0x3d,0x22,0x31,0x36,0x70,0x78, + 0x22,0x20,0x76,0x69,0x65,0x77,0x42,0x6f,0x78,0x3d, + 0x22,0x30,0x20,0x30,0x20,0x31,0x36,0x20,0x31,0x36, + 0x22,0x20,0x65,0x6e,0x61,0x62,0x6c,0x65,0x2d,0x62, + 0x61,0x63,0x6b,0x67,0x72,0x6f,0x75,0x6e,0x64,0x3d, + 0x22,0x6e,0x65,0x77,0x20,0x30,0x20,0x30,0x20,0x31, + 0x36,0x20,0x31,0x36,0x22,0x20,0x78,0x6d,0x6c,0x3a, + 0x73,0x70,0x61,0x63,0x65,0x3d,0x22,0x70,0x72,0x65, + 0x73,0x65,0x72,0x76,0x65,0x22,0x3e,0x0d,0x0a,0x3c, + 0x70,0x61,0x74,0x68,0x20,0x66,0x69,0x6c,0x6c,0x2d, + 0x72,0x75,0x6c,0x65,0x3d,0x22,0x65,0x76,0x65,0x6e, + 0x6f,0x64,0x64,0x22,0x20,0x63,0x6c,0x69,0x70,0x2d, + 0x72,0x75,0x6c,0x65,0x3d,0x22,0x65,0x76,0x65,0x6e, + 0x6f,0x64,0x64,0x22,0x20,0x66,0x69,0x6c,0x6c,0x3d, + 0x22,0x23,0x37,0x37,0x37,0x37,0x37,0x37,0x22,0x20, + 0x64,0x3d,0x22,0x4d,0x38,0x2c,0x30,0x63,0x34,0x2e, + 0x34,0x31,0x38,0x2c,0x30,0x2c,0x38,0x2c,0x33,0x2e, + 0x35,0x38,0x32,0x2c,0x38,0x2c,0x38,0x63,0x30,0x2c, + 0x34,0x2e,0x34,0x31,0x38,0x2d,0x33,0x2e,0x35,0x38, + 0x32,0x2c,0x38,0x2d,0x38,0x2c,0x38,0x73,0x2d,0x38, + 0x2d,0x33,0x2e,0x35,0x38,0x32,0x2d,0x38,0x2d,0x38, + 0x0d,0x0a,0x09,0x43,0x30,0x2c,0x33,0x2e,0x35,0x38, + 0x32,0x2c,0x33,0x2e,0x35,0x38,0x33,0x2c,0x30,0x2c, + 0x38,0x2c,0x30,0x7a,0x22,0x2f,0x3e,0x0d,0x0a,0x3c, + 0x2f,0x73,0x76,0x67,0x3e,0x0d,0x0a +}; diff --git a/data/resources/help/dpad_right.svg b/data/resources/help/dpad_right.svg index fddf6bc91..989719d19 100644 --- a/data/resources/help/dpad_right.svg +++ b/data/resources/help/dpad_right.svg @@ -2,23 +2,48 @@ + width="37.133px" height="37.133px" viewBox="0 0 37.133 37.133" enable-background="new 0 0 37.133 37.133" xml:space="preserve"> - + + + + + + + + + + + + + + + + + + + - - - - - diff --git a/data/resources/slider_knob.png b/data/resources/slider_knob.png deleted file mode 100644 index 1a9d3d669..000000000 Binary files a/data/resources/slider_knob.png and /dev/null differ diff --git a/data/resources/slider_knob.svg b/data/resources/slider_knob.svg new file mode 100644 index 000000000..47d4e97ac --- /dev/null +++ b/data/resources/slider_knob.svg @@ -0,0 +1,8 @@ + + + + + + diff --git a/src/components/ButtonComponent.cpp b/src/components/ButtonComponent.cpp index 75cc8b52d..1dae3d043 100644 --- a/src/components/ButtonComponent.cpp +++ b/src/components/ButtonComponent.cpp @@ -44,8 +44,9 @@ void ButtonComponent::setText(const std::string& text, const std::string& helpTe mHelpText = helpText; mTextCache = std::unique_ptr(mFont->buildTextCache(mText, 0, 0, getCurTextColor())); - - setSize(mTextCache->metrics.size + Eigen::Vector2f(12, 0)); + + float minWidth = mFont->sizeText("DELETE").x() + 12; + setSize(std::max(mTextCache->metrics.size.x() + 12, minWidth), mTextCache->metrics.size.y()); updateHelpPrompts(); } diff --git a/src/components/ImageComponent.cpp b/src/components/ImageComponent.cpp index 0d9e7410d..c202f3578 100644 --- a/src/components/ImageComponent.cpp +++ b/src/components/ImageComponent.cpp @@ -78,7 +78,7 @@ void ImageComponent::resize() SVGResource* svg = dynamic_cast(mTexture.get()); if(svg) { - svg->rasterizeAt((int)mSize.x(), (int)mSize.y()); + svg->rasterizeAt((int)round(mSize.x()), (int)round(mSize.y())); } } diff --git a/src/components/MenuComponent.cpp b/src/components/MenuComponent.cpp index b6cd3a731..01d5c72ae 100644 --- a/src/components/MenuComponent.cpp +++ b/src/components/MenuComponent.cpp @@ -1,8 +1,8 @@ #include "MenuComponent.h" #include "ButtonComponent.h" -#define BUTTON_GRID_VERT_PADDING 20 -#define BUTTON_GRID_HORIZ_PADDING 16 +#define BUTTON_GRID_VERT_PADDING 32 +#define BUTTON_GRID_HORIZ_PADDING 10 using namespace Eigen; @@ -98,3 +98,11 @@ std::shared_ptr makeButtonGrid(Window* window, const std::vector< return buttonGrid; } + +std::shared_ptr makeArrow(Window* window) +{ + auto bracket = std::make_shared(window); + bracket->setImage(":/arrow.svg"); + bracket->setResize(0, round(Font::get(FONT_SIZE_MEDIUM)->getLetterHeight())); + return bracket; +} diff --git a/src/components/MenuComponent.h b/src/components/MenuComponent.h index 7c23672fe..319152b09 100644 --- a/src/components/MenuComponent.h +++ b/src/components/MenuComponent.h @@ -7,8 +7,10 @@ #include "../Util.h" class ButtonComponent; +class ImageComponent; std::shared_ptr makeButtonGrid(Window* window, const std::vector< std::shared_ptr >& buttons); +std::shared_ptr makeArrow(Window* window); class MenuComponent : public GuiComponent { diff --git a/src/components/OptionListComponent.h b/src/components/OptionListComponent.h index 8fbae485f..11a62156a 100644 --- a/src/components/OptionListComponent.h +++ b/src/components/OptionListComponent.h @@ -55,7 +55,7 @@ private: // add checkbox auto checkbox = std::make_shared(mWindow); checkbox->setImage(it->selected ? ":/checkbox_checked.svg" : ":/checkbox_unchecked.svg"); - + checkbox->setResize(0, font->getLetterHeight()); row.addElement(checkbox, false); // input handler @@ -135,8 +135,8 @@ public: // handles positioning/resizing of text and arrows void onSizeChanged() override { - mLeftArrow.setResize(0, mSize.y() * 0.5f); - mRightArrow.setResize(0, mSize.y() * 0.5f); + mLeftArrow.setResize(0, mText.getFont()->getLetterHeight()); + mRightArrow.setResize(0, mText.getFont()->getLetterHeight()); if(mSize.x() < (mLeftArrow.getSize().x() + mRightArrow.getSize().x())) LOG(LogWarning) << "OptionListComponent too narrow!"; diff --git a/src/components/SliderComponent.cpp b/src/components/SliderComponent.cpp index c9d848838..76d374d78 100644 --- a/src/components/SliderComponent.cpp +++ b/src/components/SliderComponent.cpp @@ -16,9 +16,9 @@ SliderComponent::SliderComponent(Window* window, float min, float max, float inc mMoveScale = ((max - min) * 0.0007f) / increment; mKnob.setOrigin(0.5f, 0.5f); - mKnob.setImage(":/slider_knob.png"); + mKnob.setImage(":/slider_knob.svg"); - setSize(196, 32); + setSize(Renderer::getScreenWidth() * 0.15f, Font::get(FONT_SIZE_MEDIUM)->getLetterHeight()); } bool SliderComponent::input(InputConfig* config, Input input) @@ -108,7 +108,7 @@ float SliderComponent::getValue() void SliderComponent::onSizeChanged() { if(!mSuffix.empty()) - mFont = Font::get((int)(mSize.y() * 0.8f), FONT_PATH_LIGHT); + mFont = Font::get((int)(mSize.y()), FONT_PATH_LIGHT); onValueChanged(); } @@ -139,11 +139,7 @@ void SliderComponent::onValueChanged() } // update knob position/size - if(mKnob.getTextureSize().y() > mSize.y()) // only downscale - mKnob.setResize(0, mSize.y()); - else - mKnob.setResize(0, 0); - + mKnob.setResize(0, mSize.y() * 0.7f); float lineLength = mSize.x() - mKnob.getSize().x() - (mValueCache ? mValueCache->metrics.size.x() + 4 : 0); mKnob.setPosition(((mValue + mMin) / mMax) * lineLength + mKnob.getSize().x()/2, mSize.y() / 2); } diff --git a/src/components/SwitchComponent.cpp b/src/components/SwitchComponent.cpp index ed47a5757..97536351c 100644 --- a/src/components/SwitchComponent.cpp +++ b/src/components/SwitchComponent.cpp @@ -6,9 +6,7 @@ SwitchComponent::SwitchComponent(Window* window, bool state) : GuiComponent(window), mImage(window), mState(state) { mImage.setImage(":/checkbox_unchecked.svg"); - - float height = (float)FONT_SIZE_MEDIUM; - mImage.setResize(0, height); + mImage.setResize(0, Font::get(FONT_SIZE_MEDIUM)->getLetterHeight()); mSize = mImage.getSize(); } diff --git a/src/guis/GuiInputConfig.cpp b/src/guis/GuiInputConfig.cpp index 0c1ab47e4..694e0d8a4 100644 --- a/src/guis/GuiInputConfig.cpp +++ b/src/guis/GuiInputConfig.cpp @@ -52,7 +52,7 @@ GuiInputConfig::GuiInputConfig(Window* window, InputConfig* target, bool reconfi // icon auto icon = std::make_shared(mWindow); icon->setImage(inputIcon[i]); - icon->setResize(0, Font::get(FONT_SIZE_MEDIUM)->getHeight() * 0.8f); + icon->setResize(0, Font::get(FONT_SIZE_MEDIUM)->getLetterHeight() * ((i < 4) ? 1.2f : 1.0f)); // hack to enlarge dpad row.addElement(icon, false); // spacer between icon and text diff --git a/src/guis/GuiMenu.cpp b/src/guis/GuiMenu.cpp index bab8438fb..f0a819a9e 100644 --- a/src/guis/GuiMenu.cpp +++ b/src/guis/GuiMenu.cpp @@ -13,22 +13,11 @@ #include "../components/SliderComponent.h" #include "../components/TextComponent.h" #include "../components/OptionListComponent.h" +#include "../components/MenuComponent.h" #include "../VolumeControl.h" #include "../scrapers/GamesDBScraper.h" #include "../scrapers/TheArchiveScraper.h" -std::shared_ptr makeBracket(Window* window) -{ - auto bracket = std::make_shared(window); - bracket->setImage(":/arrow.svg"); - - // resize - const float fontHeight = Font::get(FONT_SIZE_MEDIUM)->getHeight(); - bracket->setResize(0, round(fontHeight * 0.5f)); - - return bracket; -} - GuiMenu::GuiMenu(Window* window) : GuiComponent(window), mMenu(window, "MAIN MENU") { setSize((float)Renderer::getScreenWidth(), (float)Renderer::getScreenHeight()); @@ -68,7 +57,7 @@ GuiMenu::GuiMenu(Window* window) : GuiComponent(window), mMenu(window, "MAIN MEN row.makeAcceptInputHandler(openAndSave); auto scrape_now = std::make_shared(mWindow, "SCRAPE NOW", Font::get(FONT_SIZE_MEDIUM), 0x777777FF); - auto bracket = makeBracket(mWindow); + auto bracket = makeArrow(mWindow); row.addElement(scrape_now, true); row.addElement(bracket, false); s->addRow(row); @@ -195,7 +184,7 @@ void GuiMenu::addEntry(const char* name, unsigned int color, bool add_arrow, con if(add_arrow) { - std::shared_ptr bracket = makeBracket(mWindow); + std::shared_ptr bracket = makeArrow(mWindow); row.addElement(bracket, false); } diff --git a/src/guis/GuiMetaDataEd.cpp b/src/guis/GuiMetaDataEd.cpp index 04c9144bf..98252686e 100644 --- a/src/guis/GuiMetaDataEd.cpp +++ b/src/guis/GuiMetaDataEd.cpp @@ -68,7 +68,7 @@ GuiMetaDataEd::GuiMetaDataEd(Window* window, MetaDataList* md, const std::vector auto bracket = std::make_shared(mWindow); bracket->setImage(":/arrow.svg"); - bracket->setResize(Eigen::Vector2f(0, lbl->getSize().y() * 0.8f)); + bracket->setResize(Eigen::Vector2f(0, lbl->getFont()->getLetterHeight())); row.addElement(bracket, false); bool multiLine = iter->type == MD_MULTILINE_STRING; diff --git a/src/resources/Font.cpp b/src/resources/Font.cpp index 14a197d5c..9676c30da 100644 --- a/src/resources/Font.cpp +++ b/src/resources/Font.cpp @@ -282,6 +282,10 @@ float Font::getHeight() const return mMaxGlyphHeight * 1.5f * fontScale; } +float Font::getLetterHeight() const +{ + return charData['S'].texH * fontScale; +} void Font::drawCenteredText(std::string text, float xOffset, float y, unsigned int color) { @@ -434,7 +438,7 @@ TextCache* Font::buildTextCache(const std::string& text, float offsetX, float of float x = offsetX; - float yTop = (charData['S'].bearingY); + float yTop = charData['S'].bearingY * fontScale; float yBot = getHeight(); float y = offsetY + (yBot + yTop)/2.0f; diff --git a/src/resources/Font.h b/src/resources/Font.h index 2ceefcc1a..51a39cc91 100644 --- a/src/resources/Font.h +++ b/src/resources/Font.h @@ -66,6 +66,7 @@ public: void drawCenteredText(std::string text, float xOffset, float y, unsigned int color); float getHeight() const; + float getLetterHeight() const; void unload(std::shared_ptr& rm) override; void reload(std::shared_ptr& rm) override;