From 8431b80e482bd1daf90f59c94a1d1ecc0bd252d7 Mon Sep 17 00:00:00 2001 From: Bartosz Sosnowski Date: Wed, 4 Sep 2019 18:26:26 +0200 Subject: [PATCH] FancyZones and Shortcut Guide initial commit Co-authored-by: Alexis Campailla Co-authored-by: Bret Anderson Co-authored-by: Enrico Giordani Co-authored-by: Jaime Bernardo Co-authored-by: Jeff Bogdan Co-authored-by: March Rogers Co-authored-by: Mike Harsh Co-authored-by: Nachum Bundak Co-authored-by: Oliver Jones Co-authored-by: Patrick Little --- .gitattributes | 1 + .github/ISSUE_TEMPLATE/bug_report.md | 37 + .github/ISSUE_TEMPLATE/documentation-issue.md | 10 + .github/ISSUE_TEMPLATE/feature_request.md | 21 + .github/pull_request_template.md | 19 + .pipelines/build.cmd | 2 + .pipelines/pipeline.user.windows.yml | 43 + .pipelines/restore.cmd | 3 + License.rtf | Bin 0 -> 1309 bytes PowerToys.sln | 120 + README.md | 169 +- build/pipelines/ci.yml | 24 + .../templates/build-powertoys-ci.yml | 17 + .../templates/build-powertoys-steps.yml | 35 + contributing.md | 128 + deps/cpprestsdk/README.md | 12 + deps/cpprestsdk/cpprestsdk.vcxproj | 121 + .../include/cpprest/asyncrt_utils.h | 697 + deps/cpprestsdk/include/cpprest/base_uri.h | 391 + .../include/cpprest/details/SafeInt3.hpp | 7482 ++++++++++ .../include/cpprest/details/basic_types.h | 131 + .../include/cpprest/details/cpprest_compat.h | 91 + .../include/cpprest/details/web_utilities.h | 223 + deps/cpprestsdk/include/cpprest/json.h | 1786 +++ deps/cpprestsdk/include/cpprest/uri.h | 21 + deps/cpprestsdk/include/cpprest/uri_builder.h | 295 + deps/cpprestsdk/include/cpprest/version.h | 10 + deps/cpprestsdk/license.txt | 25 + deps/cpprestsdk/pch.cpp | 1 + deps/cpprestsdk/pch.h | 34 + deps/cpprestsdk/src/json/json.cpp | 475 + deps/cpprestsdk/src/json/json_parsing.cpp | 1279 ++ .../src/json/json_serialization.cpp | 254 + .../src/utilities/asyncrt_utils.cpp | 1490 ++ deps/cpprestsdk/src/utilities/base64.cpp | 260 + .../src/utilities/web_utilities.cpp | 157 + doc/coding/organization.md | 29 + doc/coding/style.md | 5 + doc/images/FZTutorial.jpg | Bin 0 -> 219271 bytes doc/images/Logo.jpg | Bin 0 -> 38213 bytes doc/images/MTNDWidget.jpg | Bin 0 -> 5877 bytes doc/images/WindowsKeyShortcutGuide.jpg | Bin 0 -> 331636 bytes doc/images/example_powertoy/settings.png | Bin 0 -> 129427 bytes doc/images/runner/tray.png | Bin 0 -> 3484 bytes doc/images/shortcut_guide/settings.png | Bin 0 -> 41296 bytes doc/images/shortcut_guide/usage.png | Bin 0 -> 98245 bytes doc/planning/FancyZonesBacklog.md | 27 + doc/planning/PowerToysBacklog.md | 25 + doc/planning/ShortcutGuideBacklog.md | 13 + doc/specs/PowerToys-fancyzones.md | 215 + doc/specs/PowerToys-settings.md | 57 + doc/specs/Shared-hooks.md | 85 + installer/PowerToysSetup.sln | 31 + installer/PowerToysSetup/Bitmaps/banner.bmp | Bin 0 -> 85894 bytes installer/PowerToysSetup/Bitmaps/dialog.bmp | Bin 0 -> 461814 bytes .../CustomDialogs/PTInstallDirDlg.wxs | 30 + .../CustomDialogs/WixUI_PTInstallDir.wxs | 81 + .../PowerToysSetup/PowerToysSetup.wixproj | 62 + installer/PowerToysSetup/Product.wxs | 285 + .../CustomAction.cpp | 528 + .../CustomAction.def | 13 + .../PowerToysSetupCustomActions.vcxproj | 116 + ...owerToysSetupCustomActions.vcxproj.filters | 24 + .../Telemetry/ProjectTelemetry.h | 6 + .../Telemetry/TraceLoggingDefines.h | 6 + .../PowerToysSetupCustomActions/stdafx.cpp | 4 + .../PowerToysSetupCustomActions/stdafx.h | 13 + installer/README.md | 7 + src/README.md | 8 + src/common/README.md | 48 + src/common/Telemetry/PowerToys.wprp | 22 + src/common/Telemetry/ProjectTelemetry.h | 6 + src/common/Telemetry/TraceLoggingDefines.h | 6 + src/common/Telemetry/readme.md | 25 + .../UnitTests-CommonLib/Settings.Tests.cpp | 62 + .../UnitTests-CommonLib.vcxproj | 115 + .../UnitTests-CommonLib.vcxproj.filters | 30 + src/common/UnitTests-CommonLib/pch.cpp | 5 + src/common/UnitTests-CommonLib/pch.h | 16 + src/common/animation.cpp | 43 + src/common/animation.h | 31 + src/common/async_message_queue.h | 47 + src/common/common.cpp | 152 + src/common/common.h | 36 + src/common/common.vcxproj | 138 + src/common/common.vcxproj.filters | 109 + src/common/d2d_svg.cpp | 105 + src/common/d2d_svg.h | 24 + src/common/d2d_text.cpp | 48 + src/common/d2d_text.h | 16 + src/common/d2d_window.cpp | 184 + src/common/d2d_window.h | 60 + src/common/dpi_aware.cpp | 28 + src/common/dpi_aware.h | 11 + src/common/monitors.cpp | 67 + src/common/monitors.h | 41 + src/common/pch.cpp | 1 + src/common/pch.h | 26 + src/common/settings_helpers.cpp | 75 + src/common/settings_helpers.h | 13 + src/common/settings_objects.cpp | 237 + src/common/settings_objects.h | 96 + src/common/start_visible.cpp | 16 + src/common/start_visible.h | 4 + src/common/tasklist_positions.cpp | 93 + src/common/tasklist_positions.h | 22 + src/common/two_way_pipe_message_ipc.h | 429 + src/common/windows_colors.cpp | 71 + src/common/windows_colors.h | 27 + src/editor/README.md | 21 + src/editor/StreamURIResolverFromFile.cpp | 24 + src/editor/StreamUriResolverFromFile.h | 8 + src/editor/main.cpp | 444 + src/editor/pch.cpp | 1 + src/editor/pch.h | 17 + src/editor/resource.h | 1 + src/editor/settings-html/200.html | 25 + src/editor/settings-html/dist/bundle.js | 31 + src/editor/settings-html/index.html | 13 + src/editor/settings.rc | 36 + src/editor/settings.vcxproj | 137 + src/editor/settings.vcxproj.filters | 49 + src/modules/README.md | 18 + src/modules/example_powertoy/README.md | 22 + src/modules/example_powertoy/dllmain.cpp | 292 + .../example_powertoy/example_powertoy.rc | 32 + .../example_powertoy/example_powertoy.vcxproj | 122 + .../example_powertoy.vcxproj.filters | 16 + src/modules/example_powertoy/pch.cpp | 2 + src/modules/example_powertoy/pch.h | 5 + src/modules/example_powertoy/resource.h | 0 src/modules/example_powertoy/trace.cpp | 26 + src/modules/example_powertoy/trace.h | 8 + src/modules/fancyzones/FancyZones.png | Bin 0 -> 1297315 bytes src/modules/fancyzones/FancyZonesSettings.png | Bin 0 -> 181718 bytes src/modules/fancyzones/Picker.png | Bin 0 -> 36720 bytes src/modules/fancyzones/README.md | 41 + src/modules/fancyzones/TableEditor.png | Bin 0 -> 295657 bytes src/modules/fancyzones/WindowEditor.png | Bin 0 -> 284619 bytes .../fancyzones/dll/FancyZonesModule.vcxproj | 137 + .../dll/FancyZonesModule.vcxproj.filters | 34 + src/modules/fancyzones/dll/README.md | 53 + src/modules/fancyzones/dll/dllmain.cpp | 319 + src/modules/fancyzones/dll/fancyzones.def | 4 + src/modules/fancyzones/dll/packages.config | 4 + src/modules/fancyzones/dll/pch.cpp | 1 + src/modules/fancyzones/dll/pch.h | 18 + src/modules/fancyzones/dll/targetver.h | Bin 0 -> 630 bytes .../fancyzones/editor/FancyZonesEditor.sln | 25 + .../editor/FancyZonesEditor/App.config | 6 + .../editor/FancyZonesEditor/App.xaml | 17 + .../editor/FancyZonesEditor/App.xaml.cs | 74 + .../editor/FancyZonesEditor/CanvasEditor.xaml | 12 + .../FancyZonesEditor/CanvasEditor.xaml.cs | 77 + .../FancyZonesEditor/CanvasEditorWindow.xaml | 189 + .../CanvasEditorWindow.xaml.cs | 39 + .../editor/FancyZonesEditor/CanvasZone.xaml | 44 + .../FancyZonesEditor/CanvasZone.xaml.cs | 167 + .../FancyZonesEditor/EditorOverlay.xaml | 15 + .../FancyZonesEditor/EditorOverlay.xaml.cs | 138 + .../editor/FancyZonesEditor/EditorWindow.cs | 51 + .../FancyZonesEditor/FancyZonesEditor.csproj | 193 + .../editor/FancyZonesEditor/GridEditor.xaml | 35 + .../FancyZonesEditor/GridEditor.xaml.cs | 911 ++ .../FancyZonesEditor/GridEditorWindow.xaml | 184 + .../FancyZonesEditor/GridEditorWindow.xaml.cs | 29 + .../editor/FancyZonesEditor/GridResizer.xaml | 18 + .../FancyZonesEditor/GridResizer.xaml.cs | 62 + .../editor/FancyZonesEditor/GridZone.xaml | 15 + .../editor/FancyZonesEditor/GridZone.xaml.cs | 309 + .../FancyZonesEditor/LayoutPreview.xaml | 13 + .../FancyZonesEditor/LayoutPreview.xaml.cs | 192 + .../editor/FancyZonesEditor/MainWindow.xaml | 277 + .../FancyZonesEditor/MainWindow.xaml.cs | 218 + .../Models/CanvasLayoutModel.cs | 164 + .../Models/GridLayoutModel.cs | 224 + .../FancyZonesEditor/Models/LayoutModel.cs | 226 + .../FancyZonesEditor/Models/Settings.cs | 304 + .../Properties/AssemblyInfo.cs | 55 + .../Properties/Resources.Designer.cs | 63 + .../Properties/Resources.resx | 117 + .../Properties/Settings.Designer.cs | 26 + .../Properties/Settings.settings | 7 + .../editor/FancyZonesEditor/RowColInfo.cs | 46 + .../editor/FancyZonesEditor/WindowLayout.xaml | 52 + .../FancyZonesEditor/WindowLayout.xaml.cs | 32 + .../FancyZonesEditor/images/ChromeClose.png | Bin 0 -> 434 bytes .../editor/FancyZonesEditor/images/Delete.png | Bin 0 -> 317 bytes .../editor/FancyZonesEditor/images/Merge.png | Bin 0 -> 279 bytes src/modules/fancyzones/lib/FancyZones.cpp | 704 + src/modules/fancyzones/lib/FancyZones.h | Bin 0 -> 2796 bytes .../fancyzones/lib/FancyZonesLib.vcxproj | 133 + .../lib/FancyZonesLib.vcxproj.filters | 81 + src/modules/fancyzones/lib/RegistryHelpers.h | 164 + src/modules/fancyzones/lib/Settings.cpp | 155 + src/modules/fancyzones/lib/Settings.h | 28 + src/modules/fancyzones/lib/Zone.cpp | 95 + src/modules/fancyzones/lib/Zone.h | 14 + src/modules/fancyzones/lib/ZoneSet.cpp | 385 + src/modules/fancyzones/lib/ZoneSet.h | 79 + src/modules/fancyzones/lib/ZoneWindow.cpp | 1308 ++ src/modules/fancyzones/lib/ZoneWindow.h | 23 + src/modules/fancyzones/lib/fancyzones.rc | 54 + src/modules/fancyzones/lib/packages.config | 4 + src/modules/fancyzones/lib/pch.cpp | 5 + src/modules/fancyzones/lib/pch.h | 33 + src/modules/fancyzones/lib/resource.h | 13 + src/modules/fancyzones/lib/trace.cpp | 164 + src/modules/fancyzones/lib/trace.h | 45 + src/modules/fancyzones/lib/util.h | 152 + .../tests/UnitTests/RegistryHelpers.Spec.cpp | 36 + .../tests/UnitTests/UnitTests.vcxproj | 131 + .../tests/UnitTests/UnitTests.vcxproj.filters | 48 + .../fancyzones/tests/UnitTests/Util.Spec.cpp | 33 + src/modules/fancyzones/tests/UnitTests/Util.h | 42 + .../fancyzones/tests/UnitTests/Zone.Spec.cpp | 54 + .../tests/UnitTests/ZoneSet.Spec.cpp | 336 + .../tests/UnitTests/ZoneWindow.Spec.cpp | 45 + .../tests/UnitTests/packages.config | 4 + .../fancyzones/tests/UnitTests/pch.cpp | 5 + src/modules/fancyzones/tests/UnitTests/pch.h | 18 + src/modules/interface/README.md | 341 + .../interface/lowlevel_keyboard_event_data.h | 45 + .../interface/powertoy_module_interface.h | 86 + src/modules/interface/win_hook_event_data.h | 50 + src/modules/shortcut_guide/README.md | 46 + src/modules/shortcut_guide/dllmain.cpp | 30 + src/modules/shortcut_guide/keyboard_state.cpp | 22 + src/modules/shortcut_guide/keyboard_state.h | 3 + src/modules/shortcut_guide/overlay_window.cpp | 717 + src/modules/shortcut_guide/overlay_window.h | 86 + src/modules/shortcut_guide/pch.cpp | 9 + src/modules/shortcut_guide/pch.h | 27 + src/modules/shortcut_guide/resource.h | 2 + src/modules/shortcut_guide/shortcut_guide.cpp | 170 + src/modules/shortcut_guide/shortcut_guide.h | 49 + src/modules/shortcut_guide/shortcut_guide.rc | 40 + .../shortcut_guide/shortcut_guide.vcxproj | 128 + .../shortcut_guide.vcxproj.filters | 52 + src/modules/shortcut_guide/target_state.cpp | 147 + src/modules/shortcut_guide/target_state.h | 35 + src/modules/shortcut_guide/trace.cpp | 47 + src/modules/shortcut_guide/trace.h | 9 + src/runner/README.md | 50 + src/runner/auto_start_helper.cpp | 362 + src/runner/auto_start_helper.h | 4 + src/runner/general_settings.cpp | 91 + src/runner/general_settings.h | 6 + src/runner/lowlevel_keyboard_event.cpp | 36 + src/runner/lowlevel_keyboard_event.h | 5 + src/runner/main.cpp | 81 + src/runner/pch.cpp | 9 + src/runner/pch.h | 26 + src/runner/powertoy_module.cpp | 24 + src/runner/powertoy_module.h | 83 + src/runner/powertoys_events.cpp | 54 + src/runner/powertoys_events.h | 19 + src/runner/resource.h | 5 + src/runner/runner.rc | 49 + src/runner/runner.vcxproj | 226 + src/runner/runner.vcxproj.filters | 127 + src/runner/settings_window.cpp | 265 + src/runner/settings_window.h | 2 + src/runner/svgs/0.svg | 26 + src/runner/svgs/1.svg | 26 + src/runner/svgs/2.svg | 26 + src/runner/svgs/3.svg | 26 + src/runner/svgs/4.svg | 26 + src/runner/svgs/5.svg | 26 + src/runner/svgs/6.svg | 26 + src/runner/svgs/7.svg | 26 + src/runner/svgs/8.svg | 26 + src/runner/svgs/9.svg | 26 + src/runner/svgs/icon.ico | Bin 0 -> 918 bytes src/runner/svgs/no_active_window.svg | 20 + src/runner/svgs/overlay.svg | 207 + src/runner/svgs/overlay_portrait.svg | 209 + src/runner/trace.cpp | 26 + src/runner/trace.h | 8 + src/runner/tray_icon.cpp | 158 + src/runner/tray_icon.h | 9 + src/runner/unhandled_exception_handler.cpp | 134 + src/runner/unhandled_exception_handler.h | 4 + src/runner/win_hook_event.cpp | 72 + src/runner/win_hook_event.h | 7 + src/settings-web/.gitignore | 31 + src/settings-web/README.md | 186 + src/settings-web/index.html | 25 + src/settings-web/just.config.js | 3 + src/settings-web/package-lock.json | 12374 ++++++++++++++++ src/settings-web/package.json | 42 + src/settings-web/src/components/App.tsx | 282 + .../src/components/BaseSettingsControl.tsx | 13 + .../components/BoolToggleSettingsControl.tsx | 49 + .../components/ColorPickerSettingsControl.tsx | 45 + .../CustomActionSettingsControl.tsx | 54 + .../src/components/CustomSettingsScreen.tsx | 150 + .../src/components/GeneralSettings.tsx | 137 + .../components/IntSpinnerSettingsControl.tsx | 99 + .../components/StringTextSettingsControl.tsx | 51 + src/settings-web/src/components/fabric.png | Bin 0 -> 7536 bytes src/settings-web/src/css/layout.css | 61 + src/settings-web/src/icons/README.md | 136 + .../src/icons/config/fabric-icons.json | 77 + .../src/icons/css/fabric-icons-inline.css | 34 + .../src/icons/css/fabric-icons.css | 34 + src/settings-web/src/icons/fabric-icons.html | 276 + .../src/icons/fonts/fabric-icons.woff | Bin 0 -> 3004 bytes .../microsoft-ui-fabric-assets-license.pdf | Bin 0 -> 467888 bytes .../src/icons/scss/fabric-icons-inline.scss | 55 + .../src/icons/scss/fabric-icons.scss | 55 + src/settings-web/src/icons/src/IconNames.ts | 1757 +++ .../src/icons/src/data/AllIconNames.json | 1752 +++ .../src/icons/src/fabric-icons.ts | 49 + src/settings-web/src/icons/src/iconAliases.ts | 13 + src/settings-web/src/icons/src/index.ts | 18 + src/settings-web/src/index.tsx | 29 + src/settings-web/src/setup_icons.tsx | 26 + .../src/svg/animated_gif_recorder.svg | 19 + src/settings-web/src/svg/batch_renamer.svg | 38 + src/settings-web/src/svg/fancy_zones.svg | 20 + .../src/svg/maximize_new_desktop.svg | 22 + src/settings-web/src/svg/shortcut_guide.svg | 23 + src/settings-web/src/svg/terminate_tool.svg | 21 + src/settings-web/tsconfig.json | 20 + src/settings-web/typings/just-scripts.d.ts | 49 + src/settings-web/webpack.config.js | 23 + src/settings-web/webpack.serve.config.js | 19 + .../ModuleTemplate/ModuleTemplate.rc | 32 + .../ModuleTemplate/ModuleTemplate.vcxproj | 123 + .../ModuleTemplate.vcxproj.filters | 16 + .../project_template/ModuleTemplate/README.md | 44 + .../ModuleTemplate/dllmain.cpp | 324 + tools/project_template/ModuleTemplate/pch.cpp | 2 + tools/project_template/ModuleTemplate/pch.h | 5 + .../ModuleTemplate/resource.h | 0 .../project_template/ModuleTemplate/trace.cpp | 26 + tools/project_template/ModuleTemplate/trace.h | 8 + .../PowerToysModuleTemplate.zip | Bin 0 -> 7684 bytes tools/project_template/README.md | 448 + tools/project_template/TemplateIcon.ico | Bin 0 -> 918 bytes 341 files changed, 55009 insertions(+), 62 deletions(-) create mode 100644 .gitattributes create mode 100644 .github/ISSUE_TEMPLATE/bug_report.md create mode 100644 .github/ISSUE_TEMPLATE/documentation-issue.md create mode 100644 .github/ISSUE_TEMPLATE/feature_request.md create mode 100644 .github/pull_request_template.md create mode 100644 .pipelines/build.cmd create mode 100644 .pipelines/pipeline.user.windows.yml create mode 100644 .pipelines/restore.cmd create mode 100644 License.rtf create mode 100644 PowerToys.sln create mode 100644 build/pipelines/ci.yml create mode 100644 build/pipelines/templates/build-powertoys-ci.yml create mode 100644 build/pipelines/templates/build-powertoys-steps.yml create mode 100644 contributing.md create mode 100644 deps/cpprestsdk/README.md create mode 100644 deps/cpprestsdk/cpprestsdk.vcxproj create mode 100644 deps/cpprestsdk/include/cpprest/asyncrt_utils.h create mode 100644 deps/cpprestsdk/include/cpprest/base_uri.h create mode 100644 deps/cpprestsdk/include/cpprest/details/SafeInt3.hpp create mode 100644 deps/cpprestsdk/include/cpprest/details/basic_types.h create mode 100644 deps/cpprestsdk/include/cpprest/details/cpprest_compat.h create mode 100644 deps/cpprestsdk/include/cpprest/details/web_utilities.h create mode 100644 deps/cpprestsdk/include/cpprest/json.h create mode 100644 deps/cpprestsdk/include/cpprest/uri.h create mode 100644 deps/cpprestsdk/include/cpprest/uri_builder.h create mode 100644 deps/cpprestsdk/include/cpprest/version.h create mode 100644 deps/cpprestsdk/license.txt create mode 100644 deps/cpprestsdk/pch.cpp create mode 100644 deps/cpprestsdk/pch.h create mode 100644 deps/cpprestsdk/src/json/json.cpp create mode 100644 deps/cpprestsdk/src/json/json_parsing.cpp create mode 100644 deps/cpprestsdk/src/json/json_serialization.cpp create mode 100644 deps/cpprestsdk/src/utilities/asyncrt_utils.cpp create mode 100644 deps/cpprestsdk/src/utilities/base64.cpp create mode 100644 deps/cpprestsdk/src/utilities/web_utilities.cpp create mode 100644 doc/coding/organization.md create mode 100644 doc/coding/style.md create mode 100644 doc/images/FZTutorial.jpg create mode 100644 doc/images/Logo.jpg create mode 100644 doc/images/MTNDWidget.jpg create mode 100644 doc/images/WindowsKeyShortcutGuide.jpg create mode 100644 doc/images/example_powertoy/settings.png create mode 100644 doc/images/runner/tray.png create mode 100644 doc/images/shortcut_guide/settings.png create mode 100644 doc/images/shortcut_guide/usage.png create mode 100644 doc/planning/FancyZonesBacklog.md create mode 100644 doc/planning/PowerToysBacklog.md create mode 100644 doc/planning/ShortcutGuideBacklog.md create mode 100644 doc/specs/PowerToys-fancyzones.md create mode 100644 doc/specs/PowerToys-settings.md create mode 100644 doc/specs/Shared-hooks.md create mode 100644 installer/PowerToysSetup.sln create mode 100644 installer/PowerToysSetup/Bitmaps/banner.bmp create mode 100644 installer/PowerToysSetup/Bitmaps/dialog.bmp create mode 100644 installer/PowerToysSetup/CustomDialogs/PTInstallDirDlg.wxs create mode 100644 installer/PowerToysSetup/CustomDialogs/WixUI_PTInstallDir.wxs create mode 100644 installer/PowerToysSetup/PowerToysSetup.wixproj create mode 100644 installer/PowerToysSetup/Product.wxs create mode 100644 installer/PowerToysSetupCustomActions/CustomAction.cpp create mode 100644 installer/PowerToysSetupCustomActions/CustomAction.def create mode 100644 installer/PowerToysSetupCustomActions/PowerToysSetupCustomActions.vcxproj create mode 100644 installer/PowerToysSetupCustomActions/PowerToysSetupCustomActions.vcxproj.filters create mode 100644 installer/PowerToysSetupCustomActions/Telemetry/ProjectTelemetry.h create mode 100644 installer/PowerToysSetupCustomActions/Telemetry/TraceLoggingDefines.h create mode 100644 installer/PowerToysSetupCustomActions/stdafx.cpp create mode 100644 installer/PowerToysSetupCustomActions/stdafx.h create mode 100644 installer/README.md create mode 100644 src/README.md create mode 100644 src/common/README.md create mode 100644 src/common/Telemetry/PowerToys.wprp create mode 100644 src/common/Telemetry/ProjectTelemetry.h create mode 100644 src/common/Telemetry/TraceLoggingDefines.h create mode 100644 src/common/Telemetry/readme.md create mode 100644 src/common/UnitTests-CommonLib/Settings.Tests.cpp create mode 100644 src/common/UnitTests-CommonLib/UnitTests-CommonLib.vcxproj create mode 100644 src/common/UnitTests-CommonLib/UnitTests-CommonLib.vcxproj.filters create mode 100644 src/common/UnitTests-CommonLib/pch.cpp create mode 100644 src/common/UnitTests-CommonLib/pch.h create mode 100644 src/common/animation.cpp create mode 100644 src/common/animation.h create mode 100644 src/common/async_message_queue.h create mode 100644 src/common/common.cpp create mode 100644 src/common/common.h create mode 100644 src/common/common.vcxproj create mode 100644 src/common/common.vcxproj.filters create mode 100644 src/common/d2d_svg.cpp create mode 100644 src/common/d2d_svg.h create mode 100644 src/common/d2d_text.cpp create mode 100644 src/common/d2d_text.h create mode 100644 src/common/d2d_window.cpp create mode 100644 src/common/d2d_window.h create mode 100644 src/common/dpi_aware.cpp create mode 100644 src/common/dpi_aware.h create mode 100644 src/common/monitors.cpp create mode 100644 src/common/monitors.h create mode 100644 src/common/pch.cpp create mode 100644 src/common/pch.h create mode 100644 src/common/settings_helpers.cpp create mode 100644 src/common/settings_helpers.h create mode 100644 src/common/settings_objects.cpp create mode 100644 src/common/settings_objects.h create mode 100644 src/common/start_visible.cpp create mode 100644 src/common/start_visible.h create mode 100644 src/common/tasklist_positions.cpp create mode 100644 src/common/tasklist_positions.h create mode 100644 src/common/two_way_pipe_message_ipc.h create mode 100644 src/common/windows_colors.cpp create mode 100644 src/common/windows_colors.h create mode 100644 src/editor/README.md create mode 100644 src/editor/StreamURIResolverFromFile.cpp create mode 100644 src/editor/StreamUriResolverFromFile.h create mode 100644 src/editor/main.cpp create mode 100644 src/editor/pch.cpp create mode 100644 src/editor/pch.h create mode 100644 src/editor/resource.h create mode 100644 src/editor/settings-html/200.html create mode 100644 src/editor/settings-html/dist/bundle.js create mode 100644 src/editor/settings-html/index.html create mode 100644 src/editor/settings.rc create mode 100644 src/editor/settings.vcxproj create mode 100644 src/editor/settings.vcxproj.filters create mode 100644 src/modules/README.md create mode 100644 src/modules/example_powertoy/README.md create mode 100644 src/modules/example_powertoy/dllmain.cpp create mode 100644 src/modules/example_powertoy/example_powertoy.rc create mode 100644 src/modules/example_powertoy/example_powertoy.vcxproj create mode 100644 src/modules/example_powertoy/example_powertoy.vcxproj.filters create mode 100644 src/modules/example_powertoy/pch.cpp create mode 100644 src/modules/example_powertoy/pch.h create mode 100644 src/modules/example_powertoy/resource.h create mode 100644 src/modules/example_powertoy/trace.cpp create mode 100644 src/modules/example_powertoy/trace.h create mode 100644 src/modules/fancyzones/FancyZones.png create mode 100644 src/modules/fancyzones/FancyZonesSettings.png create mode 100644 src/modules/fancyzones/Picker.png create mode 100644 src/modules/fancyzones/README.md create mode 100644 src/modules/fancyzones/TableEditor.png create mode 100644 src/modules/fancyzones/WindowEditor.png create mode 100644 src/modules/fancyzones/dll/FancyZonesModule.vcxproj create mode 100644 src/modules/fancyzones/dll/FancyZonesModule.vcxproj.filters create mode 100644 src/modules/fancyzones/dll/README.md create mode 100644 src/modules/fancyzones/dll/dllmain.cpp create mode 100644 src/modules/fancyzones/dll/fancyzones.def create mode 100644 src/modules/fancyzones/dll/packages.config create mode 100644 src/modules/fancyzones/dll/pch.cpp create mode 100644 src/modules/fancyzones/dll/pch.h create mode 100644 src/modules/fancyzones/dll/targetver.h create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor.sln create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/App.config create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/App.xaml create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/App.xaml.cs create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/CanvasEditor.xaml create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/CanvasEditor.xaml.cs create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/CanvasEditorWindow.xaml create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/CanvasEditorWindow.xaml.cs create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/CanvasZone.xaml create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/CanvasZone.xaml.cs create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/EditorOverlay.xaml create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/EditorOverlay.xaml.cs create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/EditorWindow.cs create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/FancyZonesEditor.csproj create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/GridEditor.xaml create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/GridEditor.xaml.cs create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/GridEditorWindow.xaml create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/GridEditorWindow.xaml.cs create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/GridResizer.xaml create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/GridResizer.xaml.cs create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/GridZone.xaml create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/GridZone.xaml.cs create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/LayoutPreview.xaml create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/LayoutPreview.xaml.cs create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/MainWindow.xaml create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/MainWindow.xaml.cs create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/Models/CanvasLayoutModel.cs create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/Models/GridLayoutModel.cs create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/Models/LayoutModel.cs create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/Models/Settings.cs create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/Properties/AssemblyInfo.cs create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/Properties/Resources.Designer.cs create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/Properties/Resources.resx create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/Properties/Settings.Designer.cs create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/Properties/Settings.settings create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/RowColInfo.cs create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/WindowLayout.xaml create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/WindowLayout.xaml.cs create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/images/ChromeClose.png create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/images/Delete.png create mode 100644 src/modules/fancyzones/editor/FancyZonesEditor/images/Merge.png create mode 100644 src/modules/fancyzones/lib/FancyZones.cpp create mode 100644 src/modules/fancyzones/lib/FancyZones.h create mode 100644 src/modules/fancyzones/lib/FancyZonesLib.vcxproj create mode 100644 src/modules/fancyzones/lib/FancyZonesLib.vcxproj.filters create mode 100644 src/modules/fancyzones/lib/RegistryHelpers.h create mode 100644 src/modules/fancyzones/lib/Settings.cpp create mode 100644 src/modules/fancyzones/lib/Settings.h create mode 100644 src/modules/fancyzones/lib/Zone.cpp create mode 100644 src/modules/fancyzones/lib/Zone.h create mode 100644 src/modules/fancyzones/lib/ZoneSet.cpp create mode 100644 src/modules/fancyzones/lib/ZoneSet.h create mode 100644 src/modules/fancyzones/lib/ZoneWindow.cpp create mode 100644 src/modules/fancyzones/lib/ZoneWindow.h create mode 100644 src/modules/fancyzones/lib/fancyzones.rc create mode 100644 src/modules/fancyzones/lib/packages.config create mode 100644 src/modules/fancyzones/lib/pch.cpp create mode 100644 src/modules/fancyzones/lib/pch.h create mode 100644 src/modules/fancyzones/lib/resource.h create mode 100644 src/modules/fancyzones/lib/trace.cpp create mode 100644 src/modules/fancyzones/lib/trace.h create mode 100644 src/modules/fancyzones/lib/util.h create mode 100644 src/modules/fancyzones/tests/UnitTests/RegistryHelpers.Spec.cpp create mode 100644 src/modules/fancyzones/tests/UnitTests/UnitTests.vcxproj create mode 100644 src/modules/fancyzones/tests/UnitTests/UnitTests.vcxproj.filters create mode 100644 src/modules/fancyzones/tests/UnitTests/Util.Spec.cpp create mode 100644 src/modules/fancyzones/tests/UnitTests/Util.h create mode 100644 src/modules/fancyzones/tests/UnitTests/Zone.Spec.cpp create mode 100644 src/modules/fancyzones/tests/UnitTests/ZoneSet.Spec.cpp create mode 100644 src/modules/fancyzones/tests/UnitTests/ZoneWindow.Spec.cpp create mode 100644 src/modules/fancyzones/tests/UnitTests/packages.config create mode 100644 src/modules/fancyzones/tests/UnitTests/pch.cpp create mode 100644 src/modules/fancyzones/tests/UnitTests/pch.h create mode 100644 src/modules/interface/README.md create mode 100644 src/modules/interface/lowlevel_keyboard_event_data.h create mode 100644 src/modules/interface/powertoy_module_interface.h create mode 100644 src/modules/interface/win_hook_event_data.h create mode 100644 src/modules/shortcut_guide/README.md create mode 100644 src/modules/shortcut_guide/dllmain.cpp create mode 100644 src/modules/shortcut_guide/keyboard_state.cpp create mode 100644 src/modules/shortcut_guide/keyboard_state.h create mode 100644 src/modules/shortcut_guide/overlay_window.cpp create mode 100644 src/modules/shortcut_guide/overlay_window.h create mode 100644 src/modules/shortcut_guide/pch.cpp create mode 100644 src/modules/shortcut_guide/pch.h create mode 100644 src/modules/shortcut_guide/resource.h create mode 100644 src/modules/shortcut_guide/shortcut_guide.cpp create mode 100644 src/modules/shortcut_guide/shortcut_guide.h create mode 100644 src/modules/shortcut_guide/shortcut_guide.rc create mode 100644 src/modules/shortcut_guide/shortcut_guide.vcxproj create mode 100644 src/modules/shortcut_guide/shortcut_guide.vcxproj.filters create mode 100644 src/modules/shortcut_guide/target_state.cpp create mode 100644 src/modules/shortcut_guide/target_state.h create mode 100644 src/modules/shortcut_guide/trace.cpp create mode 100644 src/modules/shortcut_guide/trace.h create mode 100644 src/runner/README.md create mode 100644 src/runner/auto_start_helper.cpp create mode 100644 src/runner/auto_start_helper.h create mode 100644 src/runner/general_settings.cpp create mode 100644 src/runner/general_settings.h create mode 100644 src/runner/lowlevel_keyboard_event.cpp create mode 100644 src/runner/lowlevel_keyboard_event.h create mode 100644 src/runner/main.cpp create mode 100644 src/runner/pch.cpp create mode 100644 src/runner/pch.h create mode 100644 src/runner/powertoy_module.cpp create mode 100644 src/runner/powertoy_module.h create mode 100644 src/runner/powertoys_events.cpp create mode 100644 src/runner/powertoys_events.h create mode 100644 src/runner/resource.h create mode 100644 src/runner/runner.rc create mode 100644 src/runner/runner.vcxproj create mode 100644 src/runner/runner.vcxproj.filters create mode 100644 src/runner/settings_window.cpp create mode 100644 src/runner/settings_window.h create mode 100644 src/runner/svgs/0.svg create mode 100644 src/runner/svgs/1.svg create mode 100644 src/runner/svgs/2.svg create mode 100644 src/runner/svgs/3.svg create mode 100644 src/runner/svgs/4.svg create mode 100644 src/runner/svgs/5.svg create mode 100644 src/runner/svgs/6.svg create mode 100644 src/runner/svgs/7.svg create mode 100644 src/runner/svgs/8.svg create mode 100644 src/runner/svgs/9.svg create mode 100644 src/runner/svgs/icon.ico create mode 100644 src/runner/svgs/no_active_window.svg create mode 100644 src/runner/svgs/overlay.svg create mode 100644 src/runner/svgs/overlay_portrait.svg create mode 100644 src/runner/trace.cpp create mode 100644 src/runner/trace.h create mode 100644 src/runner/tray_icon.cpp create mode 100644 src/runner/tray_icon.h create mode 100644 src/runner/unhandled_exception_handler.cpp create mode 100644 src/runner/unhandled_exception_handler.h create mode 100644 src/runner/win_hook_event.cpp create mode 100644 src/runner/win_hook_event.h create mode 100644 src/settings-web/.gitignore create mode 100644 src/settings-web/README.md create mode 100644 src/settings-web/index.html create mode 100644 src/settings-web/just.config.js create mode 100644 src/settings-web/package-lock.json create mode 100644 src/settings-web/package.json create mode 100644 src/settings-web/src/components/App.tsx create mode 100644 src/settings-web/src/components/BaseSettingsControl.tsx create mode 100644 src/settings-web/src/components/BoolToggleSettingsControl.tsx create mode 100644 src/settings-web/src/components/ColorPickerSettingsControl.tsx create mode 100644 src/settings-web/src/components/CustomActionSettingsControl.tsx create mode 100644 src/settings-web/src/components/CustomSettingsScreen.tsx create mode 100644 src/settings-web/src/components/GeneralSettings.tsx create mode 100644 src/settings-web/src/components/IntSpinnerSettingsControl.tsx create mode 100644 src/settings-web/src/components/StringTextSettingsControl.tsx create mode 100644 src/settings-web/src/components/fabric.png create mode 100644 src/settings-web/src/css/layout.css create mode 100644 src/settings-web/src/icons/README.md create mode 100644 src/settings-web/src/icons/config/fabric-icons.json create mode 100644 src/settings-web/src/icons/css/fabric-icons-inline.css create mode 100644 src/settings-web/src/icons/css/fabric-icons.css create mode 100644 src/settings-web/src/icons/fabric-icons.html create mode 100644 src/settings-web/src/icons/fonts/fabric-icons.woff create mode 100644 src/settings-web/src/icons/microsoft-ui-fabric-assets-license.pdf create mode 100644 src/settings-web/src/icons/scss/fabric-icons-inline.scss create mode 100644 src/settings-web/src/icons/scss/fabric-icons.scss create mode 100644 src/settings-web/src/icons/src/IconNames.ts create mode 100644 src/settings-web/src/icons/src/data/AllIconNames.json create mode 100644 src/settings-web/src/icons/src/fabric-icons.ts create mode 100644 src/settings-web/src/icons/src/iconAliases.ts create mode 100644 src/settings-web/src/icons/src/index.ts create mode 100644 src/settings-web/src/index.tsx create mode 100644 src/settings-web/src/setup_icons.tsx create mode 100644 src/settings-web/src/svg/animated_gif_recorder.svg create mode 100644 src/settings-web/src/svg/batch_renamer.svg create mode 100644 src/settings-web/src/svg/fancy_zones.svg create mode 100644 src/settings-web/src/svg/maximize_new_desktop.svg create mode 100644 src/settings-web/src/svg/shortcut_guide.svg create mode 100644 src/settings-web/src/svg/terminate_tool.svg create mode 100644 src/settings-web/tsconfig.json create mode 100644 src/settings-web/typings/just-scripts.d.ts create mode 100644 src/settings-web/webpack.config.js create mode 100644 src/settings-web/webpack.serve.config.js create mode 100644 tools/project_template/ModuleTemplate/ModuleTemplate.rc create mode 100644 tools/project_template/ModuleTemplate/ModuleTemplate.vcxproj create mode 100644 tools/project_template/ModuleTemplate/ModuleTemplate.vcxproj.filters create mode 100644 tools/project_template/ModuleTemplate/README.md create mode 100644 tools/project_template/ModuleTemplate/dllmain.cpp create mode 100644 tools/project_template/ModuleTemplate/pch.cpp create mode 100644 tools/project_template/ModuleTemplate/pch.h create mode 100644 tools/project_template/ModuleTemplate/resource.h create mode 100644 tools/project_template/ModuleTemplate/trace.cpp create mode 100644 tools/project_template/ModuleTemplate/trace.h create mode 100644 tools/project_template/PowerToysModuleTemplate.zip create mode 100644 tools/project_template/README.md create mode 100644 tools/project_template/TemplateIcon.ico diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000000..cab8e6cebe --- /dev/null +++ b/.gitattributes @@ -0,0 +1 @@ +*.rc diff diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md new file mode 100644 index 0000000000..d88b900d04 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -0,0 +1,37 @@ +--- +name: Bug report +about: Report errors or unexpected behavior +title: '' +labels: '' +assignees: '' + +--- + + + +# Environment + +``` +Windows build number: [run "ver" at a command prompt] +PowerToys version: +PowerToy module for which you are reporting the bug (if applicable): +``` + +# Steps to reproduce + + + +# Expected behavior + + + +# Actual behavior + + + +# Screenshots + + diff --git a/.github/ISSUE_TEMPLATE/documentation-issue.md b/.github/ISSUE_TEMPLATE/documentation-issue.md new file mode 100644 index 0000000000..39e6e5599c --- /dev/null +++ b/.github/ISSUE_TEMPLATE/documentation-issue.md @@ -0,0 +1,10 @@ +--- +name: Documentation Issue +about: Report issues in our documentation +title: '' +labels: '' +assignees: '' + +--- + + diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md new file mode 100644 index 0000000000..66a856efe0 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.md @@ -0,0 +1,21 @@ +--- +name: Feature request +about: Suggest an idea for this project +title: '' +labels: '' +assignees: '' + +--- + +# Summary of the new feature/enhancement + + + +# Proposed technical implementation details (optional) + + diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 0000000000..e61d054d87 --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,19 @@ + +## Summary of the Pull Request + + +## References + + +## PR Checklist +* [ ] Closes #xxx +* [ ] CLA signed. If not, go over [here](https://cla.opensource.microsoft.com/microsoft/PowerToys) and sign the CLA +* [ ] Tests added/passed +* [ ] Requires documentation to be updated +* [ ] I've discussed this with core contributors already. If not checked, I'm ready to accept this work might be rejected in favor of a different grand plan. Issue number where discussion took place: #xxx + + +## Detailed Description of the Pull Request / Additional comments + + +## Validation Steps Performed diff --git a/.pipelines/build.cmd b/.pipelines/build.cmd new file mode 100644 index 0000000000..632efb6e8d --- /dev/null +++ b/.pipelines/build.cmd @@ -0,0 +1,2 @@ +cd /D "%~dp0" +dotnet build --no-restore ..\PowerToys.sln || exit /b 1 diff --git a/.pipelines/pipeline.user.windows.yml b/.pipelines/pipeline.user.windows.yml new file mode 100644 index 0000000000..d6c8a24359 --- /dev/null +++ b/.pipelines/pipeline.user.windows.yml @@ -0,0 +1,43 @@ +environment: + host: + os: 'windows' + flavor: 'server' + version: '2016' + runtime: + provider: 'appcontainer' + image: 'cdpxwinrs4test.azurecr.io/global/vse2017u7-external-azsdk-mobile-ext-win1803:latest-nodetools' + source_mode: 'link' + +signing_options: + profile: 'azure' + +package_sources: + nuget: + feeds: + 'Toolset': 'https://msazure.pkgs.visualstudio.com/_packaging/Toolset/nuget/v3/index.json' + 'CloudES-CDP': 'https://cloudes.pkgs.visualstudio.com/_packaging/CDP/nuget/v3/index.json' + 'CloudES-Internal': 'https://cloudes.pkgs.visualstudio.com/_packaging/Internal/nuget/v3/index.json' + 'MsNugetMirror': 'https://msazure.pkgs.visualstudio.com/_packaging/MsNugetMirror/nuget/v3/index.json' + 'NugetMirror': 'https://msazure.pkgs.visualstudio.com/_packaging/NugetMirror/nuget/v3/index.json' + 'CorextMirror': 'https://msazure.pkgs.visualstudio.com/_packaging/CorextMirror/nuget/v3/index.json' + 'Official': 'https://msazure.pkgs.visualstudio.com/_packaging/Official/nuget/v3/index.json' + 'Toolset': 'https://msazure.pkgs.visualstudio.com/_packaging/Toolset/nuget/v3/index.json' + 'AzureCXP': 'https://msazure.pkgs.visualstudio.com/_packaging/AzureCXP/nuget/v3/index.json' + +restore: + commands: + - !!defaultcommand + name: 'Restore CSharp' + command: '.pipelines\restore.cmd' + +build: + commands: + - !!buildcommand + name: 'Build CSharp' + command: '.pipelines\build.cmd' + artifacts: + - from: '**\bin' + to: 'Build_Output' + include: + - '**/*' + diff --git a/.pipelines/restore.cmd b/.pipelines/restore.cmd new file mode 100644 index 0000000000..3a9d719a4e --- /dev/null +++ b/.pipelines/restore.cmd @@ -0,0 +1,3 @@ +cd /D "%~dp0" + +dotnet restore ..\PowerToys.sln || exit /b 1 diff --git a/License.rtf b/License.rtf new file mode 100644 index 0000000000000000000000000000000000000000..204a30d029b4ba5068d4c97422f1843e8e819c9b GIT binary patch literal 1309 zcmZ8h+iv4F5bbk-{KFtmyM^G|$+io$Pl`;(L}kgKAcz7%7+v85H>sjl_0rNO*Gam`E)zGOCz3{%J*fd`lHOm@Nx4ps&O2~M)!tcvrn(;+ zui^c5uMX1R3lIj?`v4sxf+rzK26&YQiwvRw)NmAr%oZba-$@0Q?jtgOTG z74paRnK*y8dbv6Ino*Xn^2bmx;u&p4`i(Eyl5WBb=bL~YdA?3}IiW*@N&ZCXio)cH z{^rRtAokBzuq>lg5Z`QL&QRk?6z`Tid7yjDB`NMY$BhSQo{}fLKyik-6>XS^)<6#L zdCc>tfL1(DJmw0ZA#FpE^Jo``g0?%cO*01iC14YttOQuth9&t7tf&$Dh682mFpejx za0m5b(if%MC&3@qIjz%p$xys!P!`_D>`VnyQ5^D3K+A9wK6rJ4QV14P+eO{unoT9} zh4@4{PZMt=N|RjR7{H~-KSm#U#sUfj&wL;&kpkYwi3y)s;^z`}M)6Tksy{Y@79ZFS Xra!bSSr`Kg>q&lSK3^*QasBc?noX;V literal 0 HcmV?d00001 diff --git a/PowerToys.sln b/PowerToys.sln new file mode 100644 index 0000000000..19190ff9ac --- /dev/null +++ b/PowerToys.sln @@ -0,0 +1,120 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 16 +VisualStudioVersion = 16.0.28803.452 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "runner", "src\runner\runner.vcxproj", "{9412D5C6-2CF2-4FC2-A601-B55508EA9B27}" + ProjectSection(ProjectDependencies) = postProject + {48804216-2A0E-4168-A6D8-9CD068D14227} = {48804216-2A0E-4168-A6D8-9CD068D14227} + {74485049-C722-400F-ABE5-86AC52D929B3} = {74485049-C722-400F-ABE5-86AC52D929B3} + {A46629C4-1A6C-40FA-A8B6-10E5102BB0BA} = {A46629C4-1A6C-40FA-A8B6-10E5102BB0BA} + {07C389E3-6BC8-41CF-923E-307B1265FA2D} = {07C389E3-6BC8-41CF-923E-307B1265FA2D} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "common", "src\common\common.vcxproj", "{74485049-C722-400F-ABE5-86AC52D929B3}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shortcut_guide", "src\modules\shortcut_guide\shortcut_guide.vcxproj", "{A46629C4-1A6C-40FA-A8B6-10E5102BB0BA}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "example_powertoy", "src\modules\example_powertoy\example_powertoy.vcxproj", "{44CC9375-3E6E-4D99-8913-7FB748807EBD}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "modules", "modules", "{4574FDD0-F61D-4376-98BF-E5A1262C11EC}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "interface", "interface", "{3BB8493E-D18E-4485-A320-CB40F90F55AE}" + ProjectSection(SolutionItems) = preProject + src\modules\interface\lowlevel_keyboard_event_data.h = src\modules\interface\lowlevel_keyboard_event_data.h + src\modules\interface\powertoy_module_interface.h = src\modules\interface\powertoy_module_interface.h + src\modules\interface\win_hook_event_data.h = src\modules\interface\win_hook_event_data.h + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "settings", "src\editor\settings.vcxproj", "{07C389E3-6BC8-41CF-923E-307B1265FA2D}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "fancyzones", "fancyzones", "{D1D6BC88-09AE-4FB4-AD24-5DED46A791DD}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FancyZonesLib", "src\modules\fancyzones\lib\FancyZonesLib.vcxproj", "{F9C68EDF-AC74-4B77-9AF1-005D9C9F6A99}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "fancyzones", "src\modules\fancyzones\dll\FancyZonesModule.vcxproj", "{48804216-2A0E-4168-A6D8-9CD068D14227}" + ProjectSection(ProjectDependencies) = postProject + {5CCC8468-DEC8-4D36-99D4-5C891BEBD481} = {5CCC8468-DEC8-4D36-99D4-5C891BEBD481} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "UnitTests-FancyZones", "src\modules\fancyzones\tests\UnitTests\UnitTests.vcxproj", "{9C6A7905-72D4-4BF5-B256-ABFDAEF68AE9}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cpprestsdk", "deps\cpprestsdk\cpprestsdk.vcxproj", "{4E577735-DFAB-41AF-8A6E-B6E8872A2928}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "deps", "deps", "{1FAF749F-0D6F-4BF5-A563-31A4B5279D27}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "common", "common", "{1AFB6476-670D-4E80-A464-657E01DFF482}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "UnitTests-CommonLib", "src\common\UnitTests-CommonLib\UnitTests-CommonLib.vcxproj", "{1A066C63-64B3-45F8-92FE-664E1CCE8077}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FancyZonesEditor", "src\modules\fancyzones\editor\FancyZonesEditor\FancyZonesEditor.csproj", "{5CCC8468-DEC8-4D36-99D4-5C891BEBD481}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|x64 = Debug|x64 + Release|x64 = Release|x64 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {9412D5C6-2CF2-4FC2-A601-B55508EA9B27}.Debug|x64.ActiveCfg = Debug|x64 + {9412D5C6-2CF2-4FC2-A601-B55508EA9B27}.Debug|x64.Build.0 = Debug|x64 + {9412D5C6-2CF2-4FC2-A601-B55508EA9B27}.Release|x64.ActiveCfg = Release|x64 + {9412D5C6-2CF2-4FC2-A601-B55508EA9B27}.Release|x64.Build.0 = Release|x64 + {74485049-C722-400F-ABE5-86AC52D929B3}.Debug|x64.ActiveCfg = Debug|x64 + {74485049-C722-400F-ABE5-86AC52D929B3}.Debug|x64.Build.0 = Debug|x64 + {74485049-C722-400F-ABE5-86AC52D929B3}.Release|x64.ActiveCfg = Release|x64 + {74485049-C722-400F-ABE5-86AC52D929B3}.Release|x64.Build.0 = Release|x64 + {A46629C4-1A6C-40FA-A8B6-10E5102BB0BA}.Debug|x64.ActiveCfg = Debug|x64 + {A46629C4-1A6C-40FA-A8B6-10E5102BB0BA}.Debug|x64.Build.0 = Debug|x64 + {A46629C4-1A6C-40FA-A8B6-10E5102BB0BA}.Release|x64.ActiveCfg = Release|x64 + {A46629C4-1A6C-40FA-A8B6-10E5102BB0BA}.Release|x64.Build.0 = Release|x64 + {44CC9375-3E6E-4D99-8913-7FB748807EBD}.Debug|x64.ActiveCfg = Debug|x64 + {44CC9375-3E6E-4D99-8913-7FB748807EBD}.Release|x64.ActiveCfg = Release|x64 + {07C389E3-6BC8-41CF-923E-307B1265FA2D}.Debug|x64.ActiveCfg = Debug|x64 + {07C389E3-6BC8-41CF-923E-307B1265FA2D}.Debug|x64.Build.0 = Debug|x64 + {07C389E3-6BC8-41CF-923E-307B1265FA2D}.Release|x64.ActiveCfg = Release|x64 + {07C389E3-6BC8-41CF-923E-307B1265FA2D}.Release|x64.Build.0 = Release|x64 + {F9C68EDF-AC74-4B77-9AF1-005D9C9F6A99}.Debug|x64.ActiveCfg = Debug|x64 + {F9C68EDF-AC74-4B77-9AF1-005D9C9F6A99}.Debug|x64.Build.0 = Debug|x64 + {F9C68EDF-AC74-4B77-9AF1-005D9C9F6A99}.Release|x64.ActiveCfg = Release|x64 + {F9C68EDF-AC74-4B77-9AF1-005D9C9F6A99}.Release|x64.Build.0 = Release|x64 + {48804216-2A0E-4168-A6D8-9CD068D14227}.Debug|x64.ActiveCfg = Debug|x64 + {48804216-2A0E-4168-A6D8-9CD068D14227}.Debug|x64.Build.0 = Debug|x64 + {48804216-2A0E-4168-A6D8-9CD068D14227}.Release|x64.ActiveCfg = Release|x64 + {48804216-2A0E-4168-A6D8-9CD068D14227}.Release|x64.Build.0 = Release|x64 + {9C6A7905-72D4-4BF5-B256-ABFDAEF68AE9}.Debug|x64.ActiveCfg = Debug|x64 + {9C6A7905-72D4-4BF5-B256-ABFDAEF68AE9}.Debug|x64.Build.0 = Debug|x64 + {9C6A7905-72D4-4BF5-B256-ABFDAEF68AE9}.Release|x64.ActiveCfg = Release|x64 + {9C6A7905-72D4-4BF5-B256-ABFDAEF68AE9}.Release|x64.Build.0 = Release|x64 + {4E577735-DFAB-41AF-8A6E-B6E8872A2928}.Debug|x64.ActiveCfg = Debug|x64 + {4E577735-DFAB-41AF-8A6E-B6E8872A2928}.Debug|x64.Build.0 = Debug|x64 + {4E577735-DFAB-41AF-8A6E-B6E8872A2928}.Release|x64.ActiveCfg = Release|x64 + {4E577735-DFAB-41AF-8A6E-B6E8872A2928}.Release|x64.Build.0 = Release|x64 + {1A066C63-64B3-45F8-92FE-664E1CCE8077}.Debug|x64.ActiveCfg = Debug|x64 + {1A066C63-64B3-45F8-92FE-664E1CCE8077}.Debug|x64.Build.0 = Debug|x64 + {1A066C63-64B3-45F8-92FE-664E1CCE8077}.Release|x64.ActiveCfg = Release|x64 + {1A066C63-64B3-45F8-92FE-664E1CCE8077}.Release|x64.Build.0 = Release|x64 + {5CCC8468-DEC8-4D36-99D4-5C891BEBD481}.Debug|x64.ActiveCfg = Debug|x64 + {5CCC8468-DEC8-4D36-99D4-5C891BEBD481}.Debug|x64.Build.0 = Debug|x64 + {5CCC8468-DEC8-4D36-99D4-5C891BEBD481}.Release|x64.ActiveCfg = Release|x64 + {5CCC8468-DEC8-4D36-99D4-5C891BEBD481}.Release|x64.Build.0 = Release|x64 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(NestedProjects) = preSolution + {74485049-C722-400F-ABE5-86AC52D929B3} = {1AFB6476-670D-4E80-A464-657E01DFF482} + {A46629C4-1A6C-40FA-A8B6-10E5102BB0BA} = {4574FDD0-F61D-4376-98BF-E5A1262C11EC} + {44CC9375-3E6E-4D99-8913-7FB748807EBD} = {4574FDD0-F61D-4376-98BF-E5A1262C11EC} + {3BB8493E-D18E-4485-A320-CB40F90F55AE} = {4574FDD0-F61D-4376-98BF-E5A1262C11EC} + {D1D6BC88-09AE-4FB4-AD24-5DED46A791DD} = {4574FDD0-F61D-4376-98BF-E5A1262C11EC} + {F9C68EDF-AC74-4B77-9AF1-005D9C9F6A99} = {D1D6BC88-09AE-4FB4-AD24-5DED46A791DD} + {48804216-2A0E-4168-A6D8-9CD068D14227} = {D1D6BC88-09AE-4FB4-AD24-5DED46A791DD} + {9C6A7905-72D4-4BF5-B256-ABFDAEF68AE9} = {D1D6BC88-09AE-4FB4-AD24-5DED46A791DD} + {4E577735-DFAB-41AF-8A6E-B6E8872A2928} = {1FAF749F-0D6F-4BF5-A563-31A4B5279D27} + {1A066C63-64B3-45F8-92FE-664E1CCE8077} = {1AFB6476-670D-4E80-A464-657E01DFF482} + {5CCC8468-DEC8-4D36-99D4-5C891BEBD481} = {D1D6BC88-09AE-4FB4-AD24-5DED46A791DD} + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {C3A2F9D1-7930-4EF4-A6FC-7EE0A99821D0} + EndGlobalSection +EndGlobal diff --git a/README.md b/README.md index e61df46194..adeaa3b0e8 100644 --- a/README.md +++ b/README.md @@ -1,62 +1,107 @@ - -# Overview - -PowerToys is a set of utilities for power users to tune and streamline their Windows experience for greater productivity. - -Inspired by the [Windows 95 era PowerToys project](https://en.wikipedia.org/wiki/Microsoft_PowerToys), this reboot provides power users with ways to squeeze more efficiency out of the Windows 10 shell and customize it for individual workflows. A great overview of the Windows 95 PowerToys can be found [here](https://socket3.wordpress.com/2016/10/22/using-windows-95-powertoys/). - -The first preview of these utilities and corresponding source code will be released Summer 2019. - -![logo](Logo.jpg) - -# What's Happening - -## June Update -Since the announcement of the PowerToys reboot at BUILD, the interest in the project has been incredible to see. Due to the excitement we are optimizing the first preview to make it easy to integrate new utilities into the repo. We also have two interns working on additional PowerToys. The specs for these are: - -* [Process terminate tool](https://github.com/indierawk2k2/PowerToys-1/blob/master/specs/Terminate%20Spec.md) -* [Batch file renamer](https://github.com/indierawk2k2/PowerToys-1/blob/master/specs/File%20Classification%20Spec.md) -* [Animated gif screen recorder](https://github.com/indierawk2k2/PowerToys-1/blob/master/specs/GIF%20Maker%20Spec.md) - -Finally, we are organizing a team to productize an internal window manager into the PowerToys project for the 2019 [One Week Hackathon](https://www.onmsft.com/news/take-a-peek-inside-microsofts-recent-one-week-hackathon). - -We are still targeting to release the preview and code during Summer 2019. - -## The first two utilities we're working on are: - -1. Maximize to new desktop widget - The MTND widget shows a pop-up button when a user hovers over the maximize / restore button on any window. Clicking it creates a new desktop, sends the app to that desktop and maximizes the app on the new desktop. - -![Maximize to new desktop widget](MTNDWidget.jpg) - -2. Windows key shortcut guide - The shortcut guide appears when a user holds the Windows key down for more than one second and shows the available shortcuts for the current state of the desktop. - -![Windows key shortcut guide](WindowsKeyShortcutGuide.jpg) - -# Backlog - -Here's the current set of utilities we're considering. Please use issues and +1's to guide the project to suggest new ideas and help us prioritize the list below. - -1. [Full window manager including specific layouts for docking and undocking laptops](https://github.com/microsoft/PowerToys/issues/4) -2. [Keyboard shortcut manager](https://github.com/microsoft/PowerToys/issues/6) -3. [Win+R replacement](https://github.com/microsoft/PowerToys/issues/44) -4. Better Alt+Tab including browser tab integration and search for running apps -5. [Battery tracker](https://github.com/microsoft/PowerToys/issues/7) -6. [Batch file re-namer](https://github.com/microsoft/PowerToys/issues/101) -7. [Quick resolution swaps in taskbar](https://github.com/microsoft/PowerToys/issues/27) -8. Mouse events without focus -9. Cmd (or PS or Bash) from here -10. Contents menu file browsing - -# Contributing - -This project welcomes contributions and suggestions. Most contributions require you to agree to a -Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us -the rights to use your contribution. For details, visit https://cla.microsoft.com. - -When you submit a pull request, a CLA-bot will automatically determine whether you need to provide -a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions -provided by the bot. You will only need to do this once across all repos using our CLA. - -This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). -For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or -contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments. +# Overview + +PowerToys is a set of utilities for power users to tune and streamline their Windows experience for greater productivity. + +Inspired by the [Windows 95 era PowerToys project](https://en.wikipedia.org/wiki/Microsoft_PowerToys), this reboot provides power users with ways to squeeze more efficiency out of the Windows 10 shell and customize it for individual workflows. A great overview of the Windows 95 PowerToys can be found [here](https://socket3.wordpress.com/2016/10/22/using-windows-95-powertoys/). + +The first preview of these utilities can be installed from [here](https://github.com/Microsoft/powertoys/releases). + +![logo](doc/images/Logo.jpg) + +# What's Happening + +## September Update +The first preview release of the PowerToys utilities and source code is now live! This release includes two preview quality utilities as well as the tools and docs to make it easy to create new PowerToys utilities. + +1. [FancyZones](/src/modules/fancyzones/) - FancyZones is a window manager that makes it easy to create copmlex window layouts and quickly position windows into those layouts. The FancyZones backlog can be found [here](https://github.com/Microsoft/PowerToys/tree/master/doc/planning/FancyZonesBacklog.md) + +![FancyZones](src/modules/fancyzones/FancyZones.png) + +FanzyZones Video Tutorial +[![FancyZones Video Tutorial](doc/images/FZTutorial.jpg)](https://www.youtube.com/watch?v=rTtGzZYAXgY) + +2. [Windows key shortcut guide](/src/modules/shortcut_guide) - The shortcut guide appears when a user holds the Windows key down for more than one second and shows the available shortcuts for the current state of the desktop. The shortcut guide backlog can be found [here](https://github.com/Microsoft/PowerToys/tree/master/doc/planning/ShortcutGuideBacklog.md) + +![Windows key shortcut guide](doc/images/WindowsKeyShortcutGuide.jpg) + +Additional utilities in the pipeline are: + +* Maximize to new desktop widget - The MTND widget shows a pop-up button when a user hovers over the maximize / restore button on any window. Clicking it creates a new desktop, sends the app to that desktop and maximizes the app on the new desktop. +* [Process terminate tool](https://github.com/indierawk2k2/PowerToys-1/blob/master/specs/Terminate%20Spec.md) +* [Batch file renamer](https://github.com/indierawk2k2/PowerToys-1/blob/master/specs/File%20Classification%20Spec.md) +* [Animated gif screen recorder](https://github.com/indierawk2k2/PowerToys-1/blob/master/specs/GIF%20Maker%20Spec.md) + +# Backlog + +The full backlog of utilities can be found [here](https://github.com/Microsoft/PowerToys/tree/master/doc/planning/PowerToysBacklog.md) + +# Where to download PowerToys + + The latest release of PowerToys can be downloaded from https://github.com/microsoft/PowerToys/releases
+ Click on `Assets` to show the files available in the release and then click on `PowerToysSetup.msi` to download the PowerToys installer.
+ PDB symbols for the release are available in a separate zip file `PDB symbols.zip`. + +# Developer Guidance + +## Build Prerequisites + * Windows 10 1803 (build 10.0.17134.0) or above in order to build and run PowerToys. + * Visual Studio 2019 Community edition or higher, with the 'Desktop Development with C++' component and the Windows 10 SDK version 10.0.18362.0 or higher. + +## Building the Code + * Open `powertoys.sln` in Visual Studio, in the `Solutions Configuration` drop-down menu select `Release` or `Debug`, from the `Build` menu choose `Build Solution`. + * The PowerToys binaries will be located in your repo under `x64\Release`. + * If you want to copy the `PowerToys.exe` binary to a different location, you'll also need to copy the `modules` and the `svgs` folders. + +## Prerequisites to Build the Installer + * Install the [WiX Toolset Visual Studio 2019 Extension](https://marketplace.visualstudio.com/items?itemName=RobMensching.WiXToolset). + * Install the [WiX Toolset build tools](https://wixtoolset.org/releases/). + +## Building the .msi Installer + * From the `installer` folder open `PowerToysSetup.sln` in Visual Studio, in the `Solutions Configuration` drop-down menu select `Release` or `Debug`, from the `Build` menu choose `Build Solution`. + * The resulting `PowerToysSetup.msi` installer will be available in the `installer\PowerToysSetup\x64\Release\` folder. + +## Debugging + The following configuration issue only applies if the user is a member of the Administrators group. + + Some PowerToys modules require to run with the highest permission level if the current user is a member of the Administrators group. The highest permission level is required in order to be able to perform some actions when an elevated application (e.g. Task Manager) is in the foreground or is the target of an action. Without elevated privileges some PowerToys modules will still work but with some limitations: + - the `FancyZones` module will be not be able to move an elevated window to a zone. + - the `Shortcut Guide` module will not appear if the foreground window belongs to an elevated application. + + In order to run and debug PowerToys from Visual Studio when the user is a member of the Administrators group, Visual Studio has to be started with elevated privileges. If you want to avoid running Visual Studio with elevated privileges and don't mind the limitations described above, you can do the following: open the `runner` project properties and navigate to the `Linker -> Manifest File` settings, edit the `UAC Execution Level` property and change it from `highestAvailable (/level='highestAvailable')` to `asInvoker (/level='asInvoker')`, save the changes. + +## How to create new PowerToys + +See the instructions on [how to install the PowerToys Module project template](tools/project_template).
+Specifications for the [PowerToys settings API](doc/specs/PowerToys-settings.md). + +## Coding Guidance + +Please review these brief docs below relating to our coding standards etc. + +> 👉 If you find something missing from these docs, feel free to contribute to any of our documentation files anywhere in the repository (or make some new ones\!) + +This is a work in progress as we learn what we'll need to provide people in order to be effective contributors to our project. +- [Coding Style](doc/coding/style.md) +- [Code Organization](doc/coding/organization.md) + +# Contributing +This project welcomes contributions and suggestions and we are excited to work with the power user community to build a set of tools for helping you get the most our of Windows. + +We ask that **before you start work on a feature that you would like to contribute**, please read our [Contributor's Guide](contributing.md). We will be happy to work with you to figure out the best approach, provide guidance and mentorship throughout feature development, and help avoid any wasted or duplicate effort. + +> ⚠ **Note**: PowerToys is still a nascent project and the team is actively working out of this repository. We will be periodically re-structuring the code to make it easier to comprehend, navigate, build, test, and contribute to, so **DO expect significant changes to code layout on a regular basis**. + +> ⚠ **License Info**: Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.microsoft.com. + +When you submit a pull request, a CLA-bot will automatically determine whether you need to provide +a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions +provided by the bot. You will only need to do this once across all repos using our CLA. + +# Code of Conduct + +This project has adopted the [Microsoft Open Source Code of Conduct][conduct-code].
+For more information see the [Code of Conduct FAQ][conduct-FAQ] or contact [opencode@microsoft.com][conduct-email] with any additional questions or comments. + +[conduct-code]: https://opensource.microsoft.com/codeofconduct/ +[conduct-FAQ]: https://opensource.microsoft.com/codeofconduct/faq/ +[conduct-email]: mailto:opencode@microsoft.com diff --git a/build/pipelines/ci.yml b/build/pipelines/ci.yml new file mode 100644 index 0000000000..85b915c48c --- /dev/null +++ b/build/pipelines/ci.yml @@ -0,0 +1,24 @@ +trigger: + batch: true + branches: + include: + - master + paths: + exclude: + - doc/* + - temp/* + - tools/* + +pr: + branches: + include: + - master + +# 0.0.yyMM.dd## +# 0.0.1904.0900 +name: 0.0.$(Date:yyMM).$(Date:dd)$(Rev:rr) + +jobs: + - template: ./templates/build-powertoys-ci.yml + parameters: + platform: x64 diff --git a/build/pipelines/templates/build-powertoys-ci.yml b/build/pipelines/templates/build-powertoys-ci.yml new file mode 100644 index 0000000000..bfffbea6f8 --- /dev/null +++ b/build/pipelines/templates/build-powertoys-ci.yml @@ -0,0 +1,17 @@ +parameters: + configuration: 'Release' + platform: '' + additionalBuildArguments: '' + +jobs: +- job: Build${{ parameters.platform }}${{ parameters.configuration }} + displayName: Build ${{ parameters.platform }} ${{ parameters.configuration }} + variables: + BuildConfiguration: ${{ parameters.configuration }} + BuildPlatform: ${{ parameters.platform }} + pool: { vmImage: windows-2019 } + + steps: + - template: build-powertoys-steps.yml + parameters: + additionalBuildArguments: ${{ parameters.additionalBuildArguments }} \ No newline at end of file diff --git a/build/pipelines/templates/build-powertoys-steps.yml b/build/pipelines/templates/build-powertoys-steps.yml new file mode 100644 index 0000000000..f13df444dc --- /dev/null +++ b/build/pipelines/templates/build-powertoys-steps.yml @@ -0,0 +1,35 @@ +parameters: + additionalBuildArguments: '' + +steps: +- checkout: self + submodules: true + clean: true + +- task: NuGetToolInstaller@0 + displayName: Ensure NuGet 4.8.1 + inputs: + versionSpec: 4.8.1 + +- task: VisualStudioTestPlatformInstaller@1 + displayName: Ensure VSTest Platform + +- task: NuGetCommand@2 + displayName: Restore NuGet packages + inputs: + command: restore + feedsToUse: config + configPath: NuGet.config + restoreSolution: PowerToys.sln + restoreDirectory: '$(Build.SourcesDirectory)\packages' + +- task: VSBuild@1 + displayName: 'Build solution **\PowerToys.sln' + inputs: + solution: '**\PowerToys.sln' + vsVersion: 15.0 + platform: '$(BuildPlatform)' + configuration: '$(BuildConfiguration)' + msbuildArgs: ${{ parameters.additionalBuildArguments }} + clean: true + maximumCpuCount: true diff --git a/contributing.md b/contributing.md new file mode 100644 index 0000000000..948c823af0 --- /dev/null +++ b/contributing.md @@ -0,0 +1,128 @@ +# Power Toys Contributor's Guide + +Below is our guidance for how to report issues, propose new features, and submit contributions via Pull Requests (PRs). + +## Before you start, file an issue + +Please follow this simple rule to help us eliminate any unnecessary wasted effort & frustration, and ensure an efficient and effective use of everyone's time - yours, ours, and other community members': + +> 👉 If you have a question, think you've discovered an issue, would like to propose a new feature, etc., then find/file an issue **BEFORE** starting work to fix/implement it. + +### Search existing issues first + +Before filing a new issue, search existing open and closed issues first: It is likely someone else has found the problem you're seeing, and someone may be working on or have already contributed a fix! + +If no existing item describes your issue/feature, great - please file a new issue: + +### File a new Issue + +* Don't know whether you're reporting an issue or requesting a feature? File an issue +* Have a question that you don't see answered in docs, videos, etc.? File an issue +* Want to know if we're planning on building a particular feature? File an issue +* Got a great idea for a new utility or feature? File an issue/request/idea +* Don't understand how to do something? File an issue/Community Guidance Request +* Found an existing issue that describes yours? Great - upvote and add additional commentary / info / repro-steps / etc. + +### Complete the template + +**Please include as much information as possible in your issue**. The more information you provide, the more likely your issue/ask will be understood and implemented. Helpful information includes: + +* What device you're running (inc. CPU type, memory, disk, etc.) +* What build of Windows your device is running + + 👉 Tip: Run the following in PowerShell Core + + ```powershell + C:\> $PSVersionTable.OS + Microsoft Windows 10.0.18909 + ``` + + ... or in Windows PowerShell + + ```powershell + C:\> $PSVersionTable.BuildVersion + + Major Minor Build Revision + ----- ----- ----- -------- + 10 0 18912 1001 + ``` + + ... or Cmd: + + ```cmd + C:\> ver + + Microsoft Windows [Version 10.0.18900.1001] + ``` + +* What tools and apps you're using (e.g. VS 2019, VSCode, etc.) +* Don't assume we're experts in setting up YOUR environment and don't assume we are experts in YOUR workflow. Teach us to help you! +* **We LOVE detailed repro steps!** What steps do we need to take to reproduce the issue? Assume we love to read repro steps. As much detail as you can stand is probably _barely_ enough detail for us! +* Prefer error message text where possible or screenshots of errors if text cannot be captured +* **If you intend to implement the fix/feature yourself then say so!** If you do not indicate otherwise we will assume that the issue is our to solve, or may label the issue as `Help-Wanted`. + +### DO NOT post "+1" comments + +> ⚠ DO NOT post "+1", "me too", or similar comments - they just add noise to an issue. + +If you don't have any additional info/context to add but would like to indicate that you're affected by the issue, upvote the original issue by clicking its [+😊] button and hitting 👍 (+1) icon. This way we can actually measure how impactful an issue is. + +--- + +## Contributing fixes / features + +For those able & willing to help fix issues and/or implement features ... + +### To Spec or not to Spec + +Some issues/features may be quick and simple to describe and understand. For such scenarios, once a team member has agreed with your approach, skip ahead to the section headed "Fork, Branch, and Create your PR", below. + +Small issues that do not require a spec will be labelled Issue-Bug or Issue-Task. + +However, some issues/features will require careful thought & formal design before implementation. For these scenarios, we'll request that a spec is written and the associated issue will be labeled Issue-Feature. + +Specs help collaborators discuss different approaches to solve a problem, describe how the feature will behave, how the feature will impact the user, what happens if something goes wrong, etc. Driving towards agreement in a spec, before any code is written, often results in simpler code, and less wasted effort in the long run. + +Specs will be managed in a very similar manner as code contributions so please follow the "Fork, Branch and Create your PR" below. + +### Writing / Contributing-to a Spec + +To write/contribute to a spec: fork, branch and commit via PRs, as you would with any code changes. + +Specs are written in markdown, stored under the `doc/specs` folder and named `[issue id] - [spec description].md`. + +👉 **It is important to follow the spec templates and complete the requested information**. The available spec templates will help ensure that specs contain the minimum information & decisions necessary to permit development to begin. In particular, specs require you to confirm that you've already discussed the issue/idea with the team in an issue and that you provide the issue ID for reference. + +Team members will be happy to help review specs and guide them to completion. + +### Help Wanted + +Once the team have approved an issue/spec, development can proceed. If no developers are immediately available, the spec can be parked ready for a developer to get started. Parked specs' issues will be labeled "Help Wanted". To find a list of development opportunities waiting for developer involvement, visit the Issues and filter on [the Help-Wanted label](https://github.com/microsoft/PowerToys/labels/Help-Wanted). + +--- + +## Development + +### Fork, Clone, Branch and Create your PR + +Once you've discussed your proposed feature/fix/etc. with a team member, and you've agreed an approach or a spec has been written and approved, it's time to start development: + +1. Fork the repo if you haven't already +1. Clone your fork locally +1. Create & push a feature branch +1. Create a [Draft Pull Request (PR)](https://github.blog/2019-02-14-introducing-draft-pull-requests/) +1. Work on your changes + +### Code Review + +When you'd like the team to take a look, (even if the work is not yet fully-complete), mark the PR as 'Ready For Review' so that the team can review your work and provide comments, suggestions, and request changes. It may take several cycles, but the end result will be solid, testable, conformant code that is safe for us to merge. + +### Merge + +Once your code has been reviewed and approved by the requisite number of team members, it will be merged into the master branch. Once merged, your PR will be automatically closed. + +--- + +## Thank you + +Thank you in advance for your contribution! diff --git a/deps/cpprestsdk/README.md b/deps/cpprestsdk/README.md new file mode 100644 index 0000000000..e7eed0124e --- /dev/null +++ b/deps/cpprestsdk/README.md @@ -0,0 +1,12 @@ +# C++ Rest SDK - JSON library + +This JSON library is taken from the C++ REST SDK in https://github.com/microsoft/cpprestsdk + +Based in the [v2.10.13 release](https://github.com/microsoft/cpprestsdk/tree/v2.10.13/Release), it consists of the needed files to build and use the JSON classes described in `include/cpprest/json.h`. + +Changes made to the files in order to build in the PowerToys project: +- Removal of `#include` references to files that are not needed. +- `#include "pch.h"` instead of `#include "stdafx.h"` to use the PowerToys pre-compiled header. +- `#define _NO_ASYNCRTIMP` in [`include/cpprest/details/cpprest_compat.h`](./include/cpprest/details/cpprest_compat.h) since this class will be statically linked. + +The contents of the C++ Rest SDK license are included in [license.txt](./license.txt). diff --git a/deps/cpprestsdk/cpprestsdk.vcxproj b/deps/cpprestsdk/cpprestsdk.vcxproj new file mode 100644 index 0000000000..26444752a8 --- /dev/null +++ b/deps/cpprestsdk/cpprestsdk.vcxproj @@ -0,0 +1,121 @@ + + + + + Debug + x64 + + + Release + x64 + + + + 15.0 + {4E577735-DFAB-41AF-8A6E-B6E8872A2928} + Win32Proj + common + 10.0 + cpprestsdk + + + + StaticLibrary + true + v142 + Unicode + + + StaticLibrary + false + v142 + true + Unicode + + + + + + + + + + + + + + + true + + + false + + + + Use + Level3 + Disabled + true + _DEBUG;_LIB;%(PreprocessorDefinitions) + true + pch.h + stdcpplatest + MultiThreadedDebug + include;%(AdditionalIncludeDirectories) + + + Windows + true + + + + + Use + Level3 + MaxSpeed + true + true + true + NDEBUG;_LIB;%(PreprocessorDefinitions) + true + stdcpplatest + pch.h + MultiThreaded + include;%(AdditionalIncludeDirectories) + + + Windows + true + true + true + + + + + + + + + + + + + + + + + + + + + + + + Create + Create + + + + + + \ No newline at end of file diff --git a/deps/cpprestsdk/include/cpprest/asyncrt_utils.h b/deps/cpprestsdk/include/cpprest/asyncrt_utils.h new file mode 100644 index 0000000000..19880fa47c --- /dev/null +++ b/deps/cpprestsdk/include/cpprest/asyncrt_utils.h @@ -0,0 +1,697 @@ +/*** + * Copyright (C) Microsoft. All rights reserved. + * Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. + * + * =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ + * + * Various common utilities. + * + * For the latest on this and related APIs, please see: https://github.com/Microsoft/cpprestsdk + * + * =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- + ****/ + +#pragma once + +#include "cpprest/details/basic_types.h" +//#include "pplx/pplxtasks.h" +#include +#include +#include +#include +#include +#include +#include +#include + +#ifndef _WIN32 +#include +#if !defined(ANDROID) && !defined(__ANDROID__) && defined(HAVE_XLOCALE_H) // CodePlex 269 +/* Systems using glibc: xlocale.h has been removed from glibc 2.26 + The above include of locale.h is sufficient + Further details: https://sourceware.org/git/?p=glibc.git;a=commit;h=f0be25b6336db7492e47d2e8e72eb8af53b5506d */ +#include +#endif +#endif + +/// Various utilities for string conversions and date and time manipulation. +namespace utility +{ +// Left over from VS2010 support, remains to avoid breaking. +typedef std::chrono::seconds seconds; + +/// Functions for converting to/from std::chrono::seconds to xml string. +namespace timespan +{ +/// +/// Converts a timespan/interval in seconds to xml duration string as specified by +/// http://www.w3.org/TR/xmlschema-2/#duration +/// +_ASYNCRTIMP utility::string_t __cdecl seconds_to_xml_duration(utility::seconds numSecs); + +/// +/// Converts an xml duration to timespan/interval in seconds +/// http://www.w3.org/TR/xmlschema-2/#duration +/// +_ASYNCRTIMP utility::seconds __cdecl xml_duration_to_seconds(const utility::string_t& timespanString); +} // namespace timespan + +/// Functions for Unicode string conversions. +namespace conversions +{ +/// +/// Converts a UTF-16 string to a UTF-8 string. +/// +/// A two byte character UTF-16 string. +/// A single byte character UTF-8 string. +_ASYNCRTIMP std::string __cdecl utf16_to_utf8(const utf16string& w); + +/// +/// Converts a UTF-8 string to a UTF-16 +/// +/// A single byte character UTF-8 string. +/// A two byte character UTF-16 string. +_ASYNCRTIMP utf16string __cdecl utf8_to_utf16(const std::string& s); + +/// +/// Converts a ASCII (us-ascii) string to a UTF-16 string. +/// +/// A single byte character us-ascii string. +/// A two byte character UTF-16 string. +_ASYNCRTIMP utf16string __cdecl usascii_to_utf16(const std::string& s); + +/// +/// Converts a Latin1 (iso-8859-1) string to a UTF-16 string. +/// +/// A single byte character UTF-8 string. +/// A two byte character UTF-16 string. +_ASYNCRTIMP utf16string __cdecl latin1_to_utf16(const std::string& s); + +/// +/// Converts a Latin1 (iso-8859-1) string to a UTF-8 string. +/// +/// A single byte character UTF-8 string. +/// A single byte character UTF-8 string. +_ASYNCRTIMP utf8string __cdecl latin1_to_utf8(const std::string& s); + +/// +/// Converts to a platform dependent Unicode string type. +/// +/// A single byte character UTF-8 string. +/// A platform dependent string type. +#ifdef _UTF16_STRINGS +_ASYNCRTIMP utility::string_t __cdecl to_string_t(std::string&& s); +#else +inline utility::string_t&& to_string_t(std::string&& s) { return std::move(s); } +#endif + +/// +/// Converts to a platform dependent Unicode string type. +/// +/// A two byte character UTF-16 string. +/// A platform dependent string type. +#ifdef _UTF16_STRINGS +inline utility::string_t&& to_string_t(utf16string&& s) { return std::move(s); } +#else +_ASYNCRTIMP utility::string_t __cdecl to_string_t(utf16string&& s); +#endif +/// +/// Converts to a platform dependent Unicode string type. +/// +/// A single byte character UTF-8 string. +/// A platform dependent string type. +#ifdef _UTF16_STRINGS +_ASYNCRTIMP utility::string_t __cdecl to_string_t(const std::string& s); +#else +inline const utility::string_t& to_string_t(const std::string& s) { return s; } +#endif + +/// +/// Converts to a platform dependent Unicode string type. +/// +/// A two byte character UTF-16 string. +/// A platform dependent string type. +#ifdef _UTF16_STRINGS +inline const utility::string_t& to_string_t(const utf16string& s) { return s; } +#else +_ASYNCRTIMP utility::string_t __cdecl to_string_t(const utf16string& s); +#endif + +/// +/// Converts to a UTF-16 from string. +/// +/// A single byte character UTF-8 string. +/// A two byte character UTF-16 string. +_ASYNCRTIMP utf16string __cdecl to_utf16string(const std::string& value); + +/// +/// Converts to a UTF-16 from string. +/// +/// A two byte character UTF-16 string. +/// A two byte character UTF-16 string. +inline const utf16string& to_utf16string(const utf16string& value) { return value; } +/// +/// Converts to a UTF-16 from string. +/// +/// A two byte character UTF-16 string. +/// A two byte character UTF-16 string. +inline utf16string&& to_utf16string(utf16string&& value) { return std::move(value); } + +/// +/// Converts to a UTF-8 string. +/// +/// A single byte character UTF-8 string. +/// A single byte character UTF-8 string. +inline std::string&& to_utf8string(std::string&& value) { return std::move(value); } + +/// +/// Converts to a UTF-8 string. +/// +/// A single byte character UTF-8 string. +/// A single byte character UTF-8 string. +inline const std::string& to_utf8string(const std::string& value) { return value; } + +/// +/// Converts to a UTF-8 string. +/// +/// A two byte character UTF-16 string. +/// A single byte character UTF-8 string. +_ASYNCRTIMP std::string __cdecl to_utf8string(const utf16string& value); + +/// +/// Encode the given byte array into a base64 string +/// +_ASYNCRTIMP utility::string_t __cdecl to_base64(const std::vector& data); + +/// +/// Encode the given 8-byte integer into a base64 string +/// +_ASYNCRTIMP utility::string_t __cdecl to_base64(uint64_t data); + +/// +/// Decode the given base64 string to a byte array +/// +_ASYNCRTIMP std::vector __cdecl from_base64(const utility::string_t& str); + +template +CASABLANCA_DEPRECATED("All locale-sensitive APIs will be removed in a future update. Use stringstreams directly if " + "locale support is required.") +utility::string_t print_string(const Source& val, const std::locale& loc = std::locale()) +{ + utility::ostringstream_t oss; + oss.imbue(loc); + oss << val; + if (oss.bad()) + { + throw std::bad_cast(); + } + return oss.str(); +} + +CASABLANCA_DEPRECATED("All locale-sensitive APIs will be removed in a future update. Use stringstreams directly if " + "locale support is required.") +inline utility::string_t print_string(const utility::string_t& val) { return val; } + +namespace details +{ +#if defined(__ANDROID__) +template +inline std::string to_string(const T t) +{ + std::ostringstream os; + os.imbue(std::locale::classic()); + os << t; + return os.str(); +} +#endif + +template +inline utility::string_t to_string_t(const T t) +{ +#ifdef _UTF16_STRINGS + using std::to_wstring; + return to_wstring(t); +#else +#if !defined(__ANDROID__) + using std::to_string; +#endif + return to_string(t); +#endif +} + +template +utility::string_t print_string(const Source& val) +{ + utility::ostringstream_t oss; + oss.imbue(std::locale::classic()); + oss << val; + if (oss.bad()) + { + throw std::bad_cast(); + } + return oss.str(); +} + +inline const utility::string_t& print_string(const utility::string_t& val) { return val; } + +template +utf8string print_utf8string(const Source& val) +{ + return conversions::to_utf8string(print_string(val)); +} +inline const utf8string& print_utf8string(const utf8string& val) { return val; } + +template +Target scan_string(const utility::string_t& str) +{ + Target t; + utility::istringstream_t iss(str); + iss.imbue(std::locale::classic()); + iss >> t; + if (iss.bad()) + { + throw std::bad_cast(); + } + return t; +} + +inline const utility::string_t& scan_string(const utility::string_t& str) { return str; } +} // namespace details + +template +CASABLANCA_DEPRECATED("All locale-sensitive APIs will be removed in a future update. Use stringstreams directly if " + "locale support is required.") +Target scan_string(const utility::string_t& str, const std::locale& loc = std::locale()) +{ + Target t; + utility::istringstream_t iss(str); + iss.imbue(loc); + iss >> t; + if (iss.bad()) + { + throw std::bad_cast(); + } + return t; +} + +CASABLANCA_DEPRECATED("All locale-sensitive APIs will be removed in a future update. Use stringstreams directly if " + "locale support is required.") +inline utility::string_t scan_string(const utility::string_t& str) { return str; } +} // namespace conversions + +namespace details +{ +/// +/// Cross platform RAII container for setting thread local locale. +/// +class scoped_c_thread_locale +{ +public: + _ASYNCRTIMP scoped_c_thread_locale(); + _ASYNCRTIMP ~scoped_c_thread_locale(); + +#if !defined(ANDROID) && !defined(__ANDROID__) // CodePlex 269 +#ifdef _WIN32 + typedef _locale_t xplat_locale; +#else + typedef locale_t xplat_locale; +#endif + + static _ASYNCRTIMP xplat_locale __cdecl c_locale(); +#endif +private: +#ifdef _WIN32 + std::string m_prevLocale; + int m_prevThreadSetting; +#elif !(defined(ANDROID) || defined(__ANDROID__)) + locale_t m_prevLocale; +#endif + scoped_c_thread_locale(const scoped_c_thread_locale&); + scoped_c_thread_locale& operator=(const scoped_c_thread_locale&); +}; + +/// +/// Our own implementation of alpha numeric instead of std::isalnum to avoid +/// taking global lock for performance reasons. +/// +inline bool __cdecl is_alnum(const unsigned char uch) CPPREST_NOEXCEPT +{ // test if uch is an alnum character + // special casing char to avoid branches + // clang-format off + static CPPREST_CONSTEXPR bool is_alnum_table[UCHAR_MAX + 1] = { + /* X0 X1 X2 X3 X4 X5 X6 X7 X8 X9 XA XB XC XD XE XF */ + /* 0X */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + /* 1X */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + /* 2X */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + /* 3X */ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, /* 0-9 */ + /* 4X */ 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, /* A-Z */ + /* 5X */ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, + /* 6X */ 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, /* a-z */ + /* 7X */ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0 + /* non-ASCII values initialized to 0 */ + }; + // clang-format on + return (is_alnum_table[uch]); +} + +/// +/// Our own implementation of alpha numeric instead of std::isalnum to avoid +/// taking global lock for performance reasons. +/// +inline bool __cdecl is_alnum(const char ch) CPPREST_NOEXCEPT { return (is_alnum(static_cast(ch))); } + +/// +/// Our own implementation of alpha numeric instead of std::isalnum to avoid +/// taking global lock for performance reasons. +/// +template +inline bool __cdecl is_alnum(Elem ch) CPPREST_NOEXCEPT +{ + // assumes 'x' == L'x' for the ASCII range + typedef typename std::make_unsigned::type UElem; + const auto uch = static_cast(ch); + return (uch <= static_cast('z') && is_alnum(static_cast(uch))); +} + +/// +/// Simplistic implementation of make_unique. A better implementation would be based on variadic templates +/// and therefore not be compatible with Dev10. +/// +template +std::unique_ptr<_Type> make_unique() +{ + return std::unique_ptr<_Type>(new _Type()); +} + +template +std::unique_ptr<_Type> make_unique(_Arg1&& arg1) +{ + return std::unique_ptr<_Type>(new _Type(std::forward<_Arg1>(arg1))); +} + +template +std::unique_ptr<_Type> make_unique(_Arg1&& arg1, _Arg2&& arg2) +{ + return std::unique_ptr<_Type>(new _Type(std::forward<_Arg1>(arg1), std::forward<_Arg2>(arg2))); +} + +template +std::unique_ptr<_Type> make_unique(_Arg1&& arg1, _Arg2&& arg2, _Arg3&& arg3) +{ + return std::unique_ptr<_Type>( + new _Type(std::forward<_Arg1>(arg1), std::forward<_Arg2>(arg2), std::forward<_Arg3>(arg3))); +} + +template +std::unique_ptr<_Type> make_unique(_Arg1&& arg1, _Arg2&& arg2, _Arg3&& arg3, _Arg4&& arg4) +{ + return std::unique_ptr<_Type>(new _Type( + std::forward<_Arg1>(arg1), std::forward<_Arg2>(arg2), std::forward<_Arg3>(arg3), std::forward<_Arg4>(arg4))); +} + +template +std::unique_ptr<_Type> make_unique(_Arg1&& arg1, _Arg2&& arg2, _Arg3&& arg3, _Arg4&& arg4, _Arg5&& arg5) +{ + return std::unique_ptr<_Type>(new _Type(std::forward<_Arg1>(arg1), + std::forward<_Arg2>(arg2), + std::forward<_Arg3>(arg3), + std::forward<_Arg4>(arg4), + std::forward<_Arg5>(arg5))); +} + +template +std::unique_ptr<_Type> make_unique(_Arg1&& arg1, _Arg2&& arg2, _Arg3&& arg3, _Arg4&& arg4, _Arg5&& arg5, _Arg6&& arg6) +{ + return std::unique_ptr<_Type>(new _Type(std::forward<_Arg1>(arg1), + std::forward<_Arg2>(arg2), + std::forward<_Arg3>(arg3), + std::forward<_Arg4>(arg4), + std::forward<_Arg5>(arg5), + std::forward<_Arg6>(arg6))); +} + +/// +/// Cross platform utility function for performing case insensitive string equality comparison. +/// +/// First string to compare. +/// Second strong to compare. +/// true if the strings are equivalent, false otherwise +_ASYNCRTIMP bool __cdecl str_iequal(const std::string& left, const std::string& right) CPPREST_NOEXCEPT; + +/// +/// Cross platform utility function for performing case insensitive string equality comparison. +/// +/// First string to compare. +/// Second strong to compare. +/// true if the strings are equivalent, false otherwise +_ASYNCRTIMP bool __cdecl str_iequal(const std::wstring& left, const std::wstring& right) CPPREST_NOEXCEPT; + +/// +/// Cross platform utility function for performing case insensitive string less-than comparison. +/// +/// First string to compare. +/// Second strong to compare. +/// true if a lowercase view of left is lexicographically less than a lowercase view of right; otherwise, +/// false. +_ASYNCRTIMP bool __cdecl str_iless(const std::string& left, const std::string& right) CPPREST_NOEXCEPT; + +/// +/// Cross platform utility function for performing case insensitive string less-than comparison. +/// +/// First string to compare. +/// Second strong to compare. +/// true if a lowercase view of left is lexicographically less than a lowercase view of right; otherwise, +/// false. +_ASYNCRTIMP bool __cdecl str_iless(const std::wstring& left, const std::wstring& right) CPPREST_NOEXCEPT; + +/// +/// Convert a string to lowercase in place. +/// +/// The string to convert to lowercase. +_ASYNCRTIMP void __cdecl inplace_tolower(std::string& target) CPPREST_NOEXCEPT; + +/// +/// Convert a string to lowercase in place. +/// +/// The string to convert to lowercase. +_ASYNCRTIMP void __cdecl inplace_tolower(std::wstring& target) CPPREST_NOEXCEPT; + +#ifdef _WIN32 + +/// +/// Category error type for Windows OS errors. +/// +class windows_category_impl : public std::error_category +{ +public: + virtual const char* name() const CPPREST_NOEXCEPT { return "windows"; } + + virtual std::string message(int errorCode) const CPPREST_NOEXCEPT; + + virtual std::error_condition default_error_condition(int errorCode) const CPPREST_NOEXCEPT; +}; + +/// +/// Gets the one global instance of the windows error category. +/// +/// An error category instance. +_ASYNCRTIMP const std::error_category& __cdecl windows_category(); + +#else + +/// +/// Gets the one global instance of the linux error category. +/// +/// An error category instance. +_ASYNCRTIMP const std::error_category& __cdecl linux_category(); + +#endif + +/// +/// Gets the one global instance of the current platform's error category. +/// +_ASYNCRTIMP const std::error_category& __cdecl platform_category(); + +/// +/// Creates an instance of std::system_error from a OS error code. +/// +inline std::system_error __cdecl create_system_error(unsigned long errorCode) +{ + std::error_code code((int)errorCode, platform_category()); + return std::system_error(code, code.message()); +} + +/// +/// Creates a std::error_code from a OS error code. +/// +inline std::error_code __cdecl create_error_code(unsigned long errorCode) +{ + return std::error_code((int)errorCode, platform_category()); +} + +/// +/// Creates the corresponding error message from a OS error code. +/// +inline utility::string_t __cdecl create_error_message(unsigned long errorCode) +{ + return utility::conversions::to_string_t(create_error_code(errorCode).message()); +} + +} // namespace details + +class datetime +{ +public: + typedef uint64_t interval_type; + + /// + /// Defines the supported date and time string formats. + /// + enum date_format + { + RFC_1123, + ISO_8601 + }; + + /// + /// Returns the current UTC time. + /// + static _ASYNCRTIMP datetime __cdecl utc_now(); + + /// + /// An invalid UTC timestamp value. + /// + enum : interval_type + { + utc_timestamp_invalid = static_cast(-1) + }; + + /// + /// Returns seconds since Unix/POSIX time epoch at 01-01-1970 00:00:00. + /// If time is before epoch, utc_timestamp_invalid is returned. + /// + static interval_type utc_timestamp() + { + const auto seconds = utc_now().to_interval() / _secondTicks; + if (seconds >= 11644473600LL) + { + return seconds - 11644473600LL; + } + else + { + return utc_timestamp_invalid; + } + } + + datetime() : m_interval(0) {} + + /// + /// Creates datetime from a string representing time in UTC in RFC 1123 format. + /// + /// Returns a datetime of zero if not successful. + static _ASYNCRTIMP datetime __cdecl from_string(const utility::string_t& timestring, date_format format = RFC_1123); + + /// + /// Returns a string representation of the datetime. + /// + _ASYNCRTIMP utility::string_t to_string(date_format format = RFC_1123) const; + + /// + /// Returns the integral time value. + /// + interval_type to_interval() const { return m_interval; } + + datetime operator-(interval_type value) const { return datetime(m_interval - value); } + + datetime operator+(interval_type value) const { return datetime(m_interval + value); } + + bool operator==(datetime dt) const { return m_interval == dt.m_interval; } + + bool operator!=(const datetime& dt) const { return !(*this == dt); } + + static interval_type from_milliseconds(unsigned int milliseconds) { return milliseconds * _msTicks; } + + static interval_type from_seconds(unsigned int seconds) { return seconds * _secondTicks; } + + static interval_type from_minutes(unsigned int minutes) { return minutes * _minuteTicks; } + + static interval_type from_hours(unsigned int hours) { return hours * _hourTicks; } + + static interval_type from_days(unsigned int days) { return days * _dayTicks; } + + bool is_initialized() const { return m_interval != 0; } + +private: + friend int operator-(datetime t1, datetime t2); + + static const interval_type _msTicks = static_cast(10000); + static const interval_type _secondTicks = 1000 * _msTicks; + static const interval_type _minuteTicks = 60 * _secondTicks; + static const interval_type _hourTicks = 60 * 60 * _secondTicks; + static const interval_type _dayTicks = 24 * 60 * 60 * _secondTicks; + + // Private constructor. Use static methods to create an instance. + datetime(interval_type interval) : m_interval(interval) {} + + // Storing as hundreds of nanoseconds 10e-7, i.e. 1 here equals 100ns. + interval_type m_interval; +}; + +inline int operator-(datetime t1, datetime t2) +{ + auto diff = (t1.m_interval - t2.m_interval); + + // Round it down to seconds + diff /= 10 * 1000 * 1000; + + return static_cast(diff); +} + +/// +/// Nonce string generator class. +/// +class nonce_generator +{ +public: + /// + /// Define default nonce length. + /// + enum + { + default_length = 32 + }; + + /// + /// Nonce generator constructor. + /// + /// Length of the generated nonce string. + nonce_generator(int length = default_length) + : m_random(static_cast(utility::datetime::utc_timestamp())), m_length(length) + { + } + + /// + /// Generate a nonce string containing random alphanumeric characters (A-Za-z0-9). + /// Length of the generated string is set by length(). + /// + /// The generated nonce string. + _ASYNCRTIMP utility::string_t generate(); + + /// + /// Get length of generated nonce string. + /// + /// Nonce string length. + int length() const { return m_length; } + + /// + /// Set length of the generated nonce string. + /// + /// Lenght of nonce string. + void set_length(int length) { m_length = length; } + +private: + std::mt19937 m_random; + int m_length; +}; + +} // namespace utility diff --git a/deps/cpprestsdk/include/cpprest/base_uri.h b/deps/cpprestsdk/include/cpprest/base_uri.h new file mode 100644 index 0000000000..7c6943119c --- /dev/null +++ b/deps/cpprestsdk/include/cpprest/base_uri.h @@ -0,0 +1,391 @@ +/*** + * Copyright (C) Microsoft. All rights reserved. + * Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. + * + * =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ + * + * Protocol independent support for URIs. + * + * For the latest on this and related APIs, please see: https://github.com/Microsoft/cpprestsdk + * + * =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- + ****/ + +#pragma once + +#include "cpprest/asyncrt_utils.h" +#include "cpprest/details/basic_types.h" +#include +#include +#include +#include + +namespace web +{ +namespace details +{ +struct uri_components +{ + uri_components() : m_path(_XPLATSTR("/")), m_port(-1) {} + + uri_components(const uri_components&) = default; + uri_components& operator=(const uri_components&) = default; + + // This is for VS2013 compatibility -- replace with '= default' when VS2013 is completely dropped. + uri_components(uri_components&& other) CPPREST_NOEXCEPT : m_scheme(std::move(other.m_scheme)), + m_host(std::move(other.m_host)), + m_user_info(std::move(other.m_user_info)), + m_path(std::move(other.m_path)), + m_query(std::move(other.m_query)), + m_fragment(std::move(other.m_fragment)), + m_port(other.m_port) + { + } + + // This is for VS2013 compatibility -- replace with '= default' when VS2013 is completely dropped. + uri_components& operator=(uri_components&& other) CPPREST_NOEXCEPT + { + if (this != &other) + { + m_scheme = std::move(other.m_scheme); + m_host = std::move(other.m_host); + m_user_info = std::move(other.m_user_info); + m_path = std::move(other.m_path); + m_query = std::move(other.m_query); + m_fragment = std::move(other.m_fragment); + m_port = other.m_port; + } + return *this; + } + + _ASYNCRTIMP utility::string_t join(); + + utility::string_t m_scheme; + utility::string_t m_host; + utility::string_t m_user_info; + utility::string_t m_path; + utility::string_t m_query; + utility::string_t m_fragment; + int m_port; +}; +} // namespace details + +/// +/// A single exception type to represent errors in parsing, encoding, and decoding URIs. +/// +class uri_exception : public std::exception +{ +public: + uri_exception(std::string msg) : m_msg(std::move(msg)) {} + + ~uri_exception() CPPREST_NOEXCEPT {} + + const char* what() const CPPREST_NOEXCEPT { return m_msg.c_str(); } + +private: + std::string m_msg; +}; + +/// +/// A flexible, protocol independent URI implementation. +/// +/// URI instances are immutable. Querying the various fields on an empty URI will return empty strings. Querying +/// various diagnostic members on an empty URI will return false. +/// +/// +/// This implementation accepts both URIs ('http://msn.com/path') and URI relative-references +/// ('/path?query#frag'). +/// +/// This implementation does not provide any scheme-specific handling -- an example of this +/// would be the following: 'http://path1/path'. This is a valid URI, but it's not a valid +/// http-uri -- that is, it's syntactically correct but does not conform to the requirements +/// of the http scheme (http requires a host). +/// We could provide this by allowing a pluggable 'scheme' policy-class, which would provide +/// extra capability for validating and canonicalizing a URI according to scheme, and would +/// introduce a layer of type-safety for URIs of differing schemes, and thus differing semantics. +/// +/// One issue with implementing a scheme-independent URI facility is that of comparing for equality. +/// For instance, these URIs are considered equal 'http://msn.com', 'http://msn.com:80'. That is -- +/// the 'default' port can be either omitted or explicit. Since we don't have a way to map a scheme +/// to it's default port, we don't have a way to know these are equal. This is just one of a class of +/// issues with regard to scheme-specific behavior. +/// +class uri +{ +public: + /// + /// The various components of a URI. This enum is used to indicate which + /// URI component is being encoded to the encode_uri_component. This allows + /// specific encoding to be performed. + /// + /// Scheme and port don't allow '%' so they don't need to be encoded. + /// + class components + { + public: + enum component + { + user_info, + host, + path, + query, + fragment, + full_uri + }; + }; + + /// + /// Encodes a URI component according to RFC 3986. + /// Note if a full URI is specified instead of an individual URI component all + /// characters not in the unreserved set are escaped. + /// + /// The URI as a string. + /// The encoded string. + _ASYNCRTIMP static utility::string_t __cdecl encode_uri(const utility::string_t& raw, + uri::components::component = components::full_uri); + + /// + /// Encodes a string by converting all characters except for RFC 3986 unreserved characters to their + /// hexadecimal representation. + /// + /// The encoded string. + _ASYNCRTIMP static utility::string_t __cdecl encode_data_string(const utility::string_t& data); + + /// + /// Decodes an encoded string. + /// + /// The URI as a string. + /// The decoded string. + _ASYNCRTIMP static utility::string_t __cdecl decode(const utility::string_t& encoded); + + /// + /// Splits a path into its hierarchical components. + /// + /// The path as a string + /// A std::vector<utility::string_t> containing the segments in the path. + _ASYNCRTIMP static std::vector __cdecl split_path(const utility::string_t& path); + + /// + /// Splits a query into its key-value components. + /// + /// The query string + /// A std::map<utility::string_t, utility::string_t> containing the key-value components of + /// the query. + _ASYNCRTIMP static std::map __cdecl split_query( + const utility::string_t& query); + + /// + /// Validates a string as a URI. + /// + /// + /// This function accepts both uris ('http://msn.com') and uri relative-references ('path1/path2?query'). + /// + /// The URI string to be validated. + /// true if the given string represents a valid URI, false otherwise. + _ASYNCRTIMP static bool __cdecl validate(const utility::string_t& uri_string); + + /// + /// Creates an empty uri + /// + uri() : m_uri(_XPLATSTR("/")) {} + + /// + /// Creates a URI from the given encoded string. This will throw an exception if the string + /// does not contain a valid URI. Use uri::validate if processing user-input. + /// + /// A pointer to an encoded string to create the URI instance. + _ASYNCRTIMP uri(const utility::char_t* uri_string); + + /// + /// Creates a URI from the given encoded string. This will throw an exception if the string + /// does not contain a valid URI. Use uri::validate if processing user-input. + /// + /// An encoded URI string to create the URI instance. + _ASYNCRTIMP uri(const utility::string_t& uri_string); + + /// + /// Copy constructor. + /// + uri(const uri&) = default; + + /// + /// Copy assignment operator. + /// + uri& operator=(const uri&) = default; + + /// + /// Move constructor. + /// + // This is for VS2013 compatibility -- replace with '= default' when VS2013 is completely dropped. + uri(uri&& other) CPPREST_NOEXCEPT : m_uri(std::move(other.m_uri)), m_components(std::move(other.m_components)) {} + + /// + /// Move assignment operator + /// + // This is for VS2013 compatibility -- replace with '= default' when VS2013 is completely dropped. + uri& operator=(uri&& other) CPPREST_NOEXCEPT + { + if (this != &other) + { + m_uri = std::move(other.m_uri); + m_components = std::move(other.m_components); + } + return *this; + } + + /// + /// Get the scheme component of the URI as an encoded string. + /// + /// The URI scheme as a string. + const utility::string_t& scheme() const { return m_components.m_scheme; } + + /// + /// Get the user information component of the URI as an encoded string. + /// + /// The URI user information as a string. + const utility::string_t& user_info() const { return m_components.m_user_info; } + + /// + /// Get the host component of the URI as an encoded string. + /// + /// The URI host as a string. + const utility::string_t& host() const { return m_components.m_host; } + + /// + /// Get the port component of the URI. Returns -1 if no port is specified. + /// + /// The URI port as an integer. + int port() const { return m_components.m_port; } + + /// + /// Get the path component of the URI as an encoded string. + /// + /// The URI path as a string. + const utility::string_t& path() const { return m_components.m_path; } + + /// + /// Get the query component of the URI as an encoded string. + /// + /// The URI query as a string. + const utility::string_t& query() const { return m_components.m_query; } + + /// + /// Get the fragment component of the URI as an encoded string. + /// + /// The URI fragment as a string. + const utility::string_t& fragment() const { return m_components.m_fragment; } + + /// + /// Creates a new uri object with the same authority portion as this one, omitting the resource and query portions. + /// + /// The new uri object with the same authority. + _ASYNCRTIMP uri authority() const; + + /// + /// Gets the path, query, and fragment portion of this uri, which may be empty. + /// + /// The new URI object with the path, query and fragment portion of this URI. + _ASYNCRTIMP uri resource() const; + + /// + /// An empty URI specifies no components, and serves as a default value + /// + bool is_empty() const { return this->m_uri.empty() || this->m_uri == _XPLATSTR("/"); } + + /// + /// A loopback URI is one which refers to a hostname or ip address with meaning only on the local machine. + /// + /// + /// Examples include "localhost", or ip addresses in the loopback range (127.0.0.0/24). + /// + /// true if this URI references the local host, false otherwise. + bool is_host_loopback() const + { + return !is_empty() && + ((host() == _XPLATSTR("localhost")) || (host().size() > 4 && host().substr(0, 4) == _XPLATSTR("127."))); + } + + /// + /// A wildcard URI is one which refers to all hostnames that resolve to the local machine (using the * or +) + /// + /// + /// http://*:80 + /// + bool is_host_wildcard() const + { + return !is_empty() && (this->host() == _XPLATSTR("*") || this->host() == _XPLATSTR("+")); + } + + /// + /// A portable URI is one with a hostname that can be resolved globally (used from another machine). + /// + /// true if this URI can be resolved globally (used from another machine), false + /// otherwise. The hostname "localhost" is a reserved name that is guaranteed to resolve to the + /// local machine, and cannot be used for inter-machine communication. Likewise the hostnames "*" and "+" on Windows + /// represent wildcards, and do not map to a resolvable address. + /// + bool is_host_portable() const { return !(is_empty() || is_host_loopback() || is_host_wildcard()); } + + /// + /// A default port is one where the port is unspecified, and will be determined by the operating system. + /// The choice of default port may be dictated by the scheme (http -> 80) or not. + /// + /// true if this URI instance has a default port, false otherwise. + bool is_port_default() const { return !is_empty() && this->port() == 0; } + + /// + /// An "authority" URI is one with only a scheme, optional userinfo, hostname, and (optional) port. + /// + /// true if this is an "authority" URI, false otherwise. + bool is_authority() const { return !is_empty() && is_path_empty() && query().empty() && fragment().empty(); } + + /// + /// Returns whether the other URI has the same authority as this one + /// + /// The URI to compare the authority with. + /// true if both the URI's have the same authority, false otherwise. + bool has_same_authority(const uri& other) const { return !is_empty() && this->authority() == other.authority(); } + + /// + /// Returns whether the path portion of this URI is empty + /// + /// true if the path portion of this URI is empty, false otherwise. + bool is_path_empty() const { return path().empty() || path() == _XPLATSTR("/"); } + + /// + /// Returns the full (encoded) URI as a string. + /// + /// The full encoded URI string. + utility::string_t to_string() const { return m_uri; } + + /// + /// Returns an URI resolved against this as the base URI + /// according to RFC3986, Section 5 (https://tools.ietf.org/html/rfc3986#section-5). + /// + /// The relative URI to be resolved against this as base. + /// The new resolved URI string. + _ASYNCRTIMP utility::string_t resolve_uri(const utility::string_t& relativeUri) const; + + _ASYNCRTIMP bool operator==(const uri& other) const; + + bool operator<(const uri& other) const { return m_uri < other.m_uri; } + + bool operator!=(const uri& other) const { return !(this->operator==(other)); } + +private: + friend class uri_builder; + + /// + /// Creates a URI from the given URI components. + /// + /// A URI components object to create the URI instance. + _ASYNCRTIMP uri(const details::uri_components& components); + + // Used by uri_builder + static utility::string_t __cdecl encode_query_impl(const utf8string& raw); + + utility::string_t m_uri; + details::uri_components m_components; +}; + +} // namespace web diff --git a/deps/cpprestsdk/include/cpprest/details/SafeInt3.hpp b/deps/cpprestsdk/include/cpprest/details/SafeInt3.hpp new file mode 100644 index 0000000000..0a9dbdd76a --- /dev/null +++ b/deps/cpprestsdk/include/cpprest/details/SafeInt3.hpp @@ -0,0 +1,7482 @@ +/*----------------------------------------------------------------------------------------------------------- +SafeInt.hpp +Version 3.0.18p + +This software is licensed under the Microsoft Public License (Ms-PL). +For more information about Microsoft open source licenses, refer to +http://www.microsoft.com/opensource/licenses.mspx + +This license governs use of the accompanying software. If you use the software, you accept this license. +If you do not accept the license, do not use the software. + +Definitions +The terms "reproduce," "reproduction," "derivative works," and "distribution" have the same meaning here +as under U.S. copyright law. A "contribution" is the original software, or any additions or changes to +the software. A "contributor" is any person that distributes its contribution under this license. +"Licensed patents" are a contributor's patent claims that read directly on its contribution. + +Grant of Rights +(A) Copyright Grant- Subject to the terms of this license, including the license conditions and limitations +in section 3, each contributor grants you a non-exclusive, worldwide, royalty-free copyright license to +reproduce its contribution, prepare derivative works of its contribution, and distribute its contribution +or any derivative works that you create. + +(B) Patent Grant- Subject to the terms of this license, including the license conditions and limitations in +section 3, each contributor grants you a non-exclusive, worldwide, royalty-free license under its licensed +patents to make, have made, use, sell, offer for sale, import, and/or otherwise dispose of its contribution +in the software or derivative works of the contribution in the software. + +Conditions and Limitations +(A) No Trademark License- This license does not grant you rights to use any contributors' name, logo, + or trademarks. +(B) If you bring a patent claim against any contributor over patents that you claim are infringed by the + software, your patent license from such contributor to the software ends automatically. +(C) If you distribute any portion of the software, you must retain all copyright, patent, trademark, and + attribution notices that are present in the software. +(D) If you distribute any portion of the software in source code form, you may do so only under this license + by including a complete copy of this license with your distribution. If you distribute any portion of the + software in compiled or object code form, you may only do so under a license that complies with this license. +(E) The software is licensed "as-is." You bear the risk of using it. The contributors give no express warranties, + guarantees, or conditions. You may have additional consumer rights under your local laws which this license + cannot change. To the extent permitted under your local laws, the contributors exclude the implied warranties + of merchantability, fitness for a particular purpose and non-infringement. + + +Copyright (c) Microsoft Corporation. All rights reserved. + +This header implements an integer handling class designed to catch +unsafe integer operations + +This header compiles properly at Wall on Visual Studio, -Wall on gcc, and -Weverything on clang. + +Please read the leading comments before using the class. +---------------------------------------------------------------*/ +#pragma once + +// It is a bit tricky to sort out what compiler we are actually using, +// do this once here, and avoid cluttering the code +#define VISUAL_STUDIO_COMPILER 0 +#define CLANG_COMPILER 1 +#define GCC_COMPILER 2 +#define UNKNOWN_COMPILER -1 + +// Clang will sometimes pretend to be Visual Studio +// and does pretend to be gcc. Check it first, as nothing else pretends to be clang +#if defined __clang__ +#define SAFEINT_COMPILER CLANG_COMPILER +#elif defined __GNUC__ +#define SAFEINT_COMPILER GCC_COMPILER +#elif defined _MSC_VER +#define SAFEINT_COMPILER VISUAL_STUDIO_COMPILER +#else +#define SAFEINT_COMPILER UNKNOWN_COMPILER +#endif + +// Enable compiling with /Wall under VC +#if SAFEINT_COMPILER == VISUAL_STUDIO_COMPILER +#pragma warning(push) +// Disable warnings coming from headers +#pragma warning(disable : 4987 4820 4987 4820) + +#endif + +// Need this for ptrdiff_t on some compilers +#include +#include + +#if SAFEINT_COMPILER == VISUAL_STUDIO_COMPILER && defined _M_AMD64 +#include +#define SAFEINT_USE_INTRINSICS 1 +#else +#define SAFEINT_USE_INTRINSICS 0 +#endif + +#if SAFEINT_COMPILER == VISUAL_STUDIO_COMPILER +#pragma warning(pop) +#endif + +// Various things needed for GCC +#if SAFEINT_COMPILER == GCC_COMPILER || SAFEINT_COMPILER == CLANG_COMPILER + +#define NEEDS_INT_DEFINED + +#if !defined NULL +#define NULL 0 +#endif + +// GCC warning suppression +#if SAFEINT_COMPILER == GCC_COMPILER +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wunused-local-typedefs" +#endif + +#include + +// clang only +#if SAFEINT_COMPILER == CLANG_COMPILER + +#if __has_feature(cxx_nullptr) +#define NEEDS_NULLPTR_DEFINED 0 +#endif + +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wc++11-long-long" +#pragma clang diagnostic ignored "-Wold-style-cast" +#pragma clang diagnostic ignored "-Wunused-local-typedef" +#endif + +#endif + +// If the user made a choice, respect it #if !defined +#if !defined NEEDS_NULLPTR_DEFINED +// Visual Studio 2010 and higher support this +#if SAFEINT_COMPILER == VISUAL_STUDIO_COMPILER +#if (_MSC_VER < 1600) +#define NEEDS_NULLPTR_DEFINED 1 +#else +#define NEEDS_NULLPTR_DEFINED 0 +#endif +#else +// Let everything else trigger based on whether we use c++11 or above +#if __cplusplus >= 201103L +#define NEEDS_NULLPTR_DEFINED 0 +#else +#define NEEDS_NULLPTR_DEFINED 1 +#endif +#endif +#endif + +#if NEEDS_NULLPTR_DEFINED +#define nullptr NULL +#endif + +#ifndef C_ASSERT +#define C_ASSERT_DEFINED_SAFEINT +#define C_ASSERT(e) typedef char __C_ASSERT__[(e) ? 1 : -1] +#endif + +// Let's test some assumptions +// We're assuming two's complement negative numbers +C_ASSERT(-1 == static_cast(0xffffffff)); + +/************* Compiler Options +***************************************************************************************************** + +SafeInt supports several compile-time options that can change the behavior of the class. + +Compiler options: +SAFEINT_WARN_64BIT_PORTABILITY - this re-enables various warnings that happen when /Wp64 is used. Enabling this +option is not recommended. NEEDS_INT_DEFINED - if your compiler does not support __int8, __int16, +__int32 and __int64, you can enable this. SAFEINT_ASSERT_ON_EXCEPTION - it is often easier to stop on an assert +and figure out a problem than to try and figure out how you landed in the catch block. SafeIntDefaultExceptionHandler - +if you'd like to replace the exception handlers SafeInt provides, define your replacement and define this. Note - two +built in (Windows-specific) options exist: + - SAFEINT_FAILFAST - bypasses all exception handlers, exits the app with an +exception + - SAFEINT_RAISE_EXCEPTION - throws Win32 exceptions, which can be caught +SAFEINT_DISALLOW_UNSIGNED_NEGATION - Invoking the unary negation operator creates warnings, but if you'd like it to +completely fail to compile, define this. ANSI_CONVERSIONS - This changes the class to use default +comparison behavior, which may be unsafe. Enabling this option is not recommended. SAFEINT_DISABLE_BINARY_ASSERT - +binary AND, OR or XOR operations on mixed size types can produce unexpected results. If you do this, the default is to +assert. Set this if you prefer not to assert under these conditions. SIZE_T_CAST_NEEDED - some compilers +complain if there is not a cast to size_t, others complain if there is one. This lets you not have your compiler +complain. SAFEINT_DISABLE_SHIFT_ASSERT - Set this option if you don't want to assert when shifting more bits than +the type has. Enabling this option is not recommended. + +************************************************************************************************************************************/ + +/* +* The SafeInt class is designed to have as low an overhead as possible +* while still ensuring that all integer operations are conducted safely. +* Nearly every operator has been overloaded, with a very few exceptions. +* +* A usability-safety trade-off has been made to help ensure safety. This +* requires that every operation return either a SafeInt or a bool. If we +* allowed an operator to return a base integer type T, then the following +* can happen: +* +* char i = SafeInt(32) * 2 + SafeInt(16) * 4; +* +* The * operators take precedence, get overloaded, return a char, and then +* you have: +* +* char i = (char)64 + (char)64; //overflow! +* +* This situation would mean that safety would depend on usage, which isn't +* acceptable. +* +* One key operator that is missing is an implicit cast to type T. The reason for +* this is that if there is an implicit cast operator, then we end up with +* an ambiguous compile-time precedence. Because of this amiguity, there +* are two methods that are provided: +* +* Casting operators for every native integer type +* Version 3 note - it now compiles correctly for size_t without warnings +* +* SafeInt::Ptr() - returns the address of the internal integer +* Note - the '&' (address of) operator has been overloaded and returns +* the address of the internal integer. +* +* The SafeInt class should be used in any circumstances where ensuring +* integrity of the calculations is more important than performance. See Performance +* Notes below for additional information. +* +* Many of the conditionals will optimize out or be inlined for a release +* build (especially with /Ox), but it does have significantly more overhead, +* especially for signed numbers. If you do not _require_ negative numbers, use +* unsigned integer types - certain types of problems cannot occur, and this class +* performs most efficiently. +* +* Here's an example of when the class should ideally be used - +* +* void* AllocateMemForStructs(int StructSize, int HowMany) +* { +* SafeInt s(StructSize); +* +* s *= HowMany; +* +* return malloc(s); +* +* } +* +* Here's when it should NOT be used: +* +* void foo() +* { +* int i; +* +* for(i = 0; i < 0xffff; i++) +* .... +* } +* +* Error handling - a SafeInt class will throw exceptions if something +* objectionable happens. The exceptions are SafeIntException classes, +* which contain an enum as a code. +* +* Typical usage might be: +* +* bool foo() +* { +* SafeInt s; //note that s == 0 unless set +* +* try{ +* s *= 23; +* .... +* } +* catch(SafeIntException err) +* { +* //handle errors here +* } +* } +* +* Update for 3.0 - the exception class is now a template parameter. +* You can replace the exception class with any exception class you like. This is accomplished by: +* 1) Create a class that has the following interface: +* + template <> class YourSafeIntExceptionHandler < YourException > + { + public: + static __declspec(noreturn) void __stdcall SafeIntOnOverflow() + { + throw YourException( YourSafeIntArithmeticOverflowError ); + } + + static __declspec(noreturn) void __stdcall SafeIntOnDivZero() + { + throw YourException( YourSafeIntDivideByZeroError ); + } + }; +* +* Note that you don't have to throw C++ exceptions, you can throw Win32 exceptions, or do +* anything you like, just don't return from the call back into the code. +* +* 2) Either explicitly declare SafeInts like so: +* SafeInt< int, YourSafeIntExceptionHandler > si; +* or +* #define SafeIntDefaultExceptionHandler YourSafeIntExceptionHandler +* +* Performance: +* +* Due to the highly nested nature of this class, you can expect relatively poor +* performance in unoptimized code. In tests of optimized code vs. correct inline checks +* in native code, this class has been found to take approximately 8% more CPU time (this varies), +* most of which is due to exception handling. Solutions: +* +* 1) Compile optimized code - /Ox is best, /O2 also performs well. Interestingly, /O1 +* (optimize for size) does not work as well. +* 2) If that 8% hit is really a serious problem, walk through the code and inline the +* exact same checks as the class uses. +* 3) Some operations are more difficult than others - avoid using signed integers, and if +* possible keep them all the same size. 64-bit integers are also expensive. Mixing +* different integer sizes and types may prove expensive. Be aware that literals are +* actually ints. For best performance, cast literals to the type desired. +* +* +* Performance update +* The current version of SafeInt uses template specialization to force the compiler to invoke only the +* operator implementation needed for any given pair of types. This will dramatically improve the perf +* of debug builds. +* +* 3.0 update - not only have we maintained the specialization, there were some cases that were overly complex, +* and using some additional cases (e.g. signed __int64 and unsigned __int64) resulted in some simplification. +* Additionally, there was a lot of work done to better optimize the 64-bit multiplication. +* +* Binary Operators +* +* All of the binary operators have certain assumptions built into the class design. +* This is to ensure correctness. Notes on each class of operator follow: +* +* Arithmetic Operators (*,/,+,-,%) +* There are three possible variants: +* SafeInt< T, E > op SafeInt< T, E > +* SafeInt< T, E > op U +* U op SafeInt< T, E > +* +* The SafeInt< T, E > op SafeInt< U, E > variant is explicitly not supported, and if you try to do +* this the compiler with throw the following error: +* +* error C2593: 'operator *' is ambiguous +* +* This is because the arithmetic operators are required to return a SafeInt of some type. +* The compiler cannot know whether you'd prefer to get a type T or a type U returned. If +* you need to do this, you need to extract the value contained within one of the two using +* the casting operator. For example: +* +* SafeInt< T, E > t, result; +* SafeInt< U, E > u; +* +* result = t * (U)u; +* +* Comparison Operators +* Because each of these operators return type bool, mixing SafeInts of differing types is +* allowed. +* +* Shift Operators +* Shift operators always return the type on the left hand side of the operator. Mixed type +* operations are allowed because the return type is always known. +* +* Boolean Operators +* Like comparison operators, these overloads always return type bool, and mixed-type SafeInts +* are allowed. Additionally, specific overloads exist for type bool on both sides of the +* operator. +* +* Binary Operators +* Mixed-type operations are discouraged, however some provision has been made in order to +* enable things like: +* +* SafeInt c = 2; +* +* if(c & 0x02) +* ... +* +* The "0x02" is actually an int, and it needs to work. +* In the case of binary operations on integers smaller than 32-bit, or of mixed type, corner +* cases do exist where you could get unexpected results. In any case where SafeInt returns a different +* result than the underlying operator, it will call assert(). You should examine your code and cast things +* properly so that you are not programming with side effects. +* +* Documented issues: +* +* This header compiles correctly at /W4 using VC++ 8 (Version 14.00.50727.42) and later. +* As of this writing, I believe it will also work for VC 7.1, but not for VC 7.0 or below. +* If you need a version that will work with lower level compilers, try version 1.0.7. None +* of them work with Visual C++ 6, and gcc didn't work very well, either, though this hasn't +* been tried recently. +* +* It is strongly recommended that any code doing integer manipulation be compiled at /W4 +* - there are a number of warnings which pertain to integer manipulation enabled that are +* not enabled at /W3 (default for VC++) +* +* Perf note - postfix operators are slightly more costly than prefix operators. +* Unless you're actually assigning it to something, ++SafeInt is less expensive than SafeInt++ +* +* The comparison operator behavior in this class varies from the ANSI definition, which is +* arguably broken. As an example, consider the following: +* +* unsigned int l = 0xffffffff; +* char c = -1; +* +* if(c == l) +* printf("Why is -1 equal to 4 billion???\n"); +* +* The problem here is that c gets cast to an int, now has a value of 0xffffffff, and then gets +* cast again to an unsigned int, losing the true value. This behavior is despite the fact that +* an __int64 exists, and the following code will yield a different (and intuitively correct) +* answer: +* +* if((__int64)c == (__int64)l)) +* printf("Why is -1 equal to 4 billion???\n"); +* else +* printf("Why doesn't the compiler upcast to 64-bits when needed?\n"); +* +* Note that combinations with smaller integers won't display the problem - if you +* changed "unsigned int" above to "unsigned short", you'd get the right answer. +* +* If you prefer to retain the ANSI standard behavior insert +* #define ANSI_CONVERSIONS +* into your source. Behavior differences occur in the following cases: +* 8, 16, and 32-bit signed int, unsigned 32-bit int +* any signed int, unsigned 64-bit int +* Note - the signed int must be negative to show the problem +* +* +* Revision history: +* +* Oct 12, 2003 - Created +* Author - David LeBlanc - dleblanc@microsoft.com +* +* Oct 27, 2003 - fixed numerous items pointed out by michmarc and bdawson +* Dec 28, 2003 - 1.0 +* added support for mixed-type operations +* thanks to vikramh +* also fixed broken __int64 multiplication section +* added extended support for mixed-type operations where possible +* Jan 28, 2004 - 1.0.1 +* changed WCHAR to wchar_t +* fixed a construct in two mixed-type assignment overloads that was +* not compiling on some compilers +* Also changed name of private method to comply with standards on +* reserved names +* Thanks to Niels Dekker for the input +* Feb 12, 2004 - 1.0.2 +* Minor changes to remove dependency on Windows headers +* Consistently used __int16, __int32 and __int64 to ensure +* portability +* May 10, 2004 - 1.0.3 +* Corrected bug in one case of GreaterThan +* July 22, 2004 - 1.0.4 +* Tightened logic in addition check (saving 2 instructions) +* Pulled error handler out into function to enable user-defined replacement +* Made internal type of SafeIntException an enum (as per Niels' suggestion) +* Added casts for base integer types (as per Scott Meyers' suggestion) +* Updated usage information - see important new perf notes. +* Cleaned up several const issues (more thanks to Niels) +* +* Oct 1, 2004 - 1.0.5 +* Added support for SEH exceptions instead of C++ exceptions - Win32 only +* Made handlers for DIV0 and overflows individually overridable +* Commented out the destructor - major perf gains here +* Added cast operator for type long, since long != __int32 +* Corrected a couple of missing const modifiers +* Fixed broken >= and <= operators for type U op SafeInt< T, E > +* Nov 5, 2004 - 1.0.6 +* Implemented new logic in binary operators to resolve issues with +* implicit casts +* Fixed casting operator because char != signed char +* Defined __int32 as int instead of long +* Removed unsafe SafeInt::Value method +* Re-implemented casting operator as a result of removing Value method +* Dec 1, 2004 - 1.0.7 +* Implemented specialized operators for pointer arithmetic +* Created overloads for cases of U op= SafeInt. What you do with U +* after that may be dangerous. +* Fixed bug in corner case of MixedSizeModulus +* Fixed bug in MixedSizeMultiply and MixedSizeDivision with input of 0 +* Added throw() decorations +* +* Apr 12, 2005 - 2.0 +* Extensive revisions to leverage template specialization. +* April, 2007 Extensive revisions for version 3.0 +* Nov 22, 2009 Forked from MS internal code +* Changes needed to support gcc compiler - many thanks to Niels Dekker +* for determining not just the issues, but also suggesting fixes. +* Also updating some of the header internals to be the same as the upcoming Visual Studio version. +* +* Jan 16, 2010 64-bit gcc has long == __int64, which means that many of the existing 64-bit +* templates are over-specialized. This forces a redefinition of all the 64-bit +* multiplication routines to use pointers instead of references for return +* values. Also, let's use some intrinsics for x64 Microsoft compiler to +* reduce code size, and hopefully improve efficiency. +* +* June 21, 2014 Better support for clang, higher warning levels supported for all 3 primary supported + compilers (Visual Studio, clang, gcc). + Also started to converge the code base such that the public CodePlex version will + be a drop-in replacement for the Visual Studio version. + +* Note about code style - throughout this class, casts will be written using C-style (T), +* not C++ style static_cast< T >. This is because the class is nearly always dealing with integer +* types, and in this case static_cast and a C cast are equivalent. Given the large number of casts, +* the code is a little more readable this way. In the event a cast is needed where static_cast couldn't +* be substituted, we'll use the new templatized cast to make it explicit what the operation is doing. +* +************************************************************************************************************ +* Version 3.0 changes: +* +* 1) The exception type thrown is now replacable, and you can throw your own exception types. This should help +* those using well-developed exception classes. +* 2) The 64-bit multiplication code has had a lot of perf work done, and should be faster than 2.0. +* 3) There is now limited floating point support. You can initialize a SafeInt with a floating point type, +* and you can cast it out (or assign) to a float as well. +* 4) There is now an Align method. I noticed people use this a lot, and rarely check errors, so now you have one. +* +* Another major improvement is the addition of external functions - if you just want to check an operation, this can now +happen: +* All of the following can be invoked without dealing with creating a class, or managing exceptions. This is especially +handy +* for 64-bit porting, since SafeCast compiles away for a 32-bit cast from size_t to unsigned long, but checks it for +64-bit. +* +* inline bool SafeCast( const T From, U& To ) throw() +* inline bool SafeEquals( const T t, const U u ) throw() +* inline bool SafeNotEquals( const T t, const U u ) throw() +* inline bool SafeGreaterThan( const T t, const U u ) throw() +* inline bool SafeGreaterThanEquals( const T t, const U u ) throw() +* inline bool SafeLessThan( const T t, const U u ) throw() +* inline bool SafeLessThanEquals( const T t, const U u ) throw() +* inline bool SafeModulus( const T& t, const U& u, T& result ) throw() +* inline bool SafeMultiply( T t, U u, T& result ) throw() +* inline bool SafeDivide( T t, U u, T& result ) throw() +* inline bool SafeAdd( T t, U u, T& result ) throw() +* inline bool SafeSubtract( T t, U u, T& result ) throw() +* +*/ + +// use these if the compiler does not support _intXX +#ifdef NEEDS_INT_DEFINED +#define __int8 char +#define __int16 short +#define __int32 int +#define __int64 long long +#endif + +namespace msl +{ +namespace safeint3 +{ +// catch these to handle errors +// Currently implemented code values: +// ERROR_ARITHMETIC_OVERFLOW +// EXCEPTION_INT_DIVIDE_BY_ZERO +enum SafeIntError +{ + SafeIntNoError = 0, + SafeIntArithmeticOverflow, + SafeIntDivideByZero +}; + +} // namespace safeint3 +} // namespace msl + +/* + * Error handler classes + * Using classes to deal with exceptions is going to allow the most + * flexibility, and we can mix different error handlers in the same project + * or even the same file. It isn't advisable to do this in the same function + * because a SafeInt< int, MyExceptionHandler > isn't the same thing as + * SafeInt< int, YourExceptionHander >. + * If for some reason you have to translate between the two, cast one of them back to its + * native type. + * + * To use your own exception class with SafeInt, first create your exception class, + * which may look something like the SafeIntException class below. The second step is to + * create a template specialization that implements SafeIntOnOverflow and SafeIntOnDivZero. + * For example: + * + * template <> class SafeIntExceptionHandler < YourExceptionClass > + * { + * static __declspec(noreturn) void __stdcall SafeIntOnOverflow() + * { + * throw YourExceptionClass( EXCEPTION_INT_OVERFLOW ); + * } + * + * static __declspec(noreturn) void __stdcall SafeIntOnDivZero() + * { + * throw YourExceptionClass( EXCEPTION_INT_DIVIDE_BY_ZERO ); + * } + * }; + * + * typedef SafeIntExceptionHandler < YourExceptionClass > YourSafeIntExceptionHandler + * You'd then declare your SafeInt objects like this: + * SafeInt< int, YourSafeIntExceptionHandler > + * + * Unfortunately, there is no such thing as partial template specialization in typedef + * statements, so you have three options if you find this cumbersome: + * + * 1) Create a holder class: + * + * template < typename T > + * class MySafeInt + * { + * public: + * SafeInt< T, MyExceptionClass> si; + * }; + * + * You'd then declare an instance like so: + * MySafeInt< int > i; + * + * You'd lose handy things like initialization - it would have to be initialized as: + * + * i.si = 0; + * + * 2) You could create a typedef for every int type you deal with: + * + * typedef SafeInt< int, MyExceptionClass > MySafeInt; + * typedef SafeInt< char, MyExceptionClass > MySafeChar; + * + * and so on. The second approach is probably more usable, and will just drop into code + * better, which is the original intent of the SafeInt class. + * + * 3) If you're going to consistently use a different class to handle your exceptions, + * you can override the default typedef like so: + * + * #define SafeIntDefaultExceptionHandler YourSafeIntExceptionHandler + * + * Overall, this is probably the best approach. + * */ + +// On the Microsoft compiler, violating a throw() annotation is a silent error. +// Other compilers might turn these into exceptions, and some users may want to not have throw() enabled. +// In addition, some error handlers may not throw C++ exceptions, which makes everything no throw. +#if defined SAFEINT_REMOVE_NOTHROW +#define SAFEINT_NOTHROW +#else +#define SAFEINT_NOTHROW throw() +#endif + +namespace msl +{ +namespace safeint3 +{ +// If you would like to use your own custom assert +// Define SAFEINT_ASSERT +#if !defined SAFEINT_ASSERT +#include +#define SAFEINT_ASSERT(x) assert(x) +#endif + +#if defined SAFEINT_ASSERT_ON_EXCEPTION +inline void SafeIntExceptionAssert() SAFEINT_NOTHROW { SAFEINT_ASSERT(false); } +#else +inline void SafeIntExceptionAssert() SAFEINT_NOTHROW {} +#endif + +#if SAFEINT_COMPILER == GCC_COMPILER || SAFEINT_COMPILER == CLANG_COMPILER +#define SAFEINT_NORETURN __attribute__((noreturn)) +#define SAFEINT_STDCALL +#define SAFEINT_VISIBLE __attribute__((__visibility__("default"))) +#define SAFEINT_WEAK __attribute__((weak)) +#else +#define SAFEINT_NORETURN __declspec(noreturn) +#define SAFEINT_STDCALL __stdcall +#define SAFEINT_VISIBLE +#define SAFEINT_WEAK +#endif + +class SAFEINT_VISIBLE SafeIntException +{ +public: + SafeIntException() SAFEINT_NOTHROW { m_code = SafeIntNoError; } + SafeIntException(SafeIntError code) SAFEINT_NOTHROW { m_code = code; } + SafeIntError m_code; +}; + +namespace SafeIntInternal +{ +// Visual Studio version of SafeInt provides for two possible error +// handlers: +// SafeIntErrorPolicy_SafeIntException - C++ exception, default if not otherwise defined +// SafeIntErrorPolicy_InvalidParameter - Calls fail fast (Windows-specific), bypasses any exception handlers, +// exits the app with a crash +template +class SafeIntExceptionHandler; + +template<> +class SafeIntExceptionHandler +{ +public: + static SAFEINT_NORETURN void SAFEINT_STDCALL SafeIntOnOverflow() + { + SafeIntExceptionAssert(); + throw SafeIntException(SafeIntArithmeticOverflow); + } + + static SAFEINT_NORETURN void SAFEINT_STDCALL SafeIntOnDivZero() + { + SafeIntExceptionAssert(); + throw SafeIntException(SafeIntDivideByZero); + } +}; + +#if !defined _CRT_SECURE_INVALID_PARAMETER +// Calling fail fast is somewhat more robust than calling abort, +// but abort is the closest we can manage without Visual Studio support +// Need the header for abort() +#include +#define _CRT_SECURE_INVALID_PARAMETER(msg) abort() +#endif + +class SafeInt_InvalidParameter +{ +public: + static SAFEINT_NORETURN void SafeIntOnOverflow() SAFEINT_NOTHROW + { + SafeIntExceptionAssert(); + _CRT_SECURE_INVALID_PARAMETER("SafeInt Arithmetic Overflow"); + } + + static SAFEINT_NORETURN void SafeIntOnDivZero() SAFEINT_NOTHROW + { + SafeIntExceptionAssert(); + _CRT_SECURE_INVALID_PARAMETER("SafeInt Divide By Zero"); + } +}; + +#if defined _WINDOWS_ + +class SafeIntWin32ExceptionHandler +{ +public: + static SAFEINT_NORETURN void SAFEINT_STDCALL SafeIntOnOverflow() SAFEINT_NOTHROW + { + SafeIntExceptionAssert(); + RaiseException(static_cast(EXCEPTION_INT_OVERFLOW), EXCEPTION_NONCONTINUABLE, 0, 0); + } + + static SAFEINT_NORETURN void SAFEINT_STDCALL SafeIntOnDivZero() SAFEINT_NOTHROW + { + SafeIntExceptionAssert(); + RaiseException(static_cast(EXCEPTION_INT_DIVIDE_BY_ZERO), EXCEPTION_NONCONTINUABLE, 0, 0); + } +}; + +#endif + +} // namespace SafeIntInternal + +// both of these have cross-platform support +typedef SafeIntInternal::SafeIntExceptionHandler CPlusPlusExceptionHandler; +typedef SafeIntInternal::SafeInt_InvalidParameter InvalidParameterExceptionHandler; + +// This exception handler is no longer recommended, but is left here in order not to break existing users +#if defined _WINDOWS_ +typedef SafeIntInternal::SafeIntWin32ExceptionHandler Win32ExceptionHandler; +#endif + +// For Visual Studio compatibility +#if defined VISUAL_STUDIO_SAFEINT_COMPAT +typedef CPlusPlusExceptionHandler SafeIntErrorPolicy_SafeIntException; +typedef InvalidParameterExceptionHandler SafeIntErrorPolicy_InvalidParameter; +#endif + +// If the user hasn't defined a default exception handler, +// define one now, depending on whether they would like Win32 or C++ exceptions + +// This library will use conditional noexcept soon, but not in this release +// Some users might mix exception handlers, which is not advised, but is supported +#if !defined SafeIntDefaultExceptionHandler +#if defined SAFEINT_RAISE_EXCEPTION +#if !defined _WINDOWS_ +#error Include windows.h in order to use Win32 exceptions +#endif + +#define SafeIntDefaultExceptionHandler Win32ExceptionHandler +#elif defined SAFEINT_FAILFAST +#define SafeIntDefaultExceptionHandler InvalidParameterExceptionHandler +#else +#define SafeIntDefaultExceptionHandler CPlusPlusExceptionHandler +#if !defined SAFEINT_EXCEPTION_HANDLER_CPP +#define SAFEINT_EXCEPTION_HANDLER_CPP 1 +#endif +#endif +#endif + +#if !defined SAFEINT_EXCEPTION_HANDLER_CPP +#define SAFEINT_EXCEPTION_HANDLER_CPP 0 +#endif + +// If an error handler is chosen other than C++ exceptions, such as Win32 exceptions, fail fast, +// or abort, then all methods become no throw. Some teams track throw() annotations closely, +// and the following option provides for this. +#if SAFEINT_EXCEPTION_HANDLER_CPP +#define SAFEINT_CPP_THROW +#else +#define SAFEINT_CPP_THROW SAFEINT_NOTHROW +#endif + +// Turns out we can fool the compiler into not seeing compile-time constants with +// a simple template specialization +template +class CompileConst; +template<> +class CompileConst +{ +public: + static bool Value() SAFEINT_NOTHROW { return true; } +}; +template<> +class CompileConst +{ +public: + static bool Value() SAFEINT_NOTHROW { return false; } +}; + +// The following template magic is because we're now not allowed +// to cast a float to an enum. This means that if we happen to assign +// an enum to a SafeInt of some type, it won't compile, unless we prevent +// isFloat = ( (T)( (float)1.1 ) > (T)1 ) +// from compiling in the case of an enum, which is the point of the specialization +// that follows. + +// If we have support for std, then we can do this easily, and detect enums as well +template +class NumericType; + +#if defined _LIBCPP_TYPE_TRAITS || defined _TYPE_TRAITS_ +// Continue to special case bool +template<> +class NumericType +{ +public: + enum + { + isBool = true, + isFloat = false, + isInt = false + }; +}; +template +class NumericType +{ +public: + enum + { + isBool = false, // We specialized out a bool + isFloat = std::is_floating_point::value, + // If it is an enum, then consider it an int type + // This does allow someone to make a SafeInt from an enum type, which is not recommended, + // but it also allows someone to add an enum value to a SafeInt, which is handy. + isInt = std::is_integral::value || std::is_enum::value + }; +}; + +#else + +template<> +class NumericType +{ +public: + enum + { + isBool = true, + isFloat = false, + isInt = false + }; +}; +template<> +class NumericType +{ +public: + enum + { + isBool = false, + isFloat = false, + isInt = true + }; +}; +template<> +class NumericType +{ +public: + enum + { + isBool = false, + isFloat = false, + isInt = true + }; +}; +template<> +class NumericType +{ +public: + enum + { + isBool = false, + isFloat = false, + isInt = true + }; +}; +template<> +class NumericType +{ +public: + enum + { + isBool = false, + isFloat = false, + isInt = true + }; +}; +template<> +class NumericType +{ +public: + enum + { + isBool = false, + isFloat = false, + isInt = true + }; +}; +#if defined SAFEINT_USE_WCHAR_T || defined _NATIVE_WCHAR_T_DEFINED +template<> +class NumericType +{ +public: + enum + { + isBool = false, + isFloat = false, + isInt = true + }; +}; +#endif +template<> +class NumericType +{ +public: + enum + { + isBool = false, + isFloat = false, + isInt = true + }; +}; +template<> +class NumericType +{ +public: + enum + { + isBool = false, + isFloat = false, + isInt = true + }; +}; +template<> +class NumericType +{ +public: + enum + { + isBool = false, + isFloat = false, + isInt = true + }; +}; +template<> +class NumericType +{ +public: + enum + { + isBool = false, + isFloat = false, + isInt = true + }; +}; +template<> +class NumericType<__int64> +{ +public: + enum + { + isBool = false, + isFloat = false, + isInt = true + }; +}; +template<> +class NumericType +{ +public: + enum + { + isBool = false, + isFloat = false, + isInt = true + }; +}; +template<> +class NumericType +{ +public: + enum + { + isBool = false, + isFloat = true, + isInt = false + }; +}; +template<> +class NumericType +{ +public: + enum + { + isBool = false, + isFloat = true, + isInt = false + }; +}; +template<> +class NumericType +{ +public: + enum + { + isBool = false, + isFloat = true, + isInt = false + }; +}; +// Catch-all for anything not supported +template +class NumericType +{ +public: + // We have some unknown type, which could be an enum. For parity with the code that uses , + // We can try a static_cast - it if compiles, then it might be an enum, and should work. + // If it is something else that just happens to have a constructor that takes an int, and a casting operator, + // then it is possible something will go wrong, and for best results, cast it directly to an int before letting it + // interact with a SafeInt + + enum + { + isBool = false, + isFloat = false, + isInt = static_cast(static_cast(0)) == 0 + }; +}; +#endif // type traits + +// Use this to avoid compile-time const truncation warnings +template +class SafeIntMinMax; + +template<> +class SafeIntMinMax +{ +public: + const static signed __int8 min = (-0x7f - 1); + const static signed __int8 max = 0x7f; +}; +template<> +class SafeIntMinMax +{ +public: + const static __int16 min = (-0x7fff - 1); + const static __int16 max = 0x7fff; +}; +template<> +class SafeIntMinMax +{ +public: + const static __int32 min = (-0x7fffffff - 1); + const static __int32 max = 0x7fffffff; +}; +template<> +class SafeIntMinMax +{ +public: + const static __int64 min = static_cast<__int64>(0x8000000000000000LL); + const static __int64 max = 0x7fffffffffffffffLL; +}; + +template<> +class SafeIntMinMax +{ +public: + const static unsigned __int8 min = 0; + const static unsigned __int8 max = 0xff; +}; +template<> +class SafeIntMinMax +{ +public: + const static unsigned __int16 min = 0; + const static unsigned __int16 max = 0xffff; +}; +template<> +class SafeIntMinMax +{ +public: + const static unsigned __int32 min = 0; + const static unsigned __int32 max = 0xffffffff; +}; +template<> +class SafeIntMinMax +{ +public: + const static unsigned __int64 min = 0; + const static unsigned __int64 max = 0xffffffffffffffffULL; +}; + +template +class IntTraits +{ +public: + C_ASSERT(NumericType::isInt); + enum + { + isSigned = ((T)(-1) < 0), + is64Bit = (sizeof(T) == 8), + is32Bit = (sizeof(T) == 4), + is16Bit = (sizeof(T) == 2), + is8Bit = (sizeof(T) == 1), + isLT32Bit = (sizeof(T) < 4), + isLT64Bit = (sizeof(T) < 8), + isInt8 = (sizeof(T) == 1 && isSigned), + isUint8 = (sizeof(T) == 1 && !isSigned), + isInt16 = (sizeof(T) == 2 && isSigned), + isUint16 = (sizeof(T) == 2 && !isSigned), + isInt32 = (sizeof(T) == 4 && isSigned), + isUint32 = (sizeof(T) == 4 && !isSigned), + isInt64 = (sizeof(T) == 8 && isSigned), + isUint64 = (sizeof(T) == 8 && !isSigned), + bitCount = (sizeof(T) * 8), + isBool = ((T)2 == (T)1) + }; + + // On version 13.10 enums cannot define __int64 values + // so we'll use const statics instead! + // These must be cast to deal with the possibility of a SafeInt being given an enum as an argument + const static T maxInt = static_cast(SafeIntMinMax::max); + const static T minInt = static_cast(SafeIntMinMax::min); +}; + +template +const T IntTraits::maxInt; +template +const T IntTraits::minInt; + +template +class SafeIntCompare +{ +public: + enum + { + isBothSigned = (IntTraits::isSigned && IntTraits::isSigned), + isBothUnsigned = (!IntTraits::isSigned && !IntTraits::isSigned), + isLikeSigned = ((bool)(IntTraits::isSigned) == (bool)(IntTraits::isSigned)), + isCastOK = ((isLikeSigned && sizeof(T) >= sizeof(U)) || (IntTraits::isSigned && sizeof(T) > sizeof(U))), + isBothLT32Bit = (IntTraits::isLT32Bit && IntTraits::isLT32Bit), + isBothLT64Bit = (IntTraits::isLT64Bit && IntTraits::isLT64Bit) + }; +}; + +// all of the arithmetic operators can be solved by the same code within +// each of these regions without resorting to compile-time constant conditionals +// most operators collapse the problem into less than the 22 zones, but this is used +// as the first cut +// using this also helps ensure that we handle all of the possible cases correctly + +template +class IntRegion +{ +public: + enum + { + // unsigned-unsigned zone + IntZone_UintLT32_UintLT32 = SafeIntCompare::isBothUnsigned && SafeIntCompare::isBothLT32Bit, + IntZone_Uint32_UintLT64 = + SafeIntCompare::isBothUnsigned && IntTraits::is32Bit && IntTraits::isLT64Bit, + IntZone_UintLT32_Uint32 = + SafeIntCompare::isBothUnsigned && IntTraits::isLT32Bit && IntTraits::is32Bit, + IntZone_Uint64_Uint = SafeIntCompare::isBothUnsigned && IntTraits::is64Bit, + IntZone_UintLT64_Uint64 = + SafeIntCompare::isBothUnsigned && IntTraits::isLT64Bit && IntTraits::is64Bit, + // unsigned-signed + IntZone_UintLT32_IntLT32 = + !IntTraits::isSigned && IntTraits::isSigned && SafeIntCompare::isBothLT32Bit, + IntZone_Uint32_IntLT64 = IntTraits::isUint32 && IntTraits::isSigned && IntTraits::isLT64Bit, + IntZone_UintLT32_Int32 = !IntTraits::isSigned && IntTraits::isLT32Bit && IntTraits::isInt32, + IntZone_Uint64_Int = IntTraits::isUint64 && IntTraits::isSigned && IntTraits::isLT64Bit, + IntZone_UintLT64_Int64 = !IntTraits::isSigned && IntTraits::isLT64Bit && IntTraits::isInt64, + IntZone_Uint64_Int64 = IntTraits::isUint64 && IntTraits::isInt64, + // signed-signed + IntZone_IntLT32_IntLT32 = SafeIntCompare::isBothSigned && SafeIntCompare::isBothLT32Bit, + IntZone_Int32_IntLT64 = SafeIntCompare::isBothSigned && IntTraits::is32Bit && IntTraits::isLT64Bit, + IntZone_IntLT32_Int32 = SafeIntCompare::isBothSigned && IntTraits::isLT32Bit && IntTraits::is32Bit, + IntZone_Int64_Int64 = SafeIntCompare::isBothSigned && IntTraits::isInt64 && IntTraits::isInt64, + IntZone_Int64_Int = SafeIntCompare::isBothSigned && IntTraits::is64Bit && IntTraits::isLT64Bit, + IntZone_IntLT64_Int64 = SafeIntCompare::isBothSigned && IntTraits::isLT64Bit && IntTraits::is64Bit, + // signed-unsigned + IntZone_IntLT32_UintLT32 = + IntTraits::isSigned && !IntTraits::isSigned && SafeIntCompare::isBothLT32Bit, + IntZone_Int32_UintLT32 = IntTraits::isInt32 && !IntTraits::isSigned && IntTraits::isLT32Bit, + IntZone_IntLT64_Uint32 = IntTraits::isSigned && IntTraits::isLT64Bit && IntTraits::isUint32, + IntZone_Int64_UintLT64 = IntTraits::isInt64 && !IntTraits::isSigned && IntTraits::isLT64Bit, + IntZone_Int_Uint64 = IntTraits::isSigned && IntTraits::isUint64 && IntTraits::isLT64Bit, + IntZone_Int64_Uint64 = IntTraits::isInt64 && IntTraits::isUint64 + }; +}; + +// In all of the following functions, we have two versions +// One for SafeInt, which throws C++ (or possibly SEH) exceptions +// The non-throwing versions are for use by the helper functions that return success and failure. +// Some of the non-throwing functions are not used, but are maintained for completeness. + +// There's no real alternative to duplicating logic, but keeping the two versions +// immediately next to one another will help reduce problems + +// useful function to help with getting the magnitude of a negative number +enum AbsMethod +{ + AbsMethodInt, + AbsMethodInt64, + AbsMethodNoop +}; + +template +class GetAbsMethod +{ +public: + enum + { + method = IntTraits::isLT64Bit && IntTraits::isSigned + ? AbsMethodInt + : IntTraits::isInt64 ? AbsMethodInt64 : AbsMethodNoop + }; +}; + +// let's go ahead and hard-code a dependency on the +// representation of negative numbers to keep compilers from getting overly +// happy with optimizing away things like -MIN_INT. +template +class AbsValueHelper; + +template +class AbsValueHelper +{ +public: + static unsigned __int32 Abs(T t) SAFEINT_NOTHROW + { + SAFEINT_ASSERT(t < 0); + return ~(unsigned __int32)t + 1; + } +}; + +template +class AbsValueHelper +{ +public: + static unsigned __int64 Abs(T t) SAFEINT_NOTHROW + { + SAFEINT_ASSERT(t < 0); + return ~(unsigned __int64)t + 1; + } +}; + +template +class AbsValueHelper +{ +public: + static T Abs(T t) SAFEINT_NOTHROW + { + // Why are you calling Abs on an unsigned number ??? + SAFEINT_ASSERT(false); + return t; + } +}; + +template +class NegationHelper; +// Previous versions had an assert that the type being negated was 32-bit or higher +// In retrospect, this seems like something to just document +// Negation will normally upcast to int +// For example -(unsigned short)0xffff == (int)0xffff0001 +// This class will retain the type, and will truncate, which may not be what +// you wanted +// If you want normal operator casting behavior, do this: +// SafeInt ss = 0xffff; +// then: +// -(SafeInt(ss)) +// will then emit a signed int with the correct value and bitfield + +template +class NegationHelper // Signed +{ +public: + template + static T NegativeThrow(T t) SAFEINT_CPP_THROW + { + // corner case + if (t != IntTraits::minInt) + { + // cast prevents unneeded checks in the case of small ints + return -t; + } + E::SafeIntOnOverflow(); + } + + static bool Negative(T t, T& ret) SAFEINT_NOTHROW + { + // corner case + if (t != IntTraits::minInt) + { + // cast prevents unneeded checks in the case of small ints + ret = -t; + return true; + } + return false; + } +}; + +// Helper classes to work keep compilers from +// optimizing away negation +template +class SignedNegation; + +template<> +class SignedNegation +{ +public: + static signed __int32 Value(unsigned __int64 in) SAFEINT_NOTHROW + { + return (signed __int32)(~(unsigned __int32)in + 1); + } + + static signed __int32 Value(unsigned __int32 in) SAFEINT_NOTHROW { return (signed __int32)(~in + 1); } +}; + +template<> +class SignedNegation +{ +public: + static signed __int64 Value(unsigned __int64 in) SAFEINT_NOTHROW { return (signed __int64)(~in + 1); } +}; + +template +class NegationHelper // unsigned +{ +public: + template + static T NegativeThrow(T t) SAFEINT_CPP_THROW + { +#if defined SAFEINT_DISALLOW_UNSIGNED_NEGATION + C_ASSERT(sizeof(T) == 0); +#endif + +#if SAFEINT_COMPILER == VISUAL_STUDIO_COMPILER +#pragma warning(push) +// this avoids warnings from the unary '-' operator being applied to unsigned numbers +#pragma warning(disable : 4146) +#endif + // Note - this could be quenched on gcc + // by doing something like: + // return (T)-((__int64)t); + // but it seems like you would want a warning when doing this. + return (T)-t; + +#if SAFEINT_COMPILER == VISUAL_STUDIO_COMPILER +#pragma warning(pop) +#endif + } + + static bool Negative(T t, T& ret) SAFEINT_NOTHROW + { + if (IntTraits::isLT32Bit) + { + // See above + SAFEINT_ASSERT(false); + } +#if defined SAFEINT_DISALLOW_UNSIGNED_NEGATION + C_ASSERT(sizeof(T) == 0); +#endif + // Do it this way to avoid warning + ret = -t; + return true; + } +}; + +// core logic to determine casting behavior +enum CastMethod +{ + CastOK = 0, + CastCheckLTZero, + CastCheckGTMax, + CastCheckSafeIntMinMaxUnsigned, + CastCheckSafeIntMinMaxSigned, + CastToFloat, + CastFromFloat, + CastToBool, + CastFromBool +}; + +template +class GetCastMethod +{ +public: + enum + { + method = (IntTraits::isBool && !IntTraits::isBool) + ? CastFromBool + : + + (!IntTraits::isBool && IntTraits::isBool) + ? CastToBool + : + + (SafeIntCompare::isCastOK) + ? CastOK + : + + ((IntTraits::isSigned && !IntTraits::isSigned && + sizeof(FromType) >= sizeof(ToType)) || + (SafeIntCompare::isBothUnsigned && sizeof(FromType) > sizeof(ToType))) + ? CastCheckGTMax + : + + (!IntTraits::isSigned && IntTraits::isSigned && + sizeof(ToType) >= sizeof(FromType)) + ? CastCheckLTZero + : + + (!IntTraits::isSigned) ? CastCheckSafeIntMinMaxUnsigned + : CastCheckSafeIntMinMaxSigned + }; +}; + +template +class GetCastMethod +{ +public: + enum + { + method = CastOK + }; +}; + +template +class GetCastMethod +{ +public: + enum + { + method = CastOK + }; +}; + +template +class GetCastMethod +{ +public: + enum + { + method = CastOK + }; +}; + +template +class GetCastMethod +{ +public: + enum + { + method = CastFromFloat + }; +}; + +template +class GetCastMethod +{ +public: + enum + { + method = CastFromFloat + }; +}; + +template +class GetCastMethod +{ +public: + enum + { + method = CastFromFloat + }; +}; + +template +class SafeCastHelper; + +template +class SafeCastHelper +{ +public: + static bool Cast(U u, T& t) SAFEINT_NOTHROW + { + t = (T)u; + return true; + } + + template + static void CastThrow(U u, T& t) SAFEINT_CPP_THROW + { + t = (T)u; + } +}; + +// special case floats and doubles +// tolerate loss of precision +template +class SafeCastHelper +{ +public: + static bool Cast(U u, T& t) SAFEINT_NOTHROW + { + if (u <= (U)IntTraits::maxInt && u >= (U)IntTraits::minInt) + { + t = (T)u; + return true; + } + return false; + } + + template + static void CastThrow(U u, T& t) SAFEINT_CPP_THROW + { + if (u <= (U)IntTraits::maxInt && u >= (U)IntTraits::minInt) + { + t = (T)u; + return; + } + E::SafeIntOnOverflow(); + } +}; + +// Match on any method where a bool is cast to type T +template +class SafeCastHelper +{ +public: + static bool Cast(bool b, T& t) SAFEINT_NOTHROW + { + t = (T)(b ? 1 : 0); + return true; + } + + template + static void CastThrow(bool b, T& t) SAFEINT_CPP_THROW + { + t = (T)(b ? 1 : 0); + } +}; + +template +class SafeCastHelper +{ +public: + static bool Cast(T t, bool& b) SAFEINT_NOTHROW + { + b = !!t; + return true; + } + + template + static void CastThrow(bool b, T& t) SAFEINT_CPP_THROW + { + b = !!t; + } +}; + +template +class SafeCastHelper +{ +public: + static bool Cast(U u, T& t) SAFEINT_NOTHROW + { + if (u < 0) return false; + + t = (T)u; + return true; + } + + template + static void CastThrow(U u, T& t) SAFEINT_CPP_THROW + { + if (u < 0) E::SafeIntOnOverflow(); + + t = (T)u; + } +}; + +template +class SafeCastHelper +{ +public: + static bool Cast(U u, T& t) SAFEINT_NOTHROW + { + if (u > (U)IntTraits::maxInt) return false; + + t = (T)u; + return true; + } + + template + static void CastThrow(U u, T& t) SAFEINT_CPP_THROW + { + if (u > (U)IntTraits::maxInt) E::SafeIntOnOverflow(); + + t = (T)u; + } +}; + +template +class SafeCastHelper +{ +public: + static bool Cast(U u, T& t) SAFEINT_NOTHROW + { + // U is signed - T could be either signed or unsigned + if (u > IntTraits::maxInt || u < 0) return false; + + t = (T)u; + return true; + } + + template + static void CastThrow(U u, T& t) SAFEINT_CPP_THROW + { + // U is signed - T could be either signed or unsigned + if (u > IntTraits::maxInt || u < 0) E::SafeIntOnOverflow(); + + t = (T)u; + } +}; + +template +class SafeCastHelper +{ +public: + static bool Cast(U u, T& t) SAFEINT_NOTHROW + { + // T, U are signed + if (u > IntTraits::maxInt || u < IntTraits::minInt) return false; + + t = (T)u; + return true; + } + + template + static void CastThrow(U u, T& t) SAFEINT_CPP_THROW + { + // T, U are signed + if (u > IntTraits::maxInt || u < IntTraits::minInt) E::SafeIntOnOverflow(); + + t = (T)u; + } +}; + +// core logic to determine whether a comparison is valid, or needs special treatment +enum ComparisonMethod +{ + ComparisonMethod_Ok = 0, + ComparisonMethod_CastInt, + ComparisonMethod_CastInt64, + ComparisonMethod_UnsignedT, + ComparisonMethod_UnsignedU +}; + +// Note - the standard is arguably broken in the case of some integer +// conversion operations +// For example, signed char a = -1 = 0xff +// unsigned int b = 0xffffffff +// If you then test if a < b, a value-preserving cast +// is made, and you're essentially testing +// (unsigned int)a < b == false +// +// I do not think this makes sense - if you perform +// a cast to an __int64, which can clearly preserve both value and signedness +// then you get a different and intuitively correct answer +// IMHO, -1 should be less than 4 billion +// If you prefer to retain the ANSI standard behavior +// insert #define ANSI_CONVERSIONS into your source +// Behavior differences occur in the following cases: +// 8, 16, and 32-bit signed int, unsigned 32-bit int +// any signed int, unsigned 64-bit int +// Note - the signed int must be negative to show the problem + +template +class ValidComparison +{ +public: + enum + { +#ifdef ANSI_CONVERSIONS + method = ComparisonMethod_Ok +#else + method = ((SafeIntCompare::isLikeSigned) + ? ComparisonMethod_Ok + : ((IntTraits::isSigned && sizeof(T) < 8 && sizeof(U) < 4) || + (IntTraits::isSigned && sizeof(T) < 4 && sizeof(U) < 8)) + ? ComparisonMethod_CastInt + : ((IntTraits::isSigned && sizeof(U) < 8) || (IntTraits::isSigned && sizeof(T) < 8)) + ? ComparisonMethod_CastInt64 + : (!IntTraits::isSigned) ? ComparisonMethod_UnsignedT : ComparisonMethod_UnsignedU) +#endif + }; +}; + +template +class EqualityTest; + +template +class EqualityTest +{ +public: + static bool IsEquals(const T t, const U u) SAFEINT_NOTHROW { return (t == u); } +}; + +template +class EqualityTest +{ +public: + static bool IsEquals(const T t, const U u) SAFEINT_NOTHROW { return ((int)t == (int)u); } +}; + +template +class EqualityTest +{ +public: + static bool IsEquals(const T t, const U u) SAFEINT_NOTHROW { return ((__int64)t == (__int64)u); } +}; + +template +class EqualityTest +{ +public: + static bool IsEquals(const T t, const U u) SAFEINT_NOTHROW + { + // one operand is 32 or 64-bit unsigned, and the other is signed and the same size or smaller + if (u < 0) return false; + + // else safe to cast to type T + return (t == (T)u); + } +}; + +template +class EqualityTest +{ +public: + static bool IsEquals(const T t, const U u) SAFEINT_NOTHROW + { + // one operand is 32 or 64-bit unsigned, and the other is signed and the same size or smaller + if (t < 0) return false; + + // else safe to cast to type U + return ((U)t == u); + } +}; + +template +class GreaterThanTest; + +template +class GreaterThanTest +{ +public: + static bool GreaterThan(const T t, const U u) SAFEINT_NOTHROW { return (t > u); } +}; + +template +class GreaterThanTest +{ +public: + static bool GreaterThan(const T t, const U u) SAFEINT_NOTHROW { return ((int)t > (int)u); } +}; + +template +class GreaterThanTest +{ +public: + static bool GreaterThan(const T t, const U u) SAFEINT_NOTHROW { return ((__int64)t > (__int64)u); } +}; + +template +class GreaterThanTest +{ +public: + static bool GreaterThan(const T t, const U u) SAFEINT_NOTHROW + { + // one operand is 32 or 64-bit unsigned, and the other is signed and the same size or smaller + if (u < 0) return true; + + // else safe to cast to type T + return (t > (T)u); + } +}; + +template +class GreaterThanTest +{ +public: + static bool GreaterThan(const T t, const U u) SAFEINT_NOTHROW + { + // one operand is 32 or 64-bit unsigned, and the other is signed and the same size or smaller + if (t < 0) return false; + + // else safe to cast to type U + return ((U)t > u); + } +}; + +// Modulus is simpler than comparison, but follows much the same logic +// using this set of functions, it can't fail except in a div 0 situation +template +class ModulusHelper; + +template +class ModulusHelper +{ +public: + static SafeIntError Modulus(const T& t, const U& u, T& result) SAFEINT_NOTHROW + { + if (u == 0) return SafeIntDivideByZero; + + // trap corner case + if (CompileConst::isSigned>::Value()) + { + // Some compilers don't notice that this only compiles when u is signed + // Add cast to make them happy + if (u == (U)-1) + { + result = 0; + return SafeIntNoError; + } + } + + result = (T)(t % u); + return SafeIntNoError; + } + + template + static void ModulusThrow(const T& t, const U& u, T& result) SAFEINT_CPP_THROW + { + if (u == 0) E::SafeIntOnDivZero(); + + // trap corner case + if (CompileConst::isSigned>::Value()) + { + if (u == (U)-1) + { + result = 0; + return; + } + } + + result = (T)(t % u); + } +}; + +template +class ModulusHelper +{ +public: + static SafeIntError Modulus(const T& t, const U& u, T& result) SAFEINT_NOTHROW + { + if (u == 0) return SafeIntDivideByZero; + + // trap corner case + if (CompileConst::isSigned>::Value()) + { + if (u == (U)-1) + { + result = 0; + return SafeIntNoError; + } + } + + result = (T)(t % u); + return SafeIntNoError; + } + + template + static void ModulusThrow(const T& t, const U& u, T& result) SAFEINT_CPP_THROW + { + if (u == 0) E::SafeIntOnDivZero(); + + // trap corner case + if (CompileConst::isSigned>::Value()) + { + if (u == (U)-1) + { + result = 0; + return; + } + } + + result = (T)(t % u); + } +}; + +template +class ModulusHelper +{ +public: + static SafeIntError Modulus(const T& t, const U& u, T& result) SAFEINT_NOTHROW + { + if (u == 0) return SafeIntDivideByZero; + + // trap corner case + if (CompileConst::isSigned>::Value()) + { + if (u == (U)-1) + { + result = 0; + return SafeIntNoError; + } + } + + result = (T)((__int64)t % (__int64)u); + return SafeIntNoError; + } + + template + static void ModulusThrow(const T& t, const U& u, T& result) SAFEINT_CPP_THROW + { + if (u == 0) E::SafeIntOnDivZero(); + + if (CompileConst::isSigned>::Value()) + { + if (u == (U)-1) + { + result = 0; + return; + } + } + + result = (T)((__int64)t % (__int64)u); + } +}; + +// T is unsigned __int64, U is any signed int +template +class ModulusHelper +{ +public: + static SafeIntError Modulus(const T& t, const U& u, T& result) SAFEINT_NOTHROW + { + if (u == 0) return SafeIntDivideByZero; + + // u could be negative - if so, need to convert to positive + // casts below are always safe due to the way modulus works + if (u < 0) + result = (T)(t % AbsValueHelper::method>::Abs(u)); + else + result = (T)(t % u); + + return SafeIntNoError; + } + + template + static void ModulusThrow(const T& t, const U& u, T& result) SAFEINT_CPP_THROW + { + if (u == 0) E::SafeIntOnDivZero(); + + // u could be negative - if so, need to convert to positive + if (u < 0) + result = (T)(t % AbsValueHelper::method>::Abs(u)); + else + result = (T)(t % u); + } +}; + +// U is unsigned __int64, T any signed int +template +class ModulusHelper +{ +public: + static SafeIntError Modulus(const T& t, const U& u, T& result) SAFEINT_NOTHROW + { + if (u == 0) return SafeIntDivideByZero; + + // t could be negative - if so, need to convert to positive + if (t < 0) + result = (T)(~(AbsValueHelper::method>::Abs(t) % u) + 1); + else + result = (T)((T)t % u); + + return SafeIntNoError; + } + + template + static void ModulusThrow(const T& t, const U& u, T& result) SAFEINT_CPP_THROW + { + if (u == 0) E::SafeIntOnDivZero(); + + // t could be negative - if so, need to convert to positive + if (t < 0) + result = (T)(~(AbsValueHelper::method>::Abs(t) % u) + 1); + else + result = (T)((T)t % u); + } +}; + +// core logic to determine method to check multiplication +enum MultiplicationState +{ + MultiplicationState_CastInt = 0, // One or both signed, smaller than 32-bit + MultiplicationState_CastInt64, // One or both signed, smaller than 64-bit + MultiplicationState_CastUint, // Both are unsigned, smaller than 32-bit + MultiplicationState_CastUint64, // Both are unsigned, both 32-bit or smaller + MultiplicationState_Uint64Uint, // Both are unsigned, lhs 64-bit, rhs 32-bit or smaller + MultiplicationState_Uint64Uint64, // Both are unsigned int64 + MultiplicationState_Uint64Int, // lhs is unsigned int64, rhs int32 + MultiplicationState_Uint64Int64, // lhs is unsigned int64, rhs signed int64 + MultiplicationState_UintUint64, // Both are unsigned, lhs 32-bit or smaller, rhs 64-bit + MultiplicationState_UintInt64, // lhs unsigned 32-bit or less, rhs int64 + MultiplicationState_Int64Uint, // lhs int64, rhs unsigned int32 + MultiplicationState_Int64Int64, // lhs int64, rhs int64 + MultiplicationState_Int64Int, // lhs int64, rhs int32 + MultiplicationState_IntUint64, // lhs int, rhs unsigned int64 + MultiplicationState_IntInt64, // lhs int, rhs int64 + MultiplicationState_Int64Uint64, // lhs int64, rhs uint64 + MultiplicationState_Error +}; + +template +class MultiplicationMethod +{ +public: + enum + { + // unsigned-unsigned + method = + (IntRegion::IntZone_UintLT32_UintLT32 + ? MultiplicationState_CastUint + : (IntRegion::IntZone_Uint32_UintLT64 || IntRegion::IntZone_UintLT32_Uint32) + ? MultiplicationState_CastUint64 + : SafeIntCompare::isBothUnsigned && IntTraits::isUint64 && IntTraits::isUint64 + ? MultiplicationState_Uint64Uint64 + : (IntRegion::IntZone_Uint64_Uint) + ? MultiplicationState_Uint64Uint + : (IntRegion::IntZone_UintLT64_Uint64) ? MultiplicationState_UintUint64 : + // unsigned-signed + (IntRegion::IntZone_UintLT32_IntLT32) + ? MultiplicationState_CastInt + : (IntRegion::IntZone_Uint32_IntLT64 || + IntRegion::IntZone_UintLT32_Int32) + ? MultiplicationState_CastInt64 + : (IntRegion::IntZone_Uint64_Int) + ? MultiplicationState_Uint64Int + : (IntRegion::IntZone_UintLT64_Int64) + ? MultiplicationState_UintInt64 + : (IntRegion::IntZone_Uint64_Int64) + ? MultiplicationState_Uint64Int64 + : + // signed-signed + (IntRegion::IntZone_IntLT32_IntLT32) + ? MultiplicationState_CastInt + : (IntRegion::IntZone_Int32_IntLT64 || + IntRegion::IntZone_IntLT32_Int32) + ? MultiplicationState_CastInt64 + : (IntRegion::IntZone_Int64_Int64) + ? MultiplicationState_Int64Int64 + : (IntRegion::IntZone_Int64_Int) + ? MultiplicationState_Int64Int + : (IntRegion:: + IntZone_IntLT64_Int64) + ? MultiplicationState_IntInt64 + : + // signed-unsigned + (IntRegion:: + IntZone_IntLT32_UintLT32) + ? MultiplicationState_CastInt + : (IntRegion:: + IntZone_Int32_UintLT32 || + IntRegion:: + IntZone_IntLT64_Uint32) + ? MultiplicationState_CastInt64 + : (IntRegion< + T, + U>:: + IntZone_Int64_UintLT64) + ? MultiplicationState_Int64Uint + : (IntRegion< + T, + U>:: + IntZone_Int_Uint64) + ? MultiplicationState_IntUint64 + : (IntRegion< + T, + U>::IntZone_Int64_Uint64 + ? MultiplicationState_Int64Uint64 + : MultiplicationState_Error)) + }; +}; + +template +class MultiplicationHelper; + +template +class MultiplicationHelper +{ +public: + // accepts signed, both less than 32-bit + static bool Multiply(const T& t, const U& u, T& ret) SAFEINT_NOTHROW + { + int tmp = t * u; + + if (tmp > IntTraits::maxInt || tmp < IntTraits::minInt) return false; + + ret = (T)tmp; + return true; + } + + template + static void MultiplyThrow(const T& t, const U& u, T& ret) SAFEINT_CPP_THROW + { + int tmp = t * u; + + if (tmp > IntTraits::maxInt || tmp < IntTraits::minInt) E::SafeIntOnOverflow(); + + ret = (T)tmp; + } +}; + +template +class MultiplicationHelper +{ +public: + // accepts unsigned, both less than 32-bit + static bool Multiply(const T& t, const U& u, T& ret) SAFEINT_NOTHROW + { + unsigned int tmp = (unsigned int)(t * u); + + if (tmp > IntTraits::maxInt) return false; + + ret = (T)tmp; + return true; + } + + template + static void MultiplyThrow(const T& t, const U& u, T& ret) SAFEINT_CPP_THROW + { + unsigned int tmp = (unsigned int)(t * u); + + if (tmp > IntTraits::maxInt) E::SafeIntOnOverflow(); + + ret = (T)tmp; + } +}; + +template +class MultiplicationHelper +{ +public: + // mixed signed or both signed where at least one argument is 32-bit, and both a 32-bit or less + static bool Multiply(const T& t, const U& u, T& ret) SAFEINT_NOTHROW + { + __int64 tmp = (__int64)t * (__int64)u; + + if (tmp > (__int64)IntTraits::maxInt || tmp < (__int64)IntTraits::minInt) return false; + + ret = (T)tmp; + return true; + } + + template + static void MultiplyThrow(const T& t, const U& u, T& ret) SAFEINT_CPP_THROW + { + __int64 tmp = (__int64)t * (__int64)u; + + if (tmp > (__int64)IntTraits::maxInt || tmp < (__int64)IntTraits::minInt) E::SafeIntOnOverflow(); + + ret = (T)tmp; + } +}; + +template +class MultiplicationHelper +{ +public: + // both unsigned where at least one argument is 32-bit, and both are 32-bit or less + static bool Multiply(const T& t, const U& u, T& ret) SAFEINT_NOTHROW + { + unsigned __int64 tmp = (unsigned __int64)t * (unsigned __int64)u; + + if (tmp > (unsigned __int64)IntTraits::maxInt) return false; + + ret = (T)tmp; + return true; + } + + template + static void MultiplyThrow(const T& t, const U& u, T& ret) SAFEINT_CPP_THROW + { + unsigned __int64 tmp = (unsigned __int64)t * (unsigned __int64)u; + + if (tmp > (unsigned __int64)IntTraits::maxInt) E::SafeIntOnOverflow(); + + ret = (T)tmp; + } +}; + +// T = left arg and return type +// U = right arg +template +class LargeIntRegMultiply; + +#if SAFEINT_USE_INTRINSICS +// As usual, unsigned is easy +inline bool IntrinsicMultiplyUint64(const unsigned __int64& a, + const unsigned __int64& b, + unsigned __int64* pRet) SAFEINT_NOTHROW +{ + unsigned __int64 ulHigh = 0; + *pRet = _umul128(a, b, &ulHigh); + return ulHigh == 0; +} + +// Signed, is not so easy +inline bool IntrinsicMultiplyInt64(const signed __int64& a, + const signed __int64& b, + signed __int64* pRet) SAFEINT_NOTHROW +{ + __int64 llHigh = 0; + *pRet = _mul128(a, b, &llHigh); + + // Now we need to figure out what we expect + // If llHigh is 0, then treat *pRet as unsigned + // If llHigh is < 0, then treat *pRet as signed + + if ((a ^ b) < 0) + { + // Negative result expected + if (llHigh == -1 && *pRet < 0 || llHigh == 0 && *pRet == 0) + { + // Everything is within range + return true; + } + } + else + { + // Result should be positive + // Check for overflow + if (llHigh == 0 && (unsigned __int64)*pRet <= IntTraits::maxInt) return true; + } + return false; +} + +#endif + +template<> +class LargeIntRegMultiply +{ +public: + static bool RegMultiply(const unsigned __int64& a, + const unsigned __int64& b, + unsigned __int64* pRet) SAFEINT_NOTHROW + { +#if SAFEINT_USE_INTRINSICS + return IntrinsicMultiplyUint64(a, b, pRet); +#else + unsigned __int32 aHigh, aLow, bHigh, bLow; + + // Consider that a*b can be broken up into: + // (aHigh * 2^32 + aLow) * (bHigh * 2^32 + bLow) + // => (aHigh * bHigh * 2^64) + (aLow * bHigh * 2^32) + (aHigh * bLow * 2^32) + (aLow * bLow) + // Note - same approach applies for 128 bit math on a 64-bit system + + aHigh = (unsigned __int32)(a >> 32); + aLow = (unsigned __int32)a; + bHigh = (unsigned __int32)(b >> 32); + bLow = (unsigned __int32)b; + + *pRet = 0; + + if (aHigh == 0) + { + if (bHigh != 0) + { + *pRet = (unsigned __int64)aLow * (unsigned __int64)bHigh; + } + } + else if (bHigh == 0) + { + if (aHigh != 0) + { + *pRet = (unsigned __int64)aHigh * (unsigned __int64)bLow; + } + } + else + { + return false; + } + + if (*pRet != 0) + { + unsigned __int64 tmp; + + if ((unsigned __int32)(*pRet >> 32) != 0) return false; + + *pRet <<= 32; + tmp = (unsigned __int64)aLow * (unsigned __int64)bLow; + *pRet += tmp; + + if (*pRet < tmp) return false; + + return true; + } + + *pRet = (unsigned __int64)aLow * (unsigned __int64)bLow; + return true; +#endif + } + + template + static void RegMultiplyThrow(const unsigned __int64& a, + const unsigned __int64& b, + unsigned __int64* pRet) SAFEINT_CPP_THROW + { +#if SAFEINT_USE_INTRINSICS + if (!IntrinsicMultiplyUint64(a, b, pRet)) E::SafeIntOnOverflow(); +#else + unsigned __int32 aHigh, aLow, bHigh, bLow; + + // Consider that a*b can be broken up into: + // (aHigh * 2^32 + aLow) * (bHigh * 2^32 + bLow) + // => (aHigh * bHigh * 2^64) + (aLow * bHigh * 2^32) + (aHigh * bLow * 2^32) + (aLow * bLow) + // Note - same approach applies for 128 bit math on a 64-bit system + + aHigh = (unsigned __int32)(a >> 32); + aLow = (unsigned __int32)a; + bHigh = (unsigned __int32)(b >> 32); + bLow = (unsigned __int32)b; + + *pRet = 0; + + if (aHigh == 0) + { + if (bHigh != 0) + { + *pRet = (unsigned __int64)aLow * (unsigned __int64)bHigh; + } + } + else if (bHigh == 0) + { + if (aHigh != 0) + { + *pRet = (unsigned __int64)aHigh * (unsigned __int64)bLow; + } + } + else + { + E::SafeIntOnOverflow(); + } + + if (*pRet != 0) + { + unsigned __int64 tmp; + + if ((unsigned __int32)(*pRet >> 32) != 0) E::SafeIntOnOverflow(); + + *pRet <<= 32; + tmp = (unsigned __int64)aLow * (unsigned __int64)bLow; + *pRet += tmp; + + if (*pRet < tmp) E::SafeIntOnOverflow(); + + return; + } + + *pRet = (unsigned __int64)aLow * (unsigned __int64)bLow; +#endif + } +}; + +template<> +class LargeIntRegMultiply +{ +public: + static bool RegMultiply(const unsigned __int64& a, unsigned __int32 b, unsigned __int64* pRet) SAFEINT_NOTHROW + { +#if SAFEINT_USE_INTRINSICS + return IntrinsicMultiplyUint64(a, (unsigned __int64)b, pRet); +#else + unsigned __int32 aHigh, aLow; + + // Consider that a*b can be broken up into: + // (aHigh * 2^32 + aLow) * b + // => (aHigh * b * 2^32) + (aLow * b) + + aHigh = (unsigned __int32)(a >> 32); + aLow = (unsigned __int32)a; + + *pRet = 0; + + if (aHigh != 0) + { + *pRet = (unsigned __int64)aHigh * (unsigned __int64)b; + + unsigned __int64 tmp; + + if ((unsigned __int32)(*pRet >> 32) != 0) return false; + + *pRet <<= 32; + tmp = (unsigned __int64)aLow * (unsigned __int64)b; + *pRet += tmp; + + if (*pRet < tmp) return false; + + return true; + } + + *pRet = (unsigned __int64)aLow * (unsigned __int64)b; + return true; +#endif + } + + template + static void RegMultiplyThrow(const unsigned __int64& a, + unsigned __int32 b, + unsigned __int64* pRet) SAFEINT_CPP_THROW + { +#if SAFEINT_USE_INTRINSICS + if (!IntrinsicMultiplyUint64(a, (unsigned __int64)b, pRet)) E::SafeIntOnOverflow(); +#else + unsigned __int32 aHigh, aLow; + + // Consider that a*b can be broken up into: + // (aHigh * 2^32 + aLow) * b + // => (aHigh * b * 2^32) + (aLow * b) + + aHigh = (unsigned __int32)(a >> 32); + aLow = (unsigned __int32)a; + + *pRet = 0; + + if (aHigh != 0) + { + *pRet = (unsigned __int64)aHigh * (unsigned __int64)b; + + unsigned __int64 tmp; + + if ((unsigned __int32)(*pRet >> 32) != 0) E::SafeIntOnOverflow(); + + *pRet <<= 32; + tmp = (unsigned __int64)aLow * (unsigned __int64)b; + *pRet += tmp; + + if (*pRet < tmp) E::SafeIntOnOverflow(); + + return; + } + + *pRet = (unsigned __int64)aLow * (unsigned __int64)b; + return; +#endif + } +}; + +template<> +class LargeIntRegMultiply +{ +public: + // Intrinsic not needed + static bool RegMultiply(const unsigned __int64& a, signed __int32 b, unsigned __int64* pRet) SAFEINT_NOTHROW + { + if (b < 0 && a != 0) return false; + +#if SAFEINT_USE_INTRINSICS + return IntrinsicMultiplyUint64(a, (unsigned __int64)b, pRet); +#else + return LargeIntRegMultiply::RegMultiply(a, (unsigned __int32)b, pRet); +#endif + } + + template + static void RegMultiplyThrow(const unsigned __int64& a, signed __int32 b, unsigned __int64* pRet) SAFEINT_CPP_THROW + { + if (b < 0 && a != 0) E::SafeIntOnOverflow(); + +#if SAFEINT_USE_INTRINSICS + if (!IntrinsicMultiplyUint64(a, (unsigned __int64)b, pRet)) E::SafeIntOnOverflow(); +#else + LargeIntRegMultiply::template RegMultiplyThrow( + a, (unsigned __int32)b, pRet); +#endif + } +}; + +template<> +class LargeIntRegMultiply +{ +public: + static bool RegMultiply(const unsigned __int64& a, signed __int64 b, unsigned __int64* pRet) SAFEINT_NOTHROW + { + if (b < 0 && a != 0) return false; + +#if SAFEINT_USE_INTRINSICS + return IntrinsicMultiplyUint64(a, (unsigned __int64)b, pRet); +#else + return LargeIntRegMultiply::RegMultiply(a, (unsigned __int64)b, pRet); +#endif + } + + template + static void RegMultiplyThrow(const unsigned __int64& a, signed __int64 b, unsigned __int64* pRet) SAFEINT_CPP_THROW + { + if (b < 0 && a != 0) E::SafeIntOnOverflow(); + +#if SAFEINT_USE_INTRINSICS + if (!IntrinsicMultiplyUint64(a, (unsigned __int64)b, pRet)) E::SafeIntOnOverflow(); +#else + LargeIntRegMultiply::template RegMultiplyThrow( + a, (unsigned __int64)b, pRet); +#endif + } +}; + +template<> +class LargeIntRegMultiply +{ +public: + // Devolves into ordinary 64-bit calculation + static bool RegMultiply(signed __int32 a, const unsigned __int64& b, signed __int32* pRet) SAFEINT_NOTHROW + { + unsigned __int32 bHigh, bLow; + bool fIsNegative = false; + + // Consider that a*b can be broken up into: + // (aHigh * 2^32 + aLow) * (bHigh * 2^32 + bLow) + // => (aHigh * bHigh * 2^64) + (aLow * bHigh * 2^32) + (aHigh * bLow * 2^32) + (aLow * bLow) + // aHigh == 0 implies: + // ( aLow * bHigh * 2^32 ) + ( aLow + bLow ) + // If the first part is != 0, fail + + bHigh = (unsigned __int32)(b >> 32); + bLow = (unsigned __int32)b; + + *pRet = 0; + + if (bHigh != 0 && a != 0) return false; + + if (a < 0) + { + a = (signed __int32)AbsValueHelper::method>::Abs(a); + fIsNegative = true; + } + + unsigned __int64 tmp = (unsigned __int32)a * (unsigned __int64)bLow; + + if (!fIsNegative) + { + if (tmp <= (unsigned __int64)IntTraits::maxInt) + { + *pRet = (signed __int32)tmp; + return true; + } + } + else + { + if (tmp <= (unsigned __int64)IntTraits::maxInt + 1) + { + *pRet = SignedNegation::Value(tmp); + return true; + } + } + + return false; + } + + template + static void RegMultiplyThrow(signed __int32 a, const unsigned __int64& b, signed __int32* pRet) SAFEINT_CPP_THROW + { + unsigned __int32 bHigh, bLow; + bool fIsNegative = false; + + // Consider that a*b can be broken up into: + // (aHigh * 2^32 + aLow) * (bHigh * 2^32 + bLow) + // => (aHigh * bHigh * 2^64) + (aLow * bHigh * 2^32) + (aHigh * bLow * 2^32) + (aLow * bLow) + + bHigh = (unsigned __int32)(b >> 32); + bLow = (unsigned __int32)b; + + *pRet = 0; + + if (bHigh != 0 && a != 0) E::SafeIntOnOverflow(); + + if (a < 0) + { + a = (signed __int32)AbsValueHelper::method>::Abs(a); + fIsNegative = true; + } + + unsigned __int64 tmp = (unsigned __int32)a * (unsigned __int64)bLow; + + if (!fIsNegative) + { + if (tmp <= (unsigned __int64)IntTraits::maxInt) + { + *pRet = (signed __int32)tmp; + return; + } + } + else + { + if (tmp <= (unsigned __int64)IntTraits::maxInt + 1) + { + *pRet = SignedNegation::Value(tmp); + return; + } + } + + E::SafeIntOnOverflow(); + } +}; + +template<> +class LargeIntRegMultiply +{ +public: + // Becomes ordinary 64-bit multiplication, intrinsic not needed + static bool RegMultiply(unsigned __int32 a, const unsigned __int64& b, unsigned __int32* pRet) SAFEINT_NOTHROW + { + // Consider that a*b can be broken up into: + // (bHigh * 2^32 + bLow) * a + // => (bHigh * a * 2^32) + (bLow * a) + // In this case, the result must fit into 32-bits + // If bHigh != 0 && a != 0, immediate error. + + if ((unsigned __int32)(b >> 32) != 0 && a != 0) return false; + + unsigned __int64 tmp = b * (unsigned __int64)a; + + if ((unsigned __int32)(tmp >> 32) != 0) // overflow + return false; + + *pRet = (unsigned __int32)tmp; + return true; + } + + template + static void RegMultiplyThrow(unsigned __int32 a, + const unsigned __int64& b, + unsigned __int32* pRet) SAFEINT_CPP_THROW + { + if ((unsigned __int32)(b >> 32) != 0 && a != 0) E::SafeIntOnOverflow(); + + unsigned __int64 tmp = b * (unsigned __int64)a; + + if ((unsigned __int32)(tmp >> 32) != 0) // overflow + E::SafeIntOnOverflow(); + + *pRet = (unsigned __int32)tmp; + } +}; + +template<> +class LargeIntRegMultiply +{ +public: + static bool RegMultiply(unsigned __int32 a, const signed __int64& b, unsigned __int32* pRet) SAFEINT_NOTHROW + { + if (b < 0 && a != 0) return false; + return LargeIntRegMultiply::RegMultiply(a, (unsigned __int64)b, pRet); + } + + template + static void RegMultiplyThrow(unsigned __int32 a, const signed __int64& b, unsigned __int32* pRet) SAFEINT_CPP_THROW + { + if (b < 0 && a != 0) E::SafeIntOnOverflow(); + + LargeIntRegMultiply::template RegMultiplyThrow( + a, (unsigned __int64)b, pRet); + } +}; + +template<> +class LargeIntRegMultiply +{ +public: + static bool RegMultiply(const signed __int64& a, const signed __int64& b, signed __int64* pRet) SAFEINT_NOTHROW + { +#if SAFEINT_USE_INTRINSICS + return IntrinsicMultiplyInt64(a, b, pRet); +#else + bool aNegative = false; + bool bNegative = false; + + unsigned __int64 tmp; + __int64 a1 = a; + __int64 b1 = b; + + if (a1 < 0) + { + aNegative = true; + a1 = (signed __int64)AbsValueHelper::method>::Abs(a1); + } + + if (b1 < 0) + { + bNegative = true; + b1 = (signed __int64)AbsValueHelper::method>::Abs(b1); + } + + if (LargeIntRegMultiply::RegMultiply( + (unsigned __int64)a1, (unsigned __int64)b1, &tmp)) + { + // The unsigned multiplication didn't overflow + if (aNegative ^ bNegative) + { + // Result must be negative + if (tmp <= (unsigned __int64)IntTraits::minInt) + { + *pRet = SignedNegation::Value(tmp); + return true; + } + } + else + { + // Result must be positive + if (tmp <= (unsigned __int64)IntTraits::maxInt) + { + *pRet = (signed __int64)tmp; + return true; + } + } + } + + return false; +#endif + } + + template + static void RegMultiplyThrow(const signed __int64& a, + const signed __int64& b, + signed __int64* pRet) SAFEINT_CPP_THROW + { +#if SAFEINT_USE_INTRINSICS + if (!IntrinsicMultiplyInt64(a, b, pRet)) E::SafeIntOnOverflow(); +#else + bool aNegative = false; + bool bNegative = false; + + unsigned __int64 tmp; + __int64 a1 = a; + __int64 b1 = b; + + if (a1 < 0) + { + aNegative = true; + a1 = (signed __int64)AbsValueHelper::method>::Abs(a1); + } + + if (b1 < 0) + { + bNegative = true; + b1 = (signed __int64)AbsValueHelper::method>::Abs(b1); + } + + LargeIntRegMultiply::template RegMultiplyThrow( + (unsigned __int64)a1, (unsigned __int64)b1, &tmp); + + // The unsigned multiplication didn't overflow or we'd be in the exception handler + if (aNegative ^ bNegative) + { + // Result must be negative + if (tmp <= (unsigned __int64)IntTraits::minInt) + { + *pRet = SignedNegation::Value(tmp); + return; + } + } + else + { + // Result must be positive + if (tmp <= (unsigned __int64)IntTraits::maxInt) + { + *pRet = (signed __int64)tmp; + return; + } + } + + E::SafeIntOnOverflow(); +#endif + } +}; + +template<> +class LargeIntRegMultiply +{ +public: + static bool RegMultiply(const signed __int64& a, unsigned __int32 b, signed __int64* pRet) SAFEINT_NOTHROW + { +#if SAFEINT_USE_INTRINSICS + return IntrinsicMultiplyInt64(a, (signed __int64)b, pRet); +#else + bool aNegative = false; + unsigned __int64 tmp; + __int64 a1 = a; + + if (a1 < 0) + { + aNegative = true; + a1 = (signed __int64)AbsValueHelper::method>::Abs(a1); + } + + if (LargeIntRegMultiply::RegMultiply((unsigned __int64)a1, b, &tmp)) + { + // The unsigned multiplication didn't overflow + if (aNegative) + { + // Result must be negative + if (tmp <= (unsigned __int64)IntTraits::minInt) + { + *pRet = SignedNegation::Value(tmp); + return true; + } + } + else + { + // Result must be positive + if (tmp <= (unsigned __int64)IntTraits::maxInt) + { + *pRet = (signed __int64)tmp; + return true; + } + } + } + + return false; +#endif + } + + template + static void RegMultiplyThrow(const signed __int64& a, unsigned __int32 b, signed __int64* pRet) SAFEINT_CPP_THROW + { +#if SAFEINT_USE_INTRINSICS + if (!IntrinsicMultiplyInt64(a, (signed __int64)b, pRet)) E::SafeIntOnOverflow(); +#else + bool aNegative = false; + unsigned __int64 tmp; + __int64 a1 = a; + + if (a1 < 0) + { + aNegative = true; + a1 = (signed __int64)AbsValueHelper::method>::Abs(a1); + } + + LargeIntRegMultiply::template RegMultiplyThrow( + (unsigned __int64)a1, b, &tmp); + + // The unsigned multiplication didn't overflow + if (aNegative) + { + // Result must be negative + if (tmp <= (unsigned __int64)IntTraits::minInt) + { + *pRet = SignedNegation::Value(tmp); + return; + } + } + else + { + // Result must be positive + if (tmp <= (unsigned __int64)IntTraits::maxInt) + { + *pRet = (signed __int64)tmp; + return; + } + } + + E::SafeIntOnOverflow(); +#endif + } +}; + +template<> +class LargeIntRegMultiply +{ +public: + static bool RegMultiply(const signed __int64& a, signed __int32 b, signed __int64* pRet) SAFEINT_NOTHROW + { +#if SAFEINT_USE_INTRINSICS + return IntrinsicMultiplyInt64(a, (signed __int64)b, pRet); +#else + bool aNegative = false; + bool bNegative = false; + + unsigned __int64 tmp; + __int64 a1 = a; + __int64 b1 = b; + + if (a1 < 0) + { + aNegative = true; + a1 = (signed __int64)AbsValueHelper::method>::Abs(a1); + } + + if (b1 < 0) + { + bNegative = true; + b1 = (signed __int64)AbsValueHelper::method>::Abs(b1); + } + + if (LargeIntRegMultiply::RegMultiply( + (unsigned __int64)a1, (unsigned __int32)b1, &tmp)) + { + // The unsigned multiplication didn't overflow + if (aNegative ^ bNegative) + { + // Result must be negative + if (tmp <= (unsigned __int64)IntTraits::minInt) + { + *pRet = SignedNegation::Value(tmp); + return true; + } + } + else + { + // Result must be positive + if (tmp <= (unsigned __int64)IntTraits::maxInt) + { + *pRet = (signed __int64)tmp; + return true; + } + } + } + + return false; +#endif + } + + template + static void RegMultiplyThrow(signed __int64 a, signed __int32 b, signed __int64* pRet) SAFEINT_CPP_THROW + { +#if SAFEINT_USE_INTRINSICS + if (!IntrinsicMultiplyInt64(a, (signed __int64)b, pRet)) E::SafeIntOnOverflow(); +#else + bool aNegative = false; + bool bNegative = false; + + unsigned __int64 tmp; + + if (a < 0) + { + aNegative = true; + a = (signed __int64)AbsValueHelper::method>::Abs(a); + } + + if (b < 0) + { + bNegative = true; + b = (signed __int32)AbsValueHelper::method>::Abs(b); + } + + LargeIntRegMultiply::template RegMultiplyThrow( + (unsigned __int64)a, (unsigned __int32)b, &tmp); + + // The unsigned multiplication didn't overflow + if (aNegative ^ bNegative) + { + // Result must be negative + if (tmp <= (unsigned __int64)IntTraits::minInt) + { + *pRet = SignedNegation::Value(tmp); + return; + } + } + else + { + // Result must be positive + if (tmp <= (unsigned __int64)IntTraits::maxInt) + { + *pRet = (signed __int64)tmp; + return; + } + } + + E::SafeIntOnOverflow(); +#endif + } +}; + +template<> +class LargeIntRegMultiply +{ +public: + static bool RegMultiply(signed __int32 a, const signed __int64& b, signed __int32* pRet) SAFEINT_NOTHROW + { +#if SAFEINT_USE_INTRINSICS + __int64 tmp; + + if (IntrinsicMultiplyInt64(a, b, &tmp)) + { + if (tmp > IntTraits::maxInt || tmp < IntTraits::minInt) + { + return false; + } + + *pRet = (__int32)tmp; + return true; + } + return false; +#else + bool aNegative = false; + bool bNegative = false; + + unsigned __int32 tmp; + __int64 b1 = b; + + if (a < 0) + { + aNegative = true; + a = (signed __int32)AbsValueHelper::method>::Abs(a); + } + + if (b1 < 0) + { + bNegative = true; + b1 = (signed __int64)AbsValueHelper::method>::Abs(b1); + } + + if (LargeIntRegMultiply::RegMultiply( + (unsigned __int32)a, (unsigned __int64)b1, &tmp)) + { + // The unsigned multiplication didn't overflow + if (aNegative ^ bNegative) + { + // Result must be negative + if (tmp <= (unsigned __int32)IntTraits::minInt) + { + *pRet = SignedNegation::Value(tmp); + return true; + } + } + else + { + // Result must be positive + if (tmp <= (unsigned __int32)IntTraits::maxInt) + { + *pRet = (signed __int32)tmp; + return true; + } + } + } + + return false; +#endif + } + + template + static void RegMultiplyThrow(signed __int32 a, const signed __int64& b, signed __int32* pRet) SAFEINT_CPP_THROW + { +#if SAFEINT_USE_INTRINSICS + __int64 tmp; + + if (IntrinsicMultiplyInt64(a, b, &tmp)) + { + if (tmp > IntTraits::maxInt || tmp < IntTraits::minInt) + { + E::SafeIntOnOverflow(); + } + + *pRet = (__int32)tmp; + return; + } + E::SafeIntOnOverflow(); +#else + bool aNegative = false; + bool bNegative = false; + + unsigned __int32 tmp; + signed __int64 b2 = b; + + if (a < 0) + { + aNegative = true; + a = (signed __int32)AbsValueHelper::method>::Abs(a); + } + + if (b < 0) + { + bNegative = true; + b2 = (signed __int64)AbsValueHelper::method>::Abs(b2); + } + + LargeIntRegMultiply::template RegMultiplyThrow( + (unsigned __int32)a, (unsigned __int64)b2, &tmp); + + // The unsigned multiplication didn't overflow + if (aNegative ^ bNegative) + { + // Result must be negative + if (tmp <= (unsigned __int32)IntTraits::minInt) + { + *pRet = SignedNegation::Value(tmp); + return; + } + } + else + { + // Result must be positive + if (tmp <= (unsigned __int32)IntTraits::maxInt) + { + *pRet = (signed __int32)tmp; + return; + } + } + + E::SafeIntOnOverflow(); +#endif + } +}; + +template<> +class LargeIntRegMultiply +{ +public: + // Leave this one as-is - will call unsigned intrinsic internally + static bool RegMultiply(const signed __int64& a, const unsigned __int64& b, signed __int64* pRet) SAFEINT_NOTHROW + { + bool aNegative = false; + + unsigned __int64 tmp; + __int64 a1 = a; + + if (a1 < 0) + { + aNegative = true; + a1 = (signed __int64)AbsValueHelper::method>::Abs(a1); + } + + if (LargeIntRegMultiply::RegMultiply( + (unsigned __int64)a1, (unsigned __int64)b, &tmp)) + { + // The unsigned multiplication didn't overflow + if (aNegative) + { + // Result must be negative + if (tmp <= (unsigned __int64)IntTraits::minInt) + { + *pRet = SignedNegation::Value(tmp); + return true; + } + } + else + { + // Result must be positive + if (tmp <= (unsigned __int64)IntTraits::maxInt) + { + *pRet = (signed __int64)tmp; + return true; + } + } + } + + return false; + } + + template + static void RegMultiplyThrow(const signed __int64& a, + const unsigned __int64& b, + signed __int64* pRet) SAFEINT_CPP_THROW + { + bool aNegative = false; + unsigned __int64 tmp; + __int64 a1 = a; + + if (a1 < 0) + { + aNegative = true; + a1 = (signed __int64)AbsValueHelper::method>::Abs(a1); + } + + if (LargeIntRegMultiply::RegMultiply( + (unsigned __int64)a1, (unsigned __int64)b, &tmp)) + { + // The unsigned multiplication didn't overflow + if (aNegative) + { + // Result must be negative + if (tmp <= (unsigned __int64)IntTraits::minInt) + { + *pRet = SignedNegation::Value(tmp); + return; + } + } + else + { + // Result must be positive + if (tmp <= (unsigned __int64)IntTraits::maxInt) + { + *pRet = (signed __int64)tmp; + return; + } + } + } + + E::SafeIntOnOverflow(); + } +}; + +// In all of the following functions where LargeIntRegMultiply methods are called, +// we need to properly transition types. The methods need __int64, __int32, etc. +// but the variables being passed to us could be long long, long int, or long, depending on +// the compiler. Microsoft compiler knows that long long is the same type as __int64, but gcc doesn't + +template +class MultiplicationHelper +{ +public: + // T, U are unsigned __int64 + static bool Multiply(const T& t, const U& u, T& ret) SAFEINT_NOTHROW + { + C_ASSERT(IntTraits::isUint64 && IntTraits::isUint64); + unsigned __int64 t1 = t; + unsigned __int64 u1 = u; + return LargeIntRegMultiply::RegMultiply( + t1, u1, reinterpret_cast(&ret)); + } + + template + static void MultiplyThrow(const unsigned __int64& t, const unsigned __int64& u, T& ret) SAFEINT_CPP_THROW + { + C_ASSERT(IntTraits::isUint64 && IntTraits::isUint64); + unsigned __int64 t1 = t; + unsigned __int64 u1 = u; + LargeIntRegMultiply::template RegMultiplyThrow( + t1, u1, reinterpret_cast(&ret)); + } +}; + +template +class MultiplicationHelper +{ +public: + // T is unsigned __int64 + // U is any unsigned int 32-bit or less + static bool Multiply(const T& t, const U& u, T& ret) SAFEINT_NOTHROW + { + C_ASSERT(IntTraits::isUint64); + unsigned __int64 t1 = t; + return LargeIntRegMultiply::RegMultiply( + t1, (unsigned __int32)u, reinterpret_cast(&ret)); + } + + template + static void MultiplyThrow(const T& t, const U& u, T& ret) SAFEINT_CPP_THROW + { + C_ASSERT(IntTraits::isUint64); + unsigned __int64 t1 = t; + LargeIntRegMultiply::template RegMultiplyThrow( + t1, (unsigned __int32)u, reinterpret_cast(&ret)); + } +}; + +// converse of the previous function +template +class MultiplicationHelper +{ +public: + // T is any unsigned int up to 32-bit + // U is unsigned __int64 + static bool Multiply(const T& t, const U& u, T& ret) SAFEINT_NOTHROW + { + C_ASSERT(IntTraits::isUint64); + unsigned __int64 u1 = u; + unsigned __int32 tmp; + + if (LargeIntRegMultiply::RegMultiply(t, u1, &tmp) && + SafeCastHelper::method>::Cast(tmp, ret)) + { + return true; + } + + return false; + } + + template + static void MultiplyThrow(const T& t, const U& u, T& ret) SAFEINT_CPP_THROW + { + C_ASSERT(IntTraits::isUint64); + unsigned __int64 u1 = u; + unsigned __int32 tmp; + + LargeIntRegMultiply::template RegMultiplyThrow(t, u1, &tmp); + SafeCastHelper::method>::template CastThrow(tmp, + ret); + } +}; + +template +class MultiplicationHelper +{ +public: + // T is unsigned __int64 + // U is any signed int, up to 64-bit + static bool Multiply(const T& t, const U& u, T& ret) SAFEINT_NOTHROW + { + C_ASSERT(IntTraits::isUint64); + unsigned __int64 t1 = t; + return LargeIntRegMultiply::RegMultiply( + t1, (signed __int32)u, reinterpret_cast(&ret)); + } + + template + static void MultiplyThrow(const T& t, const U& u, T& ret) SAFEINT_CPP_THROW + { + C_ASSERT(IntTraits::isUint64); + unsigned __int64 t1 = t; + LargeIntRegMultiply::template RegMultiplyThrow( + t1, (signed __int32)u, reinterpret_cast(&ret)); + } +}; + +template +class MultiplicationHelper +{ +public: + // T is unsigned __int64 + // U is __int64 + static bool Multiply(const T& t, const U& u, T& ret) SAFEINT_NOTHROW + { + C_ASSERT(IntTraits::isUint64 && IntTraits::isInt64); + unsigned __int64 t1 = t; + __int64 u1 = u; + return LargeIntRegMultiply::RegMultiply( + t1, u1, reinterpret_cast(&ret)); + } + + template + static void MultiplyThrow(const T& t, const U& u, T& ret) SAFEINT_CPP_THROW + { + C_ASSERT(IntTraits::isUint64 && IntTraits::isInt64); + unsigned __int64 t1 = t; + __int64 u1 = u; + LargeIntRegMultiply::template RegMultiplyThrow( + t1, u1, reinterpret_cast(&ret)); + } +}; + +template +class MultiplicationHelper +{ +public: + // T is unsigned up to 32-bit + // U is __int64 + static bool Multiply(const T& t, const U& u, T& ret) SAFEINT_NOTHROW + { + C_ASSERT(IntTraits::isInt64); + __int64 u1 = u; + unsigned __int32 tmp; + + if (LargeIntRegMultiply::RegMultiply((unsigned __int32)t, u1, &tmp) && + SafeCastHelper::method>::Cast(tmp, ret)) + { + return true; + } + + return false; + } + + template + static void MultiplyThrow(const T& t, const U& u, T& ret) SAFEINT_CPP_THROW + { + C_ASSERT(IntTraits::isInt64); + __int64 u1 = u; + unsigned __int32 tmp; + + LargeIntRegMultiply::template RegMultiplyThrow((unsigned __int32)t, u1, &tmp); + SafeCastHelper::method>::template CastThrow(tmp, + ret); + } +}; + +template +class MultiplicationHelper +{ +public: + // T is __int64 + // U is unsigned up to 32-bit + static bool Multiply(const T& t, const U& u, T& ret) SAFEINT_NOTHROW + { + C_ASSERT(IntTraits::isInt64); + __int64 t1 = t; + return LargeIntRegMultiply<__int64, unsigned __int32>::RegMultiply( + t1, (unsigned __int32)u, reinterpret_cast<__int64*>(&ret)); + } + + template + static void MultiplyThrow(const T& t, const U& u, T& ret) SAFEINT_CPP_THROW + { + C_ASSERT(IntTraits::isInt64); + __int64 t1 = t; + LargeIntRegMultiply<__int64, unsigned __int32>::template RegMultiplyThrow( + t1, (unsigned __int32)u, reinterpret_cast<__int64*>(&ret)); + } +}; + +template +class MultiplicationHelper +{ +public: + // T, U are __int64 + static bool Multiply(const T& t, const U& u, T& ret) SAFEINT_NOTHROW + { + C_ASSERT(IntTraits::isInt64 && IntTraits::isInt64); + __int64 t1 = t; + __int64 u1 = u; + return LargeIntRegMultiply<__int64, __int64>::RegMultiply(t1, u1, reinterpret_cast<__int64*>(&ret)); + } + + template + static void MultiplyThrow(const T& t, const U& u, T& ret) SAFEINT_CPP_THROW + { + C_ASSERT(IntTraits::isInt64 && IntTraits::isInt64); + __int64 t1 = t; + __int64 u1 = u; + LargeIntRegMultiply<__int64, __int64>::template RegMultiplyThrow(t1, u1, reinterpret_cast<__int64*>(&ret)); + } +}; + +template +class MultiplicationHelper +{ +public: + // T is __int64 + // U is signed up to 32-bit + static bool Multiply(const T& t, U u, T& ret) SAFEINT_NOTHROW + { + C_ASSERT(IntTraits::isInt64); + __int64 t1 = t; + return LargeIntRegMultiply<__int64, __int32>::RegMultiply(t1, (__int32)u, reinterpret_cast<__int64*>(&ret)); + } + + template + static void MultiplyThrow(const __int64& t, U u, T& ret) SAFEINT_CPP_THROW + { + C_ASSERT(IntTraits::isInt64); + __int64 t1 = t; + LargeIntRegMultiply<__int64, __int32>::template RegMultiplyThrow( + t1, (__int32)u, reinterpret_cast<__int64*>(&ret)); + } +}; + +template +class MultiplicationHelper +{ +public: + // T is signed up to 32-bit + // U is unsigned __int64 + static bool Multiply(T t, const U& u, T& ret) SAFEINT_NOTHROW + { + C_ASSERT(IntTraits::isUint64); + unsigned __int64 u1 = u; + __int32 tmp; + + if (LargeIntRegMultiply<__int32, unsigned __int64>::RegMultiply((__int32)t, u1, &tmp) && + SafeCastHelper::method>::Cast(tmp, ret)) + { + return true; + } + + return false; + } + + template + static void MultiplyThrow(T t, const unsigned __int64& u, T& ret) SAFEINT_CPP_THROW + { + C_ASSERT(IntTraits::isUint64); + unsigned __int64 u1 = u; + __int32 tmp; + + LargeIntRegMultiply<__int32, unsigned __int64>::template RegMultiplyThrow((__int32)t, u1, &tmp); + SafeCastHelper::method>::template CastThrow(tmp, ret); + } +}; + +template +class MultiplicationHelper +{ +public: + // T is __int64 + // U is unsigned __int64 + static bool Multiply(const T& t, const U& u, T& ret) SAFEINT_NOTHROW + { + C_ASSERT(IntTraits::isInt64 && IntTraits::isUint64); + __int64 t1 = t; + unsigned __int64 u1 = u; + return LargeIntRegMultiply<__int64, unsigned __int64>::RegMultiply(t1, u1, reinterpret_cast<__int64*>(&ret)); + } + + template + static void MultiplyThrow(const __int64& t, const unsigned __int64& u, T& ret) SAFEINT_CPP_THROW + { + C_ASSERT(IntTraits::isInt64 && IntTraits::isUint64); + __int64 t1 = t; + unsigned __int64 u1 = u; + LargeIntRegMultiply<__int64, unsigned __int64>::template RegMultiplyThrow( + t1, u1, reinterpret_cast<__int64*>(&ret)); + } +}; + +template +class MultiplicationHelper +{ +public: + // T is signed, up to 32-bit + // U is __int64 + static bool Multiply(T t, const U& u, T& ret) SAFEINT_NOTHROW + { + C_ASSERT(IntTraits::isInt64); + __int64 u1 = u; + __int32 tmp; + + if (LargeIntRegMultiply<__int32, __int64>::RegMultiply((__int32)t, u1, &tmp) && + SafeCastHelper::method>::Cast(tmp, ret)) + { + return true; + } + + return false; + } + + template + static void MultiplyThrow(T t, const U& u, T& ret) SAFEINT_CPP_THROW + { + C_ASSERT(IntTraits::isInt64); + __int64 u1 = u; + __int32 tmp; + + LargeIntRegMultiply<__int32, __int64>::template RegMultiplyThrow((__int32)t, u1, &tmp); + SafeCastHelper::method>::template CastThrow(tmp, ret); + } +}; + +enum DivisionState +{ + DivisionState_OK, + DivisionState_UnsignedSigned, + DivisionState_SignedUnsigned32, + DivisionState_SignedUnsigned64, + DivisionState_SignedUnsigned, + DivisionState_SignedSigned +}; + +template +class DivisionMethod +{ +public: + enum + { + method = + (SafeIntCompare::isBothUnsigned + ? DivisionState_OK + : (!IntTraits::isSigned && IntTraits::isSigned) + ? DivisionState_UnsignedSigned + : (IntTraits::isSigned && IntTraits::isUint32 && IntTraits::isLT64Bit) + ? DivisionState_SignedUnsigned32 + : (IntTraits::isSigned && IntTraits::isUint64) + ? DivisionState_SignedUnsigned64 + : (IntTraits::isSigned && !IntTraits::isSigned) ? DivisionState_SignedUnsigned + : DivisionState_SignedSigned) + }; +}; + +template +class DivisionHelper; + +template +class DivisionHelper +{ +public: + static SafeIntError Divide(const T& t, const U& u, T& result) SAFEINT_NOTHROW + { + if (u == 0) return SafeIntDivideByZero; + + if (t == 0) + { + result = 0; + return SafeIntNoError; + } + + result = (T)(t / u); + return SafeIntNoError; + } + + template + static void DivideThrow(const T& t, const U& u, T& result) SAFEINT_CPP_THROW + { + if (u == 0) E::SafeIntOnDivZero(); + + if (t == 0) + { + result = 0; + return; + } + + result = (T)(t / u); + } +}; + +template +class DivisionHelper +{ +public: + static SafeIntError Divide(const T& t, const U& u, T& result) SAFEINT_NOTHROW + { + if (u == 0) return SafeIntDivideByZero; + + if (t == 0) + { + result = 0; + return SafeIntNoError; + } + + if (u > 0) + { + result = (T)(t / u); + return SafeIntNoError; + } + + // it is always an error to try and divide an unsigned number by a negative signed number + // unless u is bigger than t + if (AbsValueHelper::method>::Abs(u) > t) + { + result = 0; + return SafeIntNoError; + } + + return SafeIntArithmeticOverflow; + } + + template + static void DivideThrow(const T& t, const U& u, T& result) SAFEINT_CPP_THROW + { + if (u == 0) E::SafeIntOnDivZero(); + + if (t == 0) + { + result = 0; + return; + } + + if (u > 0) + { + result = (T)(t / u); + return; + } + + // it is always an error to try and divide an unsigned number by a negative signed number + // unless u is bigger than t + if (AbsValueHelper::method>::Abs(u) > t) + { + result = 0; + return; + } + + E::SafeIntOnOverflow(); + } +}; + +template +class DivisionHelper +{ +public: + static SafeIntError Divide(const T& t, const U& u, T& result) SAFEINT_NOTHROW + { + if (u == 0) return SafeIntDivideByZero; + + if (t == 0) + { + result = 0; + return SafeIntNoError; + } + + // Test for t > 0 + // If t < 0, must explicitly upcast, or implicit upcast to ulong will cause errors + // As it turns out, 32-bit division is about twice as fast, which justifies the extra conditional + + if (t > 0) + result = (T)(t / u); + else + result = (T)((__int64)t / (__int64)u); + + return SafeIntNoError; + } + + template + static void DivideThrow(const T& t, const U& u, T& result) SAFEINT_CPP_THROW + { + if (u == 0) + { + E::SafeIntOnDivZero(); + } + + if (t == 0) + { + result = 0; + return; + } + + // Test for t > 0 + // If t < 0, must explicitly upcast, or implicit upcast to ulong will cause errors + // As it turns out, 32-bit division is about twice as fast, which justifies the extra conditional + + if (t > 0) + result = (T)(t / u); + else + result = (T)((__int64)t / (__int64)u); + } +}; + +template +class DivisionHelper +{ +public: + static SafeIntError Divide(const T& t, const unsigned __int64& u, T& result) SAFEINT_NOTHROW + { + C_ASSERT(IntTraits::isUint64); + + if (u == 0) + { + return SafeIntDivideByZero; + } + + if (t == 0) + { + result = 0; + return SafeIntNoError; + } + + if (u <= (unsigned __int64)IntTraits::maxInt) + { + // Else u can safely be cast to T + if (CompileConst::Value()) + result = (T)((int)t / (int)u); + else + result = (T)((__int64)t / (__int64)u); + } + else // Corner case + if (t == IntTraits::minInt && u == (unsigned __int64)IntTraits::minInt) + { + // Min int divided by it's own magnitude is -1 + result = -1; + } + else + { + result = 0; + } + return SafeIntNoError; + } + + template + static void DivideThrow(const T& t, const unsigned __int64& u, T& result) SAFEINT_CPP_THROW + { + C_ASSERT(IntTraits::isUint64); + + if (u == 0) + { + E::SafeIntOnDivZero(); + } + + if (t == 0) + { + result = 0; + return; + } + + if (u <= (unsigned __int64)IntTraits::maxInt) + { + // Else u can safely be cast to T + if (CompileConst::Value()) + result = (T)((int)t / (int)u); + else + result = (T)((__int64)t / (__int64)u); + } + else // Corner case + if (t == IntTraits::minInt && u == (unsigned __int64)IntTraits::minInt) + { + // Min int divided by it's own magnitude is -1 + result = -1; + } + else + { + result = 0; + } + } +}; + +template +class DivisionHelper +{ +public: + // T is any signed, U is unsigned and smaller than 32-bit + // In this case, standard operator casting is correct + static SafeIntError Divide(const T& t, const U& u, T& result) SAFEINT_NOTHROW + { + if (u == 0) + { + return SafeIntDivideByZero; + } + + if (t == 0) + { + result = 0; + return SafeIntNoError; + } + + result = (T)(t / u); + return SafeIntNoError; + } + + template + static void DivideThrow(const T& t, const U& u, T& result) SAFEINT_CPP_THROW + { + if (u == 0) + { + E::SafeIntOnDivZero(); + } + + if (t == 0) + { + result = 0; + return; + } + + result = (T)(t / u); + } +}; + +template +class DivisionHelper +{ +public: + static SafeIntError Divide(const T& t, const U& u, T& result) SAFEINT_NOTHROW + { + if (u == 0) + { + return SafeIntDivideByZero; + } + + if (t == 0) + { + result = 0; + return SafeIntNoError; + } + + // Must test for corner case + if (t == IntTraits::minInt && u == (U)-1) return SafeIntArithmeticOverflow; + + result = (T)(t / u); + return SafeIntNoError; + } + + template + static void DivideThrow(const T& t, const U& u, T& result) SAFEINT_CPP_THROW + { + if (u == 0) + { + E::SafeIntOnDivZero(); + } + + if (t == 0) + { + result = 0; + return; + } + + // Must test for corner case + if (t == IntTraits::minInt && u == (U)-1) E::SafeIntOnOverflow(); + + result = (T)(t / u); + } +}; + +enum AdditionState +{ + AdditionState_CastIntCheckMax, + AdditionState_CastUintCheckOverflow, + AdditionState_CastUintCheckOverflowMax, + AdditionState_CastUint64CheckOverflow, + AdditionState_CastUint64CheckOverflowMax, + AdditionState_CastIntCheckSafeIntMinMax, + AdditionState_CastInt64CheckSafeIntMinMax, + AdditionState_CastInt64CheckMax, + AdditionState_CastUint64CheckSafeIntMinMax, + AdditionState_CastUint64CheckSafeIntMinMax2, + AdditionState_CastInt64CheckOverflow, + AdditionState_CastInt64CheckOverflowSafeIntMinMax, + AdditionState_CastInt64CheckOverflowMax, + AdditionState_ManualCheckInt64Uint64, + AdditionState_ManualCheck, + AdditionState_Error +}; + +template +class AdditionMethod +{ +public: + enum + { + // unsigned-unsigned + method = + (IntRegion::IntZone_UintLT32_UintLT32 + ? AdditionState_CastIntCheckMax + : (IntRegion::IntZone_Uint32_UintLT64) + ? AdditionState_CastUintCheckOverflow + : (IntRegion::IntZone_UintLT32_Uint32) + ? AdditionState_CastUintCheckOverflowMax + : (IntRegion::IntZone_Uint64_Uint) + ? AdditionState_CastUint64CheckOverflow + : (IntRegion::IntZone_UintLT64_Uint64) + ? AdditionState_CastUint64CheckOverflowMax + : + // unsigned-signed + (IntRegion::IntZone_UintLT32_IntLT32) + ? AdditionState_CastIntCheckSafeIntMinMax + : (IntRegion::IntZone_Uint32_IntLT64 || + IntRegion::IntZone_UintLT32_Int32) + ? AdditionState_CastInt64CheckSafeIntMinMax + : (IntRegion::IntZone_Uint64_Int || + IntRegion::IntZone_Uint64_Int64) + ? AdditionState_CastUint64CheckSafeIntMinMax + : (IntRegion::IntZone_UintLT64_Int64) + ? AdditionState_CastUint64CheckSafeIntMinMax2 + : + // signed-signed + (IntRegion::IntZone_IntLT32_IntLT32) + ? AdditionState_CastIntCheckSafeIntMinMax + : (IntRegion::IntZone_Int32_IntLT64 || + IntRegion::IntZone_IntLT32_Int32) + ? AdditionState_CastInt64CheckSafeIntMinMax + : (IntRegion::IntZone_Int64_Int || + IntRegion::IntZone_Int64_Int64) + ? AdditionState_CastInt64CheckOverflow + : (IntRegion::IntZone_IntLT64_Int64) + ? AdditionState_CastInt64CheckOverflowSafeIntMinMax + : + // signed-unsigned + (IntRegion:: + IntZone_IntLT32_UintLT32) + ? AdditionState_CastIntCheckMax + : (IntRegion:: + IntZone_Int32_UintLT32 || + IntRegion:: + IntZone_IntLT64_Uint32) + ? AdditionState_CastInt64CheckMax + : (IntRegion:: + IntZone_Int64_UintLT64) + ? AdditionState_CastInt64CheckOverflowMax + : (IntRegion:: + IntZone_Int64_Uint64) + ? AdditionState_ManualCheckInt64Uint64 + : (IntRegion< + T, + U>:: + IntZone_Int_Uint64) + ? AdditionState_ManualCheck + : AdditionState_Error) + }; +}; + +template +class AdditionHelper; + +template +class AdditionHelper +{ +public: + static bool Addition(const T& lhs, const U& rhs, T& result) SAFEINT_NOTHROW + { + // 16-bit or less unsigned addition + __int32 tmp = lhs + rhs; + + if (tmp <= (__int32)IntTraits::maxInt) + { + result = (T)tmp; + return true; + } + + return false; + } + + template + static void AdditionThrow(const T& lhs, const U& rhs, T& result) SAFEINT_CPP_THROW + { + // 16-bit or less unsigned addition + __int32 tmp = lhs + rhs; + + if (tmp <= (__int32)IntTraits::maxInt) + { + result = (T)tmp; + return; + } + + E::SafeIntOnOverflow(); + } +}; + +template +class AdditionHelper +{ +public: + static bool Addition(const T& lhs, const U& rhs, T& result) SAFEINT_NOTHROW + { + // 32-bit or less - both are unsigned + unsigned __int32 tmp = (unsigned __int32)lhs + (unsigned __int32)rhs; + + // we added didn't get smaller + if (tmp >= lhs) + { + result = (T)tmp; + return true; + } + return false; + } + + template + static void AdditionThrow(const T& lhs, const U& rhs, T& result) SAFEINT_CPP_THROW + { + // 32-bit or less - both are unsigned + unsigned __int32 tmp = (unsigned __int32)lhs + (unsigned __int32)rhs; + + // we added didn't get smaller + if (tmp >= lhs) + { + result = (T)tmp; + return; + } + E::SafeIntOnOverflow(); + } +}; + +template +class AdditionHelper +{ +public: + static bool Addition(const T& lhs, const U& rhs, T& result) SAFEINT_NOTHROW + { + // 32-bit or less - both are unsigned + unsigned __int32 tmp = (unsigned __int32)lhs + (unsigned __int32)rhs; + + // We added and it didn't get smaller or exceed maxInt + if (tmp >= lhs && tmp <= IntTraits::maxInt) + { + result = (T)tmp; + return true; + } + return false; + } + + template + static void AdditionThrow(const T& lhs, const U& rhs, T& result) SAFEINT_CPP_THROW + { + // 32-bit or less - both are unsigned + unsigned __int32 tmp = (unsigned __int32)lhs + (unsigned __int32)rhs; + + // We added and it didn't get smaller or exceed maxInt + if (tmp >= lhs && tmp <= IntTraits::maxInt) + { + result = (T)tmp; + return; + } + E::SafeIntOnOverflow(); + } +}; + +template +class AdditionHelper +{ +public: + static bool Addition(const T& lhs, const U& rhs, T& result) SAFEINT_NOTHROW + { + // lhs unsigned __int64, rhs unsigned + unsigned __int64 tmp = (unsigned __int64)lhs + (unsigned __int64)rhs; + + // We added and it didn't get smaller + if (tmp >= lhs) + { + result = (T)tmp; + return true; + } + + return false; + } + + template + static void AdditionThrow(const T& lhs, const U& rhs, T& result) SAFEINT_CPP_THROW + { + // lhs unsigned __int64, rhs unsigned + unsigned __int64 tmp = (unsigned __int64)lhs + (unsigned __int64)rhs; + + // We added and it didn't get smaller + if (tmp >= lhs) + { + result = (T)tmp; + return; + } + + E::SafeIntOnOverflow(); + } +}; + +template +class AdditionHelper +{ +public: + static bool Addition(const T& lhs, const U& rhs, T& result) SAFEINT_NOTHROW + { + // lhs unsigned __int64, rhs unsigned + unsigned __int64 tmp = (unsigned __int64)lhs + (unsigned __int64)rhs; + + // We added and it didn't get smaller + if (tmp >= lhs && tmp <= IntTraits::maxInt) + { + result = (T)tmp; + return true; + } + + return false; + } + + template + static void AdditionThrow(const T& lhs, const U& rhs, T& result) SAFEINT_CPP_THROW + { + // lhs unsigned __int64, rhs unsigned + unsigned __int64 tmp = (unsigned __int64)lhs + (unsigned __int64)rhs; + + // We added and it didn't get smaller + if (tmp >= lhs && tmp <= IntTraits::maxInt) + { + result = (T)tmp; + return; + } + + E::SafeIntOnOverflow(); + } +}; + +template +class AdditionHelper +{ +public: + static bool Addition(const T& lhs, const U& rhs, T& result) SAFEINT_NOTHROW + { + // 16-bit or less - one or both are signed + __int32 tmp = lhs + rhs; + + if (tmp <= (__int32)IntTraits::maxInt && tmp >= (__int32)IntTraits::minInt) + { + result = (T)tmp; + return true; + } + + return false; + } + + template + static void AdditionThrow(const T& lhs, const U& rhs, T& result) SAFEINT_CPP_THROW + { + // 16-bit or less - one or both are signed + __int32 tmp = lhs + rhs; + + if (tmp <= (__int32)IntTraits::maxInt && tmp >= (__int32)IntTraits::minInt) + { + result = (T)tmp; + return; + } + + E::SafeIntOnOverflow(); + } +}; + +template +class AdditionHelper +{ +public: + static bool Addition(const T& lhs, const U& rhs, T& result) SAFEINT_NOTHROW + { + // 32-bit or less - one or both are signed + __int64 tmp = (__int64)lhs + (__int64)rhs; + + if (tmp <= (__int64)IntTraits::maxInt && tmp >= (__int64)IntTraits::minInt) + { + result = (T)tmp; + return true; + } + + return false; + } + + template + static void AdditionThrow(const T& lhs, const U& rhs, T& result) SAFEINT_CPP_THROW + { + // 32-bit or less - one or both are signed + __int64 tmp = (__int64)lhs + (__int64)rhs; + + if (tmp <= (__int64)IntTraits::maxInt && tmp >= (__int64)IntTraits::minInt) + { + result = (T)tmp; + return; + } + + E::SafeIntOnOverflow(); + } +}; + +template +class AdditionHelper +{ +public: + static bool Addition(const T& lhs, const U& rhs, T& result) SAFEINT_NOTHROW + { + // 32-bit or less - lhs signed, rhs unsigned + __int64 tmp = (__int64)lhs + (__int64)rhs; + + if (tmp <= IntTraits::maxInt) + { + result = (T)tmp; + return true; + } + + return false; + } + + template + static void AdditionThrow(const T& lhs, const U& rhs, T& result) SAFEINT_CPP_THROW + { + // 32-bit or less - lhs signed, rhs unsigned + __int64 tmp = (__int64)lhs + (__int64)rhs; + + if (tmp <= IntTraits::maxInt) + { + result = (T)tmp; + return; + } + + E::SafeIntOnOverflow(); + } +}; + +template +class AdditionHelper +{ +public: + static bool Addition(const T& lhs, const U& rhs, T& result) SAFEINT_NOTHROW + { + // lhs is unsigned __int64, rhs signed + unsigned __int64 tmp; + + if (rhs < 0) + { + // So we're effectively subtracting + tmp = AbsValueHelper::method>::Abs(rhs); + + if (tmp <= lhs) + { + result = lhs - tmp; + return true; + } + } + else + { + // now we know that rhs can be safely cast into an unsigned __int64 + tmp = (unsigned __int64)lhs + (unsigned __int64)rhs; + + // We added and it did not become smaller + if (tmp >= lhs) + { + result = (T)tmp; + return true; + } + } + + return false; + } + + template + static void AdditionThrow(const T& lhs, const U& rhs, T& result) SAFEINT_CPP_THROW + { + // lhs is unsigned __int64, rhs signed + unsigned __int64 tmp; + + if (rhs < 0) + { + // So we're effectively subtracting + tmp = AbsValueHelper::method>::Abs(rhs); + + if (tmp <= lhs) + { + result = lhs - tmp; + return; + } + } + else + { + // now we know that rhs can be safely cast into an unsigned __int64 + tmp = (unsigned __int64)lhs + (unsigned __int64)rhs; + + // We added and it did not become smaller + if (tmp >= lhs) + { + result = (T)tmp; + return; + } + } + + E::SafeIntOnOverflow(); + } +}; + +template +class AdditionHelper +{ +public: + static bool Addition(const T& lhs, const U& rhs, T& result) SAFEINT_NOTHROW + { + // lhs is unsigned and < 64-bit, rhs signed __int64 + if (rhs < 0) + { + if (lhs >= ~(unsigned __int64)(rhs) + 1) // negation is safe, since rhs is 64-bit + { + result = (T)(lhs + rhs); + return true; + } + } + else + { + // now we know that rhs can be safely cast into an unsigned __int64 + unsigned __int64 tmp = (unsigned __int64)lhs + (unsigned __int64)rhs; + + // special case - rhs cannot be larger than 0x7fffffffffffffff, lhs cannot be larger than 0xffffffff + // it is not possible for the operation above to overflow, so just check max + if (tmp <= IntTraits::maxInt) + { + result = (T)tmp; + return true; + } + } + return false; + } + + template + static void AdditionThrow(const T& lhs, const U& rhs, T& result) SAFEINT_CPP_THROW + { + // lhs is unsigned and < 64-bit, rhs signed __int64 + if (rhs < 0) + { + if (lhs >= ~(unsigned __int64)(rhs) + 1) // negation is safe, since rhs is 64-bit + { + result = (T)(lhs + rhs); + return; + } + } + else + { + // now we know that rhs can be safely cast into an unsigned __int64 + unsigned __int64 tmp = (unsigned __int64)lhs + (unsigned __int64)rhs; + + // special case - rhs cannot be larger than 0x7fffffffffffffff, lhs cannot be larger than 0xffffffff + // it is not possible for the operation above to overflow, so just check max + if (tmp <= IntTraits::maxInt) + { + result = (T)tmp; + return; + } + } + E::SafeIntOnOverflow(); + } +}; + +template +class AdditionHelper +{ +public: + static bool Addition(const T& lhs, const U& rhs, T& result) SAFEINT_NOTHROW + { + // lhs is signed __int64, rhs signed + __int64 tmp = (__int64)((unsigned __int64)lhs + (unsigned __int64)rhs); + + if (lhs >= 0) + { + // mixed sign cannot overflow + if (rhs >= 0 && tmp < lhs) return false; + } + else + { + // lhs negative + if (rhs < 0 && tmp > lhs) return false; + } + + result = (T)tmp; + return true; + } + + template + static void AdditionThrow(const T& lhs, const U& rhs, T& result) SAFEINT_CPP_THROW + { + // lhs is signed __int64, rhs signed + __int64 tmp = (__int64)((unsigned __int64)lhs + (unsigned __int64)rhs); + + if (lhs >= 0) + { + // mixed sign cannot overflow + if (rhs >= 0 && tmp < lhs) E::SafeIntOnOverflow(); + } + else + { + // lhs negative + if (rhs < 0 && tmp > lhs) E::SafeIntOnOverflow(); + } + + result = (T)tmp; + } +}; + +template +class AdditionHelper +{ +public: + static bool Addition(const T& lhs, const U& rhs, T& result) SAFEINT_NOTHROW + { + // rhs is signed __int64, lhs signed + __int64 tmp; + + if (AdditionHelper<__int64, __int64, AdditionState_CastInt64CheckOverflow>::Addition( + (__int64)lhs, (__int64)rhs, tmp) && + tmp <= IntTraits::maxInt && tmp >= IntTraits::minInt) + { + result = (T)tmp; + return true; + } + + return false; + } + + template + static void AdditionThrow(const T& lhs, const U& rhs, T& result) SAFEINT_CPP_THROW + { + // rhs is signed __int64, lhs signed + __int64 tmp; + + AdditionHelper<__int64, __int64, AdditionState_CastInt64CheckOverflow>::AdditionThrow( + (__int64)lhs, (__int64)rhs, tmp); + + if (tmp <= IntTraits::maxInt && tmp >= IntTraits::minInt) + { + result = (T)tmp; + return; + } + + E::SafeIntOnOverflow(); + } +}; + +template +class AdditionHelper +{ +public: + static bool Addition(const T& lhs, const U& rhs, T& result) SAFEINT_NOTHROW + { + // lhs is signed __int64, rhs unsigned < 64-bit + unsigned __int64 tmp = (unsigned __int64)lhs + (unsigned __int64)rhs; + + if ((__int64)tmp >= lhs) + { + result = (T)(__int64)tmp; + return true; + } + + return false; + } + + template + static void AdditionThrow(const T& lhs, const U& rhs, T& result) SAFEINT_CPP_THROW + { + // lhs is signed __int64, rhs unsigned < 64-bit + // Some compilers get optimization-happy, let's thwart them + + unsigned __int64 tmp = (unsigned __int64)lhs + (unsigned __int64)rhs; + + if ((__int64)tmp >= lhs) + { + result = (T)(__int64)tmp; + return; + } + + E::SafeIntOnOverflow(); + } +}; + +template +class AdditionHelper +{ +public: + static bool Addition(const __int64& lhs, const unsigned __int64& rhs, __int64& result) SAFEINT_NOTHROW + { + C_ASSERT(IntTraits::isInt64 && IntTraits::isUint64); + // rhs is unsigned __int64, lhs __int64 + // cast everything to unsigned, perform addition, then + // cast back for check - this is done to stop optimizers from removing the code + unsigned __int64 tmp = (unsigned __int64)lhs + rhs; + + if ((__int64)tmp >= lhs) + { + result = (__int64)tmp; + return true; + } + + return false; + } + + template + static void AdditionThrow(const __int64& lhs, const unsigned __int64& rhs, T& result) SAFEINT_CPP_THROW + { + C_ASSERT(IntTraits::isInt64 && IntTraits::isUint64); + // rhs is unsigned __int64, lhs __int64 + unsigned __int64 tmp = (unsigned __int64)lhs + rhs; + + if ((__int64)tmp >= lhs) + { + result = (__int64)tmp; + return; + } + + E::SafeIntOnOverflow(); + } +}; + +template +class AdditionHelper +{ +public: + static bool Addition(const T& lhs, const U& rhs, T& result) SAFEINT_NOTHROW + { + // rhs is unsigned __int64, lhs signed, 32-bit or less + if ((unsigned __int32)(rhs >> 32) == 0) + { + // Now it just happens to work out that the standard behavior does what we want + // Adding explicit casts to show exactly what's happening here + // Note - this is tweaked to keep optimizers from tossing out the code. + unsigned __int32 tmp = (unsigned __int32)rhs + (unsigned __int32)lhs; + + if ((__int32)tmp >= lhs && + SafeCastHelper::method>::Cast((__int32)tmp, result)) + return true; + } + + return false; + } + + template + static void AdditionThrow(const T& lhs, const U& rhs, T& result) SAFEINT_CPP_THROW + { + // rhs is unsigned __int64, lhs signed, 32-bit or less + + if ((unsigned __int32)(rhs >> 32) == 0) + { + // Now it just happens to work out that the standard behavior does what we want + // Adding explicit casts to show exactly what's happening here + unsigned __int32 tmp = (unsigned __int32)rhs + (unsigned __int32)lhs; + + if ((__int32)tmp >= lhs) + { + SafeCastHelper::method>::template CastThrow((__int32)tmp, + result); + return; + } + } + E::SafeIntOnOverflow(); + } +}; + +enum SubtractionState +{ + SubtractionState_BothUnsigned, + SubtractionState_CastIntCheckSafeIntMinMax, + SubtractionState_CastIntCheckMin, + SubtractionState_CastInt64CheckSafeIntMinMax, + SubtractionState_CastInt64CheckMin, + SubtractionState_Uint64Int, + SubtractionState_UintInt64, + SubtractionState_Int64Int, + SubtractionState_IntInt64, + SubtractionState_Int64Uint, + SubtractionState_IntUint64, + SubtractionState_Int64Uint64, + // states for SubtractionMethod2 + SubtractionState_BothUnsigned2, + SubtractionState_CastIntCheckSafeIntMinMax2, + SubtractionState_CastInt64CheckSafeIntMinMax2, + SubtractionState_Uint64Int2, + SubtractionState_UintInt642, + SubtractionState_Int64Int2, + SubtractionState_IntInt642, + SubtractionState_Int64Uint2, + SubtractionState_IntUint642, + SubtractionState_Int64Uint642, + SubtractionState_Error +}; + +template +class SubtractionMethod +{ +public: + enum + { + // unsigned-unsigned + method = + ((IntRegion::IntZone_UintLT32_UintLT32 || (IntRegion::IntZone_Uint32_UintLT64) || + (IntRegion::IntZone_UintLT32_Uint32) || (IntRegion::IntZone_Uint64_Uint) || + (IntRegion::IntZone_UintLT64_Uint64)) + ? SubtractionState_BothUnsigned + : + // unsigned-signed + (IntRegion::IntZone_UintLT32_IntLT32) + ? SubtractionState_CastIntCheckSafeIntMinMax + : (IntRegion::IntZone_Uint32_IntLT64 || IntRegion::IntZone_UintLT32_Int32) + ? SubtractionState_CastInt64CheckSafeIntMinMax + : (IntRegion::IntZone_Uint64_Int || IntRegion::IntZone_Uint64_Int64) + ? SubtractionState_Uint64Int + : (IntRegion::IntZone_UintLT64_Int64) ? SubtractionState_UintInt64 : + // signed-signed + (IntRegion::IntZone_IntLT32_IntLT32) + ? SubtractionState_CastIntCheckSafeIntMinMax + : (IntRegion::IntZone_Int32_IntLT64 || + IntRegion::IntZone_IntLT32_Int32) + ? SubtractionState_CastInt64CheckSafeIntMinMax + : (IntRegion::IntZone_Int64_Int || + IntRegion::IntZone_Int64_Int64) + ? SubtractionState_Int64Int + : (IntRegion::IntZone_IntLT64_Int64) + ? SubtractionState_IntInt64 + : + // signed-unsigned + (IntRegion::IntZone_IntLT32_UintLT32) + ? SubtractionState_CastIntCheckMin + : (IntRegion::IntZone_Int32_UintLT32 || + IntRegion::IntZone_IntLT64_Uint32) + ? SubtractionState_CastInt64CheckMin + : (IntRegion::IntZone_Int64_UintLT64) + ? SubtractionState_Int64Uint + : (IntRegion::IntZone_Int_Uint64) + ? SubtractionState_IntUint64 + : (IntRegion:: + IntZone_Int64_Uint64) + ? SubtractionState_Int64Uint64 + : SubtractionState_Error) + }; +}; + +// this is for the case of U - SafeInt< T, E > +template +class SubtractionMethod2 +{ +public: + enum + { + // unsigned-unsigned + method = + ((IntRegion::IntZone_UintLT32_UintLT32 || (IntRegion::IntZone_Uint32_UintLT64) || + (IntRegion::IntZone_UintLT32_Uint32) || (IntRegion::IntZone_Uint64_Uint) || + (IntRegion::IntZone_UintLT64_Uint64)) + ? SubtractionState_BothUnsigned2 + : + // unsigned-signed + (IntRegion::IntZone_UintLT32_IntLT32) + ? SubtractionState_CastIntCheckSafeIntMinMax2 + : (IntRegion::IntZone_Uint32_IntLT64 || IntRegion::IntZone_UintLT32_Int32) + ? SubtractionState_CastInt64CheckSafeIntMinMax2 + : (IntRegion::IntZone_Uint64_Int || IntRegion::IntZone_Uint64_Int64) + ? SubtractionState_Uint64Int2 + : (IntRegion::IntZone_UintLT64_Int64) ? SubtractionState_UintInt642 : + // signed-signed + (IntRegion::IntZone_IntLT32_IntLT32) + ? SubtractionState_CastIntCheckSafeIntMinMax2 + : (IntRegion::IntZone_Int32_IntLT64 || + IntRegion::IntZone_IntLT32_Int32) + ? SubtractionState_CastInt64CheckSafeIntMinMax2 + : (IntRegion::IntZone_Int64_Int || + IntRegion::IntZone_Int64_Int64) + ? SubtractionState_Int64Int2 + : (IntRegion::IntZone_IntLT64_Int64) + ? SubtractionState_IntInt642 + : + // signed-unsigned + (IntRegion::IntZone_IntLT32_UintLT32) + ? SubtractionState_CastIntCheckSafeIntMinMax2 + : (IntRegion::IntZone_Int32_UintLT32 || + IntRegion::IntZone_IntLT64_Uint32) + ? SubtractionState_CastInt64CheckSafeIntMinMax2 + : (IntRegion::IntZone_Int64_UintLT64) + ? SubtractionState_Int64Uint2 + : (IntRegion::IntZone_Int_Uint64) + ? SubtractionState_IntUint642 + : (IntRegion:: + IntZone_Int64_Uint64) + ? SubtractionState_Int64Uint642 + : SubtractionState_Error) + }; +}; + +template +class SubtractionHelper; + +template +class SubtractionHelper +{ +public: + static bool Subtract(const T& lhs, const U& rhs, T& result) SAFEINT_NOTHROW + { + // both are unsigned - easy case + if (rhs <= lhs) + { + result = (T)(lhs - rhs); + return true; + } + + return false; + } + + template + static void SubtractThrow(const T& lhs, const U& rhs, T& result) SAFEINT_CPP_THROW + { + // both are unsigned - easy case + if (rhs <= lhs) + { + result = (T)(lhs - rhs); + return; + } + + E::SafeIntOnOverflow(); + } +}; + +template +class SubtractionHelper +{ +public: + static bool Subtract(const T& lhs, const U& rhs, U& result) SAFEINT_NOTHROW + { + // both are unsigned - easy case + // Except we do have to check for overflow - lhs could be larger than result can hold + if (rhs <= lhs) + { + T tmp = (T)(lhs - rhs); + return SafeCastHelper::method>::Cast(tmp, result); + } + + return false; + } + + template + static void SubtractThrow(const T& lhs, const U& rhs, U& result) SAFEINT_CPP_THROW + { + // both are unsigned - easy case + if (rhs <= lhs) + { + T tmp = (T)(lhs - rhs); + SafeCastHelper::method>::template CastThrow(tmp, result); + return; + } + + E::SafeIntOnOverflow(); + } +}; + +template +class SubtractionHelper +{ +public: + static bool Subtract(const T& lhs, const U& rhs, T& result) SAFEINT_NOTHROW + { + // both values are 16-bit or less + // rhs is signed, so could end up increasing or decreasing + __int32 tmp = lhs - rhs; + + if (SafeCastHelper::method>::Cast(tmp, result)) + { + result = (T)tmp; + return true; + } + + return false; + } + + template + static void SubtractThrow(const T& lhs, const U& rhs, T& result) SAFEINT_CPP_THROW + { + // both values are 16-bit or less + // rhs is signed, so could end up increasing or decreasing + __int32 tmp = lhs - rhs; + + SafeCastHelper::method>::template CastThrow(tmp, result); + } +}; + +template +class SubtractionHelper +{ +public: + static bool Subtract(const U& lhs, const T& rhs, T& result) SAFEINT_NOTHROW + { + // both values are 16-bit or less + // rhs is signed, so could end up increasing or decreasing + __int32 tmp = lhs - rhs; + + return SafeCastHelper::method>::Cast(tmp, result); + } + + template + static void SubtractThrow(const U& lhs, const T& rhs, T& result) SAFEINT_CPP_THROW + { + // both values are 16-bit or less + // rhs is signed, so could end up increasing or decreasing + __int32 tmp = lhs - rhs; + + SafeCastHelper::method>::template CastThrow(tmp, result); + } +}; + +template +class SubtractionHelper +{ +public: + static bool Subtract(const T& lhs, const U& rhs, T& result) SAFEINT_NOTHROW + { + // both values are 16-bit or less + // rhs is unsigned - check only minimum + __int32 tmp = lhs - rhs; + + if (tmp >= (__int32)IntTraits::minInt) + { + result = (T)tmp; + return true; + } + + return false; + } + + template + static void SubtractThrow(const T& lhs, const U& rhs, T& result) SAFEINT_CPP_THROW + { + // both values are 16-bit or less + // rhs is unsigned - check only minimum + __int32 tmp = lhs - rhs; + + if (tmp >= (__int32)IntTraits::minInt) + { + result = (T)tmp; + return; + } + + E::SafeIntOnOverflow(); + } +}; + +template +class SubtractionHelper +{ +public: + static bool Subtract(const T& lhs, const U& rhs, T& result) SAFEINT_NOTHROW + { + // both values are 32-bit or less + // rhs is signed, so could end up increasing or decreasing + __int64 tmp = (__int64)lhs - (__int64)rhs; + + return SafeCastHelper::method>::Cast(tmp, result); + } + + template + static void SubtractThrow(const T& lhs, const U& rhs, T& result) SAFEINT_CPP_THROW + { + // both values are 32-bit or less + // rhs is signed, so could end up increasing or decreasing + __int64 tmp = (__int64)lhs - (__int64)rhs; + + SafeCastHelper::method>::template CastThrow(tmp, result); + } +}; + +template +class SubtractionHelper +{ +public: + static bool Subtract(const U& lhs, const T& rhs, T& result) SAFEINT_NOTHROW + { + // both values are 32-bit or less + // rhs is signed, so could end up increasing or decreasing + __int64 tmp = (__int64)lhs - (__int64)rhs; + + return SafeCastHelper::method>::Cast(tmp, result); + } + + template + static void SubtractThrow(const U& lhs, const T& rhs, T& result) SAFEINT_CPP_THROW + { + // both values are 32-bit or less + // rhs is signed, so could end up increasing or decreasing + __int64 tmp = (__int64)lhs - (__int64)rhs; + + SafeCastHelper::method>::template CastThrow(tmp, result); + } +}; + +template +class SubtractionHelper +{ +public: + static bool Subtract(const T& lhs, const U& rhs, T& result) SAFEINT_NOTHROW + { + // both values are 32-bit or less + // rhs is unsigned - check only minimum + __int64 tmp = (__int64)lhs - (__int64)rhs; + + if (tmp >= (__int64)IntTraits::minInt) + { + result = (T)tmp; + return true; + } + + return false; + } + + template + static void SubtractThrow(const T& lhs, const U& rhs, T& result) SAFEINT_CPP_THROW + { + // both values are 32-bit or less + // rhs is unsigned - check only minimum + __int64 tmp = (__int64)lhs - (__int64)rhs; + + if (tmp >= (__int64)IntTraits::minInt) + { + result = (T)tmp; + return; + } + + E::SafeIntOnOverflow(); + } +}; + +template +class SubtractionHelper +{ +public: + static bool Subtract(const T& lhs, const U& rhs, T& result) SAFEINT_NOTHROW + { + // lhs is an unsigned __int64, rhs signed + // must first see if rhs is positive or negative + if (rhs >= 0) + { + if ((unsigned __int64)rhs <= lhs) + { + result = (T)(lhs - (unsigned __int64)rhs); + return true; + } + } + else + { + T tmp = lhs; + // we're now effectively adding + result = lhs + AbsValueHelper::method>::Abs(rhs); + + if (result >= tmp) return true; + } + + return false; + } + + template + static void SubtractThrow(const T& lhs, const U& rhs, T& result) SAFEINT_CPP_THROW + { + // lhs is an unsigned __int64, rhs signed + // must first see if rhs is positive or negative + if (rhs >= 0) + { + if ((unsigned __int64)rhs <= lhs) + { + result = (T)(lhs - (unsigned __int64)rhs); + return; + } + } + else + { + T tmp = lhs; + // we're now effectively adding + result = lhs + AbsValueHelper::method>::Abs(rhs); + + if (result >= tmp) return; + } + + E::SafeIntOnOverflow(); + } +}; + +template +class SubtractionHelper +{ +public: + static bool Subtract(const U& lhs, const T& rhs, T& result) SAFEINT_NOTHROW + { + // U is unsigned __int64, T is signed + if (rhs < 0) + { + // treat this as addition + unsigned __int64 tmp; + + tmp = lhs + (unsigned __int64)AbsValueHelper::method>::Abs(rhs); + + // must check for addition overflow and max + if (tmp >= lhs && tmp <= IntTraits::maxInt) + { + result = (T)tmp; + return true; + } + } + else if ((unsigned __int64)rhs > lhs) // now both are positive, so comparison always works + { + // result is negative + // implies that lhs must fit into T, and result cannot overflow + // Also allows us to drop to 32-bit math, which is faster on a 32-bit system + result = (T)lhs - (T)rhs; + return true; + } + else + { + // result is positive + unsigned __int64 tmp = (unsigned __int64)lhs - (unsigned __int64)rhs; + + if (tmp <= IntTraits::maxInt) + { + result = (T)tmp; + return true; + } + } + + return false; + } + + template + static void SubtractThrow(const U& lhs, const T& rhs, T& result) SAFEINT_CPP_THROW + { + // U is unsigned __int64, T is signed + if (rhs < 0) + { + // treat this as addition + unsigned __int64 tmp; + + tmp = lhs + (unsigned __int64)AbsValueHelper::method>::Abs(rhs); + + // must check for addition overflow and max + if (tmp >= lhs && tmp <= IntTraits::maxInt) + { + result = (T)tmp; + return; + } + } + else if ((unsigned __int64)rhs > lhs) // now both are positive, so comparison always works + { + // result is negative + // implies that lhs must fit into T, and result cannot overflow + // Also allows us to drop to 32-bit math, which is faster on a 32-bit system + result = (T)lhs - (T)rhs; + return; + } + else + { + // result is positive + unsigned __int64 tmp = (unsigned __int64)lhs - (unsigned __int64)rhs; + + if (tmp <= IntTraits::maxInt) + { + result = (T)tmp; + return; + } + } + + E::SafeIntOnOverflow(); + } +}; + +template +class SubtractionHelper +{ +public: + static bool Subtract(const T& lhs, const U& rhs, T& result) SAFEINT_NOTHROW + { + // lhs is an unsigned int32 or smaller, rhs signed __int64 + // must first see if rhs is positive or negative + if (rhs >= 0) + { + if ((unsigned __int64)rhs <= lhs) + { + result = (T)(lhs - (T)rhs); + return true; + } + } + else + { + // we're now effectively adding + // since lhs is 32-bit, and rhs cannot exceed 2^63 + // this addition cannot overflow + unsigned __int64 tmp = lhs + ~(unsigned __int64)(rhs) + 1; // negation safe + + // but we could exceed MaxInt + if (tmp <= IntTraits::maxInt) + { + result = (T)tmp; + return true; + } + } + + return false; + } + + template + static void SubtractThrow(const T& lhs, const U& rhs, T& result) SAFEINT_CPP_THROW + { + // lhs is an unsigned int32 or smaller, rhs signed __int64 + // must first see if rhs is positive or negative + if (rhs >= 0) + { + if ((unsigned __int64)rhs <= lhs) + { + result = (T)(lhs - (T)rhs); + return; + } + } + else + { + // we're now effectively adding + // since lhs is 32-bit, and rhs cannot exceed 2^63 + // this addition cannot overflow + unsigned __int64 tmp = lhs + ~(unsigned __int64)(rhs) + 1; // negation safe + + // but we could exceed MaxInt + if (tmp <= IntTraits::maxInt) + { + result = (T)tmp; + return; + } + } + + E::SafeIntOnOverflow(); + } +}; + +template +class SubtractionHelper +{ +public: + static bool Subtract(const U& lhs, const T& rhs, T& result) SAFEINT_NOTHROW + { + // U unsigned 32-bit or less, T __int64 + if (rhs >= 0) + { + // overflow not possible + result = (T)((__int64)lhs - rhs); + return true; + } + else + { + // we effectively have an addition + // which cannot overflow internally + unsigned __int64 tmp = (unsigned __int64)lhs + (unsigned __int64)(-rhs); + + if (tmp <= (unsigned __int64)IntTraits::maxInt) + { + result = (T)tmp; + return true; + } + } + + return false; + } + + template + static void SubtractThrow(const U& lhs, const T& rhs, T& result) SAFEINT_CPP_THROW + { + // U unsigned 32-bit or less, T __int64 + if (rhs >= 0) + { + // overflow not possible + result = (T)((__int64)lhs - rhs); + return; + } + else + { + // we effectively have an addition + // which cannot overflow internally + unsigned __int64 tmp = (unsigned __int64)lhs + (unsigned __int64)(-rhs); + + if (tmp <= (unsigned __int64)IntTraits::maxInt) + { + result = (T)tmp; + return; + } + } + + E::SafeIntOnOverflow(); + } +}; + +template +class SubtractionHelper +{ +public: + static bool Subtract(const T& lhs, const U& rhs, T& result) SAFEINT_NOTHROW + { + // lhs is an __int64, rhs signed (up to 64-bit) + // we have essentially 4 cases: + // + // 1) lhs positive, rhs positive - overflow not possible + // 2) lhs positive, rhs negative - equivalent to addition - result >= lhs or error + // 3) lhs negative, rhs positive - check result <= lhs + // 4) lhs negative, rhs negative - overflow not possible + + __int64 tmp = (__int64)((unsigned __int64)lhs - (unsigned __int64)rhs); + + // Note - ideally, we can order these so that true conditionals + // lead to success, which enables better pipelining + // It isn't practical here + if ((lhs >= 0 && rhs < 0 && tmp < lhs) || // condition 2 + (rhs >= 0 && tmp > lhs)) // condition 3 + { + return false; + } + + result = (T)tmp; + return true; + } + + template + static void SubtractThrow(const T& lhs, const U& rhs, T& result) SAFEINT_CPP_THROW + { + // lhs is an __int64, rhs signed (up to 64-bit) + // we have essentially 4 cases: + // + // 1) lhs positive, rhs positive - overflow not possible + // 2) lhs positive, rhs negative - equivalent to addition - result >= lhs or error + // 3) lhs negative, rhs positive - check result <= lhs + // 4) lhs negative, rhs negative - overflow not possible + + __int64 tmp = (__int64)((unsigned __int64)lhs - (unsigned __int64)rhs); + + // Note - ideally, we can order these so that true conditionals + // lead to success, which enables better pipelining + // It isn't practical here + if ((lhs >= 0 && rhs < 0 && tmp < lhs) || // condition 2 + (rhs >= 0 && tmp > lhs)) // condition 3 + { + E::SafeIntOnOverflow(); + } + + result = (T)tmp; + } +}; + +template +class SubtractionHelper +{ +public: + static bool Subtract(const U& lhs, const T& rhs, T& result) SAFEINT_NOTHROW + { + // lhs __int64, rhs any signed int (including __int64) + __int64 tmp = lhs - rhs; + + // we have essentially 4 cases: + // + // 1) lhs positive, rhs positive - overflow not possible in tmp + // 2) lhs positive, rhs negative - equivalent to addition - result >= lhs or error + // 3) lhs negative, rhs positive - check result <= lhs + // 4) lhs negative, rhs negative - overflow not possible in tmp + + if (lhs >= 0) + { + // if both positive, overflow to negative not possible + // which is why we'll explicitly check maxInt, and not call SafeCast + if ((IntTraits::isLT64Bit && tmp > IntTraits::maxInt) || (rhs < 0 && tmp < lhs)) + { + return false; + } + } + else + { + // lhs negative + if ((IntTraits::isLT64Bit && tmp < IntTraits::minInt) || (rhs >= 0 && tmp > lhs)) + { + return false; + } + } + + result = (T)tmp; + return true; + } + + template + static void SubtractThrow(const U& lhs, const T& rhs, T& result) SAFEINT_CPP_THROW + { + // lhs __int64, rhs any signed int (including __int64) + __int64 tmp = lhs - rhs; + + // we have essentially 4 cases: + // + // 1) lhs positive, rhs positive - overflow not possible in tmp + // 2) lhs positive, rhs negative - equivalent to addition - result >= lhs or error + // 3) lhs negative, rhs positive - check result <= lhs + // 4) lhs negative, rhs negative - overflow not possible in tmp + + if (lhs >= 0) + { + // if both positive, overflow to negative not possible + // which is why we'll explicitly check maxInt, and not call SafeCast + if ((CompileConst::isLT64Bit>::Value() && tmp > IntTraits::maxInt) || + (rhs < 0 && tmp < lhs)) + { + E::SafeIntOnOverflow(); + } + } + else + { + // lhs negative + if ((CompileConst::isLT64Bit>::Value() && tmp < IntTraits::minInt) || + (rhs >= 0 && tmp > lhs)) + { + E::SafeIntOnOverflow(); + } + } + + result = (T)tmp; + } +}; + +template +class SubtractionHelper +{ +public: + static bool Subtract(const T& lhs, const U& rhs, T& result) SAFEINT_NOTHROW + { + // lhs is a 32-bit int or less, rhs __int64 + // we have essentially 4 cases: + // + // lhs positive, rhs positive - rhs could be larger than lhs can represent + // lhs positive, rhs negative - additive case - check tmp >= lhs and tmp > max int + // lhs negative, rhs positive - check tmp <= lhs and tmp < min int + // lhs negative, rhs negative - addition cannot internally overflow, check against max + + __int64 tmp = (__int64)((unsigned __int64)lhs - (unsigned __int64)rhs); + + if (lhs >= 0) + { + // first case + if (rhs >= 0) + { + if (tmp >= IntTraits::minInt) + { + result = (T)tmp; + return true; + } + } + else + { + // second case + if (tmp >= lhs && tmp <= IntTraits::maxInt) + { + result = (T)tmp; + return true; + } + } + } + else + { + // lhs < 0 + // third case + if (rhs >= 0) + { + if (tmp <= lhs && tmp >= IntTraits::minInt) + { + result = (T)tmp; + return true; + } + } + else + { + // fourth case + if (tmp <= IntTraits::maxInt) + { + result = (T)tmp; + return true; + } + } + } + + return false; + } + + template + static void SubtractThrow(const T& lhs, const U& rhs, T& result) SAFEINT_CPP_THROW + { + // lhs is a 32-bit int or less, rhs __int64 + // we have essentially 4 cases: + // + // lhs positive, rhs positive - rhs could be larger than lhs can represent + // lhs positive, rhs negative - additive case - check tmp >= lhs and tmp > max int + // lhs negative, rhs positive - check tmp <= lhs and tmp < min int + // lhs negative, rhs negative - addition cannot internally overflow, check against max + + __int64 tmp = (__int64)((unsigned __int64)lhs - (unsigned __int64)rhs); + + if (lhs >= 0) + { + // first case + if (rhs >= 0) + { + if (tmp >= IntTraits::minInt) + { + result = (T)tmp; + return; + } + } + else + { + // second case + if (tmp >= lhs && tmp <= IntTraits::maxInt) + { + result = (T)tmp; + return; + } + } + } + else + { + // lhs < 0 + // third case + if (rhs >= 0) + { + if (tmp <= lhs && tmp >= IntTraits::minInt) + { + result = (T)tmp; + return; + } + } + else + { + // fourth case + if (tmp <= IntTraits::maxInt) + { + result = (T)tmp; + return; + } + } + } + + E::SafeIntOnOverflow(); + } +}; + +template +class SubtractionHelper +{ +public: + static bool Subtract(const U& lhs, const T& rhs, T& result) SAFEINT_NOTHROW + { + // lhs is any signed int32 or smaller, rhs is int64 + __int64 tmp = (__int64)lhs - rhs; + + if ((lhs >= 0 && rhs < 0 && tmp < lhs) || (rhs > 0 && tmp > lhs)) + { + return false; + // else OK + } + + result = (T)tmp; + return true; + } + + template + static void SubtractThrow(const U& lhs, const T& rhs, T& result) SAFEINT_CPP_THROW + { + // lhs is any signed int32 or smaller, rhs is int64 + __int64 tmp = (__int64)lhs - rhs; + + if ((lhs >= 0 && rhs < 0 && tmp < lhs) || (rhs > 0 && tmp > lhs)) + { + E::SafeIntOnOverflow(); + // else OK + } + + result = (T)tmp; + } +}; + +template +class SubtractionHelper +{ +public: + static bool Subtract(const T& lhs, const U& rhs, T& result) SAFEINT_NOTHROW + { + // lhs is a 64-bit int, rhs unsigned int32 or smaller + // perform test as unsigned to prevent unwanted optimizations + unsigned __int64 tmp = (unsigned __int64)lhs - (unsigned __int64)rhs; + + if ((__int64)tmp <= lhs) + { + result = (T)(__int64)tmp; + return true; + } + + return false; + } + + template + static void SubtractThrow(const T& lhs, const U& rhs, T& result) SAFEINT_CPP_THROW + { + // lhs is a 64-bit int, rhs unsigned int32 or smaller + // perform test as unsigned to prevent unwanted optimizations + unsigned __int64 tmp = (unsigned __int64)lhs - (unsigned __int64)rhs; + + if ((__int64)tmp <= lhs) + { + result = (T)tmp; + return; + } + + E::SafeIntOnOverflow(); + } +}; + +template +class SubtractionHelper +{ +public: + // lhs is __int64, rhs is unsigned 32-bit or smaller + static bool Subtract(const U& lhs, const T& rhs, T& result) SAFEINT_NOTHROW + { + // Do this as unsigned to prevent unwanted optimizations + unsigned __int64 tmp = (unsigned __int64)lhs - (unsigned __int64)rhs; + + if ((__int64)tmp <= IntTraits::maxInt && (__int64)tmp >= IntTraits::minInt) + { + result = (T)(__int64)tmp; + return true; + } + + return false; + } + + template + static void SubtractThrow(const U& lhs, const T& rhs, T& result) SAFEINT_CPP_THROW + { + // Do this as unsigned to prevent unwanted optimizations + unsigned __int64 tmp = (unsigned __int64)lhs - (unsigned __int64)rhs; + + if ((__int64)tmp <= IntTraits::maxInt && (__int64)tmp >= IntTraits::minInt) + { + result = (T)(__int64)tmp; + return; + } + + E::SafeIntOnOverflow(); + } +}; + +template +class SubtractionHelper +{ +public: + static bool Subtract(const T& lhs, const U& rhs, T& result) SAFEINT_NOTHROW + { + // lhs is any signed int, rhs unsigned int64 + // check against available range + + // We need the absolute value of IntTraits< T >::minInt + // This will give it to us without extraneous compiler warnings + const unsigned __int64 AbsMinIntT = (unsigned __int64)IntTraits::maxInt + 1; + + if (lhs < 0) + { + if (rhs <= AbsMinIntT - AbsValueHelper::method>::Abs(lhs)) + { + result = (T)(lhs - rhs); + return true; + } + } + else + { + if (rhs <= AbsMinIntT + (unsigned __int64)lhs) + { + result = (T)(lhs - rhs); + return true; + } + } + + return false; + } + + template + static void SubtractThrow(const T& lhs, const U& rhs, T& result) SAFEINT_CPP_THROW + { + // lhs is any signed int, rhs unsigned int64 + // check against available range + + // We need the absolute value of IntTraits< T >::minInt + // This will give it to us without extraneous compiler warnings + const unsigned __int64 AbsMinIntT = (unsigned __int64)IntTraits::maxInt + 1; + + if (lhs < 0) + { + if (rhs <= AbsMinIntT - AbsValueHelper::method>::Abs(lhs)) + { + result = (T)(lhs - rhs); + return; + } + } + else + { + if (rhs <= AbsMinIntT + (unsigned __int64)lhs) + { + result = (T)(lhs - rhs); + return; + } + } + + E::SafeIntOnOverflow(); + } +}; + +template +class SubtractionHelper +{ +public: + static bool Subtract(const U& lhs, const T& rhs, T& result) SAFEINT_NOTHROW + { + // We run into upcasting problems on comparison - needs 2 checks + if (lhs >= 0 && (T)lhs >= rhs) + { + result = (T)((U)lhs - (U)rhs); + return true; + } + + return false; + } + + template + static void SubtractThrow(const U& lhs, const T& rhs, T& result) SAFEINT_CPP_THROW + { + // We run into upcasting problems on comparison - needs 2 checks + if (lhs >= 0 && (T)lhs >= rhs) + { + result = (T)((U)lhs - (U)rhs); + return; + } + + E::SafeIntOnOverflow(); + } +}; + +template +class SubtractionHelper +{ +public: + static bool Subtract(const __int64& lhs, const unsigned __int64& rhs, __int64& result) SAFEINT_NOTHROW + { + C_ASSERT(IntTraits::isInt64 && IntTraits::isUint64); + // if we subtract, and it gets larger, there's a problem + // Perform test as unsigned to prevent unwanted optimizations + unsigned __int64 tmp = (unsigned __int64)lhs - rhs; + + if ((__int64)tmp <= lhs) + { + result = (__int64)tmp; + return true; + } + return false; + } + + template + static void SubtractThrow(const __int64& lhs, const unsigned __int64& rhs, T& result) SAFEINT_CPP_THROW + { + C_ASSERT(IntTraits::isInt64 && IntTraits::isUint64); + // if we subtract, and it gets larger, there's a problem + // Perform test as unsigned to prevent unwanted optimizations + unsigned __int64 tmp = (unsigned __int64)lhs - rhs; + + if ((__int64)tmp <= lhs) + { + result = (__int64)tmp; + return; + } + + E::SafeIntOnOverflow(); + } +}; + +template +class SubtractionHelper +{ +public: + // If lhs is negative, immediate problem - return must be positive, and subtracting only makes it + // get smaller. If rhs > lhs, then it would also go negative, which is the other case + static bool Subtract(const __int64& lhs, const unsigned __int64& rhs, T& result) SAFEINT_NOTHROW + { + C_ASSERT(IntTraits::isUint64 && IntTraits::isInt64); + if (lhs >= 0 && (unsigned __int64)lhs >= rhs) + { + result = (unsigned __int64)lhs - rhs; + return true; + } + + return false; + } + + template + static void SubtractThrow(const __int64& lhs, const unsigned __int64& rhs, T& result) SAFEINT_CPP_THROW + { + C_ASSERT(IntTraits::isUint64 && IntTraits::isInt64); + if (lhs >= 0 && (unsigned __int64)lhs >= rhs) + { + result = (unsigned __int64)lhs - rhs; + return; + } + + E::SafeIntOnOverflow(); + } +}; + +enum BinaryState +{ + BinaryState_OK, + BinaryState_Int8, + BinaryState_Int16, + BinaryState_Int32 +}; + +template +class BinaryMethod +{ +public: + enum + { + // If both operands are unsigned OR + // return type is smaller than rhs OR + // return type is larger and rhs is unsigned + // Then binary operations won't produce unexpected results + method = (sizeof(T) <= sizeof(U) || SafeIntCompare::isBothUnsigned || !IntTraits::isSigned) + ? BinaryState_OK + : IntTraits::isInt8 ? BinaryState_Int8 + : IntTraits::isInt16 ? BinaryState_Int16 : BinaryState_Int32 + }; +}; + +#ifdef SAFEINT_DISABLE_BINARY_ASSERT +#define BinaryAssert(x) +#else +#define BinaryAssert(x) SAFEINT_ASSERT(x) +#endif + +template +class BinaryAndHelper; + +template +class BinaryAndHelper +{ +public: + static T And(T lhs, U rhs) SAFEINT_NOTHROW { return (T)(lhs & rhs); } +}; + +template +class BinaryAndHelper +{ +public: + static T And(T lhs, U rhs) SAFEINT_NOTHROW + { + // cast forces sign extension to be zeros + BinaryAssert((lhs & rhs) == (lhs & (unsigned __int8)rhs)); + return (T)(lhs & (unsigned __int8)rhs); + } +}; + +template +class BinaryAndHelper +{ +public: + static T And(T lhs, U rhs) SAFEINT_NOTHROW + { + // cast forces sign extension to be zeros + BinaryAssert((lhs & rhs) == (lhs & (unsigned __int16)rhs)); + return (T)(lhs & (unsigned __int16)rhs); + } +}; + +template +class BinaryAndHelper +{ +public: + static T And(T lhs, U rhs) SAFEINT_NOTHROW + { + // cast forces sign extension to be zeros + BinaryAssert((lhs & rhs) == (lhs & (unsigned __int32)rhs)); + return (T)(lhs & (unsigned __int32)rhs); + } +}; + +template +class BinaryOrHelper; + +template +class BinaryOrHelper +{ +public: + static T Or(T lhs, U rhs) SAFEINT_NOTHROW { return (T)(lhs | rhs); } +}; + +template +class BinaryOrHelper +{ +public: + static T Or(T lhs, U rhs) SAFEINT_NOTHROW + { + // cast forces sign extension to be zeros + BinaryAssert((lhs | rhs) == (lhs | (unsigned __int8)rhs)); + return (T)(lhs | (unsigned __int8)rhs); + } +}; + +template +class BinaryOrHelper +{ +public: + static T Or(T lhs, U rhs) SAFEINT_NOTHROW + { + // cast forces sign extension to be zeros + BinaryAssert((lhs | rhs) == (lhs | (unsigned __int16)rhs)); + return (T)(lhs | (unsigned __int16)rhs); + } +}; + +template +class BinaryOrHelper +{ +public: + static T Or(T lhs, U rhs) SAFEINT_NOTHROW + { + // cast forces sign extension to be zeros + BinaryAssert((lhs | rhs) == (lhs | (unsigned __int32)rhs)); + return (T)(lhs | (unsigned __int32)rhs); + } +}; + +template +class BinaryXorHelper; + +template +class BinaryXorHelper +{ +public: + static T Xor(T lhs, U rhs) SAFEINT_NOTHROW { return (T)(lhs ^ rhs); } +}; + +template +class BinaryXorHelper +{ +public: + static T Xor(T lhs, U rhs) SAFEINT_NOTHROW + { + // cast forces sign extension to be zeros + BinaryAssert((lhs ^ rhs) == (lhs ^ (unsigned __int8)rhs)); + return (T)(lhs ^ (unsigned __int8)rhs); + } +}; + +template +class BinaryXorHelper +{ +public: + static T Xor(T lhs, U rhs) SAFEINT_NOTHROW + { + // cast forces sign extension to be zeros + BinaryAssert((lhs ^ rhs) == (lhs ^ (unsigned __int16)rhs)); + return (T)(lhs ^ (unsigned __int16)rhs); + } +}; + +template +class BinaryXorHelper +{ +public: + static T Xor(T lhs, U rhs) SAFEINT_NOTHROW + { + // cast forces sign extension to be zeros + BinaryAssert((lhs ^ rhs) == (lhs ^ (unsigned __int32)rhs)); + return (T)(lhs ^ (unsigned __int32)rhs); + } +}; + +/***************** External functions ****************************************/ + +// External functions that can be used where you only need to check one operation +// non-class helper function so that you can check for a cast's validity +// and handle errors how you like +template +inline bool SafeCast(const T From, U& To) SAFEINT_NOTHROW +{ + return SafeCastHelper::method>::Cast(From, To); +} + +template +inline bool SafeEquals(const T t, const U u) SAFEINT_NOTHROW +{ + return EqualityTest::method>::IsEquals(t, u); +} + +template +inline bool SafeNotEquals(const T t, const U u) SAFEINT_NOTHROW +{ + return !EqualityTest::method>::IsEquals(t, u); +} + +template +inline bool SafeGreaterThan(const T t, const U u) SAFEINT_NOTHROW +{ + return GreaterThanTest::method>::GreaterThan(t, u); +} + +template +inline bool SafeGreaterThanEquals(const T t, const U u) SAFEINT_NOTHROW +{ + return !GreaterThanTest::method>::GreaterThan(u, t); +} + +template +inline bool SafeLessThan(const T t, const U u) SAFEINT_NOTHROW +{ + return GreaterThanTest::method>::GreaterThan(u, t); +} + +template +inline bool SafeLessThanEquals(const T t, const U u) SAFEINT_NOTHROW +{ + return !GreaterThanTest::method>::GreaterThan(t, u); +} + +template +inline bool SafeModulus(const T& t, const U& u, T& result) SAFEINT_NOTHROW +{ + return (ModulusHelper::method>::Modulus(t, u, result) == SafeIntNoError); +} + +template +inline bool SafeMultiply(T t, U u, T& result) SAFEINT_NOTHROW +{ + return MultiplicationHelper::method>::Multiply(t, u, result); +} + +template +inline bool SafeDivide(T t, U u, T& result) SAFEINT_NOTHROW +{ + return (DivisionHelper::method>::Divide(t, u, result) == SafeIntNoError); +} + +template +inline bool SafeAdd(T t, U u, T& result) SAFEINT_NOTHROW +{ + return AdditionHelper::method>::Addition(t, u, result); +} + +template +inline bool SafeSubtract(T t, U u, T& result) SAFEINT_NOTHROW +{ + return SubtractionHelper::method>::Subtract(t, u, result); +} + +/***************** end external functions ************************************/ + +// Main SafeInt class +// Assumes exceptions can be thrown +template +class SafeInt +{ +public: + SafeInt() SAFEINT_NOTHROW + { + C_ASSERT(NumericType::isInt); + m_int = 0; + } + + // Having a constructor for every type of int + // avoids having the compiler evade our checks when doing implicit casts - + // e.g., SafeInt s = 0x7fffffff; + SafeInt(const T& i) SAFEINT_NOTHROW + { + C_ASSERT(NumericType::isInt); + // always safe + m_int = i; + } + + // provide explicit boolean converter + SafeInt(bool b) SAFEINT_NOTHROW + { + C_ASSERT(NumericType::isInt); + m_int = (T)(b ? 1 : 0); + } + + template + SafeInt(const SafeInt& u) SAFEINT_CPP_THROW + { + C_ASSERT(NumericType::isInt); + *this = SafeInt((U)u); + } + + template + SafeInt(const U& i) SAFEINT_CPP_THROW + { + C_ASSERT(NumericType::isInt); + // SafeCast will throw exceptions if i won't fit in type T + SafeCastHelper::method>::template CastThrow(i, m_int); + } + + // The destructor is intentionally commented out - no destructor + // vs. a do-nothing destructor makes a huge difference in + // inlining characteristics. It wasn't doing anything anyway. + // ~SafeInt(){}; + + // now start overloading operators + // assignment operator + // constructors exist for all int types and will ensure safety + + template + SafeInt& operator=(const U& rhs) SAFEINT_CPP_THROW + { + // use constructor to test size + // constructor is optimized to do minimal checking based + // on whether T can contain U + // note - do not change this + *this = SafeInt(rhs); + return *this; + } + + SafeInt& operator=(const T& rhs) SAFEINT_NOTHROW + { + m_int = rhs; + return *this; + } + + template + SafeInt& operator=(const SafeInt& rhs) SAFEINT_CPP_THROW + { + SafeCastHelper::method>::template CastThrow(rhs.Ref(), m_int); + return *this; + } + + SafeInt& operator=(const SafeInt& rhs) SAFEINT_NOTHROW + { + m_int = rhs.m_int; + return *this; + } + + // Casting operators + + operator bool() const SAFEINT_NOTHROW { return !!m_int; } + + operator char() const SAFEINT_CPP_THROW + { + char val; + SafeCastHelper::method>::template CastThrow(m_int, val); + return val; + } + + operator signed char() const SAFEINT_CPP_THROW + { + signed char val; + SafeCastHelper::method>::template CastThrow(m_int, val); + return val; + } + + operator unsigned char() const SAFEINT_CPP_THROW + { + unsigned char val; + SafeCastHelper::method>::template CastThrow(m_int, val); + return val; + } + + operator __int16() const SAFEINT_CPP_THROW + { + __int16 val; + SafeCastHelper<__int16, T, GetCastMethod<__int16, T>::method>::template CastThrow(m_int, val); + return val; + } + + operator unsigned __int16() const SAFEINT_CPP_THROW + { + unsigned __int16 val; + SafeCastHelper::method>::template CastThrow(m_int, + val); + return val; + } + + operator __int32() const SAFEINT_CPP_THROW + { + __int32 val; + SafeCastHelper<__int32, T, GetCastMethod<__int32, T>::method>::template CastThrow(m_int, val); + return val; + } + + operator unsigned __int32() const SAFEINT_CPP_THROW + { + unsigned __int32 val; + SafeCastHelper::method>::template CastThrow(m_int, + val); + return val; + } + + // The compiler knows that int == __int32 + // but not that long == __int32 + operator long() const SAFEINT_CPP_THROW + { + long val; + SafeCastHelper::method>::template CastThrow(m_int, val); + return val; + } + + operator unsigned long() const SAFEINT_CPP_THROW + { + unsigned long val; + SafeCastHelper::method>::template CastThrow(m_int, val); + return val; + } + + operator __int64() const SAFEINT_CPP_THROW + { + __int64 val; + SafeCastHelper<__int64, T, GetCastMethod<__int64, T>::method>::template CastThrow(m_int, val); + return val; + } + + operator unsigned __int64() const SAFEINT_CPP_THROW + { + unsigned __int64 val; + SafeCastHelper::method>::template CastThrow(m_int, + val); + return val; + } + +#if defined SAFEINT_USE_WCHAR_T || defined _NATIVE_WCHAR_T_DEFINED + operator wchar_t() const SAFEINT_CPP_THROW + { + wchar_t val; + SafeCastHelper::method>::template CastThrow(m_int, val); + return val; + } +#endif + +#ifdef SIZE_T_CAST_NEEDED + // We also need an explicit cast to size_t, or the compiler will complain + // Apparently, only SOME compilers complain, and cl 14.00.50727.42 isn't one of them + // Leave here in case we decide to backport this to an earlier compiler + operator size_t() const SAFEINT_CPP_THROW + { + size_t val; + SafeCastHelper::method>::template CastThrow(m_int, val); + return val; + } +#endif + + // Also provide a cast operator for floating point types + operator float() const SAFEINT_CPP_THROW + { + float val; + SafeCastHelper::method>::template CastThrow(m_int, val); + return val; + } + + operator double() const SAFEINT_CPP_THROW + { + double val; + SafeCastHelper::method>::template CastThrow(m_int, val); + return val; + } + operator long double() const SAFEINT_CPP_THROW + { + long double val; + SafeCastHelper::method>::template CastThrow(m_int, val); + return val; + } + + // If you need a pointer to the data + // this could be dangerous, but allows you to correctly pass + // instances of this class to APIs that take a pointer to an integer + // also see overloaded address-of operator below + T* Ptr() SAFEINT_NOTHROW { return &m_int; } + const T* Ptr() const SAFEINT_NOTHROW { return &m_int; } + const T& Ref() const SAFEINT_NOTHROW { return m_int; } + + // Or if SafeInt< T, E >::Ptr() is inconvenient, use the overload + // operator & + // This allows you to do unsafe things! + // It is meant to allow you to more easily + // pass a SafeInt into things like ReadFile + T* operator&() SAFEINT_NOTHROW { return &m_int; } + const T* operator&() const SAFEINT_NOTHROW { return &m_int; } + + // Unary operators + bool operator!() const SAFEINT_NOTHROW { return (!m_int) ? true : false; } + + // operator + (unary) + // note - normally, the '+' and '-' operators will upcast to a signed int + // for T < 32 bits. This class changes behavior to preserve type + const SafeInt& operator+() const SAFEINT_NOTHROW { return *this; } + + // unary - + + SafeInt operator-() const SAFEINT_CPP_THROW + { + // Note - unsigned still performs the bitwise manipulation + // will warn at level 2 or higher if the value is 32-bit or larger + return SafeInt(NegationHelper::isSigned>::template NegativeThrow(m_int)); + } + + // prefix increment operator + SafeInt& operator++() SAFEINT_CPP_THROW + { + if (m_int != IntTraits::maxInt) + { + ++m_int; + return *this; + } + E::SafeIntOnOverflow(); + } + + // prefix decrement operator + SafeInt& operator--() SAFEINT_CPP_THROW + { + if (m_int != IntTraits::minInt) + { + --m_int; + return *this; + } + E::SafeIntOnOverflow(); + } + + // note that postfix operators have inherently worse perf + // characteristics + + // postfix increment operator + SafeInt operator++(int) SAFEINT_CPP_THROW // dummy arg to comply with spec + { + if (m_int != IntTraits::maxInt) + { + SafeInt tmp(m_int); + + m_int++; + return tmp; + } + E::SafeIntOnOverflow(); + } + + // postfix decrement operator + SafeInt operator--(int) SAFEINT_CPP_THROW // dummy arg to comply with spec + { + if (m_int != IntTraits::minInt) + { + SafeInt tmp(m_int); + m_int--; + return tmp; + } + E::SafeIntOnOverflow(); + } + + // One's complement + // Note - this operator will normally change size to an int + // cast in return improves perf and maintains type + SafeInt operator~() const SAFEINT_NOTHROW { return SafeInt((T)~m_int); } + + // Binary operators + // + // arithmetic binary operators + // % modulus + // * multiplication + // / division + // + addition + // - subtraction + // + // For each of the arithmetic operators, you will need to + // use them as follows: + // + // SafeInt c = 2; + // SafeInt i = 3; + // + // SafeInt i2 = i op (char)c; + // OR + // SafeInt i2 = (int)i op c; + // + // The base problem is that if the lhs and rhs inputs are different SafeInt types + // it is not possible in this implementation to determine what type of SafeInt + // should be returned. You have to let the class know which of the two inputs + // need to be the return type by forcing the other value to the base integer type. + // + // Note - as per feedback from Scott Meyers, I'm exploring how to get around this. + // 3.0 update - I'm still thinking about this. It can be done with template metaprogramming, + // but it is tricky, and there's a perf vs. correctness tradeoff where the right answer + // is situational. + // + // The case of: + // + // SafeInt< T, E > i, j, k; + // i = j op k; + // + // works just fine and no unboxing is needed because the return type is not ambiguous. + + // Modulus + // Modulus has some convenient properties - + // first, the magnitude of the return can never be + // larger than the lhs operand, and it must be the same sign + // as well. It does, however, suffer from the same promotion + // problems as comparisons, division and other operations + template + SafeInt operator%(U rhs) const SAFEINT_CPP_THROW + { + T result; + ModulusHelper::method>::template ModulusThrow(m_int, rhs, result); + return SafeInt(result); + } + + SafeInt operator%(SafeInt rhs) const SAFEINT_CPP_THROW + { + T result; + ModulusHelper::method>::template ModulusThrow(m_int, rhs, result); + return SafeInt(result); + } + + // Modulus assignment + template + SafeInt& operator%=(U rhs) SAFEINT_CPP_THROW + { + ModulusHelper::method>::template ModulusThrow(m_int, rhs, m_int); + return *this; + } + + template + SafeInt& operator%=(SafeInt rhs) SAFEINT_CPP_THROW + { + ModulusHelper::method>::template ModulusThrow(m_int, (U)rhs, m_int); + return *this; + } + + // Multiplication + template + SafeInt operator*(U rhs) const SAFEINT_CPP_THROW + { + T ret(0); + MultiplicationHelper::method>::template MultiplyThrow(m_int, rhs, ret); + return SafeInt(ret); + } + + SafeInt operator*(SafeInt rhs) const SAFEINT_CPP_THROW + { + T ret(0); + MultiplicationHelper::method>::template MultiplyThrow(m_int, (T)rhs, ret); + return SafeInt(ret); + } + + // Multiplication assignment + SafeInt& operator*=(SafeInt rhs) SAFEINT_CPP_THROW + { + MultiplicationHelper::method>::template MultiplyThrow(m_int, (T)rhs, m_int); + return *this; + } + + template + SafeInt& operator*=(U rhs) SAFEINT_CPP_THROW + { + MultiplicationHelper::method>::template MultiplyThrow(m_int, rhs, m_int); + return *this; + } + + template + SafeInt& operator*=(SafeInt rhs) SAFEINT_CPP_THROW + { + MultiplicationHelper::method>::template MultiplyThrow( + m_int, rhs.Ref(), m_int); + return *this; + } + + // Division + template + SafeInt operator/(U rhs) const SAFEINT_CPP_THROW + { + T ret(0); + DivisionHelper::method>::template DivideThrow(m_int, rhs, ret); + return SafeInt(ret); + } + + SafeInt operator/(SafeInt rhs) const SAFEINT_CPP_THROW + { + T ret(0); + DivisionHelper::method>::template DivideThrow(m_int, (T)rhs, ret); + return SafeInt(ret); + } + + // Division assignment + SafeInt& operator/=(SafeInt i) SAFEINT_CPP_THROW + { + DivisionHelper::method>::template DivideThrow(m_int, (T)i, m_int); + return *this; + } + + template + SafeInt& operator/=(U i) SAFEINT_CPP_THROW + { + DivisionHelper::method>::template DivideThrow(m_int, i, m_int); + return *this; + } + + template + SafeInt& operator/=(SafeInt i) + { + DivisionHelper::method>::template DivideThrow(m_int, (U)i, m_int); + return *this; + } + + // For addition and subtraction + + // Addition + SafeInt operator+(SafeInt rhs) const SAFEINT_CPP_THROW + { + T ret(0); + AdditionHelper::method>::template AdditionThrow(m_int, (T)rhs, ret); + return SafeInt(ret); + } + + template + SafeInt operator+(U rhs) const SAFEINT_CPP_THROW + { + T ret(0); + AdditionHelper::method>::template AdditionThrow(m_int, rhs, ret); + return SafeInt(ret); + } + + // addition assignment + SafeInt& operator+=(SafeInt rhs) SAFEINT_CPP_THROW + { + AdditionHelper::method>::template AdditionThrow(m_int, (T)rhs, m_int); + return *this; + } + + template + SafeInt& operator+=(U rhs) SAFEINT_CPP_THROW + { + AdditionHelper::method>::template AdditionThrow(m_int, rhs, m_int); + return *this; + } + + template + SafeInt& operator+=(SafeInt rhs) SAFEINT_CPP_THROW + { + AdditionHelper::method>::template AdditionThrow(m_int, (U)rhs, m_int); + return *this; + } + + // Subtraction + template + SafeInt operator-(U rhs) const SAFEINT_CPP_THROW + { + T ret(0); + SubtractionHelper::method>::template SubtractThrow(m_int, rhs, ret); + return SafeInt(ret); + } + + SafeInt operator-(SafeInt rhs) const SAFEINT_CPP_THROW + { + T ret(0); + SubtractionHelper::method>::template SubtractThrow(m_int, (T)rhs, ret); + return SafeInt(ret); + } + + // Subtraction assignment + SafeInt& operator-=(SafeInt rhs) SAFEINT_CPP_THROW + { + SubtractionHelper::method>::template SubtractThrow(m_int, (T)rhs, m_int); + return *this; + } + + template + SafeInt& operator-=(U rhs) SAFEINT_CPP_THROW + { + SubtractionHelper::method>::template SubtractThrow(m_int, rhs, m_int); + return *this; + } + + template + SafeInt& operator-=(SafeInt rhs) SAFEINT_CPP_THROW + { + SubtractionHelper::method>::template SubtractThrow(m_int, (U)rhs, m_int); + return *this; + } + + // Shift operators + // Note - shift operators ALWAYS return the same type as the lhs + // specific version for SafeInt< T, E > not needed - + // code path is exactly the same as for SafeInt< U, E > as rhs + + // Left shift + // Also, shifting > bitcount is undefined - trap in debug +#ifdef SAFEINT_DISABLE_SHIFT_ASSERT +#define ShiftAssert(x) +#else +#define ShiftAssert(x) SAFEINT_ASSERT(x) +#endif + + template + SafeInt operator<<(U bits) const SAFEINT_NOTHROW + { + ShiftAssert(!IntTraits::isSigned || bits >= 0); + ShiftAssert(bits < (int)IntTraits::bitCount); + + return SafeInt((T)(m_int << bits)); + } + + template + SafeInt operator<<(SafeInt bits) const SAFEINT_NOTHROW + { + ShiftAssert(!IntTraits::isSigned || (U)bits >= 0); + ShiftAssert((U)bits < (int)IntTraits::bitCount); + + return SafeInt((T)(m_int << (U)bits)); + } + + // Left shift assignment + + template + SafeInt& operator<<=(U bits) SAFEINT_NOTHROW + { + ShiftAssert(!IntTraits::isSigned || bits >= 0); + ShiftAssert(bits < (int)IntTraits::bitCount); + + m_int <<= bits; + return *this; + } + + template + SafeInt& operator<<=(SafeInt bits) SAFEINT_NOTHROW + { + ShiftAssert(!IntTraits::isSigned || (U)bits >= 0); + ShiftAssert((U)bits < (int)IntTraits::bitCount); + + m_int <<= (U)bits; + return *this; + } + + // Right shift + template + SafeInt operator>>(U bits) const SAFEINT_NOTHROW + { + ShiftAssert(!IntTraits::isSigned || bits >= 0); + ShiftAssert(bits < (int)IntTraits::bitCount); + + return SafeInt((T)(m_int >> bits)); + } + + template + SafeInt operator>>(SafeInt bits) const SAFEINT_NOTHROW + { + ShiftAssert(!IntTraits::isSigned || (U)bits >= 0); + ShiftAssert(bits < (int)IntTraits::bitCount); + + return SafeInt((T)(m_int >> (U)bits)); + } + + // Right shift assignment + template + SafeInt& operator>>=(U bits) SAFEINT_NOTHROW + { + ShiftAssert(!IntTraits::isSigned || bits >= 0); + ShiftAssert(bits < (int)IntTraits::bitCount); + + m_int >>= bits; + return *this; + } + + template + SafeInt& operator>>=(SafeInt bits) SAFEINT_NOTHROW + { + ShiftAssert(!IntTraits::isSigned || (U)bits >= 0); + ShiftAssert((U)bits < (int)IntTraits::bitCount); + + m_int >>= (U)bits; + return *this; + } + + // Bitwise operators + // This only makes sense if we're dealing with the same type and size + // demand a type T, or something that fits into a type T + + // Bitwise & + SafeInt operator&(SafeInt rhs) const SAFEINT_NOTHROW { return SafeInt(m_int & (T)rhs); } + + template + SafeInt operator&(U rhs) const SAFEINT_NOTHROW + { + // we want to avoid setting bits by surprise + // consider the case of lhs = int, value = 0xffffffff + // rhs = char, value = 0xff + // + // programmer intent is to get only the lower 8 bits + // normal behavior is to upcast both sides to an int + // which then sign extends rhs, setting all the bits + + // If you land in the assert, this is because the bitwise operator + // was causing unexpected behavior. Fix is to properly cast your inputs + // so that it works like you meant, not unexpectedly + + return SafeInt(BinaryAndHelper::method>::And(m_int, rhs)); + } + + // Bitwise & assignment + SafeInt& operator&=(SafeInt rhs) SAFEINT_NOTHROW + { + m_int &= (T)rhs; + return *this; + } + + template + SafeInt& operator&=(U rhs) SAFEINT_NOTHROW + { + m_int = BinaryAndHelper::method>::And(m_int, rhs); + return *this; + } + + template + SafeInt& operator&=(SafeInt rhs) SAFEINT_NOTHROW + { + m_int = BinaryAndHelper::method>::And(m_int, (U)rhs); + return *this; + } + + // XOR + SafeInt operator^(SafeInt rhs) const SAFEINT_NOTHROW { return SafeInt((T)(m_int ^ (T)rhs)); } + + template + SafeInt operator^(U rhs) const SAFEINT_NOTHROW + { + // If you land in the assert, this is because the bitwise operator + // was causing unexpected behavior. Fix is to properly cast your inputs + // so that it works like you meant, not unexpectedly + + return SafeInt(BinaryXorHelper::method>::Xor(m_int, rhs)); + } + + // XOR assignment + SafeInt& operator^=(SafeInt rhs) SAFEINT_NOTHROW + { + m_int ^= (T)rhs; + return *this; + } + + template + SafeInt& operator^=(U rhs) SAFEINT_NOTHROW + { + m_int = BinaryXorHelper::method>::Xor(m_int, rhs); + return *this; + } + + template + SafeInt& operator^=(SafeInt rhs) SAFEINT_NOTHROW + { + m_int = BinaryXorHelper::method>::Xor(m_int, (U)rhs); + return *this; + } + + // bitwise OR + SafeInt operator|(SafeInt rhs) const SAFEINT_NOTHROW { return SafeInt((T)(m_int | (T)rhs)); } + + template + SafeInt operator|(U rhs) const SAFEINT_NOTHROW + { + return SafeInt(BinaryOrHelper::method>::Or(m_int, rhs)); + } + + // bitwise OR assignment + SafeInt& operator|=(SafeInt rhs) SAFEINT_NOTHROW + { + m_int |= (T)rhs; + return *this; + } + + template + SafeInt& operator|=(U rhs) SAFEINT_NOTHROW + { + m_int = BinaryOrHelper::method>::Or(m_int, rhs); + return *this; + } + + template + SafeInt& operator|=(SafeInt rhs) SAFEINT_NOTHROW + { + m_int = BinaryOrHelper::method>::Or(m_int, (U)rhs); + return *this; + } + + // Miscellaneous helper functions + SafeInt Min(SafeInt test, const T floor = IntTraits::minInt) const SAFEINT_NOTHROW + { + T tmp = test < m_int ? (T)test : m_int; + return tmp < floor ? floor : tmp; + } + + SafeInt Max(SafeInt test, const T upper = IntTraits::maxInt) const SAFEINT_NOTHROW + { + T tmp = test > m_int ? (T)test : m_int; + return tmp > upper ? upper : tmp; + } + + void Swap(SafeInt& with) SAFEINT_NOTHROW + { + T temp(m_int); + m_int = with.m_int; + with.m_int = temp; + } + + static SafeInt SafeAtoI(const char* input) SAFEINT_CPP_THROW { return SafeTtoI(input); } + + static SafeInt SafeWtoI(const wchar_t* input) { return SafeTtoI(input); } + + enum alignBits + { + align2 = 1, + align4 = 2, + align8 = 3, + align16 = 4, + align32 = 5, + align64 = 6, + align128 = 7, + align256 = 8 + }; + + template + const SafeInt& Align() SAFEINT_CPP_THROW + { + // Zero is always aligned + if (m_int == 0) return *this; + + // We don't support aligning negative numbers at this time + // Can't align unsigned numbers on bitCount (e.g., 8 bits = 256, unsigned char max = 255) + // or signed numbers on bitCount-1 (e.g., 7 bits = 128, signed char max = 127). + // Also makes no sense to try to align on negative or no bits. + + ShiftAssert(((IntTraits::isSigned && bits < (int)IntTraits::bitCount - 1) || + (!IntTraits::isSigned && bits < (int)IntTraits::bitCount)) && + bits >= 0 && (!IntTraits::isSigned || m_int > 0)); + + const T AlignValue = ((T)1 << bits) - 1; + + m_int = (T)((m_int + AlignValue) & ~AlignValue); + + if (m_int <= 0) E::SafeIntOnOverflow(); + + return *this; + } + + // Commonly needed alignments: + const SafeInt& Align2() { return Align(); } + const SafeInt& Align4() { return Align(); } + const SafeInt& Align8() { return Align(); } + const SafeInt& Align16() { return Align(); } + const SafeInt& Align32() { return Align(); } + const SafeInt& Align64() { return Align(); } + +private: + // This is almost certainly not the best optimized version of atoi, + // but it does not display a typical bug where it isn't possible to set MinInt + // and it won't allow you to overflow your integer. + // This is here because it is useful, and it is an example of what + // can be done easily with SafeInt. + template + static SafeInt SafeTtoI(U* input) SAFEINT_CPP_THROW + { + U* tmp = input; + SafeInt s; + bool negative = false; + + // Bad input, or empty string + if (input == nullptr || input[0] == 0) E::SafeIntOnOverflow(); + + switch (*tmp) + { + case '-': + tmp++; + negative = true; + break; + case '+': tmp++; break; + } + + while (*tmp != 0) + { + if (*tmp < '0' || *tmp > '9') break; + + if ((T)s != 0) s *= (T)10; + + if (!negative) + s += (T)(*tmp - '0'); + else + s -= (T)(*tmp - '0'); + + tmp++; + } + + return s; + } + + T m_int; +}; + +// Helper function used to subtract pointers. +// Used to squelch warnings +template +SafeInt SafePtrDiff(const P* p1, const P* p2) SAFEINT_CPP_THROW +{ + return SafeInt(p1 - p2); +} + +// Comparison operators + +// Less than +template +bool operator<(U lhs, SafeInt rhs) SAFEINT_NOTHROW +{ + return GreaterThanTest::method>::GreaterThan((T)rhs, lhs); +} + +template +bool operator<(SafeInt lhs, U rhs) SAFEINT_NOTHROW +{ + return GreaterThanTest::method>::GreaterThan(rhs, (T)lhs); +} + +template +bool operator<(SafeInt lhs, SafeInt rhs) SAFEINT_NOTHROW +{ + return GreaterThanTest::method>::GreaterThan((T)rhs, (U)lhs); +} + +// Greater than +template +bool operator>(U lhs, SafeInt rhs) SAFEINT_NOTHROW +{ + return GreaterThanTest::method>::GreaterThan(lhs, (T)rhs); +} + +template +bool operator>(SafeInt lhs, U rhs) SAFEINT_NOTHROW +{ + return GreaterThanTest::method>::GreaterThan((T)lhs, rhs); +} + +template +bool operator>(SafeInt lhs, SafeInt rhs) SAFEINT_NOTHROW +{ + return GreaterThanTest::method>::GreaterThan((T)lhs, (U)rhs); +} + +// Greater than or equal +template +bool operator>=(U lhs, SafeInt rhs) SAFEINT_NOTHROW +{ + return !GreaterThanTest::method>::GreaterThan((T)rhs, lhs); +} + +template +bool operator>=(SafeInt lhs, U rhs) SAFEINT_NOTHROW +{ + return !GreaterThanTest::method>::GreaterThan(rhs, (T)lhs); +} + +template +bool operator>=(SafeInt lhs, SafeInt rhs) SAFEINT_NOTHROW +{ + return !GreaterThanTest::method>::GreaterThan((U)rhs, (T)lhs); +} + +// Less than or equal +template +bool operator<=(U lhs, SafeInt rhs) SAFEINT_NOTHROW +{ + return !GreaterThanTest::method>::GreaterThan(lhs, (T)rhs); +} + +template +bool operator<=(SafeInt lhs, U rhs) SAFEINT_NOTHROW +{ + return !GreaterThanTest::method>::GreaterThan((T)lhs, rhs); +} + +template +bool operator<=(SafeInt lhs, SafeInt rhs) SAFEINT_NOTHROW +{ + return !GreaterThanTest::method>::GreaterThan((T)lhs, (U)rhs); +} + +// equality +// explicit overload for bool +template +bool operator==(bool lhs, SafeInt rhs) SAFEINT_NOTHROW +{ + return lhs == ((T)rhs == 0 ? false : true); +} + +template +bool operator==(SafeInt lhs, bool rhs) SAFEINT_NOTHROW +{ + return rhs == ((T)lhs == 0 ? false : true); +} + +template +bool operator==(U lhs, SafeInt rhs) SAFEINT_NOTHROW +{ + return EqualityTest::method>::IsEquals((T)rhs, lhs); +} + +template +bool operator==(SafeInt lhs, U rhs) SAFEINT_NOTHROW +{ + return EqualityTest::method>::IsEquals((T)lhs, rhs); +} + +template +bool operator==(SafeInt lhs, SafeInt rhs) SAFEINT_NOTHROW +{ + return EqualityTest::method>::IsEquals((T)lhs, (U)rhs); +} + +// not equals +template +bool operator!=(U lhs, SafeInt rhs) SAFEINT_NOTHROW +{ + return !EqualityTest::method>::IsEquals((T)rhs, lhs); +} + +template +bool operator!=(SafeInt lhs, U rhs) SAFEINT_NOTHROW +{ + return !EqualityTest::method>::IsEquals((T)lhs, rhs); +} + +template +bool operator!=(SafeInt lhs, SafeInt rhs) SAFEINT_NOTHROW +{ + return !EqualityTest::method>::IsEquals(lhs, rhs); +} + +template +bool operator!=(bool lhs, SafeInt rhs) SAFEINT_NOTHROW +{ + return ((T)rhs == 0 ? false : true) != lhs; +} + +template +bool operator!=(SafeInt lhs, bool rhs) SAFEINT_NOTHROW +{ + return ((T)lhs == 0 ? false : true) != rhs; +} + +template +class ModulusSimpleCaseHelper; + +template +class ModulusSignedCaseHelper; + +template +class ModulusSignedCaseHelper +{ +public: + static bool SignedCase(SafeInt rhs, SafeInt& result) SAFEINT_NOTHROW + { + if ((T)rhs == (T)-1) + { + result = 0; + return true; + } + return false; + } +}; + +template +class ModulusSignedCaseHelper +{ +public: + static bool SignedCase(SafeInt /*rhs*/, SafeInt& /*result*/) SAFEINT_NOTHROW { return false; } +}; + +template +class ModulusSimpleCaseHelper +{ +public: + static bool ModulusSimpleCase(U lhs, SafeInt rhs, SafeInt& result) SAFEINT_CPP_THROW + { + if (rhs != 0) + { + if (ModulusSignedCaseHelper::isSigned>::SignedCase(rhs, result)) return true; + + result = SafeInt((T)(lhs % (T)rhs)); + return true; + } + + E::SafeIntOnDivZero(); + } +}; + +template +class ModulusSimpleCaseHelper +{ +public: + static bool ModulusSimpleCase(U /*lhs*/, SafeInt /*rhs*/, SafeInt& /*result*/) SAFEINT_NOTHROW + { + return false; + } +}; + +// Modulus +template +SafeInt operator%(U lhs, SafeInt rhs) SAFEINT_CPP_THROW +{ + // Value of return depends on sign of lhs + // This one may not be safe - bounds check in constructor + // if lhs is negative and rhs is unsigned, this will throw an exception. + + // Fast-track the simple case + // same size and same sign + SafeInt result; + + if (ModulusSimpleCaseHelper < T, + U, + E, + sizeof(T) == sizeof(U) && + (bool)IntTraits::isSigned == (bool)IntTraits::isSigned > ::ModulusSimpleCase(lhs, rhs, result)) + return result; + + return SafeInt((SafeInt(lhs) % (T)rhs)); +} + +// Multiplication +template +SafeInt operator*(U lhs, SafeInt rhs)SAFEINT_CPP_THROW +{ + T ret(0); + MultiplicationHelper::method>::template MultiplyThrow((T)rhs, lhs, ret); + return SafeInt(ret); +} + +template +class DivisionNegativeCornerCaseHelper; + +template +class DivisionNegativeCornerCaseHelper +{ +public: + static bool NegativeCornerCase(U lhs, SafeInt rhs, SafeInt& result) SAFEINT_CPP_THROW + { + // Problem case - normal casting behavior changes meaning + // flip rhs to positive + // any operator casts now do the right thing + U tmp; + + if (CompileConst::Value()) + tmp = lhs / (U)(~(unsigned __int32)(T)rhs + 1); + else + tmp = lhs / (U)(~(unsigned __int64)(T)rhs + 1); + + if (tmp <= (U)IntTraits::maxInt) + { + result = SafeInt((T)(~(unsigned __int64)tmp + 1)); + return true; + } + + // Corner case + T maxT = IntTraits::maxInt; + if (tmp == (U)maxT + 1) + { + T minT = IntTraits::minInt; + result = SafeInt(minT); + return true; + } + + E::SafeIntOnOverflow(); + } +}; + +template +class DivisionNegativeCornerCaseHelper +{ +public: + static bool NegativeCornerCase(U /*lhs*/, SafeInt /*rhs*/, SafeInt& /*result*/) SAFEINT_NOTHROW + { + return false; + } +}; + +template +class DivisionCornerCaseHelper; + +template +class DivisionCornerCaseHelper +{ +public: + static bool DivisionCornerCase1(U lhs, SafeInt rhs, SafeInt& result) SAFEINT_CPP_THROW + { + if ((T)rhs > 0) + { + result = SafeInt(lhs / (T)rhs); + return true; + } + + // Now rhs is either negative, or zero + if ((T)rhs != 0) + { + if (DivisionNegativeCornerCaseHelper < T, + U, + E, + sizeof(U) >= 4 && sizeof(T) <= sizeof(U) > ::NegativeCornerCase(lhs, rhs, result)) + return true; + + result = SafeInt(lhs / (T)rhs); + return true; + } + + E::SafeIntOnDivZero(); + } +}; + +template +class DivisionCornerCaseHelper +{ +public: + static bool DivisionCornerCase1(U /*lhs*/, SafeInt /*rhs*/, SafeInt& /*result*/) SAFEINT_NOTHROW + { + return false; + } +}; + +template +class DivisionCornerCaseHelper2; + +template +class DivisionCornerCaseHelper2 +{ +public: + static bool DivisionCornerCase2(U lhs, SafeInt rhs, SafeInt& result) SAFEINT_CPP_THROW + { + if (lhs == IntTraits::minInt && (T)rhs == -1) + { + // corner case of a corner case - lhs = min int, rhs = -1, + // but rhs is the return type, so in essence, we can return -lhs + // if rhs is a larger type than lhs + // If types are wrong, throws + +#if SAFEINT_COMPILER == VISUAL_STUDIO_COMPILER +#pragma warning(push) +// cast truncates constant value +#pragma warning(disable : 4310) +#endif + + if (CompileConst::Value()) + result = SafeInt((T)(-(T)IntTraits::minInt)); + else + E::SafeIntOnOverflow(); + +#if SAFEINT_COMPILER == VISUAL_STUDIO_COMPILER +#pragma warning(pop) +#endif + + return true; + } + + return false; + } +}; + +template +class DivisionCornerCaseHelper2 +{ +public: + static bool DivisionCornerCase2(U /*lhs*/, SafeInt /*rhs*/, SafeInt& /*result*/) SAFEINT_NOTHROW + { + return false; + } +}; + +// Division +template +SafeInt operator/(U lhs, SafeInt rhs) SAFEINT_CPP_THROW +{ + // Corner case - has to be handled seperately + SafeInt result; + if (DivisionCornerCaseHelper::method == (int)DivisionState_UnsignedSigned>:: + DivisionCornerCase1(lhs, rhs, result)) + return result; + + if (DivisionCornerCaseHelper2::isBothSigned>::DivisionCornerCase2(lhs, rhs, result)) + return result; + + // Otherwise normal logic works with addition of bounds check when casting from U->T + U ret; + DivisionHelper::method>::template DivideThrow(lhs, (T)rhs, ret); + return SafeInt(ret); +} + +// Addition +template +SafeInt operator+(U lhs, SafeInt rhs) SAFEINT_CPP_THROW +{ + T ret(0); + AdditionHelper::method>::template AdditionThrow((T)rhs, lhs, ret); + return SafeInt(ret); +} + +// Subtraction +template +SafeInt operator-(U lhs, SafeInt rhs) SAFEINT_CPP_THROW +{ + T ret(0); + SubtractionHelper::method>::template SubtractThrow(lhs, rhs.Ref(), ret); + + return SafeInt(ret); +} + +// Overrides designed to deal with cases where a SafeInt is assigned out +// to a normal int - this at least makes the last operation safe +// += +template +T& operator+=(T& lhs, SafeInt rhs) SAFEINT_CPP_THROW +{ + T ret(0); + AdditionHelper::method>::template AdditionThrow(lhs, (U)rhs, ret); + lhs = ret; + return lhs; +} + +template +T& operator-=(T& lhs, SafeInt rhs) SAFEINT_CPP_THROW +{ + T ret(0); + SubtractionHelper::method>::template SubtractThrow(lhs, (U)rhs, ret); + lhs = ret; + return lhs; +} + +template +T& operator*=(T& lhs, SafeInt rhs) SAFEINT_CPP_THROW +{ + T ret(0); + MultiplicationHelper::method>::template MultiplyThrow(lhs, (U)rhs, ret); + lhs = ret; + return lhs; +} + +template +T& operator/=(T& lhs, SafeInt rhs) SAFEINT_CPP_THROW +{ + T ret(0); + DivisionHelper::method>::template DivideThrow(lhs, (U)rhs, ret); + lhs = ret; + return lhs; +} + +template +T& operator%=(T& lhs, SafeInt rhs) SAFEINT_CPP_THROW +{ + T ret(0); + ModulusHelper::method>::template ModulusThrow(lhs, (U)rhs, ret); + lhs = ret; + return lhs; +} + +template +T& operator&=(T& lhs, SafeInt rhs) SAFEINT_NOTHROW +{ + lhs = BinaryAndHelper::method>::And(lhs, (U)rhs); + return lhs; +} + +template +T& operator^=(T& lhs, SafeInt rhs) SAFEINT_NOTHROW +{ + lhs = BinaryXorHelper::method>::Xor(lhs, (U)rhs); + return lhs; +} + +template +T& operator|=(T& lhs, SafeInt rhs) SAFEINT_NOTHROW +{ + lhs = BinaryOrHelper::method>::Or(lhs, (U)rhs); + return lhs; +} + +template +T& operator<<=(T& lhs, SafeInt rhs) SAFEINT_NOTHROW +{ + lhs = (T)(SafeInt(lhs) << (U)rhs); + return lhs; +} + +template +T& operator>>=(T& lhs, SafeInt rhs) SAFEINT_NOTHROW +{ + lhs = (T)(SafeInt(lhs) >> (U)rhs); + return lhs; +} + +// Specific pointer overrides +// Note - this function makes no attempt to ensure +// that the resulting pointer is still in the buffer, only +// that no int overflows happened on the way to getting the new pointer +template +T*& operator+=(T*& lhs, SafeInt rhs) SAFEINT_CPP_THROW +{ + // Cast the pointer to a number so we can do arithmetic + SafeInt ptr_val = reinterpret_cast(lhs); + // Check first that rhs is valid for the type of ptrdiff_t + // and that multiplying by sizeof( T ) doesn't overflow a ptrdiff_t + // Next, we need to add 2 SafeInts of different types, so unbox the ptr_diff + // Finally, cast the number back to a pointer of the correct type + lhs = reinterpret_cast((size_t)(ptr_val + (ptrdiff_t)(SafeInt(rhs) * sizeof(T)))); + return lhs; +} + +template +T*& operator-=(T*& lhs, SafeInt rhs) SAFEINT_CPP_THROW +{ + // Cast the pointer to a number so we can do arithmetic + SafeInt ptr_val = reinterpret_cast(lhs); + // See above for comments + lhs = reinterpret_cast((size_t)(ptr_val - (ptrdiff_t)(SafeInt(rhs) * sizeof(T)))); + return lhs; +} + +template +T*& operator*=(T*& lhs, SafeInt) SAFEINT_NOTHROW +{ + // This operator explicitly not supported + C_ASSERT(sizeof(T) == 0); + return (lhs = NULL); +} + +template +T*& operator/=(T*& lhs, SafeInt) SAFEINT_NOTHROW +{ + // This operator explicitly not supported + C_ASSERT(sizeof(T) == 0); + return (lhs = NULL); +} + +template +T*& operator%=(T*& lhs, SafeInt) SAFEINT_NOTHROW +{ + // This operator explicitly not supported + C_ASSERT(sizeof(T) == 0); + return (lhs = NULL); +} + +template +T*& operator&=(T*& lhs, SafeInt) SAFEINT_NOTHROW +{ + // This operator explicitly not supported + C_ASSERT(sizeof(T) == 0); + return (lhs = NULL); +} + +template +T*& operator^=(T*& lhs, SafeInt) SAFEINT_NOTHROW +{ + // This operator explicitly not supported + C_ASSERT(sizeof(T) == 0); + return (lhs = NULL); +} + +template +T*& operator|=(T*& lhs, SafeInt) SAFEINT_NOTHROW +{ + // This operator explicitly not supported + C_ASSERT(sizeof(T) == 0); + return (lhs = NULL); +} + +template +T*& operator<<=(T*& lhs, SafeInt) SAFEINT_NOTHROW +{ + // This operator explicitly not supported + C_ASSERT(sizeof(T) == 0); + return (lhs = NULL); +} + +template +T*& operator>>=(T*& lhs, SafeInt) SAFEINT_NOTHROW +{ + // This operator explicitly not supported + C_ASSERT(sizeof(T) == 0); + return (lhs = NULL); +} + +// Shift operators +// NOTE - shift operators always return the type of the lhs argument + +// Left shift +template +SafeInt operator<<(U lhs, SafeInt bits) SAFEINT_NOTHROW +{ + ShiftAssert(!IntTraits::isSigned || (T)bits >= 0); + ShiftAssert((T)bits < (int)IntTraits::bitCount); + + return SafeInt((U)(lhs << (T)bits)); +} + +// Right shift +template +SafeInt operator>>(U lhs, SafeInt bits) SAFEINT_NOTHROW +{ + ShiftAssert(!IntTraits::isSigned || (T)bits >= 0); + ShiftAssert((T)bits < (int)IntTraits::bitCount); + + return SafeInt((U)(lhs >> (T)bits)); +} + +// Bitwise operators +// This only makes sense if we're dealing with the same type and size +// demand a type T, or something that fits into a type T. + +// Bitwise & +template +SafeInt operator&(U lhs, SafeInt rhs)SAFEINT_NOTHROW +{ + return SafeInt(BinaryAndHelper::method>::And((T)rhs, lhs)); +} + +// Bitwise XOR +template +SafeInt operator^(U lhs, SafeInt rhs) SAFEINT_NOTHROW +{ + return SafeInt(BinaryXorHelper::method>::Xor((T)rhs, lhs)); +} + +// Bitwise OR +template +SafeInt operator|(U lhs, SafeInt rhs) SAFEINT_NOTHROW +{ + return SafeInt(BinaryOrHelper::method>::Or((T)rhs, lhs)); +} + +#if SAFEINT_COMPILER == GCC_COMPILER +#pragma GCC diagnostic pop +#endif + +#if SAFEINT_COMPILER == CLANG_COMPILER +#pragma clang diagnostic pop +#endif + +#ifdef C_ASSERT_DEFINED_SAFEINT +#undef C_ASSERT +#undef C_ASSERT_DEFINED_SAFEINT +#endif // C_ASSERT_DEFINED_SAFEINT + +} // namespace safeint3 +} // namespace msl diff --git a/deps/cpprestsdk/include/cpprest/details/basic_types.h b/deps/cpprestsdk/include/cpprest/details/basic_types.h new file mode 100644 index 0000000000..d2ceb87189 --- /dev/null +++ b/deps/cpprestsdk/include/cpprest/details/basic_types.h @@ -0,0 +1,131 @@ +/*** + * Copyright (C) Microsoft. All rights reserved. + * Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. + * + * =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ + * + * Platform-dependent type definitions + * + * For the latest on this and related APIs, please see: https://github.com/Microsoft/cpprestsdk + * + * =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- + ****/ + +#pragma once + +#include "cpprest/details/cpprest_compat.h" +#include +#include +#include +#include + +#ifndef _WIN32 +#ifndef __STDC_LIMIT_MACROS +#define __STDC_LIMIT_MACROS +#endif +#include +#else +#include +#endif + +#include "cpprest/details/SafeInt3.hpp" + +namespace utility +{ +#ifdef _WIN32 +#define _UTF16_STRINGS +#endif + +// We should be using a 64-bit size type for most situations that do +// not involve specifying the size of a memory allocation or buffer. +typedef uint64_t size64_t; + +#ifndef _WIN32 +typedef uint32_t HRESULT; // Needed for PPLX +#endif + +#ifdef _UTF16_STRINGS +// +// On Windows, all strings are wide +// +typedef wchar_t char_t; +typedef std::wstring string_t; +#define _XPLATSTR(x) L##x +typedef std::wostringstream ostringstream_t; +typedef std::wofstream ofstream_t; +typedef std::wostream ostream_t; +typedef std::wistream istream_t; +typedef std::wifstream ifstream_t; +typedef std::wistringstream istringstream_t; +typedef std::wstringstream stringstream_t; +#define ucout std::wcout +#define ucin std::wcin +#define ucerr std::wcerr +#else +// +// On POSIX platforms, all strings are narrow +// +typedef char char_t; +typedef std::string string_t; +#define _XPLATSTR(x) x +typedef std::ostringstream ostringstream_t; +typedef std::ofstream ofstream_t; +typedef std::ostream ostream_t; +typedef std::istream istream_t; +typedef std::ifstream ifstream_t; +typedef std::istringstream istringstream_t; +typedef std::stringstream stringstream_t; +#define ucout std::cout +#define ucin std::cin +#define ucerr std::cerr +#endif // endif _UTF16_STRINGS + +#ifndef _TURN_OFF_PLATFORM_STRING +// The 'U' macro can be used to create a string or character literal of the platform type, i.e. utility::char_t. +// If you are using a library causing conflicts with 'U' macro, it can be turned off by defining the macro +// '_TURN_OFF_PLATFORM_STRING' before including the C++ REST SDK header files, and e.g. use '_XPLATSTR' instead. +#define U(x) _XPLATSTR(x) +#endif // !_TURN_OFF_PLATFORM_STRING + +} // namespace utility + +typedef char utf8char; +typedef std::string utf8string; +typedef std::stringstream utf8stringstream; +typedef std::ostringstream utf8ostringstream; +typedef std::ostream utf8ostream; +typedef std::istream utf8istream; +typedef std::istringstream utf8istringstream; + +#ifdef _UTF16_STRINGS +typedef wchar_t utf16char; +typedef std::wstring utf16string; +typedef std::wstringstream utf16stringstream; +typedef std::wostringstream utf16ostringstream; +typedef std::wostream utf16ostream; +typedef std::wistream utf16istream; +typedef std::wistringstream utf16istringstream; +#else +typedef char16_t utf16char; +typedef std::u16string utf16string; +typedef std::basic_stringstream utf16stringstream; +typedef std::basic_ostringstream utf16ostringstream; +typedef std::basic_ostream utf16ostream; +typedef std::basic_istream utf16istream; +typedef std::basic_istringstream utf16istringstream; +#endif + +#if defined(_WIN32) +// Include on everything except Windows Desktop ARM, unless explicitly excluded. +#if !defined(CPPREST_EXCLUDE_WEBSOCKETS) +#if defined(WINAPI_FAMILY) +#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) && defined(_M_ARM) +#define CPPREST_EXCLUDE_WEBSOCKETS +#endif +#else +#if defined(_M_ARM) +#define CPPREST_EXCLUDE_WEBSOCKETS +#endif +#endif +#endif +#endif diff --git a/deps/cpprestsdk/include/cpprest/details/cpprest_compat.h b/deps/cpprestsdk/include/cpprest/details/cpprest_compat.h new file mode 100644 index 0000000000..c0c55bebc3 --- /dev/null +++ b/deps/cpprestsdk/include/cpprest/details/cpprest_compat.h @@ -0,0 +1,91 @@ +/*** + * Copyright (C) Microsoft. All rights reserved. + * Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. + * + * =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ + * + * Standard macros and definitions. + * This header has minimal dependency on windows headers and is safe for use in the public API + * + * For the latest on this and related APIs, please see: https://github.com/Microsoft/cpprestsdk + * + * =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- + ****/ + +#pragma once + +#if defined(_WIN32) + +#if _MSC_VER >= 1900 +#define CPPREST_NOEXCEPT noexcept +#define CPPREST_CONSTEXPR constexpr +#else +#define CPPREST_NOEXCEPT +#define CPPREST_CONSTEXPR const +#endif // _MSC_VER >= 1900 + +#define CASABLANCA_UNREFERENCED_PARAMETER(x) (x) + +#include + +#else // ^^^ _WIN32 ^^^ // vvv !_WIN32 vvv + +#define __declspec(x) __attribute__((x)) +#define dllimport +#define novtable /* no novtable equivalent */ +#define __assume(x) \ + do \ + { \ + if (!(x)) __builtin_unreachable(); \ + } while (false) +#define CASABLANCA_UNREFERENCED_PARAMETER(x) (void)x +#define CPPREST_NOEXCEPT noexcept +#define CPPREST_CONSTEXPR constexpr + +#include +#define _ASSERTE(x) assert(x) + +// No SAL on non Windows platforms +#include "cpprest/details/nosal.h" + +#if !defined(__cdecl) +#if defined(cdecl) +#define __cdecl __attribute__((cdecl)) +#else // ^^^ defined cdecl ^^^ // vvv !defined cdecl vvv +#define __cdecl +#endif // defined cdecl +#endif // not defined __cdecl + +#if defined(__ANDROID__) +// This is needed to disable the use of __thread inside the boost library. +// Android does not support thread local storage -- if boost is included +// without this macro defined, it will create references to __tls_get_addr +// which (while able to link) will not be available at runtime and prevent +// the .so from loading. +#if not defined BOOST_ASIO_DISABLE_THREAD_KEYWORD_EXTENSION +#define BOOST_ASIO_DISABLE_THREAD_KEYWORD_EXTENSION +#endif // not defined BOOST_ASIO_DISABLE_THREAD_KEYWORD_EXTENSION +#endif // defined(__ANDROID__) + +#ifdef __clang__ +#include +#endif // __clang__ +#endif // _WIN32 + +#define _NO_ASYNCRTIMP + +#ifdef _NO_ASYNCRTIMP +#define _ASYNCRTIMP +#else // ^^^ _NO_ASYNCRTIMP ^^^ // vvv !_NO_ASYNCRTIMP vvv +#ifdef _ASYNCRT_EXPORT +#define _ASYNCRTIMP __declspec(dllexport) +#else // ^^^ _ASYNCRT_EXPORT ^^^ // vvv !_ASYNCRT_EXPORT vvv +#define _ASYNCRTIMP __declspec(dllimport) +#endif // _ASYNCRT_EXPORT +#endif // _NO_ASYNCRTIMP + +#ifdef CASABLANCA_DEPRECATION_NO_WARNINGS +#define CASABLANCA_DEPRECATED(x) +#else +#define CASABLANCA_DEPRECATED(x) __declspec(deprecated(x)) +#endif // CASABLANCA_DEPRECATION_NO_WARNINGS diff --git a/deps/cpprestsdk/include/cpprest/details/web_utilities.h b/deps/cpprestsdk/include/cpprest/details/web_utilities.h new file mode 100644 index 0000000000..8b99d94aa2 --- /dev/null +++ b/deps/cpprestsdk/include/cpprest/details/web_utilities.h @@ -0,0 +1,223 @@ +/*** + * Copyright (C) Microsoft. All rights reserved. + * Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. + * + * =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ + * + * utility classes used by the different web:: clients + * + * =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- + ****/ +#pragma once + +#include "cpprest/asyncrt_utils.h" +#include "cpprest/uri.h" + +namespace web +{ +namespace details +{ +class zero_memory_deleter +{ +public: + _ASYNCRTIMP void operator()(::utility::string_t* data) const; +}; +typedef std::unique_ptr<::utility::string_t, zero_memory_deleter> plaintext_string; + +#if defined(_WIN32) && !defined(CPPREST_TARGET_XP) +#if defined(__cplusplus_winrt) +class winrt_encryption +{ +public: + winrt_encryption() {} + _ASYNCRTIMP winrt_encryption(const std::wstring& data); + _ASYNCRTIMP plaintext_string decrypt() const; + +private: + ::pplx::task m_buffer; +}; +#else +class win32_encryption +{ +public: + win32_encryption() {} + _ASYNCRTIMP win32_encryption(const std::wstring& data); + _ASYNCRTIMP ~win32_encryption(); + _ASYNCRTIMP plaintext_string decrypt() const; + +private: + std::vector m_buffer; + size_t m_numCharacters; +}; +#endif +#endif +} // namespace details + +/// +/// Represents a set of user credentials (user name and password) to be used +/// for authentication. +/// +class credentials +{ +public: + /// + /// Constructs an empty set of credentials without a user name or password. + /// + credentials() {} + + /// + /// Constructs credentials from given user name and password. + /// + /// User name as a string. + /// Password as a string. + credentials(utility::string_t username, const utility::string_t& password) + : m_username(std::move(username)), m_password(password) + { + } + + /// + /// The user name associated with the credentials. + /// + /// A string containing the user name. + const utility::string_t& username() const { return m_username; } + + /// + /// The password for the user name associated with the credentials. + /// + /// A string containing the password. + CASABLANCA_DEPRECATED( + "This API is deprecated for security reasons to avoid unnecessary password copies stored in plaintext.") + utility::string_t password() const + { +#if defined(_WIN32) && !defined(CPPREST_TARGET_XP) + return utility::string_t(*m_password.decrypt()); +#else + return m_password; +#endif + } + + /// + /// Checks if credentials have been set + /// + /// true if user name and password is set, false otherwise. + bool is_set() const { return !m_username.empty(); } + + details::plaintext_string _internal_decrypt() const + { + // Encryption APIs not supported on XP +#if defined(_WIN32) && !defined(CPPREST_TARGET_XP) + return m_password.decrypt(); +#else + return details::plaintext_string(new ::utility::string_t(m_password)); +#endif + } + +private: + ::utility::string_t m_username; + +#if defined(_WIN32) && !defined(CPPREST_TARGET_XP) +#if defined(__cplusplus_winrt) + details::winrt_encryption m_password; +#else + details::win32_encryption m_password; +#endif +#else + ::utility::string_t m_password; +#endif +}; + +/// +/// web_proxy represents the concept of the web proxy, which can be auto-discovered, +/// disabled, or specified explicitly by the user. +/// +class web_proxy +{ + enum web_proxy_mode_internal + { + use_default_, + use_auto_discovery_, + disabled_, + user_provided_ + }; + +public: + enum web_proxy_mode + { + use_default = use_default_, + use_auto_discovery = use_auto_discovery_, + disabled = disabled_ + }; + + /// + /// Constructs a proxy with the default settings. + /// + web_proxy() : m_address(_XPLATSTR("")), m_mode(use_default_) {} + + /// + /// Creates a proxy with specified mode. + /// + /// Mode to use. + web_proxy(web_proxy_mode mode) : m_address(_XPLATSTR("")), m_mode(static_cast(mode)) {} + + /// + /// Creates a proxy explicitly with provided address. + /// + /// Proxy URI to use. + web_proxy(uri address) : m_address(address), m_mode(user_provided_) {} + + /// + /// Gets this proxy's URI address. Returns an empty URI if not explicitly set by user. + /// + /// A reference to this proxy's URI. + const uri& address() const { return m_address; } + + /// + /// Gets the credentials used for authentication with this proxy. + /// + /// Credentials to for this proxy. + const web::credentials& credentials() const { return m_credentials; } + + /// + /// Sets the credentials to use for authentication with this proxy. + /// + /// Credentials to use for this proxy. + void set_credentials(web::credentials cred) + { + if (m_mode == disabled_) + { + throw std::invalid_argument("Cannot attach credentials to a disabled proxy"); + } + m_credentials = std::move(cred); + } + + /// + /// Checks if this proxy was constructed with default settings. + /// + /// True if default, false otherwise. + bool is_default() const { return m_mode == use_default_; } + + /// + /// Checks if using a proxy is disabled. + /// + /// True if disabled, false otherwise. + bool is_disabled() const { return m_mode == disabled_; } + + /// + /// Checks if the auto discovery protocol, WPAD, is to be used. + /// + /// True if auto discovery enabled, false otherwise. + bool is_auto_discovery() const { return m_mode == use_auto_discovery_; } + + /// + /// Checks if a proxy address is explicitly specified by the user. + /// + /// True if a proxy address was explicitly specified, false otherwise. + bool is_specified() const { return m_mode == user_provided_; } + +private: + web::uri m_address; + web_proxy_mode_internal m_mode; + web::credentials m_credentials; +}; + +} // namespace web diff --git a/deps/cpprestsdk/include/cpprest/json.h b/deps/cpprestsdk/include/cpprest/json.h new file mode 100644 index 0000000000..4095be50ea --- /dev/null +++ b/deps/cpprestsdk/include/cpprest/json.h @@ -0,0 +1,1786 @@ +/*** + * Copyright (C) Microsoft. All rights reserved. + * Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. + * + * =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ + * + * HTTP Library: JSON parser and writer + * + * For the latest on this and related APIs, please see: https://github.com/Microsoft/cpprestsdk + * + * =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- + ****/ +#pragma once + +#ifndef CASA_JSON_H +#define CASA_JSON_H + +#include "cpprest/asyncrt_utils.h" +#include "cpprest/details/basic_types.h" +#include +#include +#include +#include +#include +#include + +namespace web +{ +/// Library for parsing and serializing JSON values to and from C++ types. +namespace json +{ +// Various forward declarations. +namespace details +{ +class _Value; +class _Number; +class _Null; +class _Boolean; +class _String; +class _Object; +class _Array; +template +class JSON_Parser; +} // namespace details + +namespace details +{ +extern bool g_keep_json_object_unsorted; +} + +/// +/// Preserve the order of the name/value pairs when parsing a JSON object. +/// The default is false, which can yield better performance. +/// +/// true if ordering should be preserved when parsing, false otherwise. +/// Note this is a global setting and affects all JSON parsing done. +void _ASYNCRTIMP __cdecl keep_object_element_order(bool keep_order); + +#ifdef _WIN32 +#ifdef _DEBUG +#define ENABLE_JSON_VALUE_VISUALIZER +#endif +#endif + +class number; +class array; +class object; + +/// +/// A JSON value represented as a C++ class. +/// +class value +{ +public: + /// + /// This enumeration represents the various kinds of JSON values. + /// + enum value_type + { + /// Number value + Number, + /// Boolean value + Boolean, + /// String value + String, + /// Object value + Object, + /// Array value + Array, + /// Null value + Null + }; + + /// + /// Constructor creating a null value + /// + _ASYNCRTIMP value(); + + /// + /// Constructor creating a JSON number value + /// + /// The C++ value to create a JSON value from + _ASYNCRTIMP value(int32_t value); + + /// + /// Constructor creating a JSON number value + /// + /// The C++ value to create a JSON value from + _ASYNCRTIMP value(uint32_t value); + + /// + /// Constructor creating a JSON number value + /// + /// The C++ value to create a JSON value from + _ASYNCRTIMP value(int64_t value); + + /// + /// Constructor creating a JSON number value + /// + /// The C++ value to create a JSON value from + _ASYNCRTIMP value(uint64_t value); + + /// + /// Constructor creating a JSON number value + /// + /// The C++ value to create a JSON value from + _ASYNCRTIMP value(double value); + + /// + /// Constructor creating a JSON Boolean value + /// + /// The C++ value to create a JSON value from + _ASYNCRTIMP explicit value(bool value); + + /// + /// Constructor creating a JSON string value + /// + /// The C++ value to create a JSON value from, a C++ STL string of the platform-native character + /// width This constructor has O(n) performance because it tries to determine if specified string + /// has characters that should be properly escaped in JSON. + _ASYNCRTIMP explicit value(utility::string_t value); + + /// + /// Constructor creating a JSON string value specifying if the string contains characters to escape + /// + /// The C++ value to create a JSON value from, a C++ STL string of the platform-native character + /// width Whether contains characters that should + /// be escaped in JSON value This constructor has O(1) performance. + /// + _ASYNCRTIMP explicit value(utility::string_t value, bool has_escape_chars); + + /// + /// Constructor creating a JSON string value + /// + /// The C++ value to create a JSON value from, a C++ STL string of the platform-native character + /// width This constructor has O(n) performance because it tries to determine if specified + /// string has characters that should be properly escaped in JSON. + /// + /// + /// This constructor exists in order to avoid string literals matching another constructor, + /// as is very likely. For example, conversion to bool does not require a user-defined conversion, + /// and will therefore match first, which means that the JSON value turns up as a boolean. + /// + /// + _ASYNCRTIMP explicit value(const utility::char_t* value); + + /// + /// Constructor creating a JSON string value + /// + /// The C++ value to create a JSON value from, a C++ STL string of the platform-native character + /// width Whether contains characters + /// + /// This overload has O(1) performance. + /// + /// + /// This constructor exists in order to avoid string literals matching another constructor, + /// as is very likely. For example, conversion to bool does not require a user-defined conversion, + /// and will therefore match first, which means that the JSON value turns up as a boolean. + /// + /// + _ASYNCRTIMP explicit value(const utility::char_t* value, bool has_escape_chars); + + /// + /// Copy constructor + /// + _ASYNCRTIMP value(const value&); + + /// + /// Move constructor + /// + _ASYNCRTIMP value(value&&) CPPREST_NOEXCEPT; + + /// + /// Assignment operator. + /// + /// The JSON value object that contains the result of the assignment. + _ASYNCRTIMP value& operator=(const value&); + + /// + /// Move assignment operator. + /// + /// The JSON value object that contains the result of the assignment. + _ASYNCRTIMP value& operator=(value&&) CPPREST_NOEXCEPT; + + // Static factories + + /// + /// Creates a null value + /// + /// A JSON null value + static _ASYNCRTIMP value __cdecl null(); + + /// + /// Creates a number value + /// + /// The C++ value to create a JSON value from + /// A JSON number value + static _ASYNCRTIMP value __cdecl number(double value); + + /// + /// Creates a number value + /// + /// The C++ value to create a JSON value from + /// A JSON number value + static _ASYNCRTIMP value __cdecl number(int32_t value); + + /// + /// Creates a number value + /// + /// The C++ value to create a JSON value from + /// A JSON number value + static _ASYNCRTIMP value __cdecl number(uint32_t value); + + /// + /// Creates a number value + /// + /// The C++ value to create a JSON value from + /// A JSON number value + static _ASYNCRTIMP value __cdecl number(int64_t value); + + /// + /// Creates a number value + /// + /// The C++ value to create a JSON value from + /// A JSON number value + static _ASYNCRTIMP value __cdecl number(uint64_t value); + + /// + /// Creates a Boolean value + /// + /// The C++ value to create a JSON value from + /// A JSON Boolean value + static _ASYNCRTIMP value __cdecl boolean(bool value); + + /// + /// Creates a string value + /// + /// The C++ value to create a JSON value from + /// A JSON string value + /// + /// This overload has O(n) performance because it tries to determine if + /// specified string has characters that should be properly escaped in JSON. + /// + static _ASYNCRTIMP value __cdecl string(utility::string_t value); + + /// + /// Creates a string value specifying if the string contains characters to escape + /// + /// The C++ value to create a JSON value from + /// Whether contains characters + /// that should be escaped in JSON value + /// A JSON string value + /// + /// This overload has O(1) performance. + /// + static _ASYNCRTIMP value __cdecl string(utility::string_t value, bool has_escape_chars); + +#ifdef _WIN32 +private: + // Only used internally by JSON parser. + static _ASYNCRTIMP value __cdecl string(const std::string& value); + +public: +#endif + + /// + /// Creates an object value + /// + /// Whether to preserve the original order of the fields + /// An empty JSON object value + static _ASYNCRTIMP json::value __cdecl object(bool keep_order = false); + + /// + /// Creates an object value from a collection of field/values + /// + /// Field names associated with JSON values + /// Whether to preserve the original order of the fields + /// A non-empty JSON object value + static _ASYNCRTIMP json::value __cdecl object(std::vector> fields, + bool keep_order = false); + + /// + /// Creates an empty JSON array + /// + /// An empty JSON array value + static _ASYNCRTIMP json::value __cdecl array(); + + /// + /// Creates a JSON array + /// + /// The initial number of elements of the JSON value + /// A JSON array value + static _ASYNCRTIMP json::value __cdecl array(size_t size); + + /// + /// Creates a JSON array + /// + /// A vector of JSON values + /// A JSON array value + static _ASYNCRTIMP json::value __cdecl array(std::vector elements); + + /// + /// Accesses the type of JSON value the current value instance is + /// + /// The value's type + _ASYNCRTIMP json::value::value_type type() const; + + /// + /// Is the current value a null value? + /// + /// true if the value is a null value, false otherwise + bool is_null() const { return type() == Null; }; + + /// + /// Is the current value a number value? + /// + /// true if the value is a number value, false otherwise + bool is_number() const { return type() == Number; } + + /// + /// Is the current value represented as an integer number value? + /// + /// + /// Note that if a json value is a number but represented as a double it can still + /// be retrieved as a integer using as_integer(), however the value will be truncated. + /// + /// true if the value is an integer value, false otherwise. + _ASYNCRTIMP bool is_integer() const; + + /// + /// Is the current value represented as an double number value? + /// + /// + /// Note that if a json value is a number but represented as a int it can still + /// be retrieved as a double using as_double(). + /// + /// true if the value is an double value, false otherwise. + _ASYNCRTIMP bool is_double() const; + + /// + /// Is the current value a Boolean value? + /// + /// true if the value is a Boolean value, false otherwise + bool is_boolean() const { return type() == Boolean; } + + /// + /// Is the current value a string value? + /// + /// true if the value is a string value, false otherwise + bool is_string() const { return type() == String; } + + /// + /// Is the current value an array? + /// + /// true if the value is an array, false otherwise + bool is_array() const { return type() == Array; } + + /// + /// Is the current value an object? + /// + /// true if the value is an object, false otherwise + bool is_object() const { return type() == Object; } + + /// + /// Gets the number of children of the value. + /// + /// The number of children. 0 for all non-composites. + size_t size() const; + + /// + /// Parses a string and construct a JSON value. + /// + /// The C++ value to create a JSON value from, a C++ STL double-byte string + _ASYNCRTIMP static value __cdecl parse(const utility::string_t& value); + + /// + /// Attempts to parse a string and construct a JSON value. + /// + /// The C++ value to create a JSON value from, a C++ STL double-byte string + /// If parsing fails, the error code is greater than 0 + /// The parsed object. Returns web::json::value::null if failed + _ASYNCRTIMP static value __cdecl parse(const utility::string_t& value, std::error_code& errorCode); + + /// + /// Serializes the current JSON value to a C++ string. + /// + /// A string representation of the value + _ASYNCRTIMP utility::string_t serialize() const; + + /// + /// Serializes the current JSON value to a C++ string. + /// + /// A string representation of the value + CASABLANCA_DEPRECATED("This API is deprecated and has been renamed to avoid confusion with as_string(), use " + "::web::json::value::serialize() instead.") + _ASYNCRTIMP utility::string_t to_string() const; + + /// + /// Parses a JSON value from the contents of an input stream using the native platform character width. + /// + /// The stream to read the JSON value from + /// The JSON value object created from the input stream. + _ASYNCRTIMP static value __cdecl parse(utility::istream_t& input); + + /// + /// Parses a JSON value from the contents of an input stream using the native platform character width. + /// + /// The stream to read the JSON value from + /// If parsing fails, the error code is greater than 0 + /// The parsed object. Returns web::json::value::null if failed + _ASYNCRTIMP static value __cdecl parse(utility::istream_t& input, std::error_code& errorCode); + + /// + /// Writes the current JSON value to a stream with the native platform character width. + /// + /// The stream that the JSON string representation should be written to. + _ASYNCRTIMP void serialize(utility::ostream_t& stream) const; + +#ifdef _WIN32 + /// + /// Parses a JSON value from the contents of a single-byte (UTF8) stream. + /// + /// The stream to read the JSON value from + _ASYNCRTIMP static value __cdecl parse(std::istream& stream); + + /// + /// Parses a JSON value from the contents of a single-byte (UTF8) stream. + /// + /// The stream to read the JSON value from + /// If parsing fails, the error code is greater than 0 + /// The parsed object. Returns web::json::value::null if failed + _ASYNCRTIMP static value __cdecl parse(std::istream& stream, std::error_code& error); + + /// + /// Serializes the content of the value into a single-byte (UTF8) stream. + /// + /// The stream that the JSON string representation should be written to. + _ASYNCRTIMP void serialize(std::ostream& stream) const; +#endif + + /// + /// Converts the JSON value to a C++ double, if and only if it is a number value. + /// Throws if the value is not a number + /// + /// A double representation of the value + _ASYNCRTIMP double as_double() const; + + /// + /// Converts the JSON value to a C++ integer, if and only if it is a number value. + /// Throws if the value is not a number + /// + /// An integer representation of the value + _ASYNCRTIMP int as_integer() const; + + /// + /// Converts the JSON value to a number class, if and only if it is a number value. + /// Throws if the value is not a number + /// + /// An instance of number class + _ASYNCRTIMP const json::number& as_number() const; + + /// + /// Converts the JSON value to a C++ bool, if and only if it is a Boolean value. + /// + /// A C++ bool representation of the value + _ASYNCRTIMP bool as_bool() const; + + /// + /// Converts the JSON value to a json array, if and only if it is an array value. + /// + /// The returned json::array should have the same or shorter lifetime as this + /// An array representation of the value + _ASYNCRTIMP json::array& as_array(); + + /// + /// Converts the JSON value to a json array, if and only if it is an array value. + /// + /// The returned json::array should have the same or shorter lifetime as this + /// An array representation of the value + _ASYNCRTIMP const json::array& as_array() const; + + /// + /// Converts the JSON value to a json object, if and only if it is an object value. + /// + /// An object representation of the value + _ASYNCRTIMP json::object& as_object(); + + /// + /// Converts the JSON value to a json object, if and only if it is an object value. + /// + /// An object representation of the value + _ASYNCRTIMP const json::object& as_object() const; + + /// + /// Converts the JSON value to a C++ STL string, if and only if it is a string value. + /// + /// A C++ STL string representation of the value + _ASYNCRTIMP const utility::string_t& as_string() const; + + /// + /// Compares two JSON values for equality. + /// + /// The JSON value to compare with. + /// True if the values are equal. + _ASYNCRTIMP bool operator==(const value& other) const; + + /// + /// Compares two JSON values for inequality. + /// + /// The JSON value to compare with. + /// True if the values are unequal. + bool operator!=(const value& other) const { return !((*this) == other); } + + /// + /// Tests for the presence of a field. + /// + /// The name of the field + /// True if the field exists, false otherwise. + bool has_field(const utility::string_t& key) const; + + /// + /// Tests for the presence of a number field + /// + /// The name of the field + /// True if the field exists, false otherwise. + _ASYNCRTIMP bool has_number_field(const utility::string_t& key) const; + + /// + /// Tests for the presence of an integer field + /// + /// The name of the field + /// True if the field exists, false otherwise. + _ASYNCRTIMP bool has_integer_field(const utility::string_t& key) const; + + /// + /// Tests for the presence of a double field + /// + /// The name of the field + /// True if the field exists, false otherwise. + _ASYNCRTIMP bool has_double_field(const utility::string_t& key) const; + + /// + /// Tests for the presence of a boolean field + /// + /// The name of the field + /// True if the field exists, false otherwise. + _ASYNCRTIMP bool has_boolean_field(const utility::string_t& key) const; + + /// + /// Tests for the presence of a string field + /// + /// The name of the field + /// True if the field exists, false otherwise. + _ASYNCRTIMP bool has_string_field(const utility::string_t& key) const; + + /// + /// Tests for the presence of an array field + /// + /// The name of the field + /// True if the field exists, false otherwise. + _ASYNCRTIMP bool has_array_field(const utility::string_t& key) const; + + /// + /// Tests for the presence of an object field + /// + /// The name of the field + /// True if the field exists, false otherwise. + _ASYNCRTIMP bool has_object_field(const utility::string_t& key) const; + + /// + /// Accesses a field of a JSON object. + /// + /// The name of the field + /// The value kept in the field; null if the field does not exist + CASABLANCA_DEPRECATED( + "This API is deprecated and will be removed in a future release, use json::value::at() instead.") + value get(const utility::string_t& key) const; + + /// + /// Erases an element of a JSON array. Throws if index is out of bounds. + /// + /// The index of the element to erase in the JSON array. + _ASYNCRTIMP void erase(size_t index); + + /// + /// Erases an element of a JSON object. Throws if the key doesn't exist. + /// + /// The key of the element to erase in the JSON object. + _ASYNCRTIMP void erase(const utility::string_t& key); + + /// + /// Accesses an element of a JSON array. Throws when index out of bounds. + /// + /// The index of an element in the JSON array. + /// A reference to the value. + _ASYNCRTIMP json::value& at(size_t index); + + /// + /// Accesses an element of a JSON array. Throws when index out of bounds. + /// + /// The index of an element in the JSON array. + /// A reference to the value. + _ASYNCRTIMP const json::value& at(size_t index) const; + + /// + /// Accesses an element of a JSON object. If the key doesn't exist, this method throws. + /// + /// The key of an element in the JSON object. + /// If the key exists, a reference to the value. + _ASYNCRTIMP json::value& at(const utility::string_t& key); + + /// + /// Accesses an element of a JSON object. If the key doesn't exist, this method throws. + /// + /// The key of an element in the JSON object. + /// If the key exists, a reference to the value. + _ASYNCRTIMP const json::value& at(const utility::string_t& key) const; + + /// + /// Accesses a field of a JSON object. + /// + /// The name of the field + /// A reference to the value kept in the field. + _ASYNCRTIMP value& operator[](const utility::string_t& key); + +#ifdef _WIN32 +private: + // Only used internally by JSON parser + _ASYNCRTIMP value& operator[](const std::string& key) + { + // JSON object stores its field map as a unordered_map of string_t, so this conversion is hard to avoid + return operator[](utility::conversions::to_string_t(key)); + } + +public: +#endif + + /// + /// Accesses an element of a JSON array. + /// + /// The index of an element in the JSON array + /// The value kept at the array index; null if outside the boundaries of the array + CASABLANCA_DEPRECATED( + "This API is deprecated and will be removed in a future release, use json::value::at() instead.") + value get(size_t index) const; + + /// + /// Accesses an element of a JSON array. + /// + /// The index of an element in the JSON array. + /// A reference to the value kept in the field. + _ASYNCRTIMP value& operator[](size_t index); + +private: + friend class web::json::details::_Object; + friend class web::json::details::_Array; + template + friend class web::json::details::JSON_Parser; + +#ifdef _WIN32 + /// + /// Writes the current JSON value as a double-byte string to a string instance. + /// + /// The string that the JSON representation should be written to. + _ASYNCRTIMP void format(std::basic_string& string) const; +#endif + /// + /// Serializes the content of the value into a string instance in UTF8 format + /// + /// The string that the JSON representation should be written to + _ASYNCRTIMP void format(std::basic_string& string) const; + +#ifdef ENABLE_JSON_VALUE_VISUALIZER + explicit value(std::unique_ptr v, value_type kind) : m_value(std::move(v)), m_kind(kind) +#else + explicit value(std::unique_ptr v) : m_value(std::move(v)) +#endif + { + } + + std::unique_ptr m_value; +#ifdef ENABLE_JSON_VALUE_VISUALIZER + value_type m_kind; +#endif +}; + +/// +/// A single exception type to represent errors in parsing, converting, and accessing +/// elements of JSON values. +/// +class json_exception : public std::exception +{ +private: + std::string _message; + +public: + json_exception(const char* const message) : _message(message) {} +#ifdef _UTF16_STRINGS + json_exception(const wchar_t* const message) : _message(utility::conversions::utf16_to_utf8(message)) {} +#endif // _UTF16_STRINGS + json_exception(std::string&& message) : _message(std::move(message)) {} + + // Must be narrow string because it derives from std::exception + const char* what() const CPPREST_NOEXCEPT { return _message.c_str(); } +}; + +namespace details +{ +enum json_error +{ + left_over_character_in_stream = 1, + malformed_array_literal, + malformed_comment, + malformed_literal, + malformed_object_literal, + malformed_numeric_literal, + malformed_string_literal, + malformed_token, + mismatched_brances, + nesting, + unexpected_token +}; + +class json_error_category_impl : public std::error_category +{ +public: + virtual const char* name() const CPPREST_NOEXCEPT override { return "json"; } + + virtual std::string message(int ev) const override + { + switch (ev) + { + case json_error::left_over_character_in_stream: + return "Left-over characters in stream after parsing a JSON value"; + case json_error::malformed_array_literal: return "Malformed array literal"; + case json_error::malformed_comment: return "Malformed comment"; + case json_error::malformed_literal: return "Malformed literal"; + case json_error::malformed_object_literal: return "Malformed object literal"; + case json_error::malformed_numeric_literal: return "Malformed numeric literal"; + case json_error::malformed_string_literal: return "Malformed string literal"; + case json_error::malformed_token: return "Malformed token"; + case json_error::mismatched_brances: return "Mismatched braces"; + case json_error::nesting: return "Nesting too deep"; + case json_error::unexpected_token: return "Unexpected token"; + default: return "Unknown json error"; + } + } +}; + +const json_error_category_impl& json_error_category(); +} // namespace details + +/// +/// A JSON array represented as a C++ class. +/// +class array +{ + typedef std::vector storage_type; + +public: + typedef storage_type::iterator iterator; + typedef storage_type::const_iterator const_iterator; + typedef storage_type::reverse_iterator reverse_iterator; + typedef storage_type::const_reverse_iterator const_reverse_iterator; + typedef storage_type::size_type size_type; + +private: + array() : m_elements() {} + array(size_type size) : m_elements(size) {} + array(storage_type elements) : m_elements(std::move(elements)) {} + +public: + /// + /// Gets the beginning iterator element of the array + /// + /// An iterator to the beginning of the JSON array. + iterator begin() { return m_elements.begin(); } + + /// + /// Gets the beginning const iterator element of the array. + /// + /// A const_iterator to the beginning of the JSON array. + const_iterator begin() const { return m_elements.cbegin(); } + + /// + /// Gets the end iterator element of the array + /// + /// An iterator to the end of the JSON array. + iterator end() { return m_elements.end(); } + + /// + /// Gets the end const iterator element of the array. + /// + /// A const_iterator to the end of the JSON array. + const_iterator end() const { return m_elements.cend(); } + + /// + /// Gets the beginning reverse iterator element of the array + /// + /// An reverse_iterator to the beginning of the JSON array. + reverse_iterator rbegin() { return m_elements.rbegin(); } + + /// + /// Gets the beginning const reverse iterator element of the array + /// + /// An const_reverse_iterator to the beginning of the JSON array. + const_reverse_iterator rbegin() const { return m_elements.rbegin(); } + + /// + /// Gets the end reverse iterator element of the array + /// + /// An reverse_iterator to the end of the JSON array. + reverse_iterator rend() { return m_elements.rend(); } + + /// + /// Gets the end const reverse iterator element of the array + /// + /// An const_reverse_iterator to the end of the JSON array. + const_reverse_iterator rend() const { return m_elements.crend(); } + + /// + /// Gets the beginning const iterator element of the array. + /// + /// A const_iterator to the beginning of the JSON array. + const_iterator cbegin() const { return m_elements.cbegin(); } + + /// + /// Gets the end const iterator element of the array. + /// + /// A const_iterator to the end of the JSON array. + const_iterator cend() const { return m_elements.cend(); } + + /// + /// Gets the beginning const reverse iterator element of the array. + /// + /// A const_reverse_iterator to the beginning of the JSON array. + const_reverse_iterator crbegin() const { return m_elements.crbegin(); } + + /// + /// Gets the end const reverse iterator element of the array. + /// + /// A const_reverse_iterator to the end of the JSON array. + const_reverse_iterator crend() const { return m_elements.crend(); } + + /// + /// Deletes an element of the JSON array. + /// + /// A const_iterator to the element to delete. + /// Iterator to the new location of the element following the erased element. + /// GCC doesn't support erase with const_iterator on vector yet. In the future this should be + /// changed. + iterator erase(iterator position) { return m_elements.erase(position); } + + /// + /// Deletes the element at an index of the JSON array. + /// + /// The index of the element to delete. + void erase(size_type index) + { + if (index >= m_elements.size()) + { + throw json_exception("index out of bounds"); + } + m_elements.erase(m_elements.begin() + index); + } + + /// + /// Accesses an element of a JSON array. Throws when index out of bounds. + /// + /// The index of an element in the JSON array. + /// A reference to the value kept in the field. + json::value& at(size_type index) + { + if (index >= m_elements.size()) throw json_exception("index out of bounds"); + + return m_elements[index]; + } + + /// + /// Accesses an element of a JSON array. Throws when index out of bounds. + /// + /// The index of an element in the JSON array. + /// A reference to the value kept in the field. + const json::value& at(size_type index) const + { + if (index >= m_elements.size()) throw json_exception("index out of bounds"); + + return m_elements[index]; + } + + /// + /// Accesses an element of a JSON array. + /// + /// The index of an element in the JSON array. + /// A reference to the value kept in the field. + json::value& operator[](size_type index) + { + msl::safeint3::SafeInt nMinSize(index); + nMinSize += 1; + msl::safeint3::SafeInt nlastSize(m_elements.size()); + if (nlastSize < nMinSize) m_elements.resize(nMinSize); + + return m_elements[index]; + } + + /// + /// Gets the number of elements of the array. + /// + /// The number of elements. + size_type size() const { return m_elements.size(); } + +private: + storage_type m_elements; + + friend class details::_Array; + template + friend class json::details::JSON_Parser; +}; + +/// +/// A JSON object represented as a C++ class. +/// +class object +{ + typedef std::vector> storage_type; + +public: + typedef storage_type::iterator iterator; + typedef storage_type::const_iterator const_iterator; + typedef storage_type::reverse_iterator reverse_iterator; + typedef storage_type::const_reverse_iterator const_reverse_iterator; + typedef storage_type::size_type size_type; + +private: + object(bool keep_order = false) : m_elements(), m_keep_order(keep_order) {} + object(storage_type elements, bool keep_order = false) : m_elements(std::move(elements)), m_keep_order(keep_order) + { + if (!keep_order) + { + sort(m_elements.begin(), m_elements.end(), compare_pairs); + } + } + +public: + /// + /// Gets the beginning iterator element of the object + /// + /// An iterator to the beginning of the JSON object. + iterator begin() { return m_elements.begin(); } + + /// + /// Gets the beginning const iterator element of the object. + /// + /// A const_iterator to the beginning of the JSON object. + const_iterator begin() const { return m_elements.cbegin(); } + + /// + /// Gets the end iterator element of the object + /// + /// An iterator to the end of the JSON object. + iterator end() { return m_elements.end(); } + + /// + /// Gets the end const iterator element of the object. + /// + /// A const_iterator to the end of the JSON object. + const_iterator end() const { return m_elements.cend(); } + + /// + /// Gets the beginning reverse iterator element of the object + /// + /// An reverse_iterator to the beginning of the JSON object. + reverse_iterator rbegin() { return m_elements.rbegin(); } + + /// + /// Gets the beginning const reverse iterator element of the object + /// + /// An const_reverse_iterator to the beginning of the JSON object. + const_reverse_iterator rbegin() const { return m_elements.rbegin(); } + + /// + /// Gets the end reverse iterator element of the object + /// + /// An reverse_iterator to the end of the JSON object. + reverse_iterator rend() { return m_elements.rend(); } + + /// + /// Gets the end const reverse iterator element of the object + /// + /// An const_reverse_iterator to the end of the JSON object. + const_reverse_iterator rend() const { return m_elements.crend(); } + + /// + /// Gets the beginning const iterator element of the object. + /// + /// A const_iterator to the beginning of the JSON object. + const_iterator cbegin() const { return m_elements.cbegin(); } + + /// + /// Gets the end const iterator element of the object. + /// + /// A const_iterator to the end of the JSON object. + const_iterator cend() const { return m_elements.cend(); } + + /// + /// Gets the beginning const reverse iterator element of the object. + /// + /// A const_reverse_iterator to the beginning of the JSON object. + const_reverse_iterator crbegin() const { return m_elements.crbegin(); } + + /// + /// Gets the end const reverse iterator element of the object. + /// + /// A const_reverse_iterator to the end of the JSON object. + const_reverse_iterator crend() const { return m_elements.crend(); } + + /// + /// Deletes an element of the JSON object. + /// + /// A const_iterator to the element to delete. + /// Iterator to the new location of the element following the erased element. + /// GCC doesn't support erase with const_iterator on vector yet. In the future this should be + /// changed. + iterator erase(iterator position) { return m_elements.erase(position); } + + /// + /// Deletes an element of the JSON object. If the key doesn't exist, this method throws. + /// + /// The key of an element in the JSON object. + void erase(const utility::string_t& key) + { + auto iter = find_by_key(key); + if (iter == m_elements.end()) + { + throw web::json::json_exception("Key not found"); + } + + m_elements.erase(iter); + } + + /// + /// Accesses an element of a JSON object. If the key doesn't exist, this method throws. + /// + /// The key of an element in the JSON object. + /// If the key exists, a reference to the value kept in the field. + json::value& at(const utility::string_t& key) + { + auto iter = find_by_key(key); + if (iter == m_elements.end()) + { + throw web::json::json_exception("Key not found"); + } + + return iter->second; + } + + /// + /// Accesses an element of a JSON object. If the key doesn't exist, this method throws. + /// + /// The key of an element in the JSON object. + /// If the key exists, a reference to the value kept in the field. + const json::value& at(const utility::string_t& key) const + { + auto iter = find_by_key(key); + if (iter == m_elements.end()) + { + throw web::json::json_exception("Key not found"); + } + + return iter->second; + } + + /// + /// Accesses an element of a JSON object. + /// + /// The key of an element in the JSON object. + /// If the key exists, a reference to the value kept in the field, otherwise a newly created null value + /// that will be stored for the given key. + json::value& operator[](const utility::string_t& key) + { + auto iter = find_insert_location(key); + + if (iter == m_elements.end() || key != iter->first) + { + return m_elements.insert(iter, std::pair(key, value()))->second; + } + + return iter->second; + } + + /// + /// Gets an iterator to an element of a JSON object. + /// + /// The key of an element in the JSON object. + /// A const iterator to the value kept in the field. + const_iterator find(const utility::string_t& key) const { return find_by_key(key); } + + /// + /// Gets the number of elements of the object. + /// + /// The number of elements. + size_type size() const { return m_elements.size(); } + + /// + /// Checks if there are any elements in the JSON object. + /// + /// True if empty. + bool empty() const { return m_elements.empty(); } + +private: + static bool compare_pairs(const std::pair& p1, + const std::pair& p2) + { + return p1.first < p2.first; + } + static bool compare_with_key(const std::pair& p1, const utility::string_t& key) + { + return p1.first < key; + } + + storage_type::iterator find_insert_location(const utility::string_t& key) + { + if (m_keep_order) + { + return std::find_if(m_elements.begin(), + m_elements.end(), + [&key](const std::pair& p) { return p.first == key; }); + } + else + { + return std::lower_bound(m_elements.begin(), m_elements.end(), key, compare_with_key); + } + } + + storage_type::const_iterator find_by_key(const utility::string_t& key) const + { + if (m_keep_order) + { + return std::find_if(m_elements.begin(), + m_elements.end(), + [&key](const std::pair& p) { return p.first == key; }); + } + else + { + auto iter = std::lower_bound(m_elements.begin(), m_elements.end(), key, compare_with_key); + if (iter != m_elements.end() && key != iter->first) + { + return m_elements.end(); + } + return iter; + } + } + + storage_type::iterator find_by_key(const utility::string_t& key) + { + auto iter = find_insert_location(key); + if (iter != m_elements.end() && key != iter->first) + { + return m_elements.end(); + } + return iter; + } + + storage_type m_elements; + bool m_keep_order; + friend class details::_Object; + + template + friend class json::details::JSON_Parser; +}; + +/// +/// A JSON number represented as a C++ class. +/// +class number +{ + // Note that these constructors make sure that only negative integers are stored as signed int64 (while others + // convert to unsigned int64). This helps handling number objects e.g. comparing two numbers. + + number(double value) : m_value(value), m_type(double_type) {} + number(int32_t value) : m_intval(value), m_type(value < 0 ? signed_type : unsigned_type) {} + number(uint32_t value) : m_intval(value), m_type(unsigned_type) {} + number(int64_t value) : m_intval(value), m_type(value < 0 ? signed_type : unsigned_type) {} + number(uint64_t value) : m_uintval(value), m_type(unsigned_type) {} + +public: + /// + /// Does the number fit into int32? + /// + /// true if the number fits into int32, false otherwise + _ASYNCRTIMP bool is_int32() const; + + /// + /// Does the number fit into unsigned int32? + /// + /// true if the number fits into unsigned int32, false otherwise + _ASYNCRTIMP bool is_uint32() const; + + /// + /// Does the number fit into int64? + /// + /// true if the number fits into int64, false otherwise + _ASYNCRTIMP bool is_int64() const; + + /// + /// Does the number fit into unsigned int64? + /// + /// true if the number fits into unsigned int64, false otherwise + bool is_uint64() const + { + switch (m_type) + { + case signed_type: return m_intval >= 0; + case unsigned_type: return true; + case double_type: + default: return false; + } + } + + /// + /// Converts the JSON number to a C++ double. + /// + /// A double representation of the number + double to_double() const + { + switch (m_type) + { + case double_type: return m_value; + case signed_type: return static_cast(m_intval); + case unsigned_type: return static_cast(m_uintval); + default: return false; + } + } + + /// + /// Converts the JSON number to int32. + /// + /// An int32 representation of the number + int32_t to_int32() const + { + if (m_type == double_type) + return static_cast(m_value); + else + return static_cast(m_intval); + } + + /// + /// Converts the JSON number to unsigned int32. + /// + /// An unsigned int32 representation of the number + uint32_t to_uint32() const + { + if (m_type == double_type) + return static_cast(m_value); + else + return static_cast(m_intval); + } + + /// + /// Converts the JSON number to int64. + /// + /// An int64 representation of the number + int64_t to_int64() const + { + if (m_type == double_type) + return static_cast(m_value); + else + return static_cast(m_intval); + } + + /// + /// Converts the JSON number to unsigned int64. + /// + /// An unsigned int64 representation of the number + uint64_t to_uint64() const + { + if (m_type == double_type) + return static_cast(m_value); + else + return static_cast(m_intval); + } + + /// + /// Is the number represented internally as an integral type? + /// + /// true if the number is represented as an integral type, false otherwise + bool is_integral() const { return m_type != double_type; } + + /// + /// Compares two JSON numbers for equality. + /// + /// The JSON number to compare with. + /// True if the numbers are equal. + bool operator==(const number& other) const + { + if (m_type != other.m_type) return false; + + switch (m_type) + { + case json::number::type::signed_type: return m_intval == other.m_intval; + case json::number::type::unsigned_type: return m_uintval == other.m_uintval; + case json::number::type::double_type: return m_value == other.m_value; + } + __assume(0); + // Absence of this return statement provokes a warning from Intel + // compiler, but its presence results in a warning from MSVC, so + // we have to resort to conditional compilation to keep both happy. +#ifdef __INTEL_COMPILER + return false; +#endif + } + +private: + union { + int64_t m_intval; + uint64_t m_uintval; + double m_value; + }; + + enum type + { + signed_type = 0, + unsigned_type, + double_type + } m_type; + + friend class details::_Number; +}; + +namespace details +{ +class _Value +{ +public: + virtual std::unique_ptr<_Value> _copy_value() = 0; + + virtual bool has_field(const utility::string_t&) const { return false; } + virtual value get_field(const utility::string_t&) const { throw json_exception("not an object"); } + virtual value get_element(array::size_type) const { throw json_exception("not an array"); } + + virtual value& index(const utility::string_t&) { throw json_exception("not an object"); } + virtual value& index(array::size_type) { throw json_exception("not an array"); } + + virtual const value& cnst_index(const utility::string_t&) const { throw json_exception("not an object"); } + virtual const value& cnst_index(array::size_type) const { throw json_exception("not an array"); } + + // Common function used for serialization to strings and streams. + virtual void serialize_impl(std::string& str) const { format(str); } +#ifdef _WIN32 + virtual void serialize_impl(std::wstring& str) const { format(str); } +#endif + + virtual utility::string_t to_string() const + { + utility::string_t str; + serialize_impl(str); + return str; + } + + virtual json::value::value_type type() const { return json::value::Null; } + + virtual bool is_integer() const { throw json_exception("not a number"); } + virtual bool is_double() const { throw json_exception("not a number"); } + + virtual const json::number& as_number() { throw json_exception("not a number"); } + virtual double as_double() const { throw json_exception("not a number"); } + virtual int as_integer() const { throw json_exception("not a number"); } + virtual bool as_bool() const { throw json_exception("not a boolean"); } + virtual json::array& as_array() { throw json_exception("not an array"); } + virtual const json::array& as_array() const { throw json_exception("not an array"); } + virtual json::object& as_object() { throw json_exception("not an object"); } + virtual const json::object& as_object() const { throw json_exception("not an object"); } + virtual const utility::string_t& as_string() const { throw json_exception("not a string"); } + + virtual size_t size() const { return 0; } + + virtual ~_Value() {} + +protected: + _Value() {} + + virtual void format(std::basic_string& stream) const { stream.append("null"); } +#ifdef _WIN32 + virtual void format(std::basic_string& stream) const { stream.append(L"null"); } +#endif +private: + friend class web::json::value; +}; + +class _Null : public _Value +{ +public: + virtual std::unique_ptr<_Value> _copy_value() { return utility::details::make_unique<_Null>(); } + virtual json::value::value_type type() const { return json::value::Null; } +}; + +class _Number : public _Value +{ +public: + _Number(double value) : m_number(value) {} + _Number(int32_t value) : m_number(value) {} + _Number(uint32_t value) : m_number(value) {} + _Number(int64_t value) : m_number(value) {} + _Number(uint64_t value) : m_number(value) {} + + virtual std::unique_ptr<_Value> _copy_value() { return utility::details::make_unique<_Number>(*this); } + + virtual json::value::value_type type() const { return json::value::Number; } + + virtual bool is_integer() const { return m_number.is_integral(); } + virtual bool is_double() const { return !m_number.is_integral(); } + + virtual double as_double() const { return m_number.to_double(); } + + virtual int as_integer() const { return m_number.to_int32(); } + + virtual const number& as_number() { return m_number; } + +protected: + virtual void format(std::basic_string& stream) const; +#ifdef _WIN32 + virtual void format(std::basic_string& stream) const; +#endif +private: + template + friend class json::details::JSON_Parser; + + json::number m_number; +}; + +class _Boolean : public _Value +{ +public: + _Boolean(bool value) : m_value(value) {} + + virtual std::unique_ptr<_Value> _copy_value() { return utility::details::make_unique<_Boolean>(*this); } + + virtual json::value::value_type type() const { return json::value::Boolean; } + + virtual bool as_bool() const { return m_value; } + +protected: + virtual void format(std::basic_string& stream) const { stream.append(m_value ? "true" : "false"); } + +#ifdef _WIN32 + virtual void format(std::basic_string& stream) const { stream.append(m_value ? L"true" : L"false"); } +#endif +private: + template + friend class json::details::JSON_Parser; + bool m_value; +}; + +class _String : public _Value +{ +public: + _String(utility::string_t value) : m_string(std::move(value)) { m_has_escape_char = has_escape_chars(*this); } + _String(utility::string_t value, bool escaped_chars) : m_string(std::move(value)), m_has_escape_char(escaped_chars) + { + } + +#ifdef _WIN32 + _String(std::string&& value) : m_string(utility::conversions::to_utf16string(std::move(value))) + { + m_has_escape_char = has_escape_chars(*this); + } + _String(std::string&& value, bool escape_chars) + : m_string(utility::conversions::to_utf16string(std::move(value))), m_has_escape_char(escape_chars) + { + } +#endif + + virtual std::unique_ptr<_Value> _copy_value() { return utility::details::make_unique<_String>(*this); } + + virtual json::value::value_type type() const { return json::value::String; } + + virtual const utility::string_t& as_string() const; + + virtual void serialize_impl(std::string& str) const { serialize_impl_char_type(str); } +#ifdef _WIN32 + virtual void serialize_impl(std::wstring& str) const { serialize_impl_char_type(str); } +#endif + +protected: + virtual void format(std::basic_string& str) const; +#ifdef _WIN32 + virtual void format(std::basic_string& str) const; +#endif + +private: + friend class _Object; + friend class _Array; + + size_t get_reserve_size() const { return m_string.size() + 2; } + + template + void serialize_impl_char_type(std::basic_string& str) const + { + // To avoid repeated allocations reserve some space all up front. + // size of string + 2 for quotes + str.reserve(get_reserve_size()); + format(str); + } + + std::string as_utf8_string() const; + utf16string as_utf16_string() const; + + utility::string_t m_string; + + // There are significant performance gains that can be made by knowing whether + // or not a character that requires escaping is present. + bool m_has_escape_char; + static bool has_escape_chars(const _String& str); +}; + +template +_ASYNCRTIMP void append_escape_string(std::basic_string& str, const std::basic_string& escaped); + +void format_string(const utility::string_t& key, utility::string_t& str); + +#ifdef _WIN32 +void format_string(const utility::string_t& key, std::string& str); +#endif + +class _Object : public _Value +{ +public: + _Object(bool keep_order) : m_object(keep_order) {} + _Object(object::storage_type fields, bool keep_order) : m_object(std::move(fields), keep_order) {} + + virtual std::unique_ptr<_Value> _copy_value() { return utility::details::make_unique<_Object>(*this); } + + virtual json::object& as_object() { return m_object; } + + virtual const json::object& as_object() const { return m_object; } + + virtual json::value::value_type type() const { return json::value::Object; } + + virtual bool has_field(const utility::string_t&) const; + + virtual json::value& index(const utility::string_t& key); + + bool is_equal(const _Object* other) const + { + if (m_object.size() != other->m_object.size()) return false; + + return std::equal(std::begin(m_object), std::end(m_object), std::begin(other->m_object)); + } + + virtual void serialize_impl(std::string& str) const + { + // To avoid repeated allocations reserve some space all up front. + str.reserve(get_reserve_size()); + format(str); + } +#ifdef _WIN32 + virtual void serialize_impl(std::wstring& str) const + { + // To avoid repeated allocations reserve some space all up front. + str.reserve(get_reserve_size()); + format(str); + } +#endif + size_t size() const { return m_object.size(); } + +protected: + virtual void format(std::basic_string& str) const { format_impl(str); } +#ifdef _WIN32 + virtual void format(std::basic_string& str) const { format_impl(str); } +#endif + +private: + json::object m_object; + + template + friend class json::details::JSON_Parser; + + template + void format_impl(std::basic_string& str) const + { + str.push_back('{'); + if (!m_object.empty()) + { + auto lastElement = m_object.end() - 1; + for (auto iter = m_object.begin(); iter != lastElement; ++iter) + { + format_string(iter->first, str); + str.push_back(':'); + iter->second.format(str); + str.push_back(','); + } + format_string(lastElement->first, str); + str.push_back(':'); + lastElement->second.format(str); + } + str.push_back('}'); + } + + size_t get_reserve_size() const + { + // This is a heuristic we can tune more in the future: + // Basically size of string plus + // sum size of value if an object, array, or string. + size_t reserveSize = 2; // For brackets {} + for (auto iter = m_object.begin(); iter != m_object.end(); ++iter) + { + reserveSize += iter->first.length() + 2; // 2 for quotes + size_t valueSize = iter->second.size() * 20; // Multiply by each object/array element + if (valueSize == 0) + { + if (iter->second.type() == json::value::String) + { + valueSize = static_cast<_String*>(iter->second.m_value.get())->get_reserve_size(); + } + else + { + valueSize = 5; // true, false, or null + } + } + reserveSize += valueSize; + } + return reserveSize; + } +}; + +class _Array : public _Value +{ +public: + _Array() {} + _Array(array::size_type size) : m_array(size) {} + _Array(array::storage_type elements) : m_array(std::move(elements)) {} + + virtual std::unique_ptr<_Value> _copy_value() { return utility::details::make_unique<_Array>(*this); } + + virtual json::value::value_type type() const { return json::value::Array; } + + virtual json::array& as_array() { return m_array; } + virtual const json::array& as_array() const { return m_array; } + + virtual json::value& index(json::array::size_type index) { return m_array[index]; } + + bool is_equal(const _Array* other) const + { + if (m_array.size() != other->m_array.size()) return false; + + auto iterT = m_array.cbegin(); + auto iterO = other->m_array.cbegin(); + auto iterTe = m_array.cend(); + auto iterOe = other->m_array.cend(); + + for (; iterT != iterTe && iterO != iterOe; ++iterT, ++iterO) + { + if (*iterT != *iterO) return false; + } + + return true; + } + + virtual void serialize_impl(std::string& str) const + { + // To avoid repeated allocations reserve some space all up front. + str.reserve(get_reserve_size()); + format(str); + } +#ifdef _WIN32 + virtual void serialize_impl(std::wstring& str) const + { + // To avoid repeated allocations reserve some space all up front. + str.reserve(get_reserve_size()); + format(str); + } +#endif + size_t size() const { return m_array.size(); } + +protected: + virtual void format(std::basic_string& str) const { format_impl(str); } +#ifdef _WIN32 + virtual void format(std::basic_string& str) const { format_impl(str); } +#endif +private: + json::array m_array; + + template + friend class json::details::JSON_Parser; + + template + void format_impl(std::basic_string& str) const + { + str.push_back('['); + if (!m_array.m_elements.empty()) + { + auto lastElement = m_array.m_elements.end() - 1; + for (auto iter = m_array.m_elements.begin(); iter != lastElement; ++iter) + { + iter->format(str); + str.push_back(','); + } + lastElement->format(str); + } + str.push_back(']'); + } + + size_t get_reserve_size() const + { + // This is a heuristic we can tune more in the future: + // Basically sum size of each value if an object, array, or string by a multiplier. + size_t reserveSize = 2; // For brackets [] + for (auto iter = m_array.cbegin(); iter != m_array.cend(); ++iter) + { + size_t valueSize = iter->size() * 20; // Per each nested array/object + + if (valueSize == 0) valueSize = 5; // true, false, or null + + reserveSize += valueSize; + } + return reserveSize; + } +}; +} // namespace details + +/// +/// Gets the number of children of the value. +/// +/// The number of children. 0 for all non-composites. +inline size_t json::value::size() const { return m_value->size(); } + +/// +/// Test for the presence of a field. +/// +/// The name of the field +/// True if the field exists, false otherwise. +inline bool json::value::has_field(const utility::string_t& key) const { return m_value->has_field(key); } + +/// +/// Access a field of a JSON object. +/// +/// The name of the field +/// The value kept in the field; null if the field does not exist +inline json::value json::value::get(const utility::string_t& key) const { return m_value->get_field(key); } + +/// +/// Access an element of a JSON array. +/// +/// The index of an element in the JSON array +/// The value kept at the array index; null if outside the boundaries of the array +inline json::value json::value::get(size_t index) const { return m_value->get_element(index); } + +/// +/// A standard std::ostream operator to facilitate writing JSON values to streams. +/// +/// The output stream to write the JSON value to. +/// The JSON value to be written to the stream. +/// The output stream object +_ASYNCRTIMP utility::ostream_t& __cdecl operator<<(utility::ostream_t& os, const json::value& val); + +/// +/// A standard std::istream operator to facilitate reading JSON values from streams. +/// +/// The input stream to read the JSON value from. +/// The JSON value object read from the stream. +/// The input stream object. +_ASYNCRTIMP utility::istream_t& __cdecl operator>>(utility::istream_t& is, json::value& val); +} // namespace json +} // namespace web + +#endif diff --git a/deps/cpprestsdk/include/cpprest/uri.h b/deps/cpprestsdk/include/cpprest/uri.h new file mode 100644 index 0000000000..00f96e1488 --- /dev/null +++ b/deps/cpprestsdk/include/cpprest/uri.h @@ -0,0 +1,21 @@ +/*** + * Copyright (C) Microsoft. All rights reserved. + * Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. + * + * =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ + * + * Protocol independent support for URIs. + * + * For the latest on this and related APIs, please see: https://github.com/Microsoft/cpprestsdk + * + * =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- + ****/ +#pragma once + +#ifndef CASA_URI_H +#define CASA_URI_H + +#include "cpprest/base_uri.h" +#include "cpprest/uri_builder.h" + +#endif diff --git a/deps/cpprestsdk/include/cpprest/uri_builder.h b/deps/cpprestsdk/include/cpprest/uri_builder.h new file mode 100644 index 0000000000..8cc2a92231 --- /dev/null +++ b/deps/cpprestsdk/include/cpprest/uri_builder.h @@ -0,0 +1,295 @@ +/*** + * Copyright (C) Microsoft. All rights reserved. + * Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. + * + * =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ + * + * Builder style class for creating URIs. + * + * For the latest on this and related APIs, please see: https://github.com/Microsoft/cpprestsdk + * + * =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- + ****/ + +#pragma once + +#include "cpprest/base_uri.h" +#include + +namespace web +{ +/// +/// Builder for constructing URIs incrementally. +/// +class uri_builder +{ +public: + /// + /// Creates a builder with an initially empty URI. + /// + uri_builder() = default; + + /// + /// Creates a builder with a existing URI object. + /// + /// Encoded string containing the URI. + uri_builder(const uri& uri_str) : m_uri(uri_str.m_components) {} + + /// + /// Get the scheme component of the URI as an encoded string. + /// + /// The URI scheme as a string. + const utility::string_t& scheme() const { return m_uri.m_scheme; } + + /// + /// Get the user information component of the URI as an encoded string. + /// + /// The URI user information as a string. + const utility::string_t& user_info() const { return m_uri.m_user_info; } + + /// + /// Get the host component of the URI as an encoded string. + /// + /// The URI host as a string. + const utility::string_t& host() const { return m_uri.m_host; } + + /// + /// Get the port component of the URI. Returns -1 if no port is specified. + /// + /// The URI port as an integer. + int port() const { return m_uri.m_port; } + + /// + /// Get the path component of the URI as an encoded string. + /// + /// The URI path as a string. + const utility::string_t& path() const { return m_uri.m_path; } + + /// + /// Get the query component of the URI as an encoded string. + /// + /// The URI query as a string. + const utility::string_t& query() const { return m_uri.m_query; } + + /// + /// Get the fragment component of the URI as an encoded string. + /// + /// The URI fragment as a string. + const utility::string_t& fragment() const { return m_uri.m_fragment; } + + /// + /// Set the scheme of the URI. + /// + /// Uri scheme. + /// A reference to this uri_builder to support chaining. + uri_builder& set_scheme(const utility::string_t& scheme) + { + m_uri.m_scheme = scheme; + return *this; + } + + /// + /// Set the user info component of the URI. + /// + /// User info as a decoded string. + /// Specify whether to apply URI encoding to the given string. + /// A reference to this uri_builder to support chaining. + uri_builder& set_user_info(const utility::string_t& user_info, bool do_encoding = false) + { + if (do_encoding) + { + m_uri.m_user_info = uri::encode_uri(user_info, uri::components::user_info); + } + else + { + m_uri.m_user_info = user_info; + } + + return *this; + } + + /// + /// Set the host component of the URI. + /// + /// Host as a decoded string. + /// Specify whether to apply URI encoding to the given string. + /// A reference to this uri_builder to support chaining. + uri_builder& set_host(const utility::string_t& host, bool do_encoding = false) + { + if (do_encoding) + { + m_uri.m_host = uri::encode_uri(host, uri::components::host); + } + else + { + m_uri.m_host = host; + } + + return *this; + } + + /// + /// Set the port component of the URI. + /// + /// Port as an integer. + /// A reference to this uri_builder to support chaining. + uri_builder& set_port(int port) + { + m_uri.m_port = port; + return *this; + } + + /// + /// Set the port component of the URI. + /// + /// Port as a string. + /// A reference to this uri_builder to support chaining. + /// When string can't be converted to an integer the port is left unchanged. + _ASYNCRTIMP uri_builder& set_port(const utility::string_t& port); + + /// + /// Set the path component of the URI. + /// + /// Path as a decoded string. + /// Specify whether to apply URI encoding to the given string. + /// A reference to this uri_builder to support chaining. + uri_builder& set_path(const utility::string_t& path, bool do_encoding = false) + { + if (do_encoding) + { + m_uri.m_path = uri::encode_uri(path, uri::components::path); + } + else + { + m_uri.m_path = path; + } + + return *this; + } + + /// + /// Set the query component of the URI. + /// + /// Query as a decoded string. + /// Specify whether apply URI encoding to the given string. + /// A reference to this uri_builder to support chaining. + uri_builder& set_query(const utility::string_t& query, bool do_encoding = false) + { + if (do_encoding) + { + m_uri.m_query = uri::encode_uri(query, uri::components::query); + } + else + { + m_uri.m_query = query; + } + + return *this; + } + + /// + /// Set the fragment component of the URI. + /// + /// Fragment as a decoded string. + /// Specify whether to apply URI encoding to the given string. + /// A reference to this uri_builder to support chaining. + uri_builder& set_fragment(const utility::string_t& fragment, bool do_encoding = false) + { + if (do_encoding) + { + m_uri.m_fragment = uri::encode_uri(fragment, uri::components::fragment); + } + else + { + m_uri.m_fragment = fragment; + } + + return *this; + } + + /// + /// Clears all components of the underlying URI in this uri_builder. + /// + void clear() { m_uri = details::uri_components(); } + + /// + /// Appends another path to the path of this uri_builder. + /// + /// Path to append as a already encoded string. + /// Specify whether to apply URI encoding to the given string. + /// A reference to this uri_builder to support chaining. + _ASYNCRTIMP uri_builder& append_path(const utility::string_t& path, bool do_encoding = false); + + /// + /// Appends the raw contents of the path argument to the path of this uri_builder with no separator de-duplication. + /// + /// + /// The path argument is appended after adding a '/' separator without regards to the contents of path. If an empty + /// string is provided, this function will immediately return without changes to the stored path value. For example: + /// if the current contents are "/abc" and path="/xyz", the result will be "/abc//xyz". + /// + /// Path to append as a already encoded string. + /// Specify whether to apply URI encoding to the given string. + /// A reference to this uri_builder to support chaining. + _ASYNCRTIMP uri_builder& append_path_raw(const utility::string_t& path, bool do_encoding = false); + + /// + /// Appends another query to the query of this uri_builder. + /// + /// Query to append as a decoded string. + /// Specify whether to apply URI encoding to the given string. + /// A reference to this uri_builder to support chaining. + _ASYNCRTIMP uri_builder& append_query(const utility::string_t& query, bool do_encoding = false); + + /// + /// Appends an relative uri (Path, Query and fragment) at the end of the current uri. + /// + /// The relative uri to append. + /// A reference to this uri_builder to support chaining. + _ASYNCRTIMP uri_builder& append(const uri& relative_uri); + + /// + /// Appends another query to the query of this uri_builder, encoding it first. This overload is useful when building + /// a query segment of the form "element=10", where the right hand side of the query is stored as a type other than + /// a string, for instance, an integral type. + /// + /// The name portion of the query string + /// The value portion of the query string + /// A reference to this uri_builder to support chaining. + template + uri_builder& append_query(const utility::string_t& name, const T& value, bool do_encoding = true) + { + if (do_encoding) + append_query_encode_impl(name, utility::conversions::details::print_utf8string(value)); + else + append_query_no_encode_impl(name, utility::conversions::details::print_string(value)); + return *this; + } + + /// + /// Combine and validate the URI components into a encoded string. An exception will be thrown if the URI is + /// invalid. + /// + /// The created URI as a string. + _ASYNCRTIMP utility::string_t to_string() const; + + /// + /// Combine and validate the URI components into a URI class instance. An exception will be thrown if the URI is + /// invalid. + /// + /// The create URI as a URI class instance. + _ASYNCRTIMP uri to_uri() const; + + /// + /// Validate the generated URI from all existing components of this uri_builder. + /// + /// Whether the URI is valid. + _ASYNCRTIMP bool is_valid(); + +private: + _ASYNCRTIMP void append_query_encode_impl(const utility::string_t& name, const utf8string& value); + _ASYNCRTIMP void append_query_no_encode_impl(const utility::string_t& name, const utility::string_t& value); + + details::uri_components m_uri; +}; +} // namespace web diff --git a/deps/cpprestsdk/include/cpprest/version.h b/deps/cpprestsdk/include/cpprest/version.h new file mode 100644 index 0000000000..af1a6c7c1d --- /dev/null +++ b/deps/cpprestsdk/include/cpprest/version.h @@ -0,0 +1,10 @@ +/*** + * Copyright (C) Microsoft. All rights reserved. + * Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. + * + */ +#define CPPREST_VERSION_MINOR 10 +#define CPPREST_VERSION_MAJOR 2 +#define CPPREST_VERSION_REVISION 13 + +#define CPPREST_VERSION (CPPREST_VERSION_MAJOR * 100000 + CPPREST_VERSION_MINOR * 100 + CPPREST_VERSION_REVISION) diff --git a/deps/cpprestsdk/license.txt b/deps/cpprestsdk/license.txt new file mode 100644 index 0000000000..9a6d567042 --- /dev/null +++ b/deps/cpprestsdk/license.txt @@ -0,0 +1,25 @@ +C++ REST SDK + +The MIT License (MIT) + +Copyright (c) Microsoft Corporation + +All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. \ No newline at end of file diff --git a/deps/cpprestsdk/pch.cpp b/deps/cpprestsdk/pch.cpp new file mode 100644 index 0000000000..1d9f38c57d --- /dev/null +++ b/deps/cpprestsdk/pch.cpp @@ -0,0 +1 @@ +#include "pch.h" diff --git a/deps/cpprestsdk/pch.h b/deps/cpprestsdk/pch.h new file mode 100644 index 0000000000..4b228b348b --- /dev/null +++ b/deps/cpprestsdk/pch.h @@ -0,0 +1,34 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +// cpprestsdk headers +#include "cpprest/details/basic_types.h" +#include "cpprest/details/cpprest_compat.h" +#include "cpprest/version.h" +// json +#include "cpprest/json.h" +// utilities +#include "cpprest/asyncrt_utils.h" +#include "cpprest/details/web_utilities.h" diff --git a/deps/cpprestsdk/src/json/json.cpp b/deps/cpprestsdk/src/json/json.cpp new file mode 100644 index 0000000000..2d9fcd6506 --- /dev/null +++ b/deps/cpprestsdk/src/json/json.cpp @@ -0,0 +1,475 @@ +/*** + * Copyright (C) Microsoft. All rights reserved. + * Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. + * + * =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ + * + * HTTP Library: JSON parser and writer + * + * For the latest on this and related APIs, please see: https://github.com/Microsoft/cpprestsdk + * + * =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- + ****/ + +#include "pch.h" + +using namespace web; + +bool json::details::g_keep_json_object_unsorted = false; +void json::keep_object_element_order(bool keep_order) { json::details::g_keep_json_object_unsorted = keep_order; } + +utility::ostream_t& web::json::operator<<(utility::ostream_t& os, const web::json::value& val) +{ + val.serialize(os); + return os; +} + +utility::istream_t& web::json::operator>>(utility::istream_t& is, json::value& val) +{ + val = json::value::parse(is); + return is; +} + +web::json::value::value() + : m_value(utility::details::make_unique()) +#ifdef ENABLE_JSON_VALUE_VISUALIZER + , m_kind(value::Null) +#endif +{ +} + +web::json::value::value(int32_t value) + : m_value(utility::details::make_unique(value)) +#ifdef ENABLE_JSON_VALUE_VISUALIZER + , m_kind(value::Number) +#endif +{ +} + +web::json::value::value(uint32_t value) + : m_value(utility::details::make_unique(value)) +#ifdef ENABLE_JSON_VALUE_VISUALIZER + , m_kind(value::Number) +#endif +{ +} + +web::json::value::value(int64_t value) + : m_value(utility::details::make_unique(value)) +#ifdef ENABLE_JSON_VALUE_VISUALIZER + , m_kind(value::Number) +#endif +{ +} + +web::json::value::value(uint64_t value) + : m_value(utility::details::make_unique(value)) +#ifdef ENABLE_JSON_VALUE_VISUALIZER + , m_kind(value::Number) +#endif +{ +} + +web::json::value::value(double value) + : m_value(utility::details::make_unique(value)) +#ifdef ENABLE_JSON_VALUE_VISUALIZER + , m_kind(value::Number) +#endif +{ +} + +web::json::value::value(bool value) + : m_value(utility::details::make_unique(value)) +#ifdef ENABLE_JSON_VALUE_VISUALIZER + , m_kind(value::Boolean) +#endif +{ +} + +web::json::value::value(utility::string_t value) + : m_value(utility::details::make_unique(std::move(value))) +#ifdef ENABLE_JSON_VALUE_VISUALIZER + , m_kind(value::String) +#endif +{ +} + +web::json::value::value(utility::string_t value, bool has_escape_chars) + : m_value(utility::details::make_unique(std::move(value), has_escape_chars)) +#ifdef ENABLE_JSON_VALUE_VISUALIZER + , m_kind(value::String) +#endif +{ +} + +web::json::value::value(const utility::char_t* value) + : m_value(utility::details::make_unique(value)) +#ifdef ENABLE_JSON_VALUE_VISUALIZER + , m_kind(value::String) +#endif +{ +} + +web::json::value::value(const utility::char_t* value, bool has_escape_chars) + : m_value(utility::details::make_unique(utility::string_t(value), has_escape_chars)) +#ifdef ENABLE_JSON_VALUE_VISUALIZER + , m_kind(value::String) +#endif +{ +} + +web::json::value::value(const value& other) + : m_value(other.m_value->_copy_value()) +#ifdef ENABLE_JSON_VALUE_VISUALIZER + , m_kind(other.m_kind) +#endif +{ +} + +web::json::value& web::json::value::operator=(const value& other) +{ + if (this != &other) + { + m_value = std::unique_ptr(other.m_value->_copy_value()); +#ifdef ENABLE_JSON_VALUE_VISUALIZER + m_kind = other.m_kind; +#endif + } + return *this; +} + +web::json::value::value(value&& other) CPPREST_NOEXCEPT : m_value(std::move(other.m_value)) +#ifdef ENABLE_JSON_VALUE_VISUALIZER + , + m_kind(other.m_kind) +#endif +{ +} + +web::json::value& web::json::value::operator=(web::json::value&& other) CPPREST_NOEXCEPT +{ + if (this != &other) + { + m_value.swap(other.m_value); +#ifdef ENABLE_JSON_VALUE_VISUALIZER + m_kind = other.m_kind; +#endif + } + return *this; +} + +web::json::value web::json::value::null() { return web::json::value(); } + +web::json::value web::json::value::number(double value) { return web::json::value(value); } + +web::json::value web::json::value::number(int32_t value) { return web::json::value(value); } + +web::json::value web::json::value::number(uint32_t value) { return web::json::value(value); } + +web::json::value web::json::value::number(int64_t value) { return web::json::value(value); } + +web::json::value web::json::value::number(uint64_t value) { return web::json::value(value); } + +web::json::value web::json::value::boolean(bool value) { return web::json::value(value); } + +web::json::value web::json::value::string(utility::string_t value) +{ + std::unique_ptr ptr = utility::details::make_unique(std::move(value)); + return web::json::value(std::move(ptr) +#ifdef ENABLE_JSON_VALUE_VISUALIZER + , + value::String +#endif + ); +} + +web::json::value web::json::value::string(utility::string_t value, bool has_escape_chars) +{ + std::unique_ptr ptr = + utility::details::make_unique(std::move(value), has_escape_chars); + return web::json::value(std::move(ptr) +#ifdef ENABLE_JSON_VALUE_VISUALIZER + , + value::String +#endif + ); +} + +#ifdef _WIN32 +web::json::value web::json::value::string(const std::string& value) +{ + std::unique_ptr ptr = + utility::details::make_unique(utility::conversions::to_utf16string(value)); + return web::json::value(std::move(ptr) +#ifdef ENABLE_JSON_VALUE_VISUALIZER + , + value::String +#endif + ); +} +#endif + +web::json::value web::json::value::object(bool keep_order) +{ + std::unique_ptr ptr = utility::details::make_unique(keep_order); + return web::json::value(std::move(ptr) +#ifdef ENABLE_JSON_VALUE_VISUALIZER + , + value::Object +#endif + ); +} + +web::json::value web::json::value::object(std::vector> fields, bool keep_order) +{ + std::unique_ptr ptr = + utility::details::make_unique(std::move(fields), keep_order); + return web::json::value(std::move(ptr) +#ifdef ENABLE_JSON_VALUE_VISUALIZER + , + value::Object +#endif + ); +} + +web::json::value web::json::value::array() +{ + std::unique_ptr ptr = utility::details::make_unique(); + return web::json::value(std::move(ptr) +#ifdef ENABLE_JSON_VALUE_VISUALIZER + , + value::Array +#endif + ); +} + +web::json::value web::json::value::array(size_t size) +{ + std::unique_ptr ptr = utility::details::make_unique(size); + return web::json::value(std::move(ptr) +#ifdef ENABLE_JSON_VALUE_VISUALIZER + , + value::Array +#endif + ); +} + +web::json::value web::json::value::array(std::vector elements) +{ + std::unique_ptr ptr = utility::details::make_unique(std::move(elements)); + return web::json::value(std::move(ptr) +#ifdef ENABLE_JSON_VALUE_VISUALIZER + , + value::Array +#endif + ); +} + +const web::json::number& web::json::value::as_number() const { return m_value->as_number(); } + +double web::json::value::as_double() const { return m_value->as_double(); } + +int web::json::value::as_integer() const { return m_value->as_integer(); } + +bool web::json::value::as_bool() const { return m_value->as_bool(); } + +json::array& web::json::value::as_array() { return m_value->as_array(); } + +const json::array& web::json::value::as_array() const { return m_value->as_array(); } + +json::object& web::json::value::as_object() { return m_value->as_object(); } + +const json::object& web::json::value::as_object() const { return m_value->as_object(); } + +bool web::json::number::is_int32() const +{ + switch (m_type) + { + case signed_type: + return m_intval >= (std::numeric_limits::min)() && m_intval <= (std::numeric_limits::max)(); + case unsigned_type: return m_uintval <= (std::numeric_limits::max)(); + case double_type: + default: return false; + } +} + +bool web::json::number::is_uint32() const +{ + switch (m_type) + { + case signed_type: return m_intval >= 0 && m_intval <= (std::numeric_limits::max)(); + case unsigned_type: return m_uintval <= (std::numeric_limits::max)(); + case double_type: + default: return false; + } +} + +bool web::json::number::is_int64() const +{ + switch (m_type) + { + case signed_type: return true; + case unsigned_type: return m_uintval <= static_cast((std::numeric_limits::max)()); + case double_type: + default: return false; + } +} + +bool web::json::details::_String::has_escape_chars(const _String& str) +{ + return std::any_of(std::begin(str.m_string), std::end(str.m_string), [](utility::string_t::value_type const x) { + if (x <= 31) + { + return true; + } + if (x == '"') + { + return true; + } + if (x == '\\') + { + return true; + } + return false; + }); +} + +web::json::value::value_type json::value::type() const { return m_value->type(); } + +bool json::value::is_integer() const +{ + if (!is_number()) + { + return false; + } + return m_value->is_integer(); +} + +bool json::value::is_double() const +{ + if (!is_number()) + { + return false; + } + return m_value->is_double(); +} + +json::value& web::json::details::_Object::index(const utility::string_t& key) { return m_object[key]; } + +bool web::json::details::_Object::has_field(const utility::string_t& key) const +{ + return m_object.find(key) != m_object.end(); +} + +bool web::json::value::has_number_field(const utility::string_t& key) const +{ + return has_field(key) && at(key).is_number(); +} + +bool web::json::value::has_integer_field(const utility::string_t& key) const +{ + return has_field(key) && at(key).is_integer(); +} + +bool web::json::value::has_double_field(const utility::string_t& key) const +{ + return has_field(key) && at(key).is_double(); +} + +bool web::json::value::has_boolean_field(const utility::string_t& key) const +{ + return has_field(key) && at(key).is_boolean(); +} + +bool web::json::value::has_string_field(const utility::string_t& key) const +{ + return has_field(key) && at(key).is_string(); +} + +bool web::json::value::has_array_field(const utility::string_t& key) const +{ + return has_field(key) && at(key).is_array(); +} + +bool web::json::value::has_object_field(const utility::string_t& key) const +{ + return has_field(key) && at(key).is_object(); +} + +utility::string_t json::value::to_string() const +{ +#ifndef _WIN32 + utility::details::scoped_c_thread_locale locale; +#endif + return m_value->to_string(); +} + +bool json::value::operator==(const json::value& other) const +{ + if (this->m_value.get() == other.m_value.get()) return true; + if (this->type() != other.type()) return false; + + switch (this->type()) + { + case Null: return true; + case Number: return this->as_number() == other.as_number(); + case Boolean: return this->as_bool() == other.as_bool(); + case String: return this->as_string() == other.as_string(); + case Object: + return static_cast(this->m_value.get()) + ->is_equal(static_cast(other.m_value.get())); + case Array: + return static_cast(this->m_value.get()) + ->is_equal(static_cast(other.m_value.get())); + } + __assume(0); +} + +void web::json::value::erase(size_t index) { return this->as_array().erase(index); } + +void web::json::value::erase(const utility::string_t& key) { return this->as_object().erase(key); } + +// at() overloads +web::json::value& web::json::value::at(size_t index) { return this->as_array().at(index); } + +const web::json::value& web::json::value::at(size_t index) const { return this->as_array().at(index); } + +web::json::value& web::json::value::at(const utility::string_t& key) { return this->as_object().at(key); } + +const web::json::value& web::json::value::at(const utility::string_t& key) const { return this->as_object().at(key); } + +web::json::value& web::json::value::operator[](const utility::string_t& key) +{ + if (this->is_null()) + { + m_value.reset(new web::json::details::_Object(details::g_keep_json_object_unsorted)); +#ifdef ENABLE_JSON_VALUE_VISUALIZER + m_kind = value::Object; +#endif + } + return m_value->index(key); +} + +web::json::value& web::json::value::operator[](size_t index) +{ + if (this->is_null()) + { + m_value.reset(new web::json::details::_Array()); +#ifdef ENABLE_JSON_VALUE_VISUALIZER + m_kind = value::Array; +#endif + } + return m_value->index(index); +} + +// Remove once VS 2013 is no longer supported. +#if defined(_WIN32) && _MSC_VER < 1900 +static web::json::details::json_error_category_impl instance; +#endif +const web::json::details::json_error_category_impl& web::json::details::json_error_category() +{ +#if !defined(_WIN32) || _MSC_VER >= 1900 + static web::json::details::json_error_category_impl instance; +#endif + return instance; +} diff --git a/deps/cpprestsdk/src/json/json_parsing.cpp b/deps/cpprestsdk/src/json/json_parsing.cpp new file mode 100644 index 0000000000..1e7e8d332b --- /dev/null +++ b/deps/cpprestsdk/src/json/json_parsing.cpp @@ -0,0 +1,1279 @@ +/*** + * Copyright (C) Microsoft. All rights reserved. + * Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. + * + * =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ + * + * HTTP Library: JSON parser + * + * For the latest on this and related APIs, please see: https://github.com/Microsoft/cpprestsdk + * + * =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- + ****/ + +#include "pch.h" + +#include + +#if defined(_MSC_VER) +#pragma warning(disable : 4127) // allow expressions like while(true) pass +#endif +using namespace web; +using namespace web::json; +using namespace utility; +using namespace utility::conversions; + +std::array _hexval = { + {-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, 1, 2, 3, + 4, 5, 6, 7, 8, 9, -1, -1, -1, -1, -1, -1, -1, 10, 11, 12, 13, 14, 15, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 10, 11, 12, 13, 14, 15, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}}; + +namespace web +{ +namespace json +{ +namespace details +{ +// +// JSON Parsing +// + +template +#if defined(_WIN32) +__declspec(noreturn) +#else + __attribute__((noreturn)) +#endif + void CreateException(const Token& tk, const utility::string_t& message) +{ + std::string str("* Line "); + str += std::to_string(tk.start.m_line); + str += ", Column "; + str += std::to_string(tk.start.m_column); + str += " Syntax error: "; + str += utility::conversions::to_utf8string(message); + throw web::json::json_exception(std::move(str)); +} + +template +void SetErrorCode(Token& tk, json_error jsonErrorCode) +{ + tk.m_error = std::error_code(jsonErrorCode, json_error_category()); +} + +template +class JSON_Parser +{ +public: + JSON_Parser() : m_currentLine(1), m_currentColumn(1), m_currentParsingDepth(0) {} + + struct Location + { + size_t m_line; + size_t m_column; + }; + + struct Token + { + enum Kind + { + TKN_EOF, + + TKN_OpenBrace, + TKN_CloseBrace, + TKN_OpenBracket, + TKN_CloseBracket, + TKN_Comma, + TKN_Colon, + TKN_StringLiteral, + TKN_NumberLiteral, + TKN_IntegerLiteral, + TKN_BooleanLiteral, + TKN_NullLiteral, + TKN_Comment + }; + + Token() : kind(TKN_EOF) {} + + Kind kind; + std::basic_string string_val; + + typename JSON_Parser::Location start; + + union { + double double_val; + int64_t int64_val; + uint64_t uint64_val; + bool boolean_val; + bool has_unescape_symbol; + }; + + bool signed_number; + + std::error_code m_error; + }; + + void GetNextToken(Token&); + + web::json::value ParseValue(typename JSON_Parser::Token& first) + { +#ifndef _WIN32 + utility::details::scoped_c_thread_locale locale; +#endif + +#ifdef ENABLE_JSON_VALUE_VISUALIZER + auto _value = _ParseValue(first); + auto type = _value->type(); + return web::json::value(std::move(_value), type); +#else + return web::json::value(_ParseValue(first)); +#endif + } + +protected: + typedef typename std::char_traits::int_type int_type; + virtual int_type NextCharacter() = 0; + virtual int_type PeekCharacter() = 0; + + virtual bool CompleteComment(Token& token); + virtual bool CompleteStringLiteral(Token& token); + int convert_unicode_to_code_point(); + bool handle_unescape_char(Token& token); + +private: + bool CompleteNumberLiteral(CharType first, Token& token); + bool ParseInt64(CharType first, uint64_t& value); + bool CompleteKeywordTrue(Token& token); + bool CompleteKeywordFalse(Token& token); + bool CompleteKeywordNull(Token& token); + std::unique_ptr _ParseValue(typename JSON_Parser::Token& first); + std::unique_ptr _ParseObject(typename JSON_Parser::Token& tkn); + std::unique_ptr _ParseArray(typename JSON_Parser::Token& tkn); + + JSON_Parser& operator=(const JSON_Parser&); + + int_type EatWhitespace(); + + void CreateToken(typename JSON_Parser::Token& tk, typename Token::Kind kind, Location& start) + { + tk.kind = kind; + tk.start = start; + tk.string_val.clear(); + } + + void CreateToken(typename JSON_Parser::Token& tk, typename Token::Kind kind) + { + tk.kind = kind; + tk.start.m_line = m_currentLine; + tk.start.m_column = m_currentColumn; + tk.string_val.clear(); + } + +protected: + size_t m_currentLine; + size_t m_currentColumn; + size_t m_currentParsingDepth; + +// The DEBUG macro is defined in XCode but we don't in our CMakeList +// so for now we will keep the same on debug and release. In the future +// this can be increase on release if necessary. +#if defined(__APPLE__) + static const size_t maxParsingDepth = 32; +#else + static const size_t maxParsingDepth = 128; +#endif +}; + +// Replace with template alias once VS 2012 support is removed. +template +typename std::char_traits::int_type eof() +{ + return std::char_traits::eof(); +} + +template +class JSON_StreamParser : public JSON_Parser +{ +public: + JSON_StreamParser(std::basic_istream& stream) : m_streambuf(stream.rdbuf()) {} + +protected: + virtual typename JSON_Parser::int_type NextCharacter(); + virtual typename JSON_Parser::int_type PeekCharacter(); + +private: + typename std::basic_streambuf>* m_streambuf; +}; + +template +class JSON_StringParser : public JSON_Parser +{ +public: + JSON_StringParser(const std::basic_string& string) : m_position(&string[0]) + { + m_startpos = m_position; + m_endpos = m_position + string.size(); + } + +protected: + virtual typename JSON_Parser::int_type NextCharacter(); + virtual typename JSON_Parser::int_type PeekCharacter(); + + virtual bool CompleteComment(typename JSON_Parser::Token& token); + virtual bool CompleteStringLiteral(typename JSON_Parser::Token& token); + +private: + bool finish_parsing_string_with_unescape_char(typename JSON_Parser::Token& token); + const CharType* m_position; + const CharType* m_startpos; + const CharType* m_endpos; +}; + +template +typename JSON_Parser::int_type JSON_StreamParser::NextCharacter() +{ + auto ch = m_streambuf->sbumpc(); + + if (ch == '\n') + { + this->m_currentLine += 1; + this->m_currentColumn = 0; + } + else + { + this->m_currentColumn += 1; + } + + return ch; +} + +template +typename JSON_Parser::int_type JSON_StreamParser::PeekCharacter() +{ + return m_streambuf->sgetc(); +} + +template +typename JSON_Parser::int_type JSON_StringParser::NextCharacter() +{ + if (m_position == m_endpos) return eof(); + + CharType ch = *m_position; + m_position += 1; + + if (ch == '\n') + { + this->m_currentLine += 1; + this->m_currentColumn = 0; + } + else + { + this->m_currentColumn += 1; + } + + return ch; +} + +template +typename JSON_Parser::int_type JSON_StringParser::PeekCharacter() +{ + if (m_position == m_endpos) return eof(); + + return *m_position; +} + +// +// Consume whitespace characters and return the first non-space character or EOF +// +template +typename JSON_Parser::int_type JSON_Parser::EatWhitespace() +{ + auto ch = NextCharacter(); + + while (ch != eof() && iswspace(static_cast(ch))) + { + ch = NextCharacter(); + } + + return ch; +} + +template +bool JSON_Parser::CompleteKeywordTrue(Token& token) +{ + if (NextCharacter() != 'r') return false; + if (NextCharacter() != 'u') return false; + if (NextCharacter() != 'e') return false; + token.kind = Token::TKN_BooleanLiteral; + token.boolean_val = true; + return true; +} + +template +bool JSON_Parser::CompleteKeywordFalse(Token& token) +{ + if (NextCharacter() != 'a') return false; + if (NextCharacter() != 'l') return false; + if (NextCharacter() != 's') return false; + if (NextCharacter() != 'e') return false; + token.kind = Token::TKN_BooleanLiteral; + token.boolean_val = false; + return true; +} + +template +bool JSON_Parser::CompleteKeywordNull(Token& token) +{ + if (NextCharacter() != 'u') return false; + if (NextCharacter() != 'l') return false; + if (NextCharacter() != 'l') return false; + token.kind = Token::TKN_NullLiteral; + return true; +} + +// Returns false only on overflow +template +inline bool JSON_Parser::ParseInt64(CharType first, uint64_t& value) +{ + value = first - '0'; + auto ch = PeekCharacter(); + while (ch >= '0' && ch <= '9') + { + unsigned int next_digit = (unsigned int)(ch - '0'); + if (value > (ULLONG_MAX / 10) || (value == ULLONG_MAX / 10 && next_digit > ULLONG_MAX % 10)) return false; + + NextCharacter(); + + value *= 10; + value += next_digit; + ch = PeekCharacter(); + } + return true; +} + +// This namespace hides the x-plat helper functions +namespace +{ +#if defined(_WIN32) +static int print_llu(char* ptr, size_t n, uint64_t val64) +{ + return _snprintf_s_l(ptr, n, _TRUNCATE, "%I64u", utility::details::scoped_c_thread_locale::c_locale(), val64); +} + +static int print_llu(wchar_t* ptr, size_t n, uint64_t val64) +{ + return _snwprintf_s_l(ptr, n, _TRUNCATE, L"%I64u", utility::details::scoped_c_thread_locale::c_locale(), val64); +} +static double anystod(const char* str) +{ + return _strtod_l(str, nullptr, utility::details::scoped_c_thread_locale::c_locale()); +} +static double anystod(const wchar_t* str) +{ + return _wcstod_l(str, nullptr, utility::details::scoped_c_thread_locale::c_locale()); +} +#else +static int __attribute__((__unused__)) print_llu(char* ptr, size_t n, unsigned long long val64) +{ + return snprintf(ptr, n, "%llu", val64); +} +static int __attribute__((__unused__)) print_llu(char* ptr, size_t n, unsigned long val64) +{ + return snprintf(ptr, n, "%lu", val64); +} +static double __attribute__((__unused__)) anystod(const char* str) { return strtod(str, nullptr); } +static double __attribute__((__unused__)) anystod(const wchar_t* str) { return wcstod(str, nullptr); } +#endif +} // namespace + +template +bool JSON_Parser::CompleteNumberLiteral(CharType first, Token& token) +{ + bool minus_sign; + + if (first == '-') + { + minus_sign = true; + + // Safe to cast because the check after this if/else statement will cover EOF. + first = static_cast(NextCharacter()); + } + else + { + minus_sign = false; + } + + if (first < '0' || first > '9') return false; + + auto ch = PeekCharacter(); + + // Check for two (or more) zeros at the beginning + if (first == '0' && ch == '0') return false; + + // Parse the number assuming its integer + uint64_t val64; + bool complete = ParseInt64(first, val64); + + ch = PeekCharacter(); + if (complete && ch != '.' && ch != 'E' && ch != 'e') + { + if (minus_sign) + { + if (val64 > static_cast(1) << 63) + { + // It is negative and cannot be represented in int64, so we resort to double + token.double_val = 0 - static_cast(val64); + token.signed_number = true; + token.kind = JSON_Parser::Token::TKN_NumberLiteral; + return true; + } + + // It is negative, but fits into int64 + token.int64_val = 0 - static_cast(val64); + token.kind = JSON_Parser::Token::TKN_IntegerLiteral; + token.signed_number = true; + return true; + } + + // It is positive so we use unsigned int64 + token.uint64_val = val64; + token.kind = JSON_Parser::Token::TKN_IntegerLiteral; + token.signed_number = false; + return true; + } + + // Magic number 5 leaves room for decimal point, null terminator, etc (in most cases) + ::std::vector buf(::std::numeric_limits::digits10 + 5); + int count = print_llu(buf.data(), buf.size(), val64); + _ASSERTE(count >= 0); + _ASSERTE((size_t)count < buf.size()); + // Resize to cut off the null terminator + buf.resize(count); + + bool decimal = false; + + while (ch != eof()) + { + // Digit encountered? + if (ch >= '0' && ch <= '9') + { + buf.push_back(static_cast(ch)); + NextCharacter(); + ch = PeekCharacter(); + } + + // Decimal dot? + else if (ch == '.') + { + if (decimal) return false; + + decimal = true; + buf.push_back(static_cast(ch)); + + NextCharacter(); + ch = PeekCharacter(); + + // Check that the following char is a digit + if (ch < '0' || ch > '9') return false; + + buf.push_back(static_cast(ch)); + NextCharacter(); + ch = PeekCharacter(); + } + + // Exponent? + else if (ch == 'E' || ch == 'e') + { + buf.push_back(static_cast(ch)); + NextCharacter(); + ch = PeekCharacter(); + + // Check for the exponent sign + if (ch == '+') + { + buf.push_back(static_cast(ch)); + NextCharacter(); + ch = PeekCharacter(); + } + else if (ch == '-') + { + buf.push_back(static_cast(ch)); + NextCharacter(); + ch = PeekCharacter(); + } + + // First number of the exponent + if (ch >= '0' && ch <= '9') + { + buf.push_back(static_cast(ch)); + NextCharacter(); + ch = PeekCharacter(); + } + else + return false; + + // The rest of the exponent + while (ch >= '0' && ch <= '9') + { + buf.push_back(static_cast(ch)); + NextCharacter(); + ch = PeekCharacter(); + } + + // The peeked character is not a number, so we can break from the loop and construct the number + break; + } + else + { + // Not expected number character? + break; + } + }; + + buf.push_back('\0'); + token.double_val = anystod(buf.data()); + if (minus_sign) + { + token.double_val = -token.double_val; + } + token.kind = (JSON_Parser::Token::TKN_NumberLiteral); + + return true; +} + +template +bool JSON_Parser::CompleteComment(Token& token) +{ + // We already found a '/' character as the first of a token -- what kind of comment is it? + + auto ch = NextCharacter(); + + if (ch == eof() || (ch != '/' && ch != '*')) return false; + + if (ch == '/') + { + // Line comment -- look for a newline or EOF to terminate. + + ch = NextCharacter(); + + while (ch != eof() && ch != '\n') + { + ch = NextCharacter(); + } + } + else + { + // Block comment -- look for a terminating "*/" sequence. + + ch = NextCharacter(); + + while (true) + { + if (ch == eof()) return false; + + if (ch == '*') + { + auto ch1 = PeekCharacter(); + + if (ch1 == eof()) return false; + + if (ch1 == '/') + { + // Consume the character + NextCharacter(); + break; + } + + ch = ch1; + } + + ch = NextCharacter(); + } + } + + token.kind = Token::TKN_Comment; + + return true; +} + +template +bool JSON_StringParser::CompleteComment(typename JSON_Parser::Token& token) +{ + // This function is specialized for the string parser, since we can be slightly more + // efficient in copying data from the input to the token: do a memcpy() rather than + // one character at a time. + + auto ch = JSON_StringParser::NextCharacter(); + + if (ch == eof() || (ch != '/' && ch != '*')) return false; + + if (ch == '/') + { + // Line comment -- look for a newline or EOF to terminate. + + ch = JSON_StringParser::NextCharacter(); + + while (ch != eof() && ch != '\n') + { + ch = JSON_StringParser::NextCharacter(); + } + } + else + { + // Block comment -- look for a terminating "*/" sequence. + + ch = JSON_StringParser::NextCharacter(); + + while (true) + { + if (ch == eof()) return false; + + if (ch == '*') + { + ch = JSON_StringParser::PeekCharacter(); + + if (ch == eof()) return false; + + if (ch == '/') + { + // Consume the character + JSON_StringParser::NextCharacter(); + break; + } + } + + ch = JSON_StringParser::NextCharacter(); + } + } + + token.kind = JSON_Parser::Token::TKN_Comment; + + return true; +} + +void convert_append_unicode_code_unit(JSON_Parser::Token& token, utf16string value) +{ + token.string_val.append(value); +} +void convert_append_unicode_code_unit(JSON_Parser::Token& token, utf16string value) +{ + token.string_val.append(::utility::conversions::utf16_to_utf8(value)); +} +void convert_append_unicode_code_unit(JSON_Parser::Token& token, utf16char value) +{ + token.string_val.push_back(value); +} +void convert_append_unicode_code_unit(JSON_Parser::Token& token, utf16char value) +{ + utf16string utf16(reinterpret_cast(&value), 1); + token.string_val.append(::utility::conversions::utf16_to_utf8(utf16)); +} + +template +int JSON_Parser::convert_unicode_to_code_point() +{ + // A four-hexdigit Unicode character. + // Transform into a 16 bit code point. + int decoded = 0; + for (int i = 0; i < 4; ++i) + { + auto ch = NextCharacter(); + int ch_int = static_cast(ch); + if (ch_int < 0 || ch_int > 127) return -1; +#ifdef _WIN32 + const int isxdigitResult = _isxdigit_l(ch_int, utility::details::scoped_c_thread_locale::c_locale()); +#else + const int isxdigitResult = isxdigit(ch_int); +#endif + if (!isxdigitResult) return -1; + + int val = _hexval[static_cast(ch_int)]; + + _ASSERTE(val != -1); + + // Add the input char to the decoded number + decoded |= (val << (4 * (3 - i))); + } + return decoded; +} + +#define H_SURROGATE_START 0xD800 +#define H_SURROGATE_END 0xDBFF + +template +inline bool JSON_Parser::handle_unescape_char(Token& token) +{ + token.has_unescape_symbol = true; + + // This function converts unescaped character pairs (e.g. "\t") into their ASCII or Unicode representations (e.g. + // tab sign) Also it handles \u + 4 hexadecimal digits + auto ch = NextCharacter(); + switch (ch) + { + case '\"': token.string_val.push_back('\"'); return true; + case '\\': token.string_val.push_back('\\'); return true; + case '/': token.string_val.push_back('/'); return true; + case 'b': token.string_val.push_back('\b'); return true; + case 'f': token.string_val.push_back('\f'); return true; + case 'r': token.string_val.push_back('\r'); return true; + case 'n': token.string_val.push_back('\n'); return true; + case 't': token.string_val.push_back('\t'); return true; + case 'u': + { + int decoded = convert_unicode_to_code_point(); + if (decoded == -1) + { + return false; + } + + // handle multi-block characters that start with a high-surrogate + if (decoded >= H_SURROGATE_START && decoded <= H_SURROGATE_END) + { + // skip escape character '\u' + if (NextCharacter() != '\\' || NextCharacter() != 'u') + { + return false; + } + int decoded2 = convert_unicode_to_code_point(); + + if (decoded2 == -1) + { + return false; + } + + utf16string compoundUTF16 = {static_cast(decoded), static_cast(decoded2)}; + convert_append_unicode_code_unit(token, compoundUTF16); + + return true; + } + + // Construct the character based on the decoded number + convert_append_unicode_code_unit(token, static_cast(decoded)); + + return true; + } + default: return false; + } +} + +template +bool JSON_Parser::CompleteStringLiteral(Token& token) +{ + token.has_unescape_symbol = false; + auto ch = NextCharacter(); + while (ch != '"') + { + if (ch == '\\') + { + handle_unescape_char(token); + } + else if (ch >= CharType(0x0) && ch < CharType(0x20)) + { + return false; + } + else + { + if (ch == eof()) return false; + + token.string_val.push_back(static_cast(ch)); + } + ch = NextCharacter(); + } + + if (ch == '"') + { + token.kind = Token::TKN_StringLiteral; + } + else + { + return false; + } + + return true; +} + +template +bool JSON_StringParser::CompleteStringLiteral(typename JSON_Parser::Token& token) +{ + // This function is specialized for the string parser, since we can be slightly more + // efficient in copying data from the input to the token: do a memcpy() rather than + // one character at a time. + + auto start = m_position; + token.has_unescape_symbol = false; + + auto ch = JSON_StringParser::NextCharacter(); + + while (ch != '"') + { + if (ch == eof()) return false; + + if (ch == '\\') + { + const size_t numChars = m_position - start - 1; + const size_t prevSize = token.string_val.size(); + token.string_val.resize(prevSize + numChars); + memcpy(const_cast(token.string_val.c_str() + prevSize), start, numChars * sizeof(CharType)); + + if (!JSON_StringParser::handle_unescape_char(token)) + { + return false; + } + + // Reset start position and continue. + start = m_position; + } + else if (ch >= CharType(0x0) && ch < CharType(0x20)) + { + return false; + } + + ch = JSON_StringParser::NextCharacter(); + } + + const size_t numChars = m_position - start - 1; + const size_t prevSize = token.string_val.size(); + token.string_val.resize(prevSize + numChars); + memcpy(const_cast(token.string_val.c_str() + prevSize), start, numChars * sizeof(CharType)); + + token.kind = JSON_Parser::Token::TKN_StringLiteral; + + return true; +} + +template +void JSON_Parser::GetNextToken(typename JSON_Parser::Token& result) +{ +try_again: + auto ch = EatWhitespace(); + + CreateToken(result, Token::TKN_EOF); + + if (ch == eof()) return; + + switch (ch) + { + case '{': + case '[': + { + if (++m_currentParsingDepth > JSON_Parser::maxParsingDepth) + { + SetErrorCode(result, json_error::nesting); + break; + } + + typename JSON_Parser::Token::Kind tk = ch == '{' ? Token::TKN_OpenBrace : Token::TKN_OpenBracket; + CreateToken(result, tk, result.start); + break; + } + case '}': + case ']': + { + if ((signed int)(--m_currentParsingDepth) < 0) + { + SetErrorCode(result, json_error::mismatched_brances); + break; + } + + typename JSON_Parser::Token::Kind tk = + ch == '}' ? Token::TKN_CloseBrace : Token::TKN_CloseBracket; + CreateToken(result, tk, result.start); + break; + } + case ',': CreateToken(result, Token::TKN_Comma, result.start); break; + + case ':': CreateToken(result, Token::TKN_Colon, result.start); break; + + case 't': + if (!CompleteKeywordTrue(result)) + { + SetErrorCode(result, json_error::malformed_literal); + } + break; + case 'f': + if (!CompleteKeywordFalse(result)) + { + SetErrorCode(result, json_error::malformed_literal); + } + break; + case 'n': + if (!CompleteKeywordNull(result)) + { + SetErrorCode(result, json_error::malformed_literal); + } + break; + case '/': + if (!CompleteComment(result)) + { + SetErrorCode(result, json_error::malformed_comment); + break; + } + // For now, we're ignoring comments. + goto try_again; + case '"': + if (!CompleteStringLiteral(result)) + { + SetErrorCode(result, json_error::malformed_string_literal); + } + break; + + case '-': + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + if (!CompleteNumberLiteral(static_cast(ch), result)) + { + SetErrorCode(result, json_error::malformed_numeric_literal); + } + break; + default: SetErrorCode(result, json_error::malformed_token); break; + } +} + +template +std::unique_ptr JSON_Parser::_ParseObject( + typename JSON_Parser::Token& tkn) +{ + auto obj = utility::details::make_unique(g_keep_json_object_unsorted); + auto& elems = obj->m_object.m_elements; + + GetNextToken(tkn); + if (tkn.m_error) goto error; + + if (tkn.kind != JSON_Parser::Token::TKN_CloseBrace) + { + while (true) + { + // State 1: New field or end of object, looking for field name or closing brace + std::basic_string fieldName; + switch (tkn.kind) + { + case JSON_Parser::Token::TKN_StringLiteral: fieldName = std::move(tkn.string_val); break; + default: goto error; + } + + GetNextToken(tkn); + if (tkn.m_error) goto error; + + // State 2: Looking for a colon. + if (tkn.kind != JSON_Parser::Token::TKN_Colon) goto done; + + GetNextToken(tkn); + if (tkn.m_error) goto error; + + // State 3: Looking for an expression. +#ifdef ENABLE_JSON_VALUE_VISUALIZER + auto fieldValue = _ParseValue(tkn); + auto type = fieldValue->type(); + elems.emplace_back(utility::conversions::to_string_t(std::move(fieldName)), + json::value(std::move(fieldValue), type)); +#else + elems.emplace_back(utility::conversions::to_string_t(std::move(fieldName)), json::value(_ParseValue(tkn))); +#endif + if (tkn.m_error) goto error; + + // State 4: Looking for a comma or a closing brace + switch (tkn.kind) + { + case JSON_Parser::Token::TKN_Comma: + GetNextToken(tkn); + if (tkn.m_error) goto error; + break; + case JSON_Parser::Token::TKN_CloseBrace: goto done; + default: goto error; + } + } + } + +done: + GetNextToken(tkn); + if (tkn.m_error) return utility::details::make_unique(); + + if (!g_keep_json_object_unsorted) + { + ::std::sort(elems.begin(), elems.end(), json::object::compare_pairs); + } + + return std::unique_ptr(obj.release()); + +error: + if (!tkn.m_error) + { + SetErrorCode(tkn, json_error::malformed_object_literal); + } + return utility::details::make_unique(); +} + +template +std::unique_ptr JSON_Parser::_ParseArray( + typename JSON_Parser::Token& tkn) +{ + GetNextToken(tkn); + if (tkn.m_error) return utility::details::make_unique(); + + auto result = utility::details::make_unique(); + + if (tkn.kind != JSON_Parser::Token::TKN_CloseBracket) + { + while (true) + { + // State 1: Looking for an expression. + result->m_array.m_elements.emplace_back(ParseValue(tkn)); + if (tkn.m_error) return utility::details::make_unique(); + + // State 4: Looking for a comma or a closing bracket + switch (tkn.kind) + { + case JSON_Parser::Token::TKN_Comma: + GetNextToken(tkn); + if (tkn.m_error) return utility::details::make_unique(); + break; + case JSON_Parser::Token::TKN_CloseBracket: + GetNextToken(tkn); + if (tkn.m_error) return utility::details::make_unique(); + return std::move(result); + default: + SetErrorCode(tkn, json_error::malformed_array_literal); + return utility::details::make_unique(); + } + } + } + + GetNextToken(tkn); + if (tkn.m_error) return utility::details::make_unique(); + + return std::unique_ptr(result.release()); +} + +template +std::unique_ptr JSON_Parser::_ParseValue( + typename JSON_Parser::Token& tkn) +{ + switch (tkn.kind) + { + case JSON_Parser::Token::TKN_OpenBrace: + { + return _ParseObject(tkn); + } + case JSON_Parser::Token::TKN_OpenBracket: + { + return _ParseArray(tkn); + } + case JSON_Parser::Token::TKN_StringLiteral: + { + auto value = utility::details::make_unique(std::move(tkn.string_val), + tkn.has_unescape_symbol); + GetNextToken(tkn); + if (tkn.m_error) return utility::details::make_unique(); + return std::move(value); + } + case JSON_Parser::Token::TKN_IntegerLiteral: + { + std::unique_ptr value; + if (tkn.signed_number) + value = utility::details::make_unique(tkn.int64_val); + else + value = utility::details::make_unique(tkn.uint64_val); + + GetNextToken(tkn); + if (tkn.m_error) return utility::details::make_unique(); + return std::move(value); + } + case JSON_Parser::Token::TKN_NumberLiteral: + { + auto value = utility::details::make_unique(tkn.double_val); + GetNextToken(tkn); + if (tkn.m_error) return utility::details::make_unique(); + return std::move(value); + } + case JSON_Parser::Token::TKN_BooleanLiteral: + { + auto value = utility::details::make_unique(tkn.boolean_val); + GetNextToken(tkn); + if (tkn.m_error) return utility::details::make_unique(); + return std::move(value); + } + case JSON_Parser::Token::TKN_NullLiteral: + { + GetNextToken(tkn); + // Returning a null value whether or not an error occurred. + return utility::details::make_unique(); + } + default: + { + SetErrorCode(tkn, json_error::malformed_token); + return utility::details::make_unique(); + } + } +} + +} // namespace details +} // namespace json +} // namespace web + +static web::json::value _parse_stream(utility::istream_t& stream) +{ + web::json::details::JSON_StreamParser parser(stream); + web::json::details::JSON_Parser::Token tkn; + + parser.GetNextToken(tkn); + if (tkn.m_error) + { + web::json::details::CreateException(tkn, utility::conversions::to_string_t(tkn.m_error.message())); + } + + auto value = parser.ParseValue(tkn); + if (tkn.m_error) + { + web::json::details::CreateException(tkn, utility::conversions::to_string_t(tkn.m_error.message())); + } + else if (tkn.kind != web::json::details::JSON_Parser::Token::TKN_EOF) + { + web::json::details::CreateException(tkn, + _XPLATSTR("Left-over characters in stream after parsing a JSON value")); + } + return value; +} + +static web::json::value _parse_stream(utility::istream_t& stream, std::error_code& error) +{ + web::json::details::JSON_StreamParser parser(stream); + web::json::details::JSON_Parser::Token tkn; + + parser.GetNextToken(tkn); + if (tkn.m_error) + { + error = std::move(tkn.m_error); + return web::json::value(); + } + + auto returnObject = parser.ParseValue(tkn); + if (tkn.kind != web::json::details::JSON_Parser::Token::TKN_EOF) + { + web::json::details::SetErrorCode(tkn, web::json::details::json_error::left_over_character_in_stream); + } + + error = std::move(tkn.m_error); + return returnObject; +} + +#ifdef _WIN32 +static web::json::value _parse_narrow_stream(std::istream& stream) +{ + web::json::details::JSON_StreamParser parser(stream); + web::json::details::JSON_StreamParser::Token tkn; + + parser.GetNextToken(tkn); + if (tkn.m_error) + { + web::json::details::CreateException(tkn, utility::conversions::to_string_t(tkn.m_error.message())); + } + + auto value = parser.ParseValue(tkn); + if (tkn.m_error) + { + web::json::details::CreateException(tkn, utility::conversions::to_string_t(tkn.m_error.message())); + } + else if (tkn.kind != web::json::details::JSON_Parser::Token::TKN_EOF) + { + web::json::details::CreateException(tkn, + _XPLATSTR("Left-over characters in stream after parsing a JSON value")); + } + return value; +} + +static web::json::value _parse_narrow_stream(std::istream& stream, std::error_code& error) +{ + web::json::details::JSON_StreamParser parser(stream); + web::json::details::JSON_StreamParser::Token tkn; + + parser.GetNextToken(tkn); + if (tkn.m_error) + { + error = std::move(tkn.m_error); + return web::json::value(); + } + + auto returnObject = parser.ParseValue(tkn); + if (tkn.kind != web::json::details::JSON_Parser::Token::TKN_EOF) + { + returnObject = web::json::value(); + web::json::details::SetErrorCode(tkn, web::json::details::json_error::left_over_character_in_stream); + } + + error = std::move(tkn.m_error); + return returnObject; +} +#endif + +web::json::value web::json::value::parse(const utility::string_t& str) +{ + web::json::details::JSON_StringParser parser(str); + web::json::details::JSON_Parser::Token tkn; + + parser.GetNextToken(tkn); + if (tkn.m_error) + { + web::json::details::CreateException(tkn, utility::conversions::to_string_t(tkn.m_error.message())); + } + + auto value = parser.ParseValue(tkn); + if (tkn.m_error) + { + web::json::details::CreateException(tkn, utility::conversions::to_string_t(tkn.m_error.message())); + } + else if (tkn.kind != web::json::details::JSON_Parser::Token::TKN_EOF) + { + web::json::details::CreateException(tkn, + _XPLATSTR("Left-over characters in stream after parsing a JSON value")); + } + return value; +} + +web::json::value web::json::value::parse(const utility::string_t& str, std::error_code& error) +{ + web::json::details::JSON_StringParser parser(str); + web::json::details::JSON_Parser::Token tkn; + + parser.GetNextToken(tkn); + if (tkn.m_error) + { + error = std::move(tkn.m_error); + return web::json::value(); + } + + auto returnObject = parser.ParseValue(tkn); + if (tkn.kind != web::json::details::JSON_Parser::Token::TKN_EOF) + { + returnObject = web::json::value(); + web::json::details::SetErrorCode(tkn, web::json::details::json_error::left_over_character_in_stream); + } + + error = std::move(tkn.m_error); + return returnObject; +} + +web::json::value web::json::value::parse(utility::istream_t& stream) { return _parse_stream(stream); } + +web::json::value web::json::value::parse(utility::istream_t& stream, std::error_code& error) +{ + return _parse_stream(stream, error); +} + +#ifdef _WIN32 +web::json::value web::json::value::parse(std::istream& stream) { return _parse_narrow_stream(stream); } + +web::json::value web::json::value::parse(std::istream& stream, std::error_code& error) +{ + return _parse_narrow_stream(stream, error); +} +#endif diff --git a/deps/cpprestsdk/src/json/json_serialization.cpp b/deps/cpprestsdk/src/json/json_serialization.cpp new file mode 100644 index 0000000000..6ff2e37d74 --- /dev/null +++ b/deps/cpprestsdk/src/json/json_serialization.cpp @@ -0,0 +1,254 @@ +/*** + * Copyright (C) Microsoft. All rights reserved. + * Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. + * + * =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ + * + * HTTP Library: JSON parser and writer + * + * For the latest on this and related APIs, please see: https://github.com/Microsoft/cpprestsdk + * + * =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- + ****/ + +#include "pch.h" + +#include + +#ifndef _WIN32 +#define __STDC_FORMAT_MACROS +#include +#endif + +using namespace web; +using namespace web::json; +using namespace utility; +using namespace utility::conversions; + +// +// JSON Serialization +// + +#ifdef _WIN32 +void web::json::value::serialize(std::ostream& stream) const +{ + // This has better performance than writing directly to stream. + std::string str; + m_value->serialize_impl(str); + stream << str; +} +void web::json::value::format(std::basic_string& string) const { m_value->format(string); } +#endif + +void web::json::value::serialize(utility::ostream_t& stream) const +{ +#ifndef _WIN32 + utility::details::scoped_c_thread_locale locale; +#endif + + // This has better performance than writing directly to stream. + utility::string_t str; + m_value->serialize_impl(str); + stream << str; +} + +void web::json::value::format(std::basic_string& string) const { m_value->format(string); } + +template +void web::json::details::append_escape_string(std::basic_string& str, + const std::basic_string& escaped) +{ + for (const auto& ch : escaped) + { + switch (ch) + { + case '\"': + str += '\\'; + str += '\"'; + break; + case '\\': + str += '\\'; + str += '\\'; + break; + case '\b': + str += '\\'; + str += 'b'; + break; + case '\f': + str += '\\'; + str += 'f'; + break; + case '\r': + str += '\\'; + str += 'r'; + break; + case '\n': + str += '\\'; + str += 'n'; + break; + case '\t': + str += '\\'; + str += 't'; + break; + default: + + // If a control character then must unicode escaped. + if (ch >= 0 && ch <= 0x1F) + { + static const std::array intToHex = { + {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'}}; + str += '\\'; + str += 'u'; + str += '0'; + str += '0'; + str += intToHex[(ch & 0xF0) >> 4]; + str += intToHex[ch & 0x0F]; + } + else + { + str += ch; + } + } + } +} + +void web::json::details::format_string(const utility::string_t& key, utility::string_t& str) +{ + str.push_back('"'); + append_escape_string(str, key); + str.push_back('"'); +} + +#ifdef _WIN32 +void web::json::details::format_string(const utility::string_t& key, std::string& str) +{ + str.push_back('"'); + append_escape_string(str, utility::conversions::to_utf8string(key)); + str.push_back('"'); +} +#endif + +void web::json::details::_String::format(std::basic_string& str) const +{ + str.push_back('"'); + + if (m_has_escape_char) + { + append_escape_string(str, utility::conversions::to_utf8string(m_string)); + } + else + { + str.append(utility::conversions::to_utf8string(m_string)); + } + + str.push_back('"'); +} + +void web::json::details::_Number::format(std::basic_string& stream) const +{ + if (m_number.m_type != number::type::double_type) + { + // #digits + 1 to avoid loss + 1 for the sign + 1 for null terminator. + const size_t tempSize = std::numeric_limits::digits10 + 3; + char tempBuffer[tempSize]; + +#ifdef _WIN32 + // This can be improved performance-wise if we implement our own routine + if (m_number.m_type == number::type::signed_type) + _i64toa_s(m_number.m_intval, tempBuffer, tempSize, 10); + else + _ui64toa_s(m_number.m_uintval, tempBuffer, tempSize, 10); + + const auto numChars = strnlen_s(tempBuffer, tempSize); +#else + int numChars; + if (m_number.m_type == number::type::signed_type) + numChars = snprintf(tempBuffer, tempSize, "%" PRId64, m_number.m_intval); + else + numChars = snprintf(tempBuffer, tempSize, "%" PRIu64, m_number.m_uintval); +#endif + stream.append(tempBuffer, numChars); + } + else + { + // #digits + 2 to avoid loss + 1 for the sign + 1 for decimal point + 5 for exponent (e+xxx) + 1 for null + // terminator + const size_t tempSize = std::numeric_limits::digits10 + 10; + char tempBuffer[tempSize]; +#ifdef _WIN32 + const auto numChars = _sprintf_s_l(tempBuffer, + tempSize, + "%.*g", + utility::details::scoped_c_thread_locale::c_locale(), + std::numeric_limits::digits10 + 2, + m_number.m_value); +#else + const auto numChars = + snprintf(tempBuffer, tempSize, "%.*g", std::numeric_limits::digits10 + 2, m_number.m_value); +#endif + stream.append(tempBuffer, numChars); + } +} + +#ifdef _WIN32 + +void web::json::details::_String::format(std::basic_string& str) const +{ + str.push_back(L'"'); + + if (m_has_escape_char) + { + append_escape_string(str, m_string); + } + else + { + str.append(m_string); + } + + str.push_back(L'"'); +} + +void web::json::details::_Number::format(std::basic_string& stream) const +{ + if (m_number.m_type != number::type::double_type) + { + // #digits + 1 to avoid loss + 1 for the sign + 1 for null terminator. + const size_t tempSize = std::numeric_limits::digits10 + 3; + wchar_t tempBuffer[tempSize]; + + if (m_number.m_type == number::type::signed_type) + _i64tow_s(m_number.m_intval, tempBuffer, tempSize, 10); + else + _ui64tow_s(m_number.m_uintval, tempBuffer, tempSize, 10); + + stream.append(tempBuffer, wcsnlen_s(tempBuffer, tempSize)); + } + else + { + // #digits + 2 to avoid loss + 1 for the sign + 1 for decimal point + 5 for exponent (e+xxx) + 1 for null + // terminator + const size_t tempSize = std::numeric_limits::digits10 + 10; + wchar_t tempBuffer[tempSize]; + const int numChars = _swprintf_s_l(tempBuffer, + tempSize, + L"%.*g", + utility::details::scoped_c_thread_locale::c_locale(), + std::numeric_limits::digits10 + 2, + m_number.m_value); + stream.append(tempBuffer, numChars); + } +} + +#endif + +const utility::string_t& web::json::details::_String::as_string() const { return m_string; } + +const utility::string_t& web::json::value::as_string() const { return m_value->as_string(); } + +utility::string_t json::value::serialize() const +{ +#ifndef _WIN32 + utility::details::scoped_c_thread_locale locale; +#endif + return m_value->to_string(); +} diff --git a/deps/cpprestsdk/src/utilities/asyncrt_utils.cpp b/deps/cpprestsdk/src/utilities/asyncrt_utils.cpp new file mode 100644 index 0000000000..b9b03d8299 --- /dev/null +++ b/deps/cpprestsdk/src/utilities/asyncrt_utils.cpp @@ -0,0 +1,1490 @@ +/*** + * Copyright (C) Microsoft. All rights reserved. + * Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. + * + * =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ + * + * Utilities + * + * For the latest on this and related APIs, please see: https://github.com/Microsoft/cpprestsdk + * + * =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- + ****/ + +#include "pch.h" + +#include +#include +#include +#include +#include + +using namespace web; +using namespace utility; +using namespace utility::conversions; + +namespace +{ +struct to_lower_ch_impl +{ + char operator()(char c) const CPPREST_NOEXCEPT + { + if (c >= 'A' && c <= 'Z') return static_cast(c - 'A' + 'a'); + return c; + } + + wchar_t operator()(wchar_t c) const CPPREST_NOEXCEPT + { + if (c >= L'A' && c <= L'Z') return static_cast(c - L'A' + L'a'); + return c; + } +}; + +CPPREST_CONSTEXPR to_lower_ch_impl to_lower_ch {}; + +struct eq_lower_ch_impl +{ + template + inline CharT operator()(const CharT left, const CharT right) const CPPREST_NOEXCEPT + { + return to_lower_ch(left) == to_lower_ch(right); + } +}; + +CPPREST_CONSTEXPR eq_lower_ch_impl eq_lower_ch {}; + +struct lt_lower_ch_impl +{ + template + inline CharT operator()(const CharT left, const CharT right) const CPPREST_NOEXCEPT + { + return to_lower_ch(left) < to_lower_ch(right); + } +}; + +CPPREST_CONSTEXPR lt_lower_ch_impl lt_lower_ch {}; +} // namespace + +namespace utility +{ +namespace details +{ +_ASYNCRTIMP bool __cdecl str_iequal(const std::string& left, const std::string& right) CPPREST_NOEXCEPT +{ + return left.size() == right.size() && std::equal(left.cbegin(), left.cend(), right.cbegin(), eq_lower_ch); +} + +_ASYNCRTIMP bool __cdecl str_iequal(const std::wstring& left, const std::wstring& right) CPPREST_NOEXCEPT +{ + return left.size() == right.size() && std::equal(left.cbegin(), left.cend(), right.cbegin(), eq_lower_ch); +} + +_ASYNCRTIMP bool __cdecl str_iless(const std::string& left, const std::string& right) CPPREST_NOEXCEPT +{ + return std::lexicographical_compare(left.cbegin(), left.cend(), right.cbegin(), right.cend(), lt_lower_ch); +} + +_ASYNCRTIMP bool __cdecl str_iless(const std::wstring& left, const std::wstring& right) CPPREST_NOEXCEPT +{ + return std::lexicographical_compare(left.cbegin(), left.cend(), right.cbegin(), right.cend(), lt_lower_ch); +} + +_ASYNCRTIMP void __cdecl inplace_tolower(std::string& target) CPPREST_NOEXCEPT +{ + for (auto& ch : target) + { + ch = to_lower_ch(ch); + } +} + +_ASYNCRTIMP void __cdecl inplace_tolower(std::wstring& target) CPPREST_NOEXCEPT +{ + for (auto& ch : target) + { + ch = to_lower_ch(ch); + } +} + +#if !defined(ANDROID) && !defined(__ANDROID__) +std::once_flag g_c_localeFlag; +std::unique_ptr g_c_locale( + nullptr, [](scoped_c_thread_locale::xplat_locale*) {}); +scoped_c_thread_locale::xplat_locale scoped_c_thread_locale::c_locale() +{ + std::call_once(g_c_localeFlag, [&]() { + scoped_c_thread_locale::xplat_locale* clocale = new scoped_c_thread_locale::xplat_locale(); +#ifdef _WIN32 + *clocale = _create_locale(LC_ALL, "C"); + if (clocale == nullptr || *clocale == nullptr) + { + throw std::runtime_error("Unable to create 'C' locale."); + } + auto deleter = [](scoped_c_thread_locale::xplat_locale* clocale) { + _free_locale(*clocale); + delete clocale; + }; +#else + *clocale = newlocale(LC_ALL, "C", nullptr); + if (clocale == nullptr || *clocale == nullptr) + { + throw std::runtime_error("Unable to create 'C' locale."); + } + auto deleter = [](scoped_c_thread_locale::xplat_locale *clocale) + { + freelocale(*clocale); + delete clocale; + }; +#endif + g_c_locale = + std::unique_ptr( + clocale, deleter); + }); + return *g_c_locale; +} +#endif + +#ifdef _WIN32 +scoped_c_thread_locale::scoped_c_thread_locale() : m_prevLocale(), m_prevThreadSetting(-1) +{ + char* prevLocale = setlocale(LC_ALL, nullptr); + if (prevLocale == nullptr) + { + throw std::runtime_error("Unable to retrieve current locale."); + } + + if (std::strcmp(prevLocale, "C") != 0) + { + m_prevLocale = prevLocale; + m_prevThreadSetting = _configthreadlocale(_ENABLE_PER_THREAD_LOCALE); + if (m_prevThreadSetting == -1) + { + throw std::runtime_error("Unable to enable per thread locale."); + } + if (setlocale(LC_ALL, "C") == nullptr) + { + _configthreadlocale(m_prevThreadSetting); + throw std::runtime_error("Unable to set locale"); + } + } +} + +scoped_c_thread_locale::~scoped_c_thread_locale() +{ + if (m_prevThreadSetting != -1) + { + setlocale(LC_ALL, m_prevLocale.c_str()); + _configthreadlocale(m_prevThreadSetting); + } +} +#elif (defined(ANDROID) || defined(__ANDROID__)) +scoped_c_thread_locale::scoped_c_thread_locale() {} +scoped_c_thread_locale::~scoped_c_thread_locale() {} +#else +scoped_c_thread_locale::scoped_c_thread_locale() : m_prevLocale(nullptr) +{ + char* prevLocale = setlocale(LC_ALL, nullptr); + if (prevLocale == nullptr) + { + throw std::runtime_error("Unable to retrieve current locale."); + } + + if (std::strcmp(prevLocale, "C") != 0) + { + m_prevLocale = uselocale(c_locale()); + if (m_prevLocale == nullptr) + { + throw std::runtime_error("Unable to set locale"); + } + } +} + +scoped_c_thread_locale::~scoped_c_thread_locale() +{ + if (m_prevLocale != nullptr) + { + uselocale(m_prevLocale); + } +} +#endif +} // namespace details + +namespace details +{ +const std::error_category& __cdecl platform_category() +{ +#ifdef _WIN32 + return windows_category(); +#else + return linux_category(); +#endif +} + +#ifdef _WIN32 + +// Remove once VS 2013 is no longer supported. +#if _MSC_VER < 1900 +static details::windows_category_impl instance; +#endif +const std::error_category& __cdecl windows_category() +{ +#if _MSC_VER >= 1900 + static details::windows_category_impl instance; +#endif + return instance; +} + +std::string windows_category_impl::message(int errorCode) const CPPREST_NOEXCEPT +{ + const size_t buffer_size = 4096; + DWORD dwFlags = FORMAT_MESSAGE_FROM_SYSTEM; + LPCVOID lpSource = NULL; + +#if !defined(__cplusplus_winrt) + if (errorCode >= 12000) + { + dwFlags = FORMAT_MESSAGE_FROM_HMODULE; + lpSource = GetModuleHandleA("winhttp.dll"); // this handle DOES NOT need to be freed + } +#endif + + std::wstring buffer(buffer_size, 0); + + const auto result = ::FormatMessageW(dwFlags, lpSource, errorCode, 0, &buffer[0], buffer_size, NULL); + + if (result == 0) + { + return "Unable to get an error message for error code: " + std::to_string(errorCode) + "."; + } + + // strip exceeding characters of the initial resize call + buffer.resize(result); + + return utility::conversions::to_utf8string(buffer); +} + +std::error_condition windows_category_impl::default_error_condition(int errorCode) const CPPREST_NOEXCEPT +{ + // First see if the STL implementation can handle the mapping for common cases. + const std::error_condition errCondition = std::system_category().default_error_condition(errorCode); + const std::string errConditionMsg = errCondition.message(); + if (!utility::details::str_iequal(errConditionMsg, "unknown error")) + { + return errCondition; + } + + switch (errorCode) + { + /* +#ifndef __cplusplus_winrt + + case ERROR_WINHTTP_TIMEOUT: return std::errc::timed_out; + case ERROR_WINHTTP_CANNOT_CONNECT: return std::errc::host_unreachable; + case ERROR_WINHTTP_CONNECTION_ERROR: return std::errc::connection_aborted; +#endif*/ + case INET_E_RESOURCE_NOT_FOUND: + case INET_E_CANNOT_CONNECT: return std::errc::host_unreachable; + case INET_E_CONNECTION_TIMEOUT: return std::errc::timed_out; + case INET_E_DOWNLOAD_FAILURE: return std::errc::connection_aborted; + default: break; + } + + return std::error_condition(errorCode, *this); +} + +#else + +const std::error_category& __cdecl linux_category() +{ + // On Linux we are using boost error codes which have the exact same + // mapping and are equivalent with std::generic_category error codes. + return std::generic_category(); +} + +#endif + +} // namespace details + +#define LOW_3BITS 0x7 +#define LOW_4BITS 0xF +#define LOW_5BITS 0x1F +#define LOW_6BITS 0x3F +#define BIT4 0x8 +#define BIT5 0x10 +#define BIT6 0x20 +#define BIT7 0x40 +#define BIT8 0x80 +#define L_SURROGATE_START 0xDC00 +#define L_SURROGATE_END 0xDFFF +#define H_SURROGATE_START 0xD800 +#define H_SURROGATE_END 0xDBFF +#define SURROGATE_PAIR_START 0x10000 + +// Create a dedicated type for characters to avoid the issue +// of different platforms defaulting char to be either signed +// or unsigned. +using UtilCharInternal_t = signed char; + +inline size_t count_utf8_to_utf16(const std::string& s) +{ + const size_t sSize = s.size(); + auto const sData = reinterpret_cast(s.data()); + size_t result {sSize}; + + for (size_t index = 0; index < sSize;) + { + if (sData[index] >= 0) + { + // use fast inner loop to skip single byte code points (which are + // expected to be the most frequent) + while ((++index < sSize) && (sData[index] >= 0)) + ; + + if (index >= sSize) break; + } + + // start special handling for multi-byte code points + const UtilCharInternal_t c {sData[index++]}; + + if ((c & BIT7) == 0) + { + throw std::range_error("UTF-8 string character can never start with 10xxxxxx"); + } + else if ((c & BIT6) == 0) // 2 byte character, 0x80 to 0x7FF + { + if (index == sSize) + { + throw std::range_error("UTF-8 string is missing bytes in character"); + } + + const UtilCharInternal_t c2 {sData[index++]}; + if ((c2 & 0xC0) != BIT8) + { + throw std::range_error("UTF-8 continuation byte is missing leading bit mask"); + } + + // can't require surrogates for 7FF + --result; + } + else if ((c & BIT5) == 0) // 3 byte character, 0x800 to 0xFFFF + { + if (sSize - index < 2) + { + throw std::range_error("UTF-8 string is missing bytes in character"); + } + + const UtilCharInternal_t c2 {sData[index++]}; + const UtilCharInternal_t c3 {sData[index++]}; + if (((c2 | c3) & 0xC0) != BIT8) + { + throw std::range_error("UTF-8 continuation byte is missing leading bit mask"); + } + + result -= 2; + } + else if ((c & BIT4) == 0) // 4 byte character, 0x10000 to 0x10FFFF + { + if (sSize - index < 3) + { + throw std::range_error("UTF-8 string is missing bytes in character"); + } + + const UtilCharInternal_t c2 {sData[index++]}; + const UtilCharInternal_t c3 {sData[index++]}; + const UtilCharInternal_t c4 {sData[index++]}; + if (((c2 | c3 | c4) & 0xC0) != BIT8) + { + throw std::range_error("UTF-8 continuation byte is missing leading bit mask"); + } + + const uint32_t codePoint = + ((c & LOW_3BITS) << 18) | ((c2 & LOW_6BITS) << 12) | ((c3 & LOW_6BITS) << 6) | (c4 & LOW_6BITS); + result -= (3 - (codePoint >= SURROGATE_PAIR_START)); + } + else + { + throw std::range_error("UTF-8 string has invalid Unicode code point"); + } + } + + return result; +} + +utf16string __cdecl conversions::utf8_to_utf16(const std::string& s) +{ + // Save repeated heap allocations, use the length of resulting sequence. + const size_t srcSize = s.size(); + auto const srcData = reinterpret_cast(s.data()); + utf16string dest(count_utf8_to_utf16(s), L'\0'); + utf16string::value_type* const destData = &dest[0]; + size_t destIndex = 0; + + for (size_t index = 0; index < srcSize; ++index) + { + UtilCharInternal_t src = srcData[index]; + switch (src & 0xF0) + { + case 0xF0: // 4 byte character, 0x10000 to 0x10FFFF + { + const UtilCharInternal_t c2 {srcData[++index]}; + const UtilCharInternal_t c3 {srcData[++index]}; + const UtilCharInternal_t c4 {srcData[++index]}; + uint32_t codePoint = + ((src & LOW_3BITS) << 18) | ((c2 & LOW_6BITS) << 12) | ((c3 & LOW_6BITS) << 6) | (c4 & LOW_6BITS); + if (codePoint >= SURROGATE_PAIR_START) + { + // In UTF-16 U+10000 to U+10FFFF are represented as two 16-bit code units, surrogate pairs. + // - 0x10000 is subtracted from the code point + // - high surrogate is 0xD800 added to the top ten bits + // - low surrogate is 0xDC00 added to the low ten bits + codePoint -= SURROGATE_PAIR_START; + destData[destIndex++] = static_cast((codePoint >> 10) | H_SURROGATE_START); + destData[destIndex++] = + static_cast((codePoint & 0x3FF) | L_SURROGATE_START); + } + else + { + // In UTF-16 U+0000 to U+D7FF and U+E000 to U+FFFF are represented exactly as the Unicode code point + // value. U+D800 to U+DFFF are not valid characters, for simplicity we assume they are not present + // but will encode them if encountered. + destData[destIndex++] = static_cast(codePoint); + } + } + break; + case 0xE0: // 3 byte character, 0x800 to 0xFFFF + { + const UtilCharInternal_t c2 {srcData[++index]}; + const UtilCharInternal_t c3 {srcData[++index]}; + destData[destIndex++] = static_cast( + ((src & LOW_4BITS) << 12) | ((c2 & LOW_6BITS) << 6) | (c3 & LOW_6BITS)); + } + break; + case 0xD0: // 2 byte character, 0x80 to 0x7FF + case 0xC0: + { + const UtilCharInternal_t c2 {srcData[++index]}; + destData[destIndex++] = + static_cast(((src & LOW_5BITS) << 6) | (c2 & LOW_6BITS)); + } + break; + default: // single byte character, 0x0 to 0x7F + // try to use a fast inner loop for following single byte characters, + // since they are quite probable + do + { + destData[destIndex++] = static_cast(srcData[index++]); + } while (index < srcSize && srcData[index] > 0); + // adjust index since it will be incremented by the for loop + --index; + } + } + return dest; +} + +inline size_t count_utf16_to_utf8(const utf16string& w) +{ + const utf16string::value_type* const srcData = &w[0]; + const size_t srcSize = w.size(); + size_t destSize(srcSize); + for (size_t index = 0; index < srcSize; ++index) + { + const utf16string::value_type ch(srcData[index]); + if (ch <= 0x7FF) + { + if (ch > 0x7F) // 2 bytes needed (11 bits used) + { + ++destSize; + } + } + // Check for high surrogate. + else if (ch >= H_SURROGATE_START && ch <= H_SURROGATE_END) // 4 bytes needed (21 bits used) + { + ++index; + if (index == srcSize) + { + throw std::range_error("UTF-16 string is missing low surrogate"); + } + + const auto lowSurrogate = srcData[index]; + if (lowSurrogate < L_SURROGATE_START || lowSurrogate > L_SURROGATE_END) + { + throw std::range_error("UTF-16 string has invalid low surrogate"); + } + + destSize += 2; + } + else // 3 bytes needed (16 bits used) + { + destSize += 2; + } + } + + return destSize; +} + +std::string __cdecl conversions::utf16_to_utf8(const utf16string& w) +{ + const size_t srcSize = w.size(); + const utf16string::value_type* const srcData = &w[0]; + std::string dest(count_utf16_to_utf8(w), '\0'); + std::string::value_type* const destData = &dest[0]; + size_t destIndex(0); + + for (size_t index = 0; index < srcSize; ++index) + { + const utf16string::value_type src = srcData[index]; + if (src <= 0x7FF) + { + if (src <= 0x7F) // single byte character + { + destData[destIndex++] = static_cast(src); + } + else // 2 bytes needed (11 bits used) + { + destData[destIndex++] = static_cast(char((src >> 6) | 0xC0)); // leading 5 bits + destData[destIndex++] = static_cast(char((src & LOW_6BITS) | BIT8)); // trailing 6 bits + } + } + // Check for high surrogate. + else if (src >= H_SURROGATE_START && src <= H_SURROGATE_END) + { + const auto highSurrogate = src; + const auto lowSurrogate = srcData[++index]; + + // To get from surrogate pair to Unicode code point: + // - subtract 0xD800 from high surrogate, this forms top ten bits + // - subtract 0xDC00 from low surrogate, this forms low ten bits + // - add 0x10000 + // Leaves a code point in U+10000 to U+10FFFF range. + uint32_t codePoint = highSurrogate - H_SURROGATE_START; + codePoint <<= 10; + codePoint |= lowSurrogate - L_SURROGATE_START; + codePoint += SURROGATE_PAIR_START; + + // 4 bytes needed (21 bits used) + destData[destIndex++] = static_cast((codePoint >> 18) | 0xF0); // leading 3 bits + destData[destIndex++] = static_cast(((codePoint >> 12) & LOW_6BITS) | BIT8); // next 6 bits + destData[destIndex++] = static_cast(((codePoint >> 6) & LOW_6BITS) | BIT8); // next 6 bits + destData[destIndex++] = static_cast((codePoint & LOW_6BITS) | BIT8); // trailing 6 bits + } + else // 3 bytes needed (16 bits used) + { + destData[destIndex++] = static_cast((src >> 12) | 0xE0); // leading 4 bits + destData[destIndex++] = static_cast(((src >> 6) & LOW_6BITS) | BIT8); // middle 6 bits + destData[destIndex++] = static_cast((src & LOW_6BITS) | BIT8); // trailing 6 bits + } + } + + return dest; +} + +utf16string __cdecl conversions::usascii_to_utf16(const std::string& s) +{ + // Ascii is a subset of UTF-8 so just convert to UTF-16 + return utf8_to_utf16(s); +} + +utf16string __cdecl conversions::latin1_to_utf16(const std::string& s) +{ + // Latin1 is the first 256 code points in Unicode. + // In UTF-16 encoding each of these is represented as exactly the numeric code point. + utf16string dest; + // Prefer resize combined with for-loop over constructor dest(s.begin(), s.end()) + // for faster assignment. + dest.resize(s.size()); + for (size_t i = 0; i < s.size(); ++i) + { + dest[i] = utf16char(static_cast(s[i])); + } + return dest; +} + +utf8string __cdecl conversions::latin1_to_utf8(const std::string& s) { return utf16_to_utf8(latin1_to_utf16(s)); } + +#ifndef _UTF16_STRINGS +utility::string_t __cdecl conversions::to_string_t(utf16string&& s) { return utf16_to_utf8(std::move(s)); } +#endif + +#ifdef _UTF16_STRINGS +utility::string_t __cdecl conversions::to_string_t(std::string&& s) { return utf8_to_utf16(std::move(s)); } +#endif + +#ifndef _UTF16_STRINGS +utility::string_t __cdecl conversions::to_string_t(const utf16string& s) { return utf16_to_utf8(s); } +#endif + +#ifdef _UTF16_STRINGS +utility::string_t __cdecl conversions::to_string_t(const std::string& s) { return utf8_to_utf16(s); } +#endif + +std::string __cdecl conversions::to_utf8string(const utf16string& value) { return utf16_to_utf8(value); } + +utf16string __cdecl conversions::to_utf16string(const std::string& value) { return utf8_to_utf16(value); } + +static const int64_t NtToUnixOffsetSeconds = 11644473600; // diff between windows and unix epochs (seconds) + +static bool year_is_leap_year(int year) { return (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0)); } + +static const int SecondsInMinute = 60; +static const int SecondsInHour = SecondsInMinute * 60; +static const int SecondsInDay = SecondsInHour * 24; + +static const int DaysInYear = 365; +static const int DaysIn4Years = DaysInYear * 4 + 1; +static const int DaysIn100Years = DaysIn4Years * 25 - 1; +static const int DaysIn400Years = DaysIn100Years * 4 + 1; + +static const int SecondsInYear = SecondsInDay * DaysInYear; +static const int SecondsIn4Years = SecondsInDay * DaysIn4Years; +static const int64_t SecondsIn100Years = static_cast(SecondsInDay) * DaysIn100Years; +static const int64_t SecondsIn400Years = static_cast(SecondsInDay) * DaysIn400Years; +static const int64_t SecondsFrom1900To2001 = INT64_C(3187296000); + +static const int64_t NtTo1900OffsetInterval = INT64_C(0x014F373BFDE04000); + +static int count_leap_years(const int yearsSince1900) +{ + int tmpYears = yearsSince1900 + 299; // shift into 1601, the first 400 year cycle including 1900 + + int year400 = tmpYears / 400; + tmpYears -= year400 * 400; + int result = year400 * 97; + + int year100 = tmpYears / 100; + tmpYears -= year100 * 100; + result += year100 * 24; + + result += tmpYears / 4; + + // subtract off leap years from 1601 + result -= 72; + + return result; +} + +// The following table assumes no leap year; leap year is added separately +static const unsigned short cumulative_days_to_month[12] = { + 0, // Jan + 31, // Feb + 59, // Mar + 90, // Apr + 120, // May + 151, // Jun + 181, // Jul + 212, // Aug + 243, // Sep + 273, // Oct + 304, // Nov + 334 // Dec +}; + +static const unsigned short cumulative_days_to_month_leap[12] = { + 0, // Jan + 31, // Feb + 60, // Mar + 91, // Apr + 121, // May + 152, // Jun + 182, // Jul + 213, // Aug + 244, // Sep + 274, // Oct + 305, // Nov + 335 // Dec +}; + +datetime __cdecl datetime::utc_now() +{ +#ifdef _WIN32 + ULARGE_INTEGER largeInt; + FILETIME fileTime; + GetSystemTimeAsFileTime(&fileTime); + + largeInt.LowPart = fileTime.dwLowDateTime; + largeInt.HighPart = fileTime.dwHighDateTime; + + return datetime(largeInt.QuadPart); +#else // LINUX + struct timeval time; + gettimeofday(&time, nullptr); + int64_t result = NtToUnixOffsetSeconds + time.tv_sec; + result *= _secondTicks; // convert to 10e-7 + result += time.tv_usec * 10; // convert and add microseconds, 10e-6 to 10e-7 + return datetime(static_cast(result)); +#endif +} + +static const char dayNames[] = "Sun\0Mon\0Tue\0Wed\0Thu\0Fri\0Sat"; +static const char monthNames[] = "Jan\0Feb\0Mar\0Apr\0May\0Jun\0Jul\0Aug\0Sep\0Oct\0Nov\0Dec"; + +struct compute_year_result +{ + int year; + int secondsLeftThisYear; +}; + +static const int64_t secondsFrom1601To1900 = INT64_C(9435484800); + +static compute_year_result compute_year(int64_t secondsSince1900) +{ + int64_t secondsLeft = secondsSince1900 + secondsFrom1601To1900; // shift to start of this 400 year cycle + + int year400 = static_cast(secondsLeft / SecondsIn400Years); + secondsLeft -= year400 * SecondsIn400Years; + + int year100 = static_cast(secondsLeft / SecondsIn100Years); + secondsLeft -= year100 * SecondsIn100Years; + + int year4 = static_cast(secondsLeft / SecondsIn4Years); + int secondsInt = static_cast(secondsLeft - year4 * SecondsIn4Years); + + int year1 = secondsInt / SecondsInYear; + secondsInt -= year1 * SecondsInYear; + + // shift back to 1900 base from 1601: + return {year400 * 400 + year100 * 100 + year4 * 4 + year1 - 299, secondsInt}; +} + +utility::string_t datetime::to_string(date_format format) const +{ + if (m_interval > INT64_C(2650467743990000000)) + { + throw std::out_of_range("The requested year exceeds the year 9999."); + } + + const int64_t epochAdjusted = static_cast(m_interval) - NtTo1900OffsetInterval; + const int64_t secondsSince1900 = epochAdjusted / _secondTicks; // convert to seconds + const int fracSec = static_cast(epochAdjusted % _secondTicks); + + const auto yearData = compute_year(secondsSince1900); + const int year = yearData.year; + const int yearDay = yearData.secondsLeftThisYear / SecondsInDay; + int leftover = yearData.secondsLeftThisYear % SecondsInDay; + const int hour = leftover / SecondsInHour; + leftover = leftover % SecondsInHour; + const int minute = leftover / SecondsInMinute; + leftover = leftover % SecondsInMinute; + + const auto& monthTable = year_is_leap_year(year) ? cumulative_days_to_month_leap : cumulative_days_to_month; + int month = 0; + while (month < 11 && monthTable[month + 1] <= yearDay) + { + ++month; + } + + const auto monthDay = yearDay - monthTable[month] + 1; + const auto weekday = static_cast((secondsSince1900 / SecondsInDay + 1) % 7); + + char outBuffer[38]; // Thu, 01 Jan 1970 00:00:00 GMT\0 + // 1970-01-01T00:00:00.1234567Z\0 + char* outCursor = outBuffer; + switch (format) + { + case RFC_1123: +#ifdef _MSC_VER + sprintf_s(outCursor, + 26, + "%s, %02d %s %04d %02d:%02d:%02d", + dayNames + 4 * weekday, + monthDay, + monthNames + 4 * month, + year + 1900, + hour, + minute, + leftover); +#else // ^^^ _MSC_VER // !_MSC_VER vvv + sprintf(outCursor, + "%s, %02d %s %04d %02d:%02d:%02d", + dayNames + 4 * weekday, + monthDay, + monthNames + 4 * month, + year + 1900, + hour, + minute, + leftover); +#endif // _MSC_VER + outCursor += 25; + memcpy(outCursor, " GMT", 4); + outCursor += 4; + return utility::string_t(outBuffer, outCursor); + case ISO_8601: +#ifdef _MSC_VER + sprintf_s(outCursor, + 20, + "%04d-%02d-%02dT%02d:%02d:%02d", + year + 1900, + month + 1, + monthDay, + hour, + minute, + leftover); +#else // ^^^ _MSC_VER // !_MSC_VER vvv + sprintf( + outCursor, "%04d-%02d-%02dT%02d:%02d:%02d", year + 1900, month + 1, monthDay, hour, minute, leftover); +#endif // _MSC_VER + outCursor += 19; + if (fracSec != 0) + { + // Append fractional second, which is a 7-digit value with no trailing zeros + // This way, '1200' becomes '00012' +#ifdef _MSC_VER + size_t appended = sprintf_s(outCursor, 9, ".%07d", fracSec); +#else // ^^^ _MSC_VER // !_MSC_VER vvv + size_t appended = sprintf(outCursor, ".%07d", fracSec); +#endif // _MSC_VER + while (outCursor[appended - 1] == '0') + { + --appended; // trim trailing zeros + } + + outCursor += appended; + } + + *outCursor = 'Z'; + ++outCursor; + return utility::string_t(outBuffer, outCursor); + default: throw std::invalid_argument("Unrecognized date format."); + } +} + +template +static bool string_starts_with(const CharT* haystack, const char* needle) +{ + while (*needle) + { + if (*haystack != static_cast(*needle)) + { + return false; + } + + ++haystack; + ++needle; + } + + return true; +} + +#define ascii_isdigit(c) ((unsigned char)((unsigned char)(c) - '0') <= 9) +#define ascii_isdigit6(c) ((unsigned char)((unsigned char)(c) - '0') <= 6) +#define ascii_isdigit5(c) ((unsigned char)((unsigned char)(c) - '0') <= 5) +#define ascii_isdigit3(c) ((unsigned char)((unsigned char)(c) - '0') <= 3) +#define ascii_isdigit2(c) ((unsigned char)((unsigned char)(c) - '0') <= 2) +#define ascii_isdigit1(c) ((unsigned char)((unsigned char)(c) - '0') <= 1) + +static const unsigned char max_days_in_month[12] = { + 31, // Jan + 00, // Feb, special handling for leap years + 31, // Mar + 30, // Apr + 31, // May + 30, // Jun + 31, // Jul + 31, // Aug + 30, // Sep + 31, // Oct + 30, // Nov + 31 // Dec +}; + +static bool validate_day_month(int day, int month, int year) +{ + int maxDaysThisMonth; + if (month == 1) + { // Feb needs leap year testing + maxDaysThisMonth = 28 + year_is_leap_year(year); + } + else + { + maxDaysThisMonth = max_days_in_month[month]; + } + + return day >= 1 && day <= maxDaysThisMonth; +} + +static int get_year_day(int month, int monthDay, int year) +{ + return cumulative_days_to_month[month] + monthDay + (year_is_leap_year(year) && month > 1) - 1; +} + +template +static int atoi2(const CharT* str) +{ + return (static_cast(str[0]) - '0') * 10 + (static_cast(str[1]) - '0'); +} + +static int64_t timezone_adjust(int64_t result, unsigned char chSign, int adjustHours, int adjustMinutes) +{ + if (adjustHours > 23) + { + return -1; + } + + // adjustMinutes > 59 is impossible due to digit 5 check + const int tzAdjust = adjustMinutes * 60 + adjustHours * 60 * 60; + if (chSign == '-') + { + if (INT64_MAX - result < tzAdjust) + { + return -1; + } + + result += tzAdjust; + } + else + { + if (tzAdjust > result) + { + return -1; + } + + result -= tzAdjust; + } + + return result; +} + +/* +https://tools.ietf.org/html/rfc822 +https://tools.ietf.org/html/rfc1123 + +date-time = [ day "," ] date time ; dd mm yy + ; hh:mm:ss zzz + +day = "Mon" / "Tue" / "Wed" / "Thu" + / "Fri" / "Sat" / "Sun" + +date = 1*2DIGIT month 2DIGIT ; day month year + ; e.g. 20 Jun 82 +RFC1123 changes this to: +date = 1*2DIGIT month 2*4DIGIT ; day month year + ; e.g. 20 Jun 1982 +This implementation only accepts 4 digit years. + +month = "Jan" / "Feb" / "Mar" / "Apr" + / "May" / "Jun" / "Jul" / "Aug" + / "Sep" / "Oct" / "Nov" / "Dec" + +time = hour zone ; ANSI and Military + +hour = 2DIGIT ":" 2DIGIT [":" 2DIGIT] + ; 00:00:00 - 23:59:59 + +zone = "UT" / "GMT" ; Universal Time + ; North American : UT + / "EST" / "EDT" ; Eastern: - 5/ - 4 + / "CST" / "CDT" ; Central: - 6/ - 5 + / "MST" / "MDT" ; Mountain: - 7/ - 6 + / "PST" / "PDT" ; Pacific: - 8/ - 7 + +// military time deleted by RFC 1123 + + / ( ("+" / "-") 4DIGIT ) ; Local differential + ; hours+min. (HHMM) +*/ + + +datetime __cdecl datetime::from_string(const utility::string_t& dateString, date_format format) +{ + datetime result; + int64_t secondsSince1900; + uint64_t fracSec = 0; + auto str = dateString.c_str(); + if (format == RFC_1123) + { + int parsedWeekday = 0; + for (; parsedWeekday < 7; ++parsedWeekday) + { + if (string_starts_with(str, dayNames + parsedWeekday * 4) && str[3] == _XPLATSTR(',') && + str[4] == _XPLATSTR(' ')) + { + str += 5; // parsed day of week + break; + } + } + + int monthDay; + if (ascii_isdigit3(str[0]) && ascii_isdigit(str[1]) && str[2] == _XPLATSTR(' ')) + { + monthDay = atoi2(str); // validity checked later + str += 3; // parsed day + } + else if (ascii_isdigit(str[0]) && str[1] == _XPLATSTR(' ')) + { + monthDay = str[0] - _XPLATSTR('0'); + str += 2; // parsed day + } + else + { + return result; + } + + if (monthDay == 0) + { + return result; + } + + int month = 0; + for (;;) + { + if (string_starts_with(str, monthNames + month * 4)) + { + break; + } + + ++month; + if (month == 12) + { + return result; + } + } + + if (str[3] != _XPLATSTR(' ')) + { + return result; + } + + str += 4; // parsed month + + if (!ascii_isdigit(str[0]) || !ascii_isdigit(str[1]) || !ascii_isdigit(str[2]) || !ascii_isdigit(str[3]) || + str[4] != ' ') + { + return result; + } + + int year = (str[0] - _XPLATSTR('0')) * 1000 + (str[1] - _XPLATSTR('0')) * 100 + (str[2] - _XPLATSTR('0')) * 10 + + (str[3] - _XPLATSTR('0')); + if (year < 1900) + { + return result; + } + + // days in month validity check + if (!validate_day_month(monthDay, month, year)) + { + return result; + } + + str += 5; // parsed year + const int yearDay = get_year_day(month, monthDay, year); + + if (!ascii_isdigit2(str[0]) || !ascii_isdigit(str[1]) || str[2] != _XPLATSTR(':') || !ascii_isdigit5(str[3]) || + !ascii_isdigit(str[4])) + { + return result; + } + + const int hour = atoi2(str); + if (hour > 23) + { + return result; + } + + str += 3; // parsed hour + const int minute = atoi2(str); + str += 2; // parsed mins + + int sec; + if (str[0] == ':') + { + if (!ascii_isdigit6(str[1]) || !ascii_isdigit(str[2]) || str[3] != _XPLATSTR(' ')) + { + return result; + } + + sec = atoi2(str + 1); + str += 4; // parsed seconds + } + else if (str[0] == _XPLATSTR(' ')) + { + sec = 0; + str += 1; // parsed seconds + } + else + { + return result; + } + + if (sec > 60) + { // 60 to allow leap seconds + return result; + } + + year -= 1900; + int daysSince1900 = year * DaysInYear + count_leap_years(year) + yearDay; + + if (parsedWeekday != 7) + { + const int actualWeekday = (daysSince1900 + 1) % 7; + + if (parsedWeekday != actualWeekday) + { + return result; + } + } + + secondsSince1900 = + static_cast(daysSince1900) * SecondsInDay + hour * SecondsInHour + minute * SecondsInMinute + sec; + + if (!string_starts_with(str, "GMT") && !string_starts_with(str, "UT")) + { + // some timezone adjustment necessary + auto tzCh = _XPLATSTR('-'); + int tzHours; + int tzMinutes = 0; + if (string_starts_with(str, "EDT")) + { + tzHours = 4; + } + else if (string_starts_with(str, "EST") || string_starts_with(str, "CDT")) + { + tzHours = 5; + } + else if (string_starts_with(str, "CST") || string_starts_with(str, "MDT")) + { + tzHours = 6; + } + else if (string_starts_with(str, "MST") || string_starts_with(str, "PDT")) + { + tzHours = 7; + } + else if (string_starts_with(str, "PST")) + { + tzHours = 8; + } + else if ((tzCh == _XPLATSTR('+') || tzCh == _XPLATSTR('-')) && ascii_isdigit2(str[1]) && + ascii_isdigit(str[2]) && ascii_isdigit5(str[3]) && ascii_isdigit(str[4])) + { + tzCh = str[0]; + tzHours = atoi2(str + 1); + tzMinutes = atoi2(str + 3); + } + else + { + return result; + } + + secondsSince1900 = timezone_adjust(secondsSince1900, static_cast(tzCh), tzHours, tzMinutes); + if (secondsSince1900 < 0) + { + return result; + } + } + } + else if (format == ISO_8601) + { + // parse year + if (!ascii_isdigit(str[0]) || !ascii_isdigit(str[1]) || !ascii_isdigit(str[2]) || !ascii_isdigit(str[3])) + { + return result; + } + + int year = (str[0] - _XPLATSTR('0')) * 1000 + (str[1] - _XPLATSTR('0')) * 100 + (str[2] - _XPLATSTR('0')) * 10 + + (str[3] - _XPLATSTR('0')); + if (year < 1900) + { + return result; + } + + str += 4; + if (*str == _XPLATSTR('-')) + { + ++str; + } + + // parse month + if (!ascii_isdigit1(str[0]) || !ascii_isdigit(str[1])) + { + return result; + } + + int month = atoi2(str); + if (month < 1 || month > 12) + { + return result; + } + + month -= 1; + str += 2; + + if (*str == _XPLATSTR('-')) + { + ++str; + } + + // parse day + if (!ascii_isdigit3(str[0]) || !ascii_isdigit(str[1])) + { + return result; + } + + int monthDay = atoi2(str); + if (!validate_day_month(monthDay, month, year)) + { + return result; + } + + const int yearDay = get_year_day(month, monthDay, year); + + str += 2; + year -= 1900; + int daysSince1900 = year * DaysInYear + count_leap_years(year) + yearDay; + + if (str[0] != _XPLATSTR('T') && str[0] != _XPLATSTR('t')) + { + // No time + secondsSince1900 = static_cast(daysSince1900) * SecondsInDay; + + result.m_interval = + static_cast(secondsSince1900 * _secondTicks + fracSec + NtTo1900OffsetInterval); + return result; + } + + ++str; // skip 'T' + + // parse hour + if (!ascii_isdigit2(str[0]) || !ascii_isdigit(str[1])) + { + return result; + } + + const int hour = atoi2(str); + str += 2; + if (hour > 23) + { + return result; + } + + if (*str == _XPLATSTR(':')) + { + ++str; + } + + // parse minute + if (!ascii_isdigit5(str[0]) || !ascii_isdigit(str[1])) + { + return result; + } + + const int minute = atoi2(str); + // minute > 59 is impossible because we checked that the first digit is <= 5 in the basic format + // check above + + str += 2; + + if (*str == _XPLATSTR(':')) + { + ++str; + } + + // parse seconds + if (!ascii_isdigit6(str[0]) || !ascii_isdigit(str[1])) + { + return result; + } + + const int sec = atoi2(str); + // We allow 60 to account for leap seconds + if (sec > 60) + { + return result; + } + + str += 2; + if (str[0] == _XPLATSTR('.') && ascii_isdigit(str[1])) + { + ++str; + int digits = 7; + for (;;) + { + fracSec *= 10; + fracSec += *str - _XPLATSTR('0'); + --digits; + ++str; + if (digits == 0) + { + while (ascii_isdigit(*str)) + { + // consume remaining fractional second digits we can't use + ++str; + } + + break; + } + + if (!ascii_isdigit(*str)) + { + // no more digits in the input, do the remaining multiplies we need + for (; digits != 0; --digits) + { + fracSec *= 10; + } + + break; + } + } + } + + secondsSince1900 = + static_cast(daysSince1900) * SecondsInDay + hour * SecondsInHour + minute * SecondsInMinute + sec; + + if (str[0] == _XPLATSTR('Z') || str[0] == _XPLATSTR('z')) + { + // no adjustment needed for zulu time + } + else if (str[0] == _XPLATSTR('+') || str[0] == _XPLATSTR('-')) + { + const unsigned char offsetDirection = static_cast(str[0]); + if (!ascii_isdigit2(str[1]) || !ascii_isdigit(str[2]) || str[3] != _XPLATSTR(':') || + !ascii_isdigit5(str[4]) || !ascii_isdigit(str[5])) + { + return result; + } + + secondsSince1900 = timezone_adjust(secondsSince1900, offsetDirection, atoi2(str + 1), atoi2(str + 4)); + if (secondsSince1900 < 0) + { + return result; + } + } + else + { + // the timezone is malformed, but cpprestsdk currently accepts this as no timezone + } + } + else + { + throw std::invalid_argument("unrecognized date format"); + } + + result.m_interval = static_cast(secondsSince1900 * _secondTicks + fracSec + NtTo1900OffsetInterval); + return result; +} + +/// +/// Converts a timespan/interval in seconds to xml duration string as specified by +/// http://www.w3.org/TR/xmlschema-2/#duration +/// +utility::string_t __cdecl timespan::seconds_to_xml_duration(utility::seconds durationSecs) +{ + auto numSecs = durationSecs.count(); + + // Find the number of minutes + auto numMins = numSecs / 60; + if (numMins > 0) + { + numSecs = numSecs % 60; + } + + // Hours + auto numHours = numMins / 60; + if (numHours > 0) + { + numMins = numMins % 60; + } + + // Days + auto numDays = numHours / 24; + if (numDays > 0) + { + numHours = numHours % 24; + } + + // The format is: + // PdaysDThoursHminutesMsecondsS + utility::string_t result; + // (approximate mins/hours/secs as 2 digits each + 1 prefix character) + 1 for P prefix + 1 for T + size_t baseReserveSize = ((numHours > 0) + (numMins > 0) + (numSecs > 0)) * 3 + 1; + if (numDays > 0) + { + utility::string_t daysStr = utility::conversions::details::to_string_t(numDays); + result.reserve(baseReserveSize + daysStr.size() + 1); + result += _XPLATSTR('P'); + result += daysStr; + result += _XPLATSTR('D'); + } + else + { + result.reserve(baseReserveSize); + result += _XPLATSTR('P'); + } + + result += _XPLATSTR('T'); + + if (numHours > 0) + { + result += utility::conversions::details::to_string_t(numHours); + result += _XPLATSTR('H'); + } + + if (numMins > 0) + { + result += utility::conversions::details::to_string_t(numMins); + result += _XPLATSTR('M'); + } + + if (numSecs > 0) + { + result += utility::conversions::details::to_string_t(numSecs); + result += _XPLATSTR('S'); + } + + return result; +} + +utility::seconds __cdecl timespan::xml_duration_to_seconds(const utility::string_t& timespanString) +{ + // The format is: + // PnDTnHnMnS + // if n == 0 then the field could be omitted + // The final S could be omitted + + int64_t numSecs = 0; + auto cursor = timespanString.c_str(); + auto c = *cursor++; // skip 'P' + while (c) + { + int val = 0; + c = *cursor++; + + while (ascii_isdigit(c)) + { + val = val * 10 + (c - _XPLATSTR('0')); + c = *cursor++; + + if (c == _XPLATSTR('.')) + { + // decimal point is not handled + do + { + c = *cursor++; + } while (ascii_isdigit(c)); + } + } + + if (c == _XPLATSTR('D')) numSecs += val * 24 * 3600; // days + if (c == _XPLATSTR('H')) numSecs += val * 3600; // Hours + if (c == _XPLATSTR('M')) numSecs += val * 60; // Minutes + if (c == _XPLATSTR('S') || c == _XPLATSTR('\0')) + { + numSecs += val; // seconds + break; + } + } + + return utility::seconds(numSecs); +} + +static const char c_allowed_chars[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"; +static const int chars_count = static_cast(sizeof(c_allowed_chars) - 1); + +utility::string_t nonce_generator::generate() +{ + std::uniform_int_distribution<> distr(0, chars_count - 1); + utility::string_t result; + result.reserve(length()); + std::generate_n(std::back_inserter(result), length(), [&] { + return static_cast(c_allowed_chars[distr(m_random)]); + }); + return result; +} + +} // namespace utility diff --git a/deps/cpprestsdk/src/utilities/base64.cpp b/deps/cpprestsdk/src/utilities/base64.cpp new file mode 100644 index 0000000000..cff4e84fd4 --- /dev/null +++ b/deps/cpprestsdk/src/utilities/base64.cpp @@ -0,0 +1,260 @@ +/*** + * Copyright (C) Microsoft. All rights reserved. + * Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. + * + * =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ + * + * For the latest on this and related APIs, please see: https://github.com/Microsoft/cpprestsdk + * + * =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- + ****/ +#include "pch.h" + +using namespace web; +using namespace utility; + +std::vector _from_base64(const utility::string_t& str); +utility::string_t _to_base64(const unsigned char* ptr, size_t size); + +std::vector __cdecl conversions::from_base64(const utility::string_t& str) { return _from_base64(str); } + +utility::string_t __cdecl conversions::to_base64(const std::vector& input) +{ + if (input.size() == 0) + { + // return empty string + return utility::string_t(); + } + + return _to_base64(&input[0], input.size()); +} + +utility::string_t __cdecl conversions::to_base64(uint64_t input) +{ + return _to_base64(reinterpret_cast(&input), sizeof(input)); +} + +static const char* _base64_enctbl = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; +const std::array _base64_dectbl = { + {255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 62, + 255, 255, 255, 63, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 255, 255, 255, 254, 255, 255, 255, 0, + 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 255, 255, 255, 255, 255, 255, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, + 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 255, 255, 255, 255, 255}}; + +struct _triple_byte +{ + unsigned char _1_1 : 2; + unsigned char _0 : 6; + unsigned char _2_1 : 4; + unsigned char _1_2 : 4; + unsigned char _3 : 6; + unsigned char _2_2 : 2; +}; + +struct _double_byte +{ + unsigned char _1_1 : 2; + unsigned char _0 : 6; + unsigned char _2_1 : 4; + unsigned char _1_2 : 4; +}; + +struct _single_byte +{ + unsigned char _1_1 : 2; + unsigned char _0 : 6; +}; + +// +// A note on the implementation of BASE64 encoding and decoding: +// +// This is a fairly basic and naive implementation; there is probably a lot of room for +// performance improvement, as well as for adding options such as support for URI-safe base64, +// ignoring CRLF, relaxed validation rules, etc. The decoder is currently pretty strict. +// + +#ifdef __GNUC__ +// gcc is concerned about the bitfield uses in the code, something we simply need to ignore. +#pragma GCC diagnostic ignored "-Wconversion" +#endif +std::vector _from_base64(const utility::string_t& input) +{ + std::vector result; + + if (input.empty()) return result; + + size_t padding = 0; + + // Validation + { + auto size = input.size(); + + if ((size % 4) != 0) + { + throw std::runtime_error("length of base64 string is not an even multiple of 4"); + } + + for (auto iter = input.begin(); iter != input.end(); ++iter, --size) + { + const size_t ch_sz = static_cast(*iter); + if (ch_sz >= _base64_dectbl.size() || _base64_dectbl[ch_sz] == 255) + { + throw std::runtime_error("invalid character found in base64 string"); + } + if (_base64_dectbl[ch_sz] == 254) + { + padding++; + // padding only at the end + if (size > 2) + { + throw std::runtime_error("invalid padding character found in base64 string"); + } + if (size == 2) + { + const size_t ch2_sz = static_cast(*(iter + 1)); + if (ch2_sz >= _base64_dectbl.size() || _base64_dectbl[ch2_sz] != 254) + { + throw std::runtime_error("invalid padding character found in base64 string"); + } + } + } + } + } + + auto size = input.size(); + const char_t* ptr = &input[0]; + + auto outsz = (size / 4) * 3; + outsz -= padding; + + result.resize(outsz); + + size_t idx = 0; + for (; size > 4; ++idx) + { + unsigned char target[3]; + memset(target, 0, sizeof(target)); + _triple_byte* record = reinterpret_cast<_triple_byte*>(target); + + unsigned char val0 = _base64_dectbl[ptr[0]]; + unsigned char val1 = _base64_dectbl[ptr[1]]; + unsigned char val2 = _base64_dectbl[ptr[2]]; + unsigned char val3 = _base64_dectbl[ptr[3]]; + + record->_0 = val0; + record->_1_1 = val1 >> 4; + result[idx] = target[0]; + + record->_1_2 = val1 & 0xF; + record->_2_1 = val2 >> 2; + result[++idx] = target[1]; + + record->_2_2 = val2 & 0x3; + record->_3 = val3 & 0x3F; + result[++idx] = target[2]; + + ptr += 4; + size -= 4; + } + + // Handle the last four bytes separately, to avoid having the conditional statements + // in all the iterations (a performance issue). + + { + unsigned char target[3]; + memset(target, 0, sizeof(target)); + _triple_byte* record = reinterpret_cast<_triple_byte*>(target); + + unsigned char val0 = _base64_dectbl[ptr[0]]; + unsigned char val1 = _base64_dectbl[ptr[1]]; + unsigned char val2 = _base64_dectbl[ptr[2]]; + unsigned char val3 = _base64_dectbl[ptr[3]]; + + record->_0 = val0; + record->_1_1 = val1 >> 4; + result[idx] = target[0]; + + record->_1_2 = val1 & 0xF; + if (val2 != 254) + { + record->_2_1 = val2 >> 2; + result[++idx] = target[1]; + } + else + { + // There shouldn't be any information (ones) in the unused bits, + if (record->_1_2 != 0) + { + throw std::runtime_error("Invalid end of base64 string"); + } + return result; + } + + record->_2_2 = val2 & 0x3; + if (val3 != 254) + { + record->_3 = val3 & 0x3F; + result[++idx] = target[2]; + } + else + { + // There shouldn't be any information (ones) in the unused bits. + if (record->_2_2 != 0) + { + throw std::runtime_error("Invalid end of base64 string"); + } + return result; + } + } + + return result; +} + +utility::string_t _to_base64(const unsigned char* ptr, size_t size) +{ + utility::string_t result; + + for (; size >= 3;) + { + const _triple_byte* record = reinterpret_cast(ptr); + unsigned char idx0 = record->_0; + unsigned char idx1 = (record->_1_1 << 4) | record->_1_2; + unsigned char idx2 = (record->_2_1 << 2) | record->_2_2; + unsigned char idx3 = record->_3; + result.push_back(char_t(_base64_enctbl[idx0])); + result.push_back(char_t(_base64_enctbl[idx1])); + result.push_back(char_t(_base64_enctbl[idx2])); + result.push_back(char_t(_base64_enctbl[idx3])); + size -= 3; + ptr += 3; + } + switch (size) + { + case 1: + { + const _single_byte* record = reinterpret_cast(ptr); + unsigned char idx0 = record->_0; + unsigned char idx1 = (record->_1_1 << 4); + result.push_back(char_t(_base64_enctbl[idx0])); + result.push_back(char_t(_base64_enctbl[idx1])); + result.push_back('='); + result.push_back('='); + break; + } + case 2: + { + const _double_byte* record = reinterpret_cast(ptr); + unsigned char idx0 = record->_0; + unsigned char idx1 = (record->_1_1 << 4) | record->_1_2; + unsigned char idx2 = (record->_2_1 << 2); + result.push_back(char_t(_base64_enctbl[idx0])); + result.push_back(char_t(_base64_enctbl[idx1])); + result.push_back(char_t(_base64_enctbl[idx2])); + result.push_back('='); + break; + } + } + return result; +} diff --git a/deps/cpprestsdk/src/utilities/web_utilities.cpp b/deps/cpprestsdk/src/utilities/web_utilities.cpp new file mode 100644 index 0000000000..811b390ab5 --- /dev/null +++ b/deps/cpprestsdk/src/utilities/web_utilities.cpp @@ -0,0 +1,157 @@ +/*** + * Copyright (C) Microsoft. All rights reserved. + * Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. + * + * =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ + * + * Credential and proxy utilities. + * + * For the latest on this and related APIs, please see: https://github.com/Microsoft/cpprestsdk + * + * =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- + ****/ + +#include "pch.h" + +#include + +#if defined(_WIN32) && !defined(__cplusplus_winrt) +#include +#endif + +#if defined(__cplusplus_winrt) +#include +#endif + +namespace web +{ +namespace details +{ +#if defined(_WIN32) && !defined(CPPREST_TARGET_XP) +#if defined(__cplusplus_winrt) + +// Helper function to zero out memory of an IBuffer. +void winrt_secure_zero_buffer(Windows::Storage::Streams::IBuffer ^ buffer) +{ + Microsoft::WRL::ComPtr bufferInspectable(reinterpret_cast(buffer)); + Microsoft::WRL::ComPtr bufferByteAccess; + bufferInspectable.As(&bufferByteAccess); + + // This shouldn't happen but if can't get access to the raw bytes for some reason + // then we can't zero out. + byte* rawBytes; + if (bufferByteAccess->Buffer(&rawBytes) == S_OK) + { + SecureZeroMemory(rawBytes, buffer->Length); + } +} + +winrt_encryption::winrt_encryption(const std::wstring& data) +{ + auto provider = ref new Windows::Security::Cryptography::DataProtection::DataProtectionProvider( + ref new Platform::String(L"Local=user")); + + // Create buffer containing plain text password. + Platform::ArrayReference arrayref( + reinterpret_cast(const_cast(data.c_str())), + static_cast(data.size()) * sizeof(std::wstring::value_type)); + Windows::Storage::Streams::IBuffer ^ plaintext = + Windows::Security::Cryptography::CryptographicBuffer::CreateFromByteArray(arrayref); + m_buffer = pplx::create_task(provider->ProtectAsync(plaintext)); + m_buffer.then( + [plaintext](pplx::task) { winrt_secure_zero_buffer(plaintext); }); +} + +plaintext_string winrt_encryption::decrypt() const +{ + // To fully guarantee asynchrony would require significant impact on existing code. This code path + // is never run on a user's thread and is only done once when setting up a connection. + auto encrypted = m_buffer.get(); + auto provider = ref new Windows::Security::Cryptography::DataProtection::DataProtectionProvider(); + auto plaintext = pplx::create_task(provider->UnprotectAsync(encrypted)).get(); + + // Get access to raw bytes in plain text buffer. + Microsoft::WRL::ComPtr bufferInspectable(reinterpret_cast(plaintext)); + Microsoft::WRL::ComPtr bufferByteAccess; + bufferInspectable.As(&bufferByteAccess); + byte* rawPlaintext; + const auto& result = bufferByteAccess->Buffer(&rawPlaintext); + if (result != S_OK) + { + throw ::utility::details::create_system_error(result); + } + + // Construct string and zero out memory from plain text buffer. + auto data = plaintext_string( + new std::wstring(reinterpret_cast(rawPlaintext), plaintext->Length / 2)); + SecureZeroMemory(rawPlaintext, plaintext->Length); + return std::move(data); +} + +#else + +win32_encryption::win32_encryption(const std::wstring& data) : m_numCharacters(data.size()) +{ + // Early return because CryptProtectMemory crashes with empty string + if (m_numCharacters == 0) + { + return; + } + + if (data.size() > (std::numeric_limits::max)() / sizeof(wchar_t)) + { + throw std::length_error("Encryption string too long"); + } + + const auto dataSizeDword = static_cast(data.size() * sizeof(wchar_t)); + + // Round up dataSizeDword to be a multiple of CRYPTPROTECTMEMORY_BLOCK_SIZE + static_assert(CRYPTPROTECTMEMORY_BLOCK_SIZE == 16, "Power of 2 assumptions in this bit masking violated"); + const auto mask = static_cast(CRYPTPROTECTMEMORY_BLOCK_SIZE - 1u); + const auto dataNumBytes = (dataSizeDword & ~mask) + ((dataSizeDword & mask) != 0) * CRYPTPROTECTMEMORY_BLOCK_SIZE; + assert((dataNumBytes % CRYPTPROTECTMEMORY_BLOCK_SIZE) == 0); + assert(dataNumBytes >= dataSizeDword); + m_buffer.resize(dataNumBytes); + memcpy_s(m_buffer.data(), m_buffer.size(), data.c_str(), dataNumBytes); + if (!CryptProtectMemory(m_buffer.data(), dataNumBytes, CRYPTPROTECTMEMORY_SAME_PROCESS)) + { + throw ::utility::details::create_system_error(GetLastError()); + } +} + +win32_encryption::~win32_encryption() { SecureZeroMemory(m_buffer.data(), m_buffer.size()); } + +plaintext_string win32_encryption::decrypt() const +{ + // Copy the buffer and decrypt to avoid having to re-encrypt. + auto result = plaintext_string(new std::wstring(reinterpret_cast(m_buffer.data()), + m_buffer.size() / sizeof(wchar_t))); + auto& data = *result; + if (!m_buffer.empty()) + { + if (!CryptUnprotectMemory(&data[0], static_cast(m_buffer.size()), CRYPTPROTECTMEMORY_SAME_PROCESS)) + { + throw ::utility::details::create_system_error(GetLastError()); + } + + assert(m_numCharacters <= m_buffer.size()); + SecureZeroMemory(&data[m_numCharacters], data.size() - m_numCharacters); + data.erase(m_numCharacters); + } + + return result; +} +#endif +#endif + +void zero_memory_deleter::operator()(::utility::string_t* data) const +{ + CASABLANCA_UNREFERENCED_PARAMETER(data); +#if defined(_WIN32) + SecureZeroMemory(&(*data)[0], data->size() * sizeof(::utility::string_t::value_type)); + delete data; +#endif +} +} // namespace details + +} // namespace web diff --git a/doc/coding/organization.md b/doc/coding/organization.md new file mode 100644 index 0000000000..e7e609d9a9 --- /dev/null +++ b/doc/coding/organization.md @@ -0,0 +1,29 @@ +# Code Organization + +## Rules + +- **Follow the pattern of what you already see in the code** +- Try to package new ideas/components into libraries that have nicely defined interfaces +- Package new ideas into classes or refactor existing ideas into a class as you extend + +## Code Overview + +General project organization: + +#### The [`build`](/build) folder +Contains the Azure pipeline CI build scripts. + +#### The [`deps`](/deps) folder +Contains other projects, that PowerToys uses as dependency. + +#### The [`doc`](/doc) folder +Documentation for the project, including a [coding guide](/doc/coding) and [design docs](/doc/specs). + +#### The [`installer`](/installer) folder +Contains the source code of the PowerToys installer. + +#### The [`src`](/src) folder +Contains the source code of the PowerToys runner and of all of the PowerToys modules. **This is where the most of the magic happens.** + +#### The [`tools`](/tools) folder +Various tools used by PowerToys. Includes the Visual Studio 2019 project template for new PowerToys. diff --git a/doc/coding/style.md b/doc/coding/style.md new file mode 100644 index 0000000000..8e3c7b9e55 --- /dev/null +++ b/doc/coding/style.md @@ -0,0 +1,5 @@ +# Coding Style + +## Philosophy +1. If it's inserting something into the existing classes/functions, try to follow the existing style as closely as possible. +1. If it's brand new code or refactoring a complete class or area of the code, please follow as Modern C++ of a style as you can and reference the [C++ Core Guidelines](https://github.com/isocpp/CppCoreGuidelines) as much as you possibly can. diff --git a/doc/images/FZTutorial.jpg b/doc/images/FZTutorial.jpg new file mode 100644 index 0000000000000000000000000000000000000000..74214b0edb76da304f355f6c11456817cec568a7 GIT binary patch literal 219271 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

Ql`ZXPxJP|;BDnjG6i!+o_z;0rA01sk9 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⋙ZVHXogdz$&|Tk;*B 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 literal 0 HcmV?d00001 diff --git a/doc/images/Logo.jpg b/doc/images/Logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..194251abff325c0c366a249ecd21bbf7f35a5617 GIT binary patch literal 38213 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 literal 0 HcmV?d00001 diff --git a/doc/images/MTNDWidget.jpg b/doc/images/MTNDWidget.jpg new file mode 100644 index 0000000000000000000000000000000000000000..72dd1147e57e591134ee0148a2b490f5bf7a5ca2 GIT binary patch literal 5877 zcmbVQ2{=^k+kb3L_C1lBLZy%*ZI(%1`^!Y3mo$~ElSUzuoHxprB_vTyq3lc6vWO$@9*{fzxVr|Irnv)>zwC#=K0;r@4oMY^dTca#KgeZ0B~?{ zfQRT0Am4x<;N;-gxc)l0c(^vkCT?yn9?T{TWamoReICDiW5yx1&% z>UEu@WhY%h{ql`KUcN0-Tcu@o@7b%kZ~tM9BS()NKcV-FzJZ~UvB{aUR@OG>ezSGB z;^^e;;_Bw<<$cq~_m*GKz5Br-p<&^%agX93Cp<|^N=-|D`6?qbE4!$;q_nL3&D)Cl zhQ_Amme#g+pS!xh^z`<9?Wc~8jenn*oSLRBEG{koTv=tTF*k5=0IvUr^><|dhD#L1 z#fjR08?%9ngVP5UE>UitU57S_=~`eeT^E;AySrK9RLqOlb-eQGmUPL>H#+&YC>*Bl zUf6*47i519Sm6H)+24Wv16Mx~;Nn1y$0Z7IV1cQaO7XzO*M}=U=lq*gkTxNpRRsYv zS@5a1Nz+x^5U{fx0r?qgd>=FFiH4&ZnW^EEC+fqeYGhf;JpoD=Xd+Y78Bk+(*X(K> zfp)XsyShr}s>ht`HHD}{iF?9M4#u9pXrqq+0m>+W$?LC)fO-VzB4GU8JFBdweoJHK z(*}N9Vv>lvpZdqC{G3s#x;sA9;J6F|4eIMUN9)3qh@P*AH*M4L3UYhm`EA>GT3cut z3g|XO*eKaZH=8CMnELqgc>Vce>wru85>_G}UKaW{clcW9yEAT6drC(;1ZHe&o?cR! zBU8J>?M;jlO>GV3C4ZAvuXLgY)=FBozlm&5ykTMEXrLBXV)focF|R|Gb*u-LIX_J& zmWjER%OpqGJ`#C1GqEP--0pnR)ZpBKk$f)6{eAuKjNiu<4@f9<#oEdXg)3$&R8r^H z1oRNViGWXL627-#JrM-dQkKQ_J--al(&&#+?M)p&g{oWlR|MP_rIMH`I6)j8(}-i` zWLNaoL4wn^8iVh#Ti_kEGj{chEw1j)`MJHnW*bEcB;7EO4y_%cy_HwqWOi#-GNdSB ziPFG|$_ULMQCkqO2UTidxMJSN)A>*9D2x0MlLkG^clsBb7H83uIvJ5}im7iu7I*6K zL2Vk0Y6M)4r@-Wr@TH15cr&A+VQ5F;LQ3MOU9wYiOVbG%*O)=q$D#yNlAPNXn~P7< zlSIxwus%QEsw^b<8v^bTsYlsD6j2;KychxB^E~%unxAi@tsm{Ysrk~ZJ4492#QMw2 zm8UdTL*wwGYYiU)UY9pwnTDx0$-SxmrxytK5I{ZSORR^by0!GP5#Z>?Ov&-|%$`0t zJ-qN!@Sd@Zf{*%KOJ85C37ZZ^l9nneu$T|<)eb3=t7E^;ZG9dI3p?2ijJ|};rOEqV zSb>1OL>z|YOe}CYN^qm3tEz+#7rrryNren;WtDqLD^NuQy$9R4N3P9HPn0 zy-3^c(|E*)+_z;_G5S@Vhw+D|`nW``s(nVUOP_rIC`EL%8*%GhoFfIp`~3&XX8MN< z9H#6&M<#<|3C4a>gbd++B1?Zo>5j3MpqE1mmRIWs)qCIA0ms;m{gDDUcGf+{9gP1r z;s0W^K+^5P@rB)UuX8U9&}?75R6lQTfByKby)jXyhqPy&(}!E4B^eH*m5hFs%M)Xb zKH|n2gC9DVniz3%=O(OMV~<)|#oXnVy`08qDe$#x(owNDtxvL=2y%t46<=_TE%a4B z5Jpnd^l5VnnkynT92m{G`DwQ8ewyVY1l*b@6p&OG@A%D70yM==TE&W<3t0kY= zz4+o+1IZE=7w(QH_-i9zS12@s25f4yFw}Y(%aDQtUGn`Zlg|c-#Y-~n5g;-LeYuE$ z_A>~mR760i4~|v{ea}L`VElIkt>k#lb0|7TJ;3CK2r6qd88ipB{40VuMNmy3QTAF@90@SEU{&^0! z*o}a>cev5*9n4(pnj5t0h@IJk9telyg&zLl-=++k$&6hX)_&oj6y*hHmI{7Wn4!N+ z{6P3Yp-0{#xUOpnt0qup-OF#jzt(^K*~oH1hu`wSTftaKDP^tvgg8RtxYKV2s;aTU z2W0bTrTE3GO0Vc7R^TvPK^|91%;|Tc9Es0bL;(6?WvUH-=%(!RE8 z|L+^LriLp$ALmode>zg$Kw;P+U@L1c6;}p1qcm)h`*j-YwpcY>d?(fG!TYaoecXqW zD}%2`M3t(=Mx1|HbU@_M_>1jBA?p80`M#9DYd>Zg0W@=O1n5AEF3_UkMCAYCDUYDP z`H3!^K1o=bL`f_J0SW=6f2PhmP3xzjI%$adNM{o<1&8ux44cBfy8GYsMO$+ccl zUATBwwS335`3lc+S?8Vk*~j{iWv-hD&0Nb_(qdh(39rTXjgGbN&7YnwH(1B!m00Kp zoPrEd-Z;4-JDk^DQ149kN9pYK(Q^p+ESQ-cU_Cb1L}5D;GQIH!~1O!|szp_E?B%R0vp{>9#H#wcuW zr9pLI?>mFtXD6Ib-om^ho_Hd#{n%2swP_BC^&xZOYrJc=7x{2XoBq+&b4>A(mf5vb zmJy?YiW3?N=zxlU97$R!cFw>n=!i!c%b1-oXu4rEz$JS{H02AGT#gU%LcnIY4-z~4 zVSjVSuU%KYXP&s{sq8#=vHT=!zufQHX@y*pKM4E?7>S2U2o1QflNOGR11fi#G^9xdj& z*xYtNPZ2t>wfU38a{Sp%>fr!@^b*EzhqBdeihC&tF#FL!Oxe_c30;`nQlK1LEU!dyOJL9rye)CwB@< zqViPb8>3WqQVnOja;~VTmb$dFLoIM0@9r;WNkGP*yrtb$DNgvi);1p7i*#}KKOdLZ z_Bfj<_lDFLO--mTkYa=wcWV(Bjx5#hkT30>?KS^=na)~m_s{NBJCvw%c5v5~y6JLl zLBD90`g4X5R-S+r6=W&HTXe9=a@IN~73=~wp;}s6ccT8CRkWC?FlFHv4aa361juiN?n2X+I^n6AD8C*> zNmeVG%_5=HFItIP8;9n{ph$mS=9*u48X7-?WY!{Xb%D|x%`o_ZfXNsHpaF20<3GQx zh5K=f&V(({53?TJa?N)QRLd>i*HTrA9n8C|D-qIqnln|oD zPj^^hEMP*a(EWLLGCZmCB6xR|eDaMel}Dz`TN^Yvbv5<2e=Ca%dS>G}q8f@V!ZZ}f zP7UoWEM&hJT0cbzvMB$JQe=B1R(gxR09T;Rel-qRp8^a!t7hLc0=6N*r9+xgX%f6R zY__l^NBd`qjZ4-E`LdH9x$n013K&*9@|u@A&%HbJooKH?!K=GHnx+=EEuHe5#G84U zI)4uc(ObU&_g1vbT8*w-x_9Z(qwZqAYT=&S$=bQz9O1cu5!?l?k!mjjCE74UY44A) z1@*CnS@GvY9Z|Yd`KX|Z);@=;y+4*z0=s2siXpJPX$Izd1rMbw)h>HC1%5jL-p=SI?*yHaTM*q~o(mkr-Bi%&LbPy-&Ngymxa zeK>|TnmNb1|M27sx#zY204oVipa@tr7(U(pR-0Vfb^EqH5ltIt2UVwqyEOa&LX(KQ zFb8pHCmj=7l8iO4j+x7!+u7)`FVKo7>W&dM(tmLM0?HX*{ZDUn7FKAuw-IUc!ML({ zG^*(3qnqMJw?QKCm!x#2e*M7iR~gxT1GeUd^fqkDQPnbif5O7;W)apYM)7E5K;L!;-YlX7@x^cbAo0uNObnV7^oqILL6dUwW&3 zW-8&AO4(UI=O1Vty7vM7DcquhMS$sx0`&qDc0`&uss=ubV5=&JbWUyE>fmZEJl%N; z<%@<|1XOh)K#bKfW%942P+Vp9Qa7Vdss8@fR*B@sg&-Pn!GY;DochLWvb(d2nFN-E z8A?*DCzxo;+;#+HDA_8-q4b$@2v;~9xrSS$qR;rqus;(V1(gN`M8Fp*69ZvDE0s>$)Pq-f&T4V#jprj7(E`$Z}hO>K@bEMDIa`$WFtbd!KW~ z8gUlt$g<9L)hMLTxYrC#42B(9jHzmQrWE0gi5Q!Ui#~-9#R(ZUYU7RVvIe~>_r%&g z@V+eAp8Nt+h}FTL=H-%Z4QV9vsT8mb(`n3WAC9b>CGCVy_r=wwbKX-uCBD-y`q4t< z^Bs<8{zY9TPIiI9egjR{_lM&~GN46=l%ohJ7iJ%`vmo55r_9A7KpgEDF{nqhHe=Bq z_H1k$&HqVT2*i}nXp0WjC?a;ksr^b;bNW(xov#8;YOn@86})3 z-(h$Fw@h`{$I{PG)(&-``Qlp${7faYpoU6VHHN}qBUTU^9ODkcbXE3#!=7aeeKh?u zEc7M7pAl=r2+H^t^3QHa-uCA|O!En&u~DA{LUrco-Yr@r1YE;1J<3v}8T*D=PbMP~ zFx!AuEL*y5hCK?_(q>|LWO{fR+DDLde(u0>ufbUH||9 literal 0 HcmV?d00001 diff --git a/doc/images/WindowsKeyShortcutGuide.jpg b/doc/images/WindowsKeyShortcutGuide.jpg new file mode 100644 index 0000000000000000000000000000000000000000..919e6e7bdfbef270e741780bed9bc39afabb92b3 GIT binary patch literal 331636 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
uabA#lPaYlnSAlfEjJWssKpGzHq81+DyWl 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 Sa?qa?3}&EfqEmL+k@$BpeNVjr literal 0 HcmV?d00001 diff --git a/doc/images/shortcut_guide/settings.png b/doc/images/shortcut_guide/settings.png new file mode 100644 index 0000000000000000000000000000000000000000..06ad3eb0d10ed9915ee038298d523f0111d4c0d0 GIT binary patch literal 41296 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 literal 0 HcmV?d00001 diff --git a/doc/images/shortcut_guide/usage.png b/doc/images/shortcut_guide/usage.png new file mode 100644 index 0000000000000000000000000000000000000000..5954f86aefb4ca976b0d1e0c95c25db84d4b5d8e GIT binary patch literal 98245 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 zone, bool front) = 0; + + // Removes a Zone from the collection + IFACEMETHOD(RemoveZone)(_In_ Microsoft::WRL::ComPtr zone) = 0; + + // Returns the topmost Zone at the given point + IFACEMETHOD_(Microsoft::WRL::ComPtr, ZoneFromPoint)(POINT pt) = 0; + + // Returns a Zone that the window is in + // Will return nullptr if the window is not in a Zone + IFACEMETHOD_(Microsoft::WRL::ComPtr, ZoneFromWindow)(_In_ HWND window) = 0; + + // Gets all the Zones + IFACEMETHOD_(std::vector>, GetZones)() = 0; + + // ZoneSetLayout + // * Grid - Pregenerated layout (2x2, 3x3, etc) + // * Row - Pregenerated layout in a single row + // * Focus - Pregenerated layout with a central focus Zone and fanned peripheral Zones + // * Custom - User generated Zone + IFACEMETHOD_(ZoneSetLayout, GetLayout)() = 0; + + // The amount of default padding between Zones in a generated layout + IFACEMETHOD_(int, GetInnerPadding)() = 0; + + // Makes a copy of the IZoneSet and marks it as ZoneSetLayout::Custom + IFACEMETHOD_(Microsoft::WRL::ComPtr, MakeCustomClone)() = 0; + + // Persists ZoneSet data to the registry + IFACEMETHOD_(void, Save)() = 0; + + // Moves a Zone to the front of the collection + IFACEMETHOD_(void, MoveZoneToFront)(_In_ Microsoft::WRL::ComPtr zone) = 0; + + // Moves a Zone to the back of the collection + IFACEMETHOD_(void, MoveZoneToBack)(_In_ Microsoft::WRL::ComPtr zone) = 0; + + // Part of the chain to move a window into a specific Zone + IFACEMETHOD_(void, MoveWindowIntoZoneByIndex)(_In_ HWND window, _In_ HWND zoneWindow, int index) = 0; + + // Part of the chain to move a window into a specific Zone + IFACEMETHOD_(void, MoveWindowIntoZoneByDirection)(_In_ HWND window, _In_ HWND zoneWindow, DWORD vkCode) = 0; + + // Called when a drag ends or leaves the monitor this ZoneWindow is on + // This will remove the window from its currently assigned Zone and assign it + // to a different Zone based on the current cursor position + IFACEMETHOD_(void, MoveSizeExit)(_In_ HWND window, _In_ HWND zoneWindow, _In_ POINT ptClient) = 0; +}; +``` + +## Zone +Basically a RECT and a map of HWND->RECT to keep track of where windows can be placed and which windows are currently in the Zone. + +### Interface +``` +interface IZone : public IUnknown +{ + // Returns the RECT that this Zone represents + IFACEMETHOD_(RECT, GetZoneRect)() = 0; + + // Returns true if the specified window is in this Zone's collection + IFACEMETHOD_(bool, ContainsWindow)(_In_ HWND window) = 0; + + // Adds the window the collection + IFACEMETHOD_(void, AddWindowToZone)(_In_ HWND window, _In_ HWND zoneWindow, bool stampZone) = 0; + + // Removes the window from the collection + IFACEMETHOD_(void, RemoveWindowFromZone)(_In_ HWND window, bool restoreSize) = 0; + + // Sets an id for this Zone + // The id will be unique per ZoneSet + IFACEMETHOD_(void, SetId)(size_t id) = 0; + + // Returns the id given to this Zone + IFACEMETHOD_(size_t, GetId)() = 0; +}; +``` + diff --git a/doc/specs/PowerToys-settings.md b/doc/specs/PowerToys-settings.md new file mode 100644 index 0000000000..6cd059e61c --- /dev/null +++ b/doc/specs/PowerToys-settings.md @@ -0,0 +1,57 @@ +# Power Toys Settings Framework and Core Infrastructure +The Power Toys app will have a settings framework that each Power Toy can plug into. The settings framework has a UI frame that creates a page for each Power Toy. The UI frame should use the Navigation View “hamburger” UI. Each Power Toy will represent its settings as a json blob as described below. + +Each Power Toy will line in a separate .dll and be run in a separate thread by the main Power Toys process. The main Power Toys .exe will expose key global Windows event handlers so that there is only one system-level hook for these critical events. The current set of Power Toys require these global events. This list will be amended as new Power Toys are authored that require additional global hooks. +* SetWinEventHook - FancyZones requires knowledge of when a window enters the move/size loop. It listens for EVENT_SYSTEM_MOVESIZESTART, EVENT_SYSTEM_MOVESIZEEND, and EVENT_OBJECT_LOCATIONCHANGE messages from SetWinEventHook. +* Low-level keyboard hook - The Windows key Shortcut Guide and FancyZones both require low-level keybord hooks to intercept keyboard input and get a first chance to process it. Other Power Toys will require this as well + +* Each Power Toy must listen for 4 events: + * Enable – When invoked, enables the Power Toys’ functionality and performs any necessary initialization. Invoked with a JSON string from the persisted settings store + * Disable – When invoked, disables the Power Toys’ functionality and performs any clean-up to suspend all resource use + * OutputSettings – Return a json serialized blob of the settings for the Power Toy + * InputSettings – Invoked with a JSON string with updated settings from the UI which is then deserialized and the state is applied. If the settings cannot be applied by the Power Toy, the PT must return an error and an error string for the end user +* Each Power Toy may optionally provide one or more custom configuration UIs that can be invoked from its settings page + * Each custom UI is specified as a JSON string in the settings property bag + * The Power Toy must provide a named method that returns a serialized JSON settings string for the settings framework to call + * The method should launch UI to edit the settings but the UI shown must be asynchronous and not block the setting UI +* The Power Toys main .exe will provide a method called InvokeSettingsUI that will show the settings dialog for the calling Power Toy. +* Settings will be serialized by the settings framework and will be read at launch of the Power Toys framework and each Power Toy’s settings will be passed into the PT’s Enable method +* Settings will be serialized on a per-user basis +* The Settings JSON format will be versioned nad each payload must specify it's version attribute. The initial version is 1.0 + +## Power Toys Settings Object +The settings JSON object for each Power Toy should provide: +* Title string +* Icon +* Logo Image +* Credits string +* Credits link +* Settings property bag. Each item in the property bag has two items: + * String: display name + * String: property / editor type +* Version number: Currently only 1.0 is supported + +Property Bag of settings in priority order (type->editor) +* Bool->slide switch +* Int->free text box +* String->free text box +* Int ->Up/Down spinner +* Color-> Color picker +* Image->File picker, preview area, drag and drop +* Cursor->file picker and drop down, possibly an image +* Property Bag JSON string->Button to launch a custom editor from the Power Toy +* Method name to invoke. The method will return a serialized JSON string with the updated custom editor settings +* String to display on the button +* Percentage->Slider +* Time->Time picker +* Date->Date picker +* IP address->masked text box + +## PowerToys Main Settings Page +* Need to get Nick to help with the settings UI design (see attached for a whiteboard sketch) +* Need to have a settings page for overall PowerToys which will include the following + * Check for updates + * Startup at launch + * Enable / disable for each utility. + * This invokes the Enable and Disable events for the PowerToy and suspends all resource use including CPU, GPU, Networking, Disk I/O and memory commit +* The settings UI should have an “Apply” button which will push the settings object to diff --git a/doc/specs/Shared-hooks.md b/doc/specs/Shared-hooks.md new file mode 100644 index 0000000000..bc546f0970 --- /dev/null +++ b/doc/specs/Shared-hooks.md @@ -0,0 +1,85 @@ +# Shared hooks + +To minimize the performance impact on the machine only `runner` installs global hooks, passing the events to registered callbacks in each PowerToy module. + +When a PowerToy module is loaded, the `runner` calls the [`get_events()`](/src/modules/interface/powertoy_module_interface.h#L40) method to get a NULL-terminated array of NULL-terminated strings with the names of the events that the PowerToy wants to subscribe to. A `const wchar_t*` string is provided for each of the event names. + +Events are signalled by the `runner` calling the [`signal_event(name, data)`](/src/modules/interface/powertoy_module_interface.h#L53) method of the PowerToy module. The `name` parameter contains the NULL-terminated name of the event. The `data` parameter and the method return value are specific for each event. + +Currently supported hooks: + * `"ll_keyboard"` - [Low Level Keyboard Hook](#low-level-keyboard-hook) + * `"win_hook_event"` - [Windows Event Hook](#windows-event-hook) + +## Low Level Keyboard Hook + +This event is signaled whenever the user presses or releases a key on the keyboard. To subscribe to this event, add `"ll_keyboard"` to the table returned by the `get_events()` method. + +The PowerToys runner installs low-level keyboard hook using `SetWindowsHookEx(WH_KEYBOARD_LL, ...)`. See [this MSDN page](https://docs.microsoft.com/en-us/previous-versions/windows/desktop/legacy/ms644985(v%3Dvs.85)) for details. + +When a keyboard event is signaled and `ncCode` equals `HC_ACTION`, the `wParam` and `lParam` event parameters are passed to all subscribed clients in the [`LowlevelKeyboardEvent`](/src/modules/interface/lowlevel_keyboard_event_data.h#L38-L41) struct. + +The `intptr_t data` event argument is a pointer to the `LowlevelKeyboardEvent` struct. + +A non-zero return value from any of the subscribed PowerToys will cause the runner hook proc to return 1, thus swallowing the keyboard event. + +Example usage, that makes Windows ignore the L key: + +```c++ +virtual const wchar_t** get_events() override { + static const wchar_t* events[2] = { ll_keyboard, + nullptr }; + return events; +} + +virtual intptr_t signal_event(const wchar_t* name, intptr_t data) override { + if (wcscmp(name, ll_keyboard) == 0) { + auto& event = *(reinterpret_cast(data)); + // The L key has vkCode of 0x4C, see: + // https://docs.microsoft.com/en-us/windows/win32/inputdev/virtual-key-codes + if (event.wParam == WM_KEYDOWN && event.lParam->vkCode == 0x4C) { + return 1; + } else { + return 0; + } + } else { + return 0; + } +} +``` + +## Windows Event Hook + +This event is signaled for [a range of events](https://docs.microsoft.com/pl-pl/windows/win32/winauto/event-constants). To subscribe to this event, add `"win_hook_event"` to the table returned by the `get_events()` method. See [this MSDN doc](https://docs.microsoft.com/pl-pl/windows/win32/api/winuser/nf-winuser-setwineventhook) for details. + +The `intptr_t data` event argument is a pointer to the [`WinHookEvent`](/src/modules/interface/win_hook_event_data.h#L43-L50) struct. + +The return value of the event handler is ignored. + +Example usage, that detects a window being resized: + +```c++ +virtual const wchar_t** get_events() override { + static const wchar_t* events[2] = { win_hook_event, + nullptr }; + return events; +} + +virtual intptr_t signal_event(const wchar_t* name, intptr_t data) override { + if (wcscmp(name, win_hook_event) == 0) { + auto& event = *(reinterpret_cast(data)); + switch (event.event) { + case EVENT_SYSTEM_MOVESIZESTART: + size_start(event.hwnd); + break; + case EVENT_SYSTEM_MOVESIZEEND: + size_end(event.hwnd); + break; + default: + break; + } + } + return 0; +} +``` + +Taking too long to process the events has negative impact on the whole system performance. To address this, the events are signaled from a different thread, not from the event hook callback itself. diff --git a/installer/PowerToysSetup.sln b/installer/PowerToysSetup.sln new file mode 100644 index 0000000000..e9e00eaa84 --- /dev/null +++ b/installer/PowerToysSetup.sln @@ -0,0 +1,31 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 16 +VisualStudioVersion = 16.0.29215.179 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "PowerToysSetup", "PowerToysSetup\PowerToysSetup.wixproj", "{022A9D30-7C4F-416D-A9DF-5FF2661CC0AD}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "PowerToysSetupCustomActions", "PowerToysSetupCustomActions\PowerToysSetupCustomActions.vcxproj", "{32F3882B-F2D6-4586-B5ED-11E39E522BD3}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|x64 = Debug|x64 + Release|x64 = Release|x64 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {022A9D30-7C4F-416D-A9DF-5FF2661CC0AD}.Debug|x64.ActiveCfg = Debug|x64 + {022A9D30-7C4F-416D-A9DF-5FF2661CC0AD}.Debug|x64.Build.0 = Debug|x64 + {022A9D30-7C4F-416D-A9DF-5FF2661CC0AD}.Release|x64.ActiveCfg = Release|x64 + {022A9D30-7C4F-416D-A9DF-5FF2661CC0AD}.Release|x64.Build.0 = Release|x64 + {32F3882B-F2D6-4586-B5ED-11E39E522BD3}.Debug|x64.ActiveCfg = Debug|x64 + {32F3882B-F2D6-4586-B5ED-11E39E522BD3}.Debug|x64.Build.0 = Debug|x64 + {32F3882B-F2D6-4586-B5ED-11E39E522BD3}.Release|x64.ActiveCfg = Release|x64 + {32F3882B-F2D6-4586-B5ED-11E39E522BD3}.Release|x64.Build.0 = Release|x64 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {B7A3DA30-D443-40FF-AC51-988AD41E3962} + EndGlobalSection +EndGlobal diff --git a/installer/PowerToysSetup/Bitmaps/banner.bmp b/installer/PowerToysSetup/Bitmaps/banner.bmp new file mode 100644 index 0000000000000000000000000000000000000000..9dadff7271903947e4f985cc23b3543088947835 GIT binary patch literal 85894 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 K3dEwo3x5Oc(6>PV literal 0 HcmV?d00001 diff --git a/installer/PowerToysSetup/CustomDialogs/PTInstallDirDlg.wxs b/installer/PowerToysSetup/CustomDialogs/PTInstallDirDlg.wxs new file mode 100644 index 0000000000..3db5407048 --- /dev/null +++ b/installer/PowerToysSetup/CustomDialogs/PTInstallDirDlg.wxs @@ -0,0 +1,30 @@ + + + + + + + + + + + + 1 + + + + + + + + + + + + + + + + + + diff --git a/installer/PowerToysSetup/CustomDialogs/WixUI_PTInstallDir.wxs b/installer/PowerToysSetup/CustomDialogs/WixUI_PTInstallDir.wxs new file mode 100644 index 0000000000..af7ae97000 --- /dev/null +++ b/installer/PowerToysSetup/CustomDialogs/WixUI_PTInstallDir.wxs @@ -0,0 +1,81 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 1 + "1"]]> + + 1 + + NOT Installed + Installed AND PATCH + + 1 + LicenseAccepted = "1" + + 1 + 1 + NOT WIXUI_DONTVALIDATEPATH + "1"]]> + WIXUI_DONTVALIDATEPATH OR WIXUI_INSTALLDIR_VALID="1" + 1 + 1 + + NOT Installed + Installed AND NOT PATCH + Installed AND PATCH + + 1 + + 1 + 1 + 1 + + + + + + + diff --git a/installer/PowerToysSetup/PowerToysSetup.wixproj b/installer/PowerToysSetup/PowerToysSetup.wixproj new file mode 100644 index 0000000000..ccbffd912d --- /dev/null +++ b/installer/PowerToysSetup/PowerToysSetup.wixproj @@ -0,0 +1,62 @@ + + + + Release + x64 + 3.10 + 022a9d30-7c4f-416d-a9df-5ff2661cc0ad + 2.0 + PowerToysSetup + Package + + + Debug + $(Platform)\$(Configuration)\ + obj\$(Platform)\$(Configuration)\ + + + $(Platform)\$(Configuration)\ + obj\$(Platform)\$(Configuration)\ + + + + + + + + + $(WixExtDir)\WixUtilExtension.dll + WixUtilExtension + + + $(WixExtDir)\WixUIExtension.dll + WixUIExtension + + + + + + + + PowerToysSetupCustomActions + {32f3882b-f2d6-4586-b5ed-11e39e522bd3} + True + True + Binaries;Content;Satellites + INSTALLFOLDER + + + + + + + + + \ No newline at end of file diff --git a/installer/PowerToysSetup/Product.wxs b/installer/PowerToysSetup/Product.wxs new file mode 100644 index 0000000000..37d1941d65 --- /dev/null +++ b/installer/PowerToysSetup/Product.wxs @@ -0,0 +1,285 @@ + + + + + + + + + + + + + + + + + = 17134)]]> + + + + + + + + + + + WIXUI_EXITDIALOGOPTIONALCHECKBOX = 1 and NOT Installed + 1 + NOT Installed + NOT Installed + Installed AND _REMOVE_ALL="Yes" + Installed AND _REMOVE_ALL="Yes" + Installed AND NOT (_REMOVE_ALL="Yes") + Installed AND NOT (_REMOVE_ALL="Yes") + + + + + + + + + + + + + + + NOT Installed and CREATESCHEDULEDTASK = 1 + + + + Installed and (NOT UPGRADINGPRODUCTCODE) AND (REMOVE="ALL") + + + NOT Installed + + + Installed and (NOT UPGRADINGPRODUCTCODE) AND (REMOVE="ALL") + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + INSTALLSTARTMENUSHORTCUT + + + + + + + + + + INSTALLDESKTOPSHORTCUT + + + + + + + + + + + + + + + + + + + + + diff --git a/installer/PowerToysSetupCustomActions/CustomAction.cpp b/installer/PowerToysSetupCustomActions/CustomAction.cpp new file mode 100644 index 0000000000..20639ab4c4 --- /dev/null +++ b/installer/PowerToysSetupCustomActions/CustomAction.cpp @@ -0,0 +1,528 @@ +#include "stdafx.h" + +#define SECURITY_WIN32 +#include +#pragma comment(lib, "Secur32.lib") +#include + +#include +#include +#pragma comment(lib, "taskschd.lib") +#pragma comment(lib, "comsupp.lib") + +#include +#include +#include + +using namespace std; + +TRACELOGGING_DEFINE_PROVIDER( + g_hProvider, + "Microsoft.PowerToysInstaller", + // {e1d8165d-5cb6-5c74-3b51-bdfbfe4f7a3b} + (0xe1d8165d, 0x5cb6, 0x5c74, 0x3b, 0x51, 0xbd, 0xfb, 0xfe, 0x4f, 0x7a, 0x3b), + TraceLoggingOptionProjectTelemetry()); + +const DWORD USERNAME_DOMAIN_LEN = DNLEN + UNLEN + 2; // Domain Name + '\' + User Name + '\0' +const DWORD USERNAME_LEN = UNLEN + 1; // User Name + '\0' + +// Creates a Scheduled Task to run at logon for the current user. +// The path of the executable to run should be passed as the CustomActionData (Value). +// Based on the Task Scheduler Logon Trigger Example: +// https://docs.microsoft.com/en-us/windows/desktop/taskschd/logon-trigger-example--c---/ +UINT __stdcall CreateScheduledTaskCA(MSIHANDLE hInstall) { + HRESULT hr = S_OK; + UINT er = ERROR_SUCCESS; + + TCHAR username_domain[USERNAME_DOMAIN_LEN]; + TCHAR username[USERNAME_LEN]; + + std::wstring wstrTaskName; + + ITaskService *pService = NULL; + ITaskFolder *pTaskFolder = NULL; + ITaskDefinition *pTask = NULL; + IRegistrationInfo *pRegInfo = NULL; + ITaskSettings *pSettings = NULL; + ITriggerCollection *pTriggerCollection = NULL; + IRegisteredTask *pRegisteredTask = NULL; + + hr = WcaInitialize(hInstall, "CreateScheduledTaskCA"); + ExitOnFailure(hr, "Failed to initialize"); + + WcaLog(LOGMSG_STANDARD, "Initialized."); + + // ------------------------------------------------------ + // Get the Domain/Username for the trigger. + // + // This action needs to run as the system to get elevated privileges from the installation, + // so GetUserNameEx can't be used to get the current user details. + // The USERNAME and USERDOMAIN environment variables are used instead. + if (!GetEnvironmentVariable(L"USERNAME", username, USERNAME_LEN)) { + ExitWithLastError(hr, "Getting username failed: %x", hr); + } + if (!GetEnvironmentVariable(L"USERDOMAIN", username_domain, USERNAME_DOMAIN_LEN)) { + ExitWithLastError(hr, "Getting the user's domain failed: %x", hr); + } + wcscat_s(username_domain, L"\\"); + wcscat_s(username_domain, username); + + WcaLog(LOGMSG_STANDARD, "Current user detected: %ls", username_domain); + + // Task Name. + wstrTaskName = L"Autorun for "; + wstrTaskName += username; + + // Get the executable path passed to the custom action. + LPWSTR wszExecutablePath = NULL; + hr = WcaGetProperty(L"CustomActionData", &wszExecutablePath); + ExitOnFailure(hr, "Failed to get the executable path from CustomActionData."); + + // COM and Security Initialization is expected to have been done by the MSI. + // It couldn't be done in the DLL, anyway. + // ------------------------------------------------------ + // Create an instance of the Task Service. + hr = CoCreateInstance(CLSID_TaskScheduler, + NULL, + CLSCTX_INPROC_SERVER, + IID_ITaskService, + (void**)&pService); + ExitOnFailure(hr, "Failed to create an instance of ITaskService: %x", hr); + + // Connect to the task service. + hr = pService->Connect(_variant_t(), _variant_t(), + _variant_t(), _variant_t()); + ExitOnFailure(hr, "ITaskService::Connect failed: %x", hr); + + // ------------------------------------------------------ + // Get the PowerToys task folder. Creates it if it doesn't exist. + hr = pService->GetFolder(_bstr_t(L"\\PowerToys"), &pTaskFolder); + if (FAILED(hr)) { + // Folder doesn't exist. Get the Root folder and create the PowerToys subfolder. + ITaskFolder *pRootFolder = NULL; + hr = pService->GetFolder(_bstr_t(L"\\"), &pRootFolder); + ExitOnFailure(hr, "Cannot get Root Folder pointer: %x", hr); + hr = pRootFolder->CreateFolder(_bstr_t(L"\\PowerToys"), _variant_t(L""), &pTaskFolder); + if (FAILED(hr)) { + pRootFolder->Release(); + ExitOnFailure(hr, "Cannot create PowerToys task folder: %x", hr); + } + WcaLog(LOGMSG_STANDARD, "PowerToys task folder created."); + } + + // If the same task exists, remove it. + pTaskFolder->DeleteTask(_bstr_t(wstrTaskName.c_str()), 0); + + // Create the task builder object to create the task. + hr = pService->NewTask(0, &pTask); + ExitOnFailure(hr, "Failed to create a task definition: %x", hr); + + // ------------------------------------------------------ + // Get the registration info for setting the identification. + hr = pTask->get_RegistrationInfo(&pRegInfo); + ExitOnFailure(hr, "Cannot get identification pointer: %x", hr); + hr = pRegInfo->put_Author(_bstr_t(username_domain)); + ExitOnFailure(hr, "Cannot put identification info: %x", hr); + + // ------------------------------------------------------ + // Create the settings for the task + hr = pTask->get_Settings(&pSettings); + ExitOnFailure(hr, "Cannot get settings pointer: %x", hr); + + hr = pSettings->put_StartWhenAvailable(VARIANT_FALSE); + ExitOnFailure(hr, "Cannot put_StartWhenAvailable setting info: %x", hr); + hr = pSettings->put_StopIfGoingOnBatteries(VARIANT_FALSE); + ExitOnFailure(hr, "Cannot put_StopIfGoingOnBatteries setting info: %x", hr); + hr = pSettings->put_ExecutionTimeLimit(_bstr_t(L"PT0S")); //Unlimited + ExitOnFailure(hr, "Cannot put_ExecutionTimeLimit setting info: %x", hr); + hr = pSettings->put_DisallowStartIfOnBatteries(VARIANT_FALSE); + ExitOnFailure(hr, "Cannot put_DisallowStartIfOnBatteries setting info: %x", hr); + + // ------------------------------------------------------ + // Get the trigger collection to insert the logon trigger. + hr = pTask->get_Triggers(&pTriggerCollection); + ExitOnFailure(hr, "Cannot get trigger collection: %x", hr); + + // Add the logon trigger to the task. + ITrigger *pTrigger = NULL; + hr = pTriggerCollection->Create(TASK_TRIGGER_LOGON, &pTrigger); + ExitOnFailure(hr, "Cannot create the trigger: %x", hr); + + ILogonTrigger *pLogonTrigger = NULL; + hr = pTrigger->QueryInterface( + IID_ILogonTrigger, (void**)&pLogonTrigger); + pTrigger->Release(); + ExitOnFailure(hr, "QueryInterface call failed for ILogonTrigger: %x", hr); + + hr = pLogonTrigger->put_Id(_bstr_t(L"Trigger1")); + if (FAILED(hr)) { + WcaLogError(hr, "Cannot put the trigger ID: %x", hr); + } + + // Timing issues may make explorer not be started when the task runs. + // Add a little delay to mitigate this. + hr = pLogonTrigger->put_Delay(_bstr_t(L"PT03S")); + if (FAILED(hr)) { + WcaLogError(hr, "Cannot put the trigger delay: %x", hr); + } + + // Define the user. The task will execute when the user logs on. + // The specified user must be a user on this computer. + hr = pLogonTrigger->put_UserId(_bstr_t(username_domain)); + pLogonTrigger->Release(); + ExitOnFailure(hr, "Cannot add user ID to logon trigger: %x", hr); + + // ------------------------------------------------------ + // Add an Action to the task. This task will execute the path passed to this custom action. + IActionCollection *pActionCollection = NULL; + + // Get the task action collection pointer. + hr = pTask->get_Actions(&pActionCollection); + ExitOnFailure(hr, "Cannot get Task collection pointer: %x", hr); + + // Create the action, specifying that it is an executable action. + IAction *pAction = NULL; + hr = pActionCollection->Create(TASK_ACTION_EXEC, &pAction); + pActionCollection->Release(); + ExitOnFailure(hr, "Cannot create the action: %x", hr); + + IExecAction *pExecAction = NULL; + // QI for the executable task pointer. + hr = pAction->QueryInterface( + IID_IExecAction, (void**)&pExecAction); + pAction->Release(); + ExitOnFailure(hr, "QueryInterface call failed for IExecAction: %x", hr); + + // Set the path of the executable to PowerToys (passed as CustomActionData). + hr = pExecAction->put_Path(_bstr_t(wszExecutablePath)); + pExecAction->Release(); + ExitOnFailure(hr, "Cannot set path of executable: %x", hr); + + // ------------------------------------------------------ + // Create the principal for the task + IPrincipal *pPrincipal = NULL; + hr = pTask->get_Principal(&pPrincipal); + ExitOnFailure(hr, "Cannot get principal pointer: %x", hr); + + // Set up principal information: + hr = pPrincipal->put_Id(_bstr_t(L"Principal1")); + if (FAILED(hr)) { + WcaLogError(hr, "Cannot put the principal ID: %x", hr); + } + + hr = pPrincipal->put_UserId(_bstr_t(username_domain)); + if (FAILED(hr)) { + WcaLogError(hr, "Cannot put principal user Id: %x", hr); + } + + hr = pPrincipal->put_LogonType(TASK_LOGON_INTERACTIVE_TOKEN); + if (FAILED(hr)) { + WcaLogError(hr, "Cannot put principal logon type: %x", hr); + } + + // Run the task with the highest available privileges. + hr = pPrincipal->put_RunLevel(TASK_RUNLEVEL_HIGHEST); + pPrincipal->Release(); + ExitOnFailure(hr, "Cannot put principal run level: %x", hr); + + // ------------------------------------------------------ + // Save the task in the PowerToys folder. + hr = pTaskFolder->RegisterTaskDefinition( + _bstr_t(wstrTaskName.c_str()), + pTask, + TASK_CREATE_OR_UPDATE, + _variant_t(username_domain), + _variant_t(), + TASK_LOGON_INTERACTIVE_TOKEN, + _variant_t(L""), + &pRegisteredTask); + ExitOnFailure(hr, "Error saving the Task : %x", hr); + + WcaLog(LOGMSG_STANDARD, "Scheduled task created for the current user."); + +LExit: + ReleaseStr(wszExecutablePath); + if (pService) pService->Release(); + if (pTaskFolder) pTaskFolder->Release(); + if (pTask) pTask->Release(); + if (pRegInfo) pRegInfo->Release(); + if (pSettings) pSettings->Release(); + if (pTriggerCollection) pTriggerCollection->Release(); + if (pRegisteredTask) pRegisteredTask->Release(); + + if (!SUCCEEDED(hr)) { + PMSIHANDLE hRecord = MsiCreateRecord(0); + MsiRecordSetString(hRecord, 0, TEXT("Failed to create a scheduled task to start PowerToys at user login. You can re-try to create the scheduled task using the PowerToys settings.")); + MsiProcessMessage(hInstall, INSTALLMESSAGE(INSTALLMESSAGE_WARNING + MB_OK), hRecord); + } + + er = SUCCEEDED(hr) ? ERROR_SUCCESS : ERROR_INSTALL_FAILURE; + return WcaFinalize(er); +} + +// Removes all Scheduled Tasks in the PowerToys folder and deletes the folder afterwards. +// Based on the Task Scheduler Displaying Task Names and State example: +// https://docs.microsoft.com/en-us/windows/desktop/TaskSchd/displaying-task-names-and-state--c---/ +UINT __stdcall RemoveScheduledTasksCA(MSIHANDLE hInstall) { + HRESULT hr = S_OK; + UINT er = ERROR_SUCCESS; + + ITaskService *pService = NULL; + ITaskFolder *pTaskFolder = NULL; + IRegisteredTaskCollection* pTaskCollection = NULL; + + hr = WcaInitialize(hInstall, "RemoveScheduledTasksCA"); + ExitOnFailure(hr, "Failed to initialize"); + + WcaLog(LOGMSG_STANDARD, "Initialized."); + + // COM and Security Initialization is expected to have been done by the MSI. + // It couldn't be done in the DLL, anyway. + // ------------------------------------------------------ + // Create an instance of the Task Service. + hr = CoCreateInstance(CLSID_TaskScheduler, + NULL, + CLSCTX_INPROC_SERVER, + IID_ITaskService, + (void**)&pService); + ExitOnFailure(hr, "Failed to create an instance of ITaskService: %x", hr); + + // Connect to the task service. + hr = pService->Connect(_variant_t(), _variant_t(), + _variant_t(), _variant_t()); + ExitOnFailure(hr, "ITaskService::Connect failed: %x", hr); + + // ------------------------------------------------------ + // Get the PowerToys task folder. + hr = pService->GetFolder(_bstr_t(L"\\PowerToys"), &pTaskFolder); + if (FAILED(hr)) { + // Folder doesn't exist. No need to delete anything. + WcaLog(LOGMSG_STANDARD, "The PowerToys scheduled task folder wasn't found. Nothing to delete."); + hr = S_OK; + ExitFunction(); + } + + // ------------------------------------------------------- + // Get the registered tasks in the folder. + hr = pTaskFolder->GetTasks(TASK_ENUM_HIDDEN, &pTaskCollection); + ExitOnFailure(hr, "Cannot get the registered tasks: %x", hr); + + LONG numTasks = 0; + hr = pTaskCollection->get_Count(&numTasks); + for (LONG i = 0; i < numTasks; i++) { + // Delete all the tasks found. + // If some tasks can't be deleted, the folder won't be deleted later and the user will still be notified. + IRegisteredTask* pRegisteredTask = NULL; + hr = pTaskCollection->get_Item(_variant_t(i + 1), &pRegisteredTask); + if (SUCCEEDED(hr)) { + BSTR taskName = NULL; + hr = pRegisteredTask->get_Name(&taskName); + if (SUCCEEDED(hr)) { + hr = pTaskFolder->DeleteTask(taskName, NULL); + if (FAILED(hr)) { + WcaLogError(hr, "Cannot delete the '%S' task: %x", taskName, hr); + } + SysFreeString(taskName); + } else { + WcaLogError(hr, "Cannot get the registered task name: %x", hr); + } + pRegisteredTask->Release(); + } else { + WcaLogError(hr, "Cannot get the registered task item at index=%d: %x", i + 1, hr); + } + } + + // ------------------------------------------------------ + // Get the pointer to the root task folder and delete the PowerToys subfolder. + ITaskFolder *pRootFolder = NULL; + hr = pService->GetFolder(_bstr_t(L"\\"), &pRootFolder); + ExitOnFailure(hr, "Cannot get Root Folder pointer: %x", hr); + hr = pRootFolder->DeleteFolder(_bstr_t(L"PowerToys"), NULL); + pRootFolder->Release(); + ExitOnFailure(hr, "Cannot delete the PowerToys folder: %x", hr); + + WcaLog(LOGMSG_STANDARD, "Deleted the PowerToys Task Scheduler folder."); + +LExit: + if (pService) pService->Release(); + if (pTaskFolder) pTaskFolder->Release(); + if (pTaskCollection) pTaskCollection->Release(); + + if (!SUCCEEDED(hr)) { + PMSIHANDLE hRecord = MsiCreateRecord(0); + MsiRecordSetString(hRecord, 0, TEXT("Failed to remove the PowerToys folder from the scheduled task. These can be removed manually later.")); + MsiProcessMessage(hInstall, INSTALLMESSAGE(INSTALLMESSAGE_WARNING + MB_OK), hRecord); + } + + er = SUCCEEDED(hr) ? ERROR_SUCCESS : ERROR_INSTALL_FAILURE; + return WcaFinalize(er); +} + +UINT __stdcall TelemetryLogInstallSuccessCA(MSIHANDLE hInstall) { + HRESULT hr = S_OK; + UINT er = ERROR_SUCCESS; + + hr = WcaInitialize(hInstall, "TelemetryLogInstallSuccessCA"); + ExitOnFailure(hr, "Failed to initialize"); + + TraceLoggingWrite( + g_hProvider, + "Install::Success", + ProjectTelemetryPrivacyDataTag(ProjectTelemetryTag_ProductAndServicePerformance), + TraceLoggingBoolean(TRUE, "UTCReplace_AppSessionGuid"), + TraceLoggingKeyword(PROJECT_KEYWORD_MEASURE)); + +LExit: + er = SUCCEEDED(hr) ? ERROR_SUCCESS : ERROR_INSTALL_FAILURE; + return WcaFinalize(er); +} + +UINT __stdcall TelemetryLogInstallCancelCA(MSIHANDLE hInstall) { + HRESULT hr = S_OK; + UINT er = ERROR_SUCCESS; + + hr = WcaInitialize(hInstall, "TelemetryLogInstallCancelCA"); + ExitOnFailure(hr, "Failed to initialize"); + + TraceLoggingWrite( + g_hProvider, + "Install::Cancel", + ProjectTelemetryPrivacyDataTag(ProjectTelemetryTag_ProductAndServicePerformance), + TraceLoggingBoolean(TRUE, "UTCReplace_AppSessionGuid"), + TraceLoggingKeyword(PROJECT_KEYWORD_MEASURE)); + +LExit: + er = SUCCEEDED(hr) ? ERROR_SUCCESS : ERROR_INSTALL_FAILURE; + return WcaFinalize(er); +} + +UINT __stdcall TelemetryLogInstallFailCA(MSIHANDLE hInstall) { + HRESULT hr = S_OK; + UINT er = ERROR_SUCCESS; + + hr = WcaInitialize(hInstall, "TelemetryLogInstallFailCA"); + ExitOnFailure(hr, "Failed to initialize"); + + TraceLoggingWrite( + g_hProvider, + "Install::Fail", + ProjectTelemetryPrivacyDataTag(ProjectTelemetryTag_ProductAndServicePerformance), + TraceLoggingBoolean(TRUE, "UTCReplace_AppSessionGuid"), + TraceLoggingKeyword(PROJECT_KEYWORD_MEASURE)); + +LExit: + er = SUCCEEDED(hr) ? ERROR_SUCCESS : ERROR_INSTALL_FAILURE; + return WcaFinalize(er); +} + +UINT __stdcall TelemetryLogUninstallSuccessCA(MSIHANDLE hInstall) { + HRESULT hr = S_OK; + UINT er = ERROR_SUCCESS; + + hr = WcaInitialize(hInstall, "TelemetryLogUninstallSuccessCA"); + ExitOnFailure(hr, "Failed to initialize"); + + TraceLoggingWrite( + g_hProvider, + "Uninstall::Success", + ProjectTelemetryPrivacyDataTag(ProjectTelemetryTag_ProductAndServicePerformance), + TraceLoggingBoolean(TRUE, "UTCReplace_AppSessionGuid"), + TraceLoggingKeyword(PROJECT_KEYWORD_MEASURE)); + +LExit: + er = SUCCEEDED(hr) ? ERROR_SUCCESS : ERROR_INSTALL_FAILURE; + return WcaFinalize(er); +} + +UINT __stdcall TelemetryLogUninstallCancelCA(MSIHANDLE hInstall) { + HRESULT hr = S_OK; + UINT er = ERROR_SUCCESS; + + hr = WcaInitialize(hInstall, "TelemetryLogUninstallCancelCA"); + ExitOnFailure(hr, "Failed to initialize"); + + TraceLoggingWrite( + g_hProvider, + "Uninstall::Cancel", + ProjectTelemetryPrivacyDataTag(ProjectTelemetryTag_ProductAndServicePerformance), + TraceLoggingBoolean(TRUE, "UTCReplace_AppSessionGuid"), + TraceLoggingKeyword(PROJECT_KEYWORD_MEASURE)); + +LExit: + er = SUCCEEDED(hr) ? ERROR_SUCCESS : ERROR_INSTALL_FAILURE; + return WcaFinalize(er); +} + +UINT __stdcall TelemetryLogUninstallFailCA(MSIHANDLE hInstall) { + HRESULT hr = S_OK; + UINT er = ERROR_SUCCESS; + + hr = WcaInitialize(hInstall, "TelemetryLogUninstallFailCA"); + ExitOnFailure(hr, "Failed to initialize"); + + TraceLoggingWrite( + g_hProvider, + "Uninstall::Fail", + ProjectTelemetryPrivacyDataTag(ProjectTelemetryTag_ProductAndServicePerformance), + TraceLoggingBoolean(TRUE, "UTCReplace_AppSessionGuid"), + TraceLoggingKeyword(PROJECT_KEYWORD_MEASURE)); + +LExit: + er = SUCCEEDED(hr) ? ERROR_SUCCESS : ERROR_INSTALL_FAILURE; + return WcaFinalize(er); +} + +UINT __stdcall TelemetryLogRepairCancelCA(MSIHANDLE hInstall) { + HRESULT hr = S_OK; + UINT er = ERROR_SUCCESS; + + hr = WcaInitialize(hInstall, "TelemetryLogRepairCancelCA"); + ExitOnFailure(hr, "Failed to initialize"); + + TraceLoggingWrite( + g_hProvider, + "Repair::Cancel", + ProjectTelemetryPrivacyDataTag(ProjectTelemetryTag_ProductAndServicePerformance), + TraceLoggingBoolean(TRUE, "UTCReplace_AppSessionGuid"), + TraceLoggingKeyword(PROJECT_KEYWORD_MEASURE)); + +LExit: + er = SUCCEEDED(hr) ? ERROR_SUCCESS : ERROR_INSTALL_FAILURE; + return WcaFinalize(er); +} + +UINT __stdcall TelemetryLogRepairFailCA(MSIHANDLE hInstall) { + HRESULT hr = S_OK; + UINT er = ERROR_SUCCESS; + + hr = WcaInitialize(hInstall, "TelemetryLogRepairFailCA"); + ExitOnFailure(hr, "Failed to initialize"); + + TraceLoggingWrite( + g_hProvider, + "Repair::Fail", + ProjectTelemetryPrivacyDataTag(ProjectTelemetryTag_ProductAndServicePerformance), + TraceLoggingBoolean(TRUE, "UTCReplace_AppSessionGuid"), + TraceLoggingKeyword(PROJECT_KEYWORD_MEASURE)); + +LExit: + er = SUCCEEDED(hr) ? ERROR_SUCCESS : ERROR_INSTALL_FAILURE; + return WcaFinalize(er); +} + +// DllMain - Initialize and cleanup WiX custom action utils. +extern "C" BOOL WINAPI DllMain(__in HINSTANCE hInst, __in ULONG ulReason, __in LPVOID) { + switch (ulReason) { + case DLL_PROCESS_ATTACH: + WcaGlobalInitialize(hInst); + TraceLoggingRegister(g_hProvider); + break; + + case DLL_PROCESS_DETACH: + TraceLoggingUnregister(g_hProvider); + WcaGlobalFinalize(); + break; + } + + return TRUE; +} diff --git a/installer/PowerToysSetupCustomActions/CustomAction.def b/installer/PowerToysSetupCustomActions/CustomAction.def new file mode 100644 index 0000000000..ff324e5657 --- /dev/null +++ b/installer/PowerToysSetupCustomActions/CustomAction.def @@ -0,0 +1,13 @@ +LIBRARY "PowerToysSetupCustomActions" + +EXPORTS + CreateScheduledTaskCA + RemoveScheduledTasksCA + TelemetryLogInstallSuccessCA + TelemetryLogInstallCancelCA + TelemetryLogInstallFailCA + TelemetryLogUninstallSuccessCA + TelemetryLogUninstallCancelCA + TelemetryLogUninstallFailCA + TelemetryLogRepairCancelCA + TelemetryLogRepairFailCA \ No newline at end of file diff --git a/installer/PowerToysSetupCustomActions/PowerToysSetupCustomActions.vcxproj b/installer/PowerToysSetupCustomActions/PowerToysSetupCustomActions.vcxproj new file mode 100644 index 0000000000..0c077a14a7 --- /dev/null +++ b/installer/PowerToysSetupCustomActions/PowerToysSetupCustomActions.vcxproj @@ -0,0 +1,116 @@ + + + + + Debug + x64 + + + Release + x64 + + + + {32f3882b-f2d6-4586-b5ed-11e39e522bd3} + Win32Proj + PowerToysSetupCustomActions + 10.0 + + + + DynamicLibrary + Unicode + v142 + + + DynamicLibrary + Unicode + true + v142 + + + + + + + + + + + + + true + $(Platform)\$(Configuration)\ + + + false + $(Platform)\$(Configuration)\ + + + + Disabled + inc;telemetry;$(WIX)sdk\$(WixPlatformToolset)\inc;%(AdditionalIncludeDirectories) + WIN64;_DEBUG;_WINDOWS;_USRDLL;CUSTOMACTIONTEST_EXPORTS;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDebug + Use + Level3 + ProgramDatabase + + + msi.lib;dutil.lib;wcautil.lib;Version.lib;%(AdditionalDependencies) + $(WIX)sdk\$(WixPlatformToolset)\lib\x64;%(AdditionalLibraryDirectories) + CustomAction.def + true + Windows + HighestAvailable + + + + + MaxSpeed + true + inc;telemetry;$(WIX)sdk\$(WixPlatformToolset)\inc;%(AdditionalIncludeDirectories) + WIN64;NDEBUG;_WINDOWS;_USRDLL;CUSTOMACTIONTEST_EXPORTS;%(PreprocessorDefinitions) + MultiThreaded + true + Use + Level3 + ProgramDatabase + + + msi.lib;dutil.lib;wcautil.lib;Version.lib;%(AdditionalDependencies) + $(WIX)sdk\$(WixPlatformToolset)\lib\x64;%(AdditionalLibraryDirectories) + CustomAction.def + true + Windows + true + true + MachineX64 + HighestAvailable + + + + + + Create + Create + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/installer/PowerToysSetupCustomActions/PowerToysSetupCustomActions.vcxproj.filters b/installer/PowerToysSetupCustomActions/PowerToysSetupCustomActions.vcxproj.filters new file mode 100644 index 0000000000..03f3a4b8b4 --- /dev/null +++ b/installer/PowerToysSetupCustomActions/PowerToysSetupCustomActions.vcxproj.filters @@ -0,0 +1,24 @@ + + + + + + + + + + Telemetry + + + Telemetry + + + + + + + + {6e73ce5d-e715-4e7e-b796-c5d180b07ff2} + + + \ No newline at end of file diff --git a/installer/PowerToysSetupCustomActions/Telemetry/ProjectTelemetry.h b/installer/PowerToysSetupCustomActions/Telemetry/ProjectTelemetry.h new file mode 100644 index 0000000000..1289d69201 --- /dev/null +++ b/installer/PowerToysSetupCustomActions/Telemetry/ProjectTelemetry.h @@ -0,0 +1,6 @@ +#pragma once + +#include +#include + +TRACELOGGING_DECLARE_PROVIDER(g_hProvider); diff --git a/installer/PowerToysSetupCustomActions/Telemetry/TraceLoggingDefines.h b/installer/PowerToysSetupCustomActions/Telemetry/TraceLoggingDefines.h new file mode 100644 index 0000000000..2543208f02 --- /dev/null +++ b/installer/PowerToysSetupCustomActions/Telemetry/TraceLoggingDefines.h @@ -0,0 +1,6 @@ +#pragma once + +#define TraceLoggingOptionProjectTelemetry() TraceLoggingOptionGroup(0x42749043, 0x438c, 0x46a2, 0x82, 0xbe, 0xc6, 0xcb, 0xeb, 0x19, 0x2f, 0xf2) +#define ProjectTelemetryPrivacyDataTag(tag) TraceLoggingUInt64((tag), "Ignore") +#define ProjectTelemetryTag_ProductAndServicePerformance 0x0u +#define PROJECT_KEYWORD_MEASURE 0x0 diff --git a/installer/PowerToysSetupCustomActions/stdafx.cpp b/installer/PowerToysSetupCustomActions/stdafx.cpp new file mode 100644 index 0000000000..9a5cc24eaa --- /dev/null +++ b/installer/PowerToysSetupCustomActions/stdafx.cpp @@ -0,0 +1,4 @@ +#include "stdafx.h" + +// TODO: reference any additional headers you need in STDAFX.H +// and not in this file diff --git a/installer/PowerToysSetupCustomActions/stdafx.h b/installer/PowerToysSetupCustomActions/stdafx.h new file mode 100644 index 0000000000..490d80ec14 --- /dev/null +++ b/installer/PowerToysSetupCustomActions/stdafx.h @@ -0,0 +1,13 @@ +#pragma once + +#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers +// Windows Header Files: +#include +#include +#include + +// WiX Header Files: +#include + + +// TODO: reference additional headers your program requires here diff --git a/installer/README.md b/installer/README.md new file mode 100644 index 0000000000..86436094e2 --- /dev/null +++ b/installer/README.md @@ -0,0 +1,7 @@ +# PowerToys Setup Project + +## Build instructions + * Install the [WiX Toolset Visual Studio 2019 Extension](https://marketplace.visualstudio.com/items?itemName=RobMensching.WiXToolset). + * Install the [WiX Toolset build tools](https://wixtoolset.org/releases/) in the development machine. + * Open `powertoys.sln`, select the "Release" and "x64" configurations and build the `PowerToysSetup` project. + * The resulting installer will be built to `PowerToysSetup\bin\Release\PowerToysSetup.msi`. diff --git a/src/README.md b/src/README.md new file mode 100644 index 0000000000..3e424f2f09 --- /dev/null +++ b/src/README.md @@ -0,0 +1,8 @@ +# PowerToys Source Code + +## Code organization +The PowerToys are splitted into DLLs for each PowerToy module ([`modules`](/src/modules) folder), and an executable ([`runner`](/src/runner) folder) that loads and manages those DLLs. + +The settings window is a separate executable, contained in [`editor`](/src/editor) folder. In utilizes a WebView to display a HTML-based settings window (contained in [`settings-web`](/src/settings-web) folder). + +The [`common`](/src/common) contains code for a static libary with helper functions, used by both the runner and the PowerToys modules. diff --git a/src/common/README.md b/src/common/README.md new file mode 100644 index 0000000000..9fbc0a2f36 --- /dev/null +++ b/src/common/README.md @@ -0,0 +1,48 @@ +# Introduction +The common lib, as the name suggests, contains code shared by multiple PowerToys components and modules. + +# Classes and structures + +#### class Animation: [header](./animation.h) [source](./animation.cpp) +Animation helper class with two easing-in animations: linear and exponential. + +#### class AsyncMessageQueue: [header](./async_message_queue.h) +Header-only asynchronous message queue. Used by `TwoWayPipeMessageIPC`. + +#### class TwoWayPipeMessageIPC: [header](./two_way_pipe_message_ipc.h) +Header-only asynchronous IPC messaging class. Used by the runner to communicate with the settings window. + +#### class D2DSVG: [header](./d2d_svg.h) [source](./d2d_svg.cpp) +Class for loading, rendering and for some basic modifications of SVG graphics. + +#### class D2DText: [header](./d2d_text.h) [source](./d2d_text.cpp) +Class for rendering text using DirectX. + +#### class D2DWindow: [header](./d2d_window.h) [source](./d2d_window.cpp) +Base class for creating borderless windows, with DirectX enabled rendering pipeline. + +#### class DPIAware: [header](./dpi_aware.h) [source](./dpi_aware.cpp) +Helper class for creating DPI-aware applications. + +#### struct MonitorInfo: [header](./monitors.h) [source](./monitors.cpp) +Class for obtaining information about physical displays connected to the machine. + +#### class Settings, class PowerToyValues, class CustomActionObject: [header](./settings_objects.h) [source](./settings_objects.cpp) +Classes used to define settings screens for the PowerToys modules. + +#### class Tasklist: [header](./tasklist_positions.h) [source](./tasklist_positions.cpp) +Class that can detect the position of the windows buttons on the taskbar. It also detects which window will react to pressing `WinKey + number`. + +#### struct WindowsColors: [header](./windows_colors.h) [source](./windows_colors.cpp) +Class for detecting the current Windows color scheme. + +# Helpers + +#### Common helpers: [header](./common.h) [source](./common.cpp) +Various helper functions. + +#### Settings helpers: [header](./settings_helpers.h) +Helper methods for the settings. + +#### Start visible helper: [header](./start_visible.h) [source](./start_visible.cpp) +Contains function to test if the Start menu is visible. diff --git a/src/common/Telemetry/PowerToys.wprp b/src/common/Telemetry/PowerToys.wprp new file mode 100644 index 0000000000..70ccf172aa --- /dev/null +++ b/src/common/Telemetry/PowerToys.wprp @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/common/Telemetry/ProjectTelemetry.h b/src/common/Telemetry/ProjectTelemetry.h new file mode 100644 index 0000000000..1289d69201 --- /dev/null +++ b/src/common/Telemetry/ProjectTelemetry.h @@ -0,0 +1,6 @@ +#pragma once + +#include +#include + +TRACELOGGING_DECLARE_PROVIDER(g_hProvider); diff --git a/src/common/Telemetry/TraceLoggingDefines.h b/src/common/Telemetry/TraceLoggingDefines.h new file mode 100644 index 0000000000..2543208f02 --- /dev/null +++ b/src/common/Telemetry/TraceLoggingDefines.h @@ -0,0 +1,6 @@ +#pragma once + +#define TraceLoggingOptionProjectTelemetry() TraceLoggingOptionGroup(0x42749043, 0x438c, 0x46a2, 0x82, 0xbe, 0xc6, 0xcb, 0xeb, 0x19, 0x2f, 0xf2) +#define ProjectTelemetryPrivacyDataTag(tag) TraceLoggingUInt64((tag), "Ignore") +#define ProjectTelemetryTag_ProductAndServicePerformance 0x0u +#define PROJECT_KEYWORD_MEASURE 0x0 diff --git a/src/common/Telemetry/readme.md b/src/common/Telemetry/readme.md new file mode 100644 index 0000000000..9d88e81e48 --- /dev/null +++ b/src/common/Telemetry/readme.md @@ -0,0 +1,25 @@ + +# Overview + +Telemetry from the PowerToys provider can be captured using the PowerToys.wprp file and WPR. + +## Starting trace capture + +To capture a trace for the PowerToys provider, run the following: + +`wpr.exe -start "PowerToys.wprp"` + +## Stopping trace capture + +To capture a trace for the PowerToys provider, run the following: + +`wpr.exe -Stop "Trace.etl"` + +## Viewing Events + +Open the trace.etl file in WPA. + +## Additional Resources +[Tracelogging on MSDN](https://docs.microsoft.com/en-us/windows/win32/tracelogging/trace-logging-portal) + +[Recording and Viewing Events](https://docs.microsoft.com/en-us/windows/win32/tracelogging/tracelogging-record-and-display-tracelogging-events) \ No newline at end of file diff --git a/src/common/UnitTests-CommonLib/Settings.Tests.cpp b/src/common/UnitTests-CommonLib/Settings.Tests.cpp new file mode 100644 index 0000000000..470806c529 --- /dev/null +++ b/src/common/UnitTests-CommonLib/Settings.Tests.cpp @@ -0,0 +1,62 @@ +#include "pch.h" +#include + +using namespace Microsoft::VisualStudio::CppUnitTestFramework; +using namespace PowerToysSettings; + +namespace UnitTestsCommonLib +{ + TEST_CLASS(SettingsUnitTests) + { + private: + const std::wstring m_json = L"{\"name\":\"Module Name\",\"properties\" : {\"bool_toggle_true\":{\"value\":true},\"bool_toggle_false\":{\"value\":false},\"color_picker\" : {\"value\":\"#ff8d12\"},\"int_spinner\" : {\"value\":10},\"string_text\" : {\"value\":\"a quick fox\"}},\"version\" : \"1.0\" }"; + + public: + TEST_METHOD(LoadFromJsonBoolTrue) + { + PowerToyValues values = PowerToyValues::from_json_string(m_json); + Assert::IsTrue(values.is_bool_value(L"bool_toggle_true")); + + bool value = values.get_bool_value(L"bool_toggle_true"); + Assert::AreEqual(true, value); + } + + TEST_METHOD(LoadFromJsonBoolFalse) + { + PowerToyValues values = PowerToyValues::from_json_string(m_json); + Assert::IsTrue(values.is_bool_value(L"bool_toggle_false")); + + bool value = values.get_bool_value(L"bool_toggle_false"); + Assert::AreEqual(false, value); + } + + TEST_METHOD(LoadFromJsonInt) + { + PowerToyValues values = PowerToyValues::from_json_string(m_json); + Assert::IsTrue(values.is_int_value(L"int_spinner")); + + int value = values.get_int_value(L"int_spinner"); + Assert::AreEqual(10, value); + } + + TEST_METHOD(LoadFromJsonString) + { + PowerToyValues values = PowerToyValues::from_json_string(m_json); + Assert::IsTrue(values.is_string_value(L"string_text")); + + std::wstring value = values.get_string_value(L"string_text"); + std::wstring expected = L"a quick fox"; + Assert::AreEqual(expected, value); + } + + TEST_METHOD(LoadFromJsonColorPicker) + { + PowerToyValues values = PowerToyValues::from_json_string(m_json); + Assert::IsTrue(values.is_string_value(L"color_picker")); + + std::wstring value = values.get_string_value(L"color_picker"); + std::wstring expected = L"#ff8d12"; + Assert::AreEqual(expected, value); + } + }; +} diff --git a/src/common/UnitTests-CommonLib/UnitTests-CommonLib.vcxproj b/src/common/UnitTests-CommonLib/UnitTests-CommonLib.vcxproj new file mode 100644 index 0000000000..75ea7a3529 --- /dev/null +++ b/src/common/UnitTests-CommonLib/UnitTests-CommonLib.vcxproj @@ -0,0 +1,115 @@ + + + + + Debug + x64 + + + Release + x64 + + + + 16.0 + {1A066C63-64B3-45F8-92FE-664E1CCE8077} + Win32Proj + UnitTestsCommonLib + 10.0 + NativeUnitTestProject + + + + DynamicLibrary + true + v142 + Unicode + false + + + DynamicLibrary + false + v142 + true + Unicode + false + + + + + + + + + + + + + + + false + + + true + + + + Use + Level3 + MaxSpeed + true + true + true + ..\;..\Telemetry;..\..\..\deps\cpprestsdk\include;$(VCInstallDir)UnitTest\include;%(AdditionalIncludeDirectories) + NDEBUG;%(PreprocessorDefinitions) + true + pch.h + MultiThreaded + stdcpplatest + + + Windows + true + true + $(VCInstallDir)UnitTest\lib;%(AdditionalLibraryDirectories) + RuntimeObject.lib;%(AdditionalDependencies) + + + + + Use + Level3 + Disabled + true + $(VCInstallDir)UnitTest\include;..\;..\..\..\deps\cpprestsdk\include;%(AdditionalIncludeDirectories) + _DEBUG;%(PreprocessorDefinitions) + true + pch.h + MultiThreadedDebug + stdcpplatest + + + Windows + $(VCInstallDir)UnitTest\lib;%(AdditionalLibraryDirectories) + RuntimeObject.lib;%(AdditionalDependencies) + + + + + Create + Create + + + + + + + + + {74485049-c722-400f-abe5-86ac52d929b3} + + + + + + \ No newline at end of file diff --git a/src/common/UnitTests-CommonLib/UnitTests-CommonLib.vcxproj.filters b/src/common/UnitTests-CommonLib/UnitTests-CommonLib.vcxproj.filters new file mode 100644 index 0000000000..15ce6b75d8 --- /dev/null +++ b/src/common/UnitTests-CommonLib/UnitTests-CommonLib.vcxproj.filters @@ -0,0 +1,30 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hh;hpp;hxx;hm;inl;inc;ipp;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + Source Files + + + Source Files + + + + + Header Files + + + \ No newline at end of file diff --git a/src/common/UnitTests-CommonLib/pch.cpp b/src/common/UnitTests-CommonLib/pch.cpp new file mode 100644 index 0000000000..64b7eef6d6 --- /dev/null +++ b/src/common/UnitTests-CommonLib/pch.cpp @@ -0,0 +1,5 @@ +// pch.cpp: source file corresponding to the pre-compiled header + +#include "pch.h" + +// When you are using pre-compiled headers, this source file is necessary for compilation to succeed. diff --git a/src/common/UnitTests-CommonLib/pch.h b/src/common/UnitTests-CommonLib/pch.h new file mode 100644 index 0000000000..d7c448a6ed --- /dev/null +++ b/src/common/UnitTests-CommonLib/pch.h @@ -0,0 +1,16 @@ +// pch.h: This is a precompiled header file. +// Files listed below are compiled only once, improving build performance for future builds. +// This also affects IntelliSense performance, including code completion and many code browsing features. +// However, files listed here are ALL re-compiled if any one of them is updated between builds. +// Do not add files here that you will be updating frequently as this negates the performance advantage. + +#ifndef PCH_H +#define PCH_H + +// add headers that you want to pre-compile here +#include +#include + +#include "CppUnitTest.h" + +#endif //PCH_H diff --git a/src/common/animation.cpp b/src/common/animation.cpp new file mode 100644 index 0000000000..363d5efa9d --- /dev/null +++ b/src/common/animation.cpp @@ -0,0 +1,43 @@ +#include "pch.h" +#include "animation.h" + +Animation::Animation(double duration, double start, double stop) : + start_value(start), end_value(stop), duration(duration), start(std::chrono::high_resolution_clock::now()) { } + +void Animation::reset() { + start = std::chrono::high_resolution_clock::now(); +} +void Animation::reset(double duration) { + this->duration = duration; + reset(); +} +void Animation::reset(double duration, double start, double stop) { + start_value = start; + end_value = stop; + reset(duration); +} + +static double ease_out_expo(double t) { + return 1 - pow(2, -8 * t); +} + +double Animation::apply_animation_function(double t, AnimFunctions apply_function) const { + switch (apply_function) { + case EASE_OUT_EXPO: + return ease_out_expo(t); + case LINEAR: + default: + return t; + } +} + +double Animation::value(AnimFunctions apply_function) const { + auto anim_duration = std::chrono::high_resolution_clock::now() - start; + double t = std::chrono::duration(anim_duration).count() / duration; + if (t >= 1) + return end_value; + return start_value + (end_value - start_value) * apply_animation_function(t, apply_function); +} +bool Animation::done() const { + return std::chrono::high_resolution_clock::now() - start >= std::chrono::duration(duration); +} diff --git a/src/common/animation.h b/src/common/animation.h new file mode 100644 index 0000000000..25384919ec --- /dev/null +++ b/src/common/animation.h @@ -0,0 +1,31 @@ +#pragma once +#include + +/* + Usage: + When creating animation contstructor takes one parameter - how long + should the animation take in seconds. + + Call reset() when starting animation. + + When redering, call value() to get value from 0 to 1 - depending on animation + progress. +*/ +class Animation { +public: + enum AnimFunctions { + LINEAR = 0, + EASE_OUT_EXPO + }; + + Animation(double duration = 1, double start = 0, double stop = 1); + void reset(); + void reset(double duration); + void reset(double duration, double start, double stop); + double value(AnimFunctions apply_function) const; + bool done() const; +private: + double apply_animation_function(double t, AnimFunctions apply_function) const; + std::chrono::high_resolution_clock::time_point start; + double start_value, end_value, duration; +}; diff --git a/src/common/async_message_queue.h b/src/common/async_message_queue.h new file mode 100644 index 0000000000..a5bfb4570a --- /dev/null +++ b/src/common/async_message_queue.h @@ -0,0 +1,47 @@ +#pragma once +#include +#include +#include +#include +#include + +class AsyncMessageQueue { +private: + std::mutex queue_mutex; + std::queue message_queue; + std::condition_variable message_ready; + bool interrupted = false; + + //Disable copy + AsyncMessageQueue(const AsyncMessageQueue&); + AsyncMessageQueue& operator=(const AsyncMessageQueue&); + +public: + AsyncMessageQueue() { + } + void queue_message(std::wstring message) { + this->queue_mutex.lock(); + this->message_queue.push(message); + this->queue_mutex.unlock(); + this->message_ready.notify_one(); + } + std::wstring pop_message() { + std::unique_lock lock(this->queue_mutex); + while (message_queue.empty() && !this->interrupted) { + this->message_ready.wait(lock); + } + if (this->interrupted) { + //Just returns a empty string if the queue was interrupted. + return std::wstring(L""); + } + std::wstring message = this->message_queue.front(); + this->message_queue.pop(); + return message; + } + void interrupt() { + this->queue_mutex.lock(); + this->interrupted = true; + this->queue_mutex.unlock(); + this->message_ready.notify_all(); + } +}; diff --git a/src/common/common.cpp b/src/common/common.cpp new file mode 100644 index 0000000000..2ecba4746b --- /dev/null +++ b/src/common/common.cpp @@ -0,0 +1,152 @@ +#include "pch.h" +#include "common.h" +#include +#pragma comment(lib, "dwmapi.lib") +#include + + +std::optional get_button_pos(HWND hwnd) { + RECT button; + if (DwmGetWindowAttribute(hwnd, DWMWA_CAPTION_BUTTON_BOUNDS, &button, sizeof(RECT)) == S_OK) { + return button; + } else { + return {}; + } +} + +std::optional get_window_pos(HWND hwnd) { + RECT window; + if (DwmGetWindowAttribute(hwnd, DWMWA_EXTENDED_FRAME_BOUNDS, &window, sizeof(window)) == S_OK) { + return window; + } else { + return {}; + } +} + +std::optional get_mouse_pos() { + POINT point; + if (GetCursorPos(&point) == 0) { + return {}; + } else { + return point; + } +} + +int width(const RECT& rect) { + return rect.right - rect.left; +} + +int height(const RECT& rect) { + return rect.bottom - rect.top; +} + +bool operator<(const RECT& lhs, const RECT& rhs) { + auto lhs_tuple = std::make_tuple(lhs.left, lhs.right, lhs.top, lhs.bottom); + auto rhs_tuple = std::make_tuple(rhs.left, rhs.right, rhs.top, rhs.bottom); + return lhs_tuple < rhs_tuple; +} + +RECT keep_rect_inside_rect(const RECT& small_rect, const RECT& big_rect) { + RECT result = small_rect; + if ((result.right - result.left) > (big_rect.right - big_rect.left)) { + // small_rect is too big horizontally. resize it. + result.right = big_rect.right; + result.left = big_rect.left; + } else { + if (result.right > big_rect.right) { + // move the rect left. + result.left -= result.right-big_rect.right; + result.right -= result.right-big_rect.right; + } + if (result.left < big_rect.left) { + // move the rect right. + result.right += big_rect.left-result.left; + result.left += big_rect.left-result.left; + } + } + if ((result.bottom - result.top) > (big_rect.bottom - big_rect.top)) { + // small_rect is too big vertically. resize it. + result.bottom = big_rect.bottom; + result.top = big_rect.top; + } else { + if (result.bottom > big_rect.bottom) { + // move the rect up. + result.top -= result.bottom-big_rect.bottom; + result.bottom -= result.bottom-big_rect.bottom; + } + if (result.top < big_rect.top) { + // move the rect down. + result.bottom += big_rect.top-result.top; + result.top += big_rect.top-result.top; + } + } + return result; +} + +int run_message_loop() { + MSG msg; + while (GetMessage(&msg, NULL, 0, 0)) { + TranslateMessage(&msg); + DispatchMessage(&msg); + } + return static_cast(msg.wParam); +} + +void show_last_error_message(LPCWSTR lpszFunction, DWORD dw) { + // Retrieve the system error message for the error code + LPWSTR lpMsgBuf = NULL; + if (FormatMessageW(FORMAT_MESSAGE_ALLOCATE_BUFFER | + FORMAT_MESSAGE_FROM_SYSTEM | + FORMAT_MESSAGE_IGNORE_INSERTS, + NULL, + dw, + MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), + lpMsgBuf, + 0, NULL) > 0) { + // Display the error message and exit the process + LPWSTR lpDisplayBuf = (LPWSTR)LocalAlloc(LMEM_ZEROINIT, (lstrlenW(lpMsgBuf) + lstrlenW(lpszFunction) + 40) * sizeof(WCHAR)); + if (lpDisplayBuf != NULL) { + StringCchPrintfW(lpDisplayBuf, + LocalSize(lpDisplayBuf) / sizeof(WCHAR), + L"%s failed with error %d: %s", + lpszFunction, dw, lpMsgBuf); + MessageBoxW(NULL, (LPCTSTR)lpDisplayBuf, L"Error", MB_OK); + LocalFree(lpDisplayBuf); + } + LocalFree(lpMsgBuf); + } +} + +WindowState get_window_state(HWND hwnd) { + WINDOWPLACEMENT placement; + placement.length = sizeof(WINDOWPLACEMENT); + if (GetWindowPlacement(hwnd, &placement) == 0) { + return UNKNONW; + } + if (placement.showCmd == SW_MINIMIZE || placement.showCmd == SW_SHOWMINIMIZED || IsIconic(hwnd)) { + return MINIMIZED; + } + if (placement.showCmd == SW_MAXIMIZE || placement.showCmd == SW_SHOWMAXIMIZED) { + return MAXIMIZED; + } + auto rectp = get_window_pos(hwnd); + if (!rectp) { + return UNKNONW; + } + auto rect = *rectp; + MONITORINFO monitor; + monitor.cbSize = sizeof(MONITORINFO); + auto h_monitor = MonitorFromWindow(hwnd, MONITOR_DEFAULTTONEAREST); + GetMonitorInfo(h_monitor, &monitor); + bool top_left = monitor.rcWork.top == rect.top && monitor.rcWork.left == rect.left; + bool bottom_left = monitor.rcWork.bottom == rect.bottom && monitor.rcWork.left == rect.left; + bool top_right = monitor.rcWork.top == rect.top && monitor.rcWork.right == rect.right; + bool bottom_right = monitor.rcWork.bottom == rect.bottom && monitor.rcWork.right == rect.right; + if (top_left && bottom_left) return SNAPED_LEFT; + if (top_left) return SNAPED_TOP_LEFT; + if (bottom_left) return SNAPED_BOTTOM_LEFT; + if (top_right && bottom_right) return SNAPED_RIGHT; + if (top_right) return SNAPED_TOP_RIGHT; + if (bottom_right) return SNAPED_BOTTOM_RIGHT; + return RESTORED; +} \ No newline at end of file diff --git a/src/common/common.h b/src/common/common.h new file mode 100644 index 0000000000..f32c80d7b0 --- /dev/null +++ b/src/common/common.h @@ -0,0 +1,36 @@ +#pragma once +#include +#include + +// Returns RECT with positions of the minmize/maximize buttons of the given window. +// Does not always work, since some apps draw custom toolbars. +std::optional get_button_pos(HWND hwnd); +// Gets position of given window. +std::optional get_window_pos(HWND hwnd); +// Gets mouse postion. +std::optional get_mouse_pos(); +// Calculate sizes +int width(const RECT& rect); +int height(const RECT& rect); +// Compare rects +bool operator<(const RECT& lhs, const RECT& rhs); +// Moves and/or resizes small_rect to fit inside big_rect. +RECT keep_rect_inside_rect(const RECT& small_rect, const RECT& big_rect); +// Initializes and runs windows message loop +int run_message_loop(); + +void show_last_error_message(LPCWSTR lpszFunction, DWORD dw); + +enum WindowState { + UNKNONW, + MINIMIZED, + MAXIMIZED, + SNAPED_TOP_LEFT, + SNAPED_LEFT, + SNAPED_BOTTOM_LEFT, + SNAPED_TOP_RIGHT, + SNAPED_RIGHT, + SNAPED_BOTTOM_RIGHT, + RESTORED +}; +WindowState get_window_state(HWND hwnd); diff --git a/src/common/common.vcxproj b/src/common/common.vcxproj new file mode 100644 index 0000000000..7123526175 --- /dev/null +++ b/src/common/common.vcxproj @@ -0,0 +1,138 @@ + + + + + Debug + x64 + + + Release + x64 + + + + 15.0 + {74485049-C722-400F-ABE5-86AC52D929B3} + Win32Proj + common + 10.0 + common + + + + StaticLibrary + true + v142 + Unicode + + + StaticLibrary + false + v142 + true + Unicode + + + + + + + + + + + + + + + true + + + false + + + + Use + Level3 + Disabled + true + _DEBUG;_LIB;%(PreprocessorDefinitions) + true + pch.h + stdcpplatest + MultiThreadedDebug + inc;telemetry;..\..\deps\cpprestsdk\include;%(AdditionalIncludeDirectories) + + + Windows + true + + + + + Use + Level3 + MaxSpeed + true + true + true + NDEBUG;_LIB;%(PreprocessorDefinitions) + true + stdcpplatest + pch.h + MultiThreaded + inc;telemetry;..\..\deps\cpprestsdk\include;%(AdditionalIncludeDirectories) + + + Windows + true + true + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Create + Create + + + + + + + + + + + {4e577735-dfab-41af-8a6e-b6e8872a2928} + + + + + + \ No newline at end of file diff --git a/src/common/common.vcxproj.filters b/src/common/common.vcxproj.filters new file mode 100644 index 0000000000..c6e4c64145 --- /dev/null +++ b/src/common/common.vcxproj.filters @@ -0,0 +1,109 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hh;hpp;hxx;hm;inl;inc;ipp;xsd + + + {ed0f9961-6b12-408b-8dbc-fed779a557ac} + + + {3e9f944e-5d97-4a28-8865-2eff3a3568e7} + + + + + Header Files\Direct2D + + + Header Files\Direct2D + + + Header Files\Direct2D + + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files\Telemetry + + + Header Files\Telemetry + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + + + Source Files + + + Source Files + + + Source Files + + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + \ No newline at end of file diff --git a/src/common/d2d_svg.cpp b/src/common/d2d_svg.cpp new file mode 100644 index 0000000000..86c6c7c815 --- /dev/null +++ b/src/common/d2d_svg.cpp @@ -0,0 +1,105 @@ +#include "pch.h" +#include "d2d_svg.h" + +D2DSVG& D2DSVG::load(const std::wstring& filename, ID2D1DeviceContext5* d2d_dc) { + svg = nullptr; + winrt::com_ptr svg_stream; + winrt::check_hresult(SHCreateStreamOnFileEx(filename.c_str(), + STGM_READ, FILE_ATTRIBUTE_NORMAL, FALSE, + nullptr, + svg_stream.put())); + + winrt::check_hresult(d2d_dc->CreateSvgDocument( + svg_stream.get(), + D2D1::SizeF(1, 1), + svg.put())); + + winrt::com_ptr root; + svg->GetRoot(root.put()); + float tmp; + winrt::check_hresult(root->GetAttributeValue(L"width", &tmp)); + svg_width = (int)tmp; + winrt::check_hresult(root->GetAttributeValue(L"height", &tmp)); + svg_height = (int)tmp; + return *this; +} + +D2DSVG& D2DSVG::resize(int x, int y, int width, int height, float fill, float max_scale) { + // Center + transform = D2D1::Matrix3x2F::Identity(); + transform = transform * D2D1::Matrix3x2F::Translation((width - svg_width) / 2.0f, (height - svg_height) / 2.0f); + float h_scale = fill * height / svg_height; + float v_scale = fill * width / svg_width; + used_scale = min(h_scale, v_scale); + if (max_scale > 0) { + used_scale = min(used_scale, max_scale); + } + transform = transform * D2D1::Matrix3x2F::Scale(used_scale, used_scale, D2D1::Point2F(width / 2.0f, height / 2.0f)); + transform = transform * D2D1::Matrix3x2F::Translation((float)x, (float)y); + return *this; +} + +D2DSVG& D2DSVG::recolor(uint32_t oldcolor, uint32_t newcolor) { + auto new_color = D2D1::ColorF(newcolor & 0xFFFFFF, 1); + auto old_color = D2D1::ColorF(oldcolor & 0xFFFFFF, 1); + std::function recurse = [&](ID2D1SvgElement* element) { + if (!element) + return; + if (element->IsAttributeSpecified(L"fill")) { + D2D1_COLOR_F elem_fill; + winrt::com_ptr paint; + element->GetAttributeValue(L"fill", paint.put()); + paint->GetColor(&elem_fill); + if (elem_fill.r == old_color.r && elem_fill.g == old_color.g && elem_fill.b == old_color.b) { + winrt::check_hresult(element->SetAttributeValue(L"fill", new_color)); + } + } + winrt::com_ptr sub; + element->GetFirstChild(sub.put()); + while (sub) { + recurse(sub.get()); + winrt::com_ptr next; + element->GetNextChild(sub.get(), next.put()); + sub = next; + } + }; + winrt::com_ptr root; + svg->GetRoot(root.put()); + recurse(root.get()); + return *this; +} + + +D2DSVG& D2DSVG::render(ID2D1DeviceContext5* d2d_dc) { + D2D1_MATRIX_3X2_F current; + d2d_dc->GetTransform(¤t); + d2d_dc->SetTransform(transform * current); + d2d_dc->DrawSvgDocument(svg.get()); + d2d_dc->SetTransform(current); + return *this; +} + +D2DSVG& D2DSVG::toggle_element(const wchar_t* id, bool visible) { + winrt::com_ptr element; + if (svg->FindElementById(id, element.put()) != S_OK) + return *this; + if (!element) + return *this; + element->SetAttributeValue(L"display", visible ? D2D1_SVG_DISPLAY::D2D1_SVG_DISPLAY_INLINE : D2D1_SVG_DISPLAY::D2D1_SVG_DISPLAY_NONE); + return *this; +} + +winrt::com_ptr D2DSVG::find_element(const std::wstring& id) { + winrt::com_ptr< ID2D1SvgElement> element; + winrt::check_hresult(svg->FindElementById(id.c_str(), element.put())); + return element; +} + +D2D1_RECT_F D2DSVG::rescale(D2D1_RECT_F rect) { + D2D1_RECT_F result; + auto src = reinterpret_cast(&rect); + auto dst = reinterpret_cast(&result); + dst[0] = src[0] * transform; + dst[1] = src[1] * transform; + return result; +} diff --git a/src/common/d2d_svg.h b/src/common/d2d_svg.h new file mode 100644 index 0000000000..b8892a73a8 --- /dev/null +++ b/src/common/d2d_svg.h @@ -0,0 +1,24 @@ +#pragma once +#include +#include +#include +#include + +class D2DSVG { +public: + D2DSVG& load(const std::wstring& filename, ID2D1DeviceContext5* d2d_dc); + D2DSVG& resize(int x, int y, int width, int height, float fill, float max_scale = -1.0f); + D2DSVG& render(ID2D1DeviceContext5* d2d_dc); + D2DSVG& recolor(uint32_t oldcolor, uint32_t newcolor); + float get_scale() const { return used_scale; } + int width() const { return svg_width; } + int height() const { return svg_height; } + D2DSVG& toggle_element(const wchar_t* id, bool visible); + winrt::com_ptr find_element(const std::wstring& id); + D2D1_RECT_F rescale(D2D1_RECT_F rect); +protected: + float used_scale = 1.0f; + winrt::com_ptr svg; + int svg_width = -1, svg_height = -1; + D2D1::Matrix3x2F transform; +}; diff --git a/src/common/d2d_text.cpp b/src/common/d2d_text.cpp new file mode 100644 index 0000000000..439fc4cacc --- /dev/null +++ b/src/common/d2d_text.cpp @@ -0,0 +1,48 @@ +#include "pch.h" +#include "d2d_text.h" + +D2DText::D2DText(float text_size, float scale) { + winrt::check_hresult(DWriteCreateFactory(DWRITE_FACTORY_TYPE_SHARED, __uuidof(factory), reinterpret_cast(factory.put_void()))); + resize(text_size, scale); + winrt::check_hresult(format->SetTextAlignment(DWRITE_TEXT_ALIGNMENT_CENTER)); + winrt::check_hresult(format->SetParagraphAlignment(DWRITE_PARAGRAPH_ALIGNMENT_CENTER)); +} + +D2DText & D2DText::resize(float text_size, float scale) { + format = nullptr; + winrt::check_hresult(factory->CreateTextFormat(L"Segoe UI", + nullptr, + DWRITE_FONT_WEIGHT_NORMAL, + DWRITE_FONT_STYLE_NORMAL, + DWRITE_FONT_STRETCH_NORMAL, + text_size * scale, + L"en-us", + format.put())); + winrt::check_hresult(format->SetParagraphAlignment(DWRITE_PARAGRAPH_ALIGNMENT_CENTER)); + return *this; +} + +D2DText & D2DText::set_aligment_left() { + winrt::check_hresult(format->SetTextAlignment(DWRITE_TEXT_ALIGNMENT_LEADING)); + return *this; +} + +D2DText & D2DText::set_aligment_center() { + winrt::check_hresult(format->SetTextAlignment(DWRITE_TEXT_ALIGNMENT_CENTER)); + return *this; +} + +D2DText & D2DText::set_aligment_right() { + winrt::check_hresult(format->SetTextAlignment(DWRITE_TEXT_ALIGNMENT_TRAILING)); + return *this; +} + +void D2DText::write(ID2D1DeviceContext5 * d2d_dc, D2D1_COLOR_F color, D2D1_RECT_F rect, std::wstring text) { + winrt::com_ptr brush; + d2d_dc->CreateSolidColorBrush(color, brush.put()); + d2d_dc->DrawText(text.c_str(), + (UINT32)text.length(), + format.get(), + rect, + brush.get()); +} diff --git a/src/common/d2d_text.h b/src/common/d2d_text.h new file mode 100644 index 0000000000..c3d0e0ada4 --- /dev/null +++ b/src/common/d2d_text.h @@ -0,0 +1,16 @@ +#pragma once +#include +#include + +class D2DText { +public: + D2DText(float text_size = 15.0f, float scale = 1.0f); + D2DText& resize(float text_size, float scale); + D2DText& set_aligment_left(); + D2DText& set_aligment_center(); + D2DText& set_aligment_right(); + void write(ID2D1DeviceContext5* d2d_dc, D2D1_COLOR_F color, D2D1_RECT_F rect, std::wstring text); +private: + winrt::com_ptr factory; + winrt::com_ptr format; +}; diff --git a/src/common/d2d_window.cpp b/src/common/d2d_window.cpp new file mode 100644 index 0000000000..7ac0761da7 --- /dev/null +++ b/src/common/d2d_window.cpp @@ -0,0 +1,184 @@ +#include "pch.h" +#include "d2d_window.h" + +extern "C" IMAGE_DOS_HEADER __ImageBase; + +D2DWindow::D2DWindow() { + static const WCHAR* class_name = L"PToyD2DPopup"; + WNDCLASS wc = {}; + wc.hCursor = LoadCursor(nullptr, IDC_ARROW); + wc.hInstance = reinterpret_cast(&__ImageBase); + wc.lpszClassName = class_name; + wc.style = CS_HREDRAW | CS_VREDRAW; + wc.lpfnWndProc = d2d_window_proc; + RegisterClass(&wc); + hwnd = CreateWindowExW(WS_EX_TOOLWINDOW | WS_EX_TOPMOST | WS_EX_NOREDIRECTIONBITMAP | WS_EX_LAYERED, + wc.lpszClassName, + L"PToyD2DPopup", + WS_POPUP| WS_VISIBLE, + CW_USEDEFAULT, CW_USEDEFAULT, + CW_USEDEFAULT, CW_USEDEFAULT, + nullptr, nullptr, wc.hInstance, this); + WINRT_VERIFY(hwnd); +} + +void D2DWindow::show(UINT x, UINT y, UINT width, UINT height) { + if (!initialized) { + base_init(); + } + base_resize(width, height); + render_empty(); + on_show(); + SetWindowPos(hwnd, HWND_TOPMOST, x, y, width, height, 0); + ShowWindow(hwnd, SW_SHOWNORMAL); + UpdateWindow(hwnd); +} + +void D2DWindow::hide() { + ShowWindow(hwnd, SW_HIDE); + on_hide(); +} + +void D2DWindow::initialize() { + base_init(); +} + +void D2DWindow::base_init() { + std::unique_lock lock(mutex); + // D2D1Factory is independent from the device, no need to recreate it if we need to recreate the device. + if (!d2d_factory) { +#ifdef _DEBUG + D2D1_FACTORY_OPTIONS options = { D2D1_DEBUG_LEVEL_INFORMATION }; +#else + D2D1_FACTORY_OPTIONS options = {}; +#endif + winrt::check_hresult(D2D1CreateFactory(D2D1_FACTORY_TYPE_MULTI_THREADED, + __uuidof(d2d_factory), + &options, + d2d_factory.put_void())); + } + // For all other stuff - assing nullptr first to release the object, to reset the com_ptr. + d2d_dc = nullptr; + d2d_device = nullptr; + dxgi_factory = nullptr; + dxgi_device = nullptr; + d3d_device = nullptr; + winrt::check_hresult(D3D11CreateDevice(nullptr, + D3D_DRIVER_TYPE_HARDWARE, + nullptr, + D3D11_CREATE_DEVICE_BGRA_SUPPORT, + nullptr, + 0, + D3D11_SDK_VERSION, + d3d_device.put(), + nullptr, + nullptr)); + winrt::check_hresult(d3d_device->QueryInterface(__uuidof(dxgi_device), dxgi_device.put_void())); + winrt::check_hresult(CreateDXGIFactory2(0, __uuidof(dxgi_factory), dxgi_factory.put_void())); + winrt::check_hresult(d2d_factory->CreateDevice(dxgi_device.get(), d2d_device.put())); + winrt::check_hresult(d2d_device->CreateDeviceContext(D2D1_DEVICE_CONTEXT_OPTIONS_NONE, d2d_dc.put())); + init(); + initialized = true; +} + +void D2DWindow::base_resize(UINT width, UINT height) { + std::unique_lock lock(mutex); + if (!initialized) { + return; + } + window_width = width; + window_height = height; + if (window_width == 0 || window_height == 0) { + return; + } + DXGI_SWAP_CHAIN_DESC1 sc_description = {}; + sc_description.Format = DXGI_FORMAT_B8G8R8A8_UNORM; + sc_description.BufferUsage = DXGI_USAGE_RENDER_TARGET_OUTPUT; + sc_description.SwapEffect = DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL; + sc_description.BufferCount = 2; + sc_description.SampleDesc.Count = 1; + sc_description.AlphaMode = DXGI_ALPHA_MODE_PREMULTIPLIED; + sc_description.Width = window_width; + sc_description.Height = window_height; + dxgi_swap_chain = nullptr; + winrt::check_hresult(dxgi_factory->CreateSwapChainForComposition(dxgi_device.get(), + &sc_description, + nullptr, + dxgi_swap_chain.put())); + composition_device = nullptr; + winrt::check_hresult(DCompositionCreateDevice(dxgi_device.get(), + __uuidof(composition_device), + composition_device.put_void())); + + composition_target = nullptr; + winrt::check_hresult(composition_device->CreateTargetForHwnd(hwnd, true, composition_target.put())); + + composition_visual = nullptr; + winrt::check_hresult(composition_device->CreateVisual(composition_visual.put())); + winrt::check_hresult(composition_visual->SetContent(dxgi_swap_chain.get())); + winrt::check_hresult(composition_target->SetRoot(composition_visual.get())); + + dxgi_surface = nullptr; + winrt::check_hresult(dxgi_swap_chain->GetBuffer(0, __uuidof(dxgi_surface), dxgi_surface.put_void())); + D2D1_BITMAP_PROPERTIES1 properties = {}; + properties.pixelFormat.alphaMode = D2D1_ALPHA_MODE_PREMULTIPLIED; + properties.pixelFormat.format = DXGI_FORMAT_B8G8R8A8_UNORM; + properties.bitmapOptions = D2D1_BITMAP_OPTIONS_TARGET | D2D1_BITMAP_OPTIONS_CANNOT_DRAW; + + d2d_bitmap = nullptr; + winrt::check_hresult(d2d_dc->CreateBitmapFromDxgiSurface(dxgi_surface.get(), + properties, + d2d_bitmap.put())); + d2d_dc->SetTarget(d2d_bitmap.get()); + resize(); +} + +void D2DWindow::base_render() { + std::unique_lock lock(mutex); + if (!initialized || !d2d_dc || !d2d_bitmap) + return; + d2d_dc->BeginDraw(); + render(d2d_dc.get()); + winrt::check_hresult(d2d_dc->EndDraw()); + winrt::check_hresult(dxgi_swap_chain->Present(1, 0)); + winrt::check_hresult(composition_device->Commit()); +} + +void D2DWindow::render_empty() { + std::unique_lock lock(mutex); + if (!initialized || !d2d_dc || !d2d_bitmap) + return; + d2d_dc->BeginDraw(); + d2d_dc->Clear(); + winrt::check_hresult(d2d_dc->EndDraw()); + winrt::check_hresult(dxgi_swap_chain->Present(1, 0)); + winrt::check_hresult(composition_device->Commit()); +} + +D2DWindow::~D2DWindow() { + ShowWindow(hwnd, SW_HIDE); + DestroyWindow(hwnd); +} + +D2DWindow* D2DWindow::this_from_hwnd(HWND window) { + return reinterpret_cast(GetWindowLongPtr(window, GWLP_USERDATA)); +} + +LRESULT __stdcall D2DWindow::d2d_window_proc(HWND window, UINT message, WPARAM wparam, LPARAM lparam) { + switch (message) { + case WM_NCCREATE: { + auto create_struct = reinterpret_cast(lparam); + SetWindowLongPtr(window, GWLP_USERDATA, reinterpret_cast(create_struct->lpCreateParams)); + return TRUE; + } + case WM_MOVE: + case WM_SIZE: + this_from_hwnd(window)->base_resize((unsigned)lparam & 0xFFFF, (unsigned)lparam >> 16); + // Fall through to call 'base_render()' + case WM_PAINT: + this_from_hwnd(window)->base_render(); + return 0; + default: + return DefWindowProc(window, message, wparam, lparam); + } +} diff --git a/src/common/d2d_window.h b/src/common/d2d_window.h new file mode 100644 index 0000000000..5963acd95e --- /dev/null +++ b/src/common/d2d_window.h @@ -0,0 +1,60 @@ +#pragma once +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "d2d_svg.h" + +class D2DWindow +{ +public: + D2DWindow(); + void show(UINT x, UINT y, UINT width, UINT height); + void hide(); + void initialize(); + virtual ~D2DWindow(); +protected: + // Implement this: + + // Initialization - called when D2D device needs to be created. + // When called all D2DWindow members will be initialized, including d2d_dc + virtual void init() = 0; + // resize - when called, window_width and window_height will have current window size + virtual void resize() = 0; + // render - called on WM_PAIT, BeginPaint/EndPaint is handled by D2DWindow + virtual void render(ID2D1DeviceContext5* d2d_dc) = 0; + // on_show, on_hide - called when the window is about to be shown or about to be hidden + virtual void on_show() = 0; + virtual void on_hide() = 0; + + static LRESULT __stdcall d2d_window_proc(HWND window, UINT message, WPARAM wparam, LPARAM lparam); + static D2DWindow* this_from_hwnd(HWND window); + + void base_init(); + void base_resize(UINT width, UINT height); + void base_render(); + void render_empty(); + + std::recursive_mutex mutex; + bool initialized = false; + HWND hwnd; + UINT window_width, window_height; + winrt::com_ptr d3d_device; + winrt::com_ptr dxgi_device; + winrt::com_ptr dxgi_factory; + winrt::com_ptr dxgi_swap_chain; + winrt::com_ptr composition_device; + winrt::com_ptr composition_target; + winrt::com_ptr composition_visual; + winrt::com_ptr dxgi_surface; + winrt::com_ptr d2d_bitmap; + winrt::com_ptr d2d_factory; + winrt::com_ptr d2d_device; + winrt::com_ptr d2d_dc; +}; diff --git a/src/common/dpi_aware.cpp b/src/common/dpi_aware.cpp new file mode 100644 index 0000000000..55e8f4c9bb --- /dev/null +++ b/src/common/dpi_aware.cpp @@ -0,0 +1,28 @@ +#include "pch.h" +#include "dpi_aware.h" +#include "monitors.h" +#include + +HRESULT DPIAware::GetScreenDPIForWindow(HWND hwnd, UINT &dpi_x, UINT &dpi_y) { + auto monitor_handle = MonitorFromWindow(hwnd, MONITOR_DEFAULTTONEAREST); + dpi_x = 0; + dpi_y = 0; + if (monitor_handle != nullptr) { + return GetDpiForMonitor(monitor_handle, MDT_EFFECTIVE_DPI, &dpi_x, &dpi_y); + } else { + return E_FAIL; + } +} + +void DPIAware::Convert(HMONITOR monitor_handle, int &width, int &height) { + if (monitor_handle == NULL) { + const POINT ptZero = { 0, 0 }; + monitor_handle = MonitorFromPoint(ptZero, MONITOR_DEFAULTTOPRIMARY); + } + + UINT dpi_x, dpi_y; + if (GetDpiForMonitor(monitor_handle, MDT_EFFECTIVE_DPI, &dpi_x, &dpi_y) == S_OK) { + width = width * dpi_x / DEFAULT_DPI; + height = height * dpi_y / DEFAULT_DPI; + } +} \ No newline at end of file diff --git a/src/common/dpi_aware.h b/src/common/dpi_aware.h new file mode 100644 index 0000000000..52396ff16a --- /dev/null +++ b/src/common/dpi_aware.h @@ -0,0 +1,11 @@ +#pragma once +#include "windef.h" + +class DPIAware { +private: + static const int DEFAULT_DPI = 96; + +public: + static HRESULT GetScreenDPIForWindow(HWND hwnd, UINT & dpi_x, UINT & dpi_y); + static void Convert(HMONITOR monitor_handle, int &width, int &high); +}; diff --git a/src/common/monitors.cpp b/src/common/monitors.cpp new file mode 100644 index 0000000000..7b59d1fac7 --- /dev/null +++ b/src/common/monitors.cpp @@ -0,0 +1,67 @@ +#include "pch.h" +#include "monitors.h" + +bool operator==(const ScreenSize& lhs, const ScreenSize& rhs) { + auto lhs_tuple = std::make_tuple(lhs.rect.left, lhs.rect.right, lhs.rect.top, lhs.rect.bottom); + auto rhs_tuple = std::make_tuple(rhs.rect.left, rhs.rect.right, rhs.rect.top, rhs.rect.bottom); + return lhs_tuple == rhs_tuple; +} + +static BOOL CALLBACK get_displays_enum_cb(HMONITOR monitor, HDC hdc, LPRECT rect, LPARAM data) { + MONITORINFOEX monitor_info; + monitor_info.cbSize = sizeof(MONITORINFOEX); + GetMonitorInfo(monitor, &monitor_info); + reinterpret_cast*>(data)->emplace_back(monitor, monitor_info.rcWork); + return true; +}; + +static BOOL CALLBACK get_displays_enum_cb_with_toolbar(HMONITOR monitor, HDC hdc, LPRECT rect, LPARAM data) { + MONITORINFOEX monitor_info; + monitor_info.cbSize = sizeof(MONITORINFOEX); + GetMonitorInfo(monitor, &monitor_info); + reinterpret_cast*>(data)->emplace_back(monitor, monitor_info.rcMonitor); + return true; +}; + +std::vector MonitorInfo::GetMonitors(bool include_toolbars) { + std::vector monitors; + EnumDisplayMonitors(NULL, NULL, include_toolbars ? get_displays_enum_cb_with_toolbar : get_displays_enum_cb, reinterpret_cast(&monitors)); + std::sort(begin(monitors), end(monitors), [](const MonitorInfo& lhs, const MonitorInfo& rhs) { + return lhs.rect < rhs.rect; + }); + return monitors; +} + +static BOOL CALLBACK get_primary_display_enum_cb(HMONITOR monitor, HDC hdc, LPRECT rect, LPARAM data) { + MONITORINFOEX monitor_info; + monitor_info.cbSize = sizeof(MONITORINFOEX); + GetMonitorInfo(monitor, &monitor_info); + if (monitor_info.dwFlags & MONITORINFOF_PRIMARY) { + reinterpret_cast(data)->handle = monitor; + reinterpret_cast(data)->rect = monitor_info.rcWork; + } + return true; +}; + +MonitorInfo MonitorInfo::GetPrimaryMonitor() { + MonitorInfo primary({}, {}); + EnumDisplayMonitors(NULL, NULL, get_primary_display_enum_cb, reinterpret_cast(&primary)); + return primary; +} + +MonitorInfo MonitorInfo::GetFromWindow(HWND hwnd) { + auto monitor = MonitorFromWindow(hwnd, MONITOR_DEFAULTTONEAREST); + return GetFromHandle(monitor); +} + +MonitorInfo MonitorInfo::GetFromPoint(POINT p) { + auto monitor = MonitorFromPoint(p, MONITOR_DEFAULTTONEAREST); + return GetFromHandle(monitor); +} + +MonitorInfo MonitorInfo::GetFromHandle(HMONITOR monitor) { + MONITORINFOEX monitor_info; + monitor_info.cbSize = sizeof(MONITORINFOEX); + GetMonitorInfo(monitor, &monitor_info); + return MonitorInfo(monitor, monitor_info.rcWork); +} diff --git a/src/common/monitors.h b/src/common/monitors.h new file mode 100644 index 0000000000..1b2fb59efb --- /dev/null +++ b/src/common/monitors.h @@ -0,0 +1,41 @@ +#pragma once +#include +#include + +struct ScreenSize { + explicit ScreenSize(RECT rect) : rect(rect) {} + RECT rect; + int left() const { return rect.left; } + int right() const { return rect.right; } + int top() const { return rect.top; } + int bottom() const { return rect.bottom; } + int height() const { return rect.bottom - rect.top; }; + int width() const { return rect.right - rect.left; }; + POINT top_left() const { return { rect.left, rect.top }; }; + POINT top_middle() const { return { rect.left + width() / 2, rect.top }; }; + POINT top_right() const { return { rect.right, rect.top }; }; + POINT middle_left() const { return { rect.left, rect.top + height() / 2 }; }; + POINT middle() const { return { rect.left + width() / 2, rect.top + height() / 2 }; }; + POINT middle_right() const { return { rect.right, rect.top + height() / 2 }; }; + POINT bottom_left() const { return { rect.left, rect.bottom }; }; + POINT bottm_midle() const { return { rect.left + width() / 2, rect.bottom }; }; + POINT bottom_right() const { return { rect.right, rect.bottom }; }; +}; + +struct MonitorInfo : ScreenSize { + explicit MonitorInfo(HMONITOR monitor, RECT rect) : handle(monitor), ScreenSize(rect) {} + HMONITOR handle; + + // Returns monitor rects ordered from left to right + static std::vector GetMonitors(bool include_toolbar); + // Return primary display + static MonitorInfo GetPrimaryMonitor(); + // Return monitor on which hwnd window is displayed + static MonitorInfo GetFromWindow(HWND hwnd); + // Return monitor nearest to a point + static MonitorInfo GetFromPoint(POINT p); + // Return monitor info given a HMONITOR + static MonitorInfo GetFromHandle(HMONITOR monitor); +}; + +bool operator==(const ScreenSize& lhs, const ScreenSize& rhs); diff --git a/src/common/pch.cpp b/src/common/pch.cpp new file mode 100644 index 0000000000..1d9f38c57d --- /dev/null +++ b/src/common/pch.cpp @@ -0,0 +1 @@ +#include "pch.h" diff --git a/src/common/pch.h b/src/common/pch.h new file mode 100644 index 0000000000..fed02a46eb --- /dev/null +++ b/src/common/pch.h @@ -0,0 +1,26 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "common.h" diff --git a/src/common/settings_helpers.cpp b/src/common/settings_helpers.cpp new file mode 100644 index 0000000000..c60a3c59e7 --- /dev/null +++ b/src/common/settings_helpers.cpp @@ -0,0 +1,75 @@ +#include "pch.h" +#include "settings_helpers.h" +#include +#include + +namespace PTSettingsHelper { + std::wstring get_root_save_folder_location() { + PWSTR local_app_path; + std::wstring result(L""); + + winrt::check_hresult(SHGetKnownFolderPath(FOLDERID_LocalAppData, 0, NULL, &local_app_path)); + result = std::wstring(local_app_path); + CoTaskMemFree(local_app_path); + + result += L"\\Microsoft\\PowerToys"; + std::filesystem::path save_path(result); + if (!std::filesystem::exists(save_path)) { + std::filesystem::create_directories(save_path); + } + return result; + } + + std::wstring get_module_save_folder_location(const std::wstring& powertoy_name) { + std::wstring result = get_root_save_folder_location(); + result += L"\\"; + result += powertoy_name; + std::filesystem::path save_path(result); + if (!std::filesystem::exists(save_path)) { + std::filesystem::create_directories(save_path); + } + return result; + } + + std::wstring get_module_save_file_location(const std::wstring& powertoy_name) { + std::wstring result = get_module_save_folder_location(powertoy_name); + result += L"\\settings.json"; + return result; + } + + std::wstring get_powertoys_general_save_file_location() { + std::wstring result = get_root_save_folder_location(); + result += L"\\settings.json"; + return result; + } + + void save_module_settings(const std::wstring& powertoy_name, web::json::value& settings) { + std::wstring save_file_location = get_module_save_file_location(powertoy_name); + std::ofstream save_file(save_file_location, std::ios::binary); + settings.serialize(save_file); + save_file.close(); + } + + web::json::value load_module_settings(const std::wstring& powertoy_name) { + std::wstring save_file_location = get_module_save_file_location(powertoy_name); + std::ifstream save_file(save_file_location, std::ios::binary); + web::json::value result = web::json::value::parse(save_file); + save_file.close(); + return result; + } + + void save_general_settings(web::json::value& settings) { + std::wstring save_file_location = get_powertoys_general_save_file_location(); + std::ofstream save_file(save_file_location, std::ios::binary); + settings.serialize(save_file); + save_file.close(); + } + + web::json::value load_general_settings() { + std::wstring save_file_location = get_powertoys_general_save_file_location(); + std::ifstream save_file(save_file_location, std::ios::binary); + web::json::value result = web::json::value::parse(save_file); + save_file.close(); + return result; + } +} diff --git a/src/common/settings_helpers.h b/src/common/settings_helpers.h new file mode 100644 index 0000000000..3ce1c6e7d6 --- /dev/null +++ b/src/common/settings_helpers.h @@ -0,0 +1,13 @@ +#pragma once +#include +#include +#include + +namespace PTSettingsHelper { + + void save_module_settings(const std::wstring& powertoy_name, web::json::value& settings); + web::json::value load_module_settings(const std::wstring& powertoy_name); + void save_general_settings(web::json::value& settings); + web::json::value load_general_settings(); + +} diff --git a/src/common/settings_objects.cpp b/src/common/settings_objects.cpp new file mode 100644 index 0000000000..a9bc92310d --- /dev/null +++ b/src/common/settings_objects.cpp @@ -0,0 +1,237 @@ +#include "pch.h" +#include "settings_objects.h" +#include "settings_helpers.h" + +namespace PowerToysSettings { + + Settings::Settings(const HINSTANCE hinstance, const std::wstring& powertoy_name) { + m_instance = hinstance; + m_json = web::json::value::object(); + m_json.as_object()[L"version"] = web::json::value::string(L"1.0"); + m_json.as_object()[L"name"] = web::json::value::string(powertoy_name); + m_json.as_object()[L"properties"] = web::json::value::object(); + } + + void Settings::set_description(UINT resource_id) { + m_json.as_object()[L"description"] = web::json::value::string(get_resource(resource_id)); + } + + void Settings::set_description(const std::wstring& description) { + m_json.as_object()[L"description"] = web::json::value::string(description); + } + + void Settings::set_icon_key(const std::wstring& icon_key) { + m_json.as_object()[L"icon_key"] = web::json::value::string(icon_key); + } + + void Settings::set_overview_link(const std::wstring& overview_link) { + m_json.as_object()[L"overview_link"] = web::json::value::string(overview_link); + } + + void Settings::set_video_link(const std::wstring& video_link) { + m_json.as_object()[L"video_link"] = web::json::value::string(video_link); + } + + // add_bool_toogle overloads. + void Settings::add_bool_toogle(const std::wstring& name, UINT description_resource_id, bool value) { + add_bool_toogle(name, get_resource(description_resource_id), value); + } + + void Settings::add_bool_toogle(const std::wstring& name, const std::wstring& description, bool value) { + web::json::value item = web::json::value::object(); + item.as_object()[L"display_name"] = web::json::value::string(description); + item.as_object()[L"editor_type"] = web::json::value::string(L"bool_toggle"); + item.as_object()[L"value"] = web::json::value::boolean(value); + item.as_object()[L"order"] = web::json::value::number(++m_curr_priority); + + m_json.as_object()[L"properties"].as_object()[name] = item; + } + + // add_int_spinner overloads. + void Settings::add_int_spinner(const std::wstring& name, UINT description_resource_id, int value, int min, int max, int step) { + add_int_spinner(name, get_resource(description_resource_id), value, min, max, step); + } + + void Settings::add_int_spinner(const std::wstring& name, const std::wstring& description, int value, int min, int max, int step) { + web::json::value item = web::json::value::object(); + item.as_object()[L"display_name"] = web::json::value::string(description); + item.as_object()[L"editor_type"] = web::json::value::string(L"int_spinner"); + item.as_object()[L"value"] = web::json::value::number(value); + item.as_object()[L"min"] = web::json::value::number(min); + item.as_object()[L"max"] = web::json::value::number(max); + item.as_object()[L"step"] = web::json::value::number(step); + item.as_object()[L"order"] = web::json::value::number(++m_curr_priority); + + m_json.as_object()[L"properties"].as_object()[name] = item; + } + + // add_string overloads. + void Settings::add_string(const std::wstring& name, UINT description_resource_id, const std::wstring& value) { + add_string(name, get_resource(description_resource_id), value); + } + + void Settings::add_string(const std::wstring& name, const std::wstring& description, const std::wstring& value) { + web::json::value item = web::json::value::object(); + item.as_object()[L"display_name"] = web::json::value::string(description); + item.as_object()[L"editor_type"] = web::json::value::string(L"string_text"); + item.as_object()[L"value"] = web::json::value::string(value); + item.as_object()[L"order"] = web::json::value::number(++m_curr_priority); + + m_json.as_object()[L"properties"].as_object()[name] = item; + } + + // add_color_picker overloads. + void Settings::add_color_picker(const std::wstring& name, UINT description_resource_id, const std::wstring& value) { + add_color_picker(name, get_resource(description_resource_id), value); + } + + void Settings::add_color_picker(const std::wstring& name, const std::wstring& description, const std::wstring& value) { + web::json::value item = web::json::value::object(); + item.as_object()[L"display_name"] = web::json::value::string(description); + item.as_object()[L"editor_type"] = web::json::value::string(L"color_picker"); + item.as_object()[L"value"] = web::json::value::string(value); + item.as_object()[L"order"] = web::json::value::number(++m_curr_priority); + + m_json.as_object()[L"properties"].as_object()[name] = item; + } + + // add_custom_action overloads. + void Settings::add_custom_action(const std::wstring& name, UINT description_resource_id, UINT button_text_resource_id, UINT ext_description_resource_id) { + add_custom_action(name, get_resource(description_resource_id), get_resource(button_text_resource_id), get_resource(ext_description_resource_id)); + } + + void Settings::add_custom_action(const std::wstring& name, UINT description_resource_id, UINT button_text_resource_id, const std::wstring& value) { + add_custom_action(name, get_resource(description_resource_id), get_resource(button_text_resource_id), value); + } + + void Settings::add_custom_action(const std::wstring& name, const std::wstring& description, const std::wstring& button_text, const std::wstring& value) { + web::json::value item = web::json::value::object(); + item.as_object()[L"display_name"] = web::json::value::string(description); + item.as_object()[L"button_text"] = web::json::value::string(button_text); + item.as_object()[L"editor_type"] = web::json::value::string(L"custom_action"); + item.as_object()[L"value"] = web::json::value::string(value); + item.as_object()[L"order"] = web::json::value::number(++m_curr_priority); + + m_json.as_object()[L"properties"].as_object()[name] = item; + } + + // Serialization methods. + std::wstring Settings::serialize() { + return m_json.serialize(); + } + + bool Settings::serialize_to_buffer(wchar_t* buffer, int *buffer_size) { + std::wstring result = m_json.serialize(); + int result_len = (int)result.length(); + + if (buffer == nullptr || *buffer_size < result_len) { + *buffer_size = result_len + 1; + return false; + } else { + wcscpy_s(buffer, *buffer_size, result.c_str()); + return true; + } + } + + // Resource helper. + std::wstring Settings::get_resource(UINT resource_id) { + if (resource_id != 0) { + wchar_t buffer[512]; + if (LoadString(m_instance, resource_id, buffer, ARRAYSIZE(buffer)) > 0) { + return std::wstring(buffer); + } + } + + return L"RESOURCE ID NOT FOUND: " + std::to_wstring(resource_id); + } + + PowerToyValues::PowerToyValues(const std::wstring& powertoy_name) { + _name = powertoy_name; + m_json = web::json::value::object(); + set_version(); + m_json.as_object()[L"name"] = web::json::value::string(powertoy_name); + m_json.as_object()[L"properties"] = web::json::value::object(); + } + + PowerToyValues PowerToyValues::from_json_string(const std::wstring& json) { + PowerToyValues result = PowerToyValues(); + result.m_json = web::json::value::parse(json); + result._name = result.m_json.as_object()[L"name"].as_string(); + return result; + } + + PowerToyValues PowerToyValues::load_from_settings_file(const std::wstring & powertoy_name) { + PowerToyValues result = PowerToyValues(); + result.m_json = PTSettingsHelper::load_module_settings(powertoy_name); + result._name = powertoy_name; + return result; + } + + template + web::json::value add_property_generic(const std::wstring& name, T value) { + std::vector> vector = { std::make_pair(L"value", web::json::value(value)) }; + return web::json::value::object(vector); + } + + template <> + void PowerToyValues::add_property(const std::wstring& name, bool value) { + m_json.as_object()[L"properties"].as_object()[name] = add_property_generic(name, value); + }; + + template <> + void PowerToyValues::add_property(const std::wstring& name, int value) { + m_json.as_object()[L"properties"].as_object()[name] = add_property_generic(name, value); + }; + + template <> + void PowerToyValues::add_property(const std::wstring& name, std::wstring value) { + m_json.as_object()[L"properties"].as_object()[name] = add_property_generic(name, value); + }; + + bool PowerToyValues::is_bool_value(const std::wstring& property_name) { + return m_json.is_object() && + m_json.has_object_field(L"properties") && + m_json[L"properties"].has_object_field(property_name) && + m_json[L"properties"][property_name].has_boolean_field(L"value"); + } + + bool PowerToyValues::is_int_value(const std::wstring& property_name) { + return m_json.is_object() && + m_json.has_object_field(L"properties") && + m_json[L"properties"].has_object_field(property_name) && + m_json[L"properties"][property_name].has_integer_field(L"value"); + } + + bool PowerToyValues::is_string_value(const std::wstring& property_name) { + return m_json.is_object() && + m_json.has_object_field(L"properties") && + m_json[L"properties"].has_object_field(property_name) && + m_json[L"properties"][property_name].has_string_field(L"value"); + } + + bool PowerToyValues::get_bool_value(const std::wstring& property_name) { + return m_json[L"properties"][property_name][L"value"].as_bool(); + } + + int PowerToyValues::get_int_value(const std::wstring& property_name) { + return m_json[L"properties"][property_name][L"value"].as_integer(); + } + + std::wstring PowerToyValues::get_string_value(const std::wstring& property_name) { + return m_json[L"properties"][property_name][L"value"].as_string(); + } + + std::wstring PowerToyValues::serialize() { + set_version(); + return m_json.serialize(); + } + + void PowerToyValues::save_to_settings_file() { + set_version(); + PTSettingsHelper::save_module_settings(_name, m_json); + } + + void PowerToyValues::set_version() { + m_json.as_object()[L"version"] = web::json::value::string(m_version); + } +} \ No newline at end of file diff --git a/src/common/settings_objects.h b/src/common/settings_objects.h new file mode 100644 index 0000000000..3f67c039ac --- /dev/null +++ b/src/common/settings_objects.h @@ -0,0 +1,96 @@ +#pragma once +#include +#include + +namespace PowerToysSettings { + + class Settings { + public: + Settings( + const HINSTANCE hinstance, // Module handle of the PowerToy DLL 'IMAGE_DOS_HEADER __ImageBase' + const std::wstring& powertoy_name + ); + + // Add additional general information to the PowerToy settings. + void set_description(UINT resource_id); + void set_description(const std::wstring& description); + + void set_icon_key(const std::wstring& icon_key); + void set_overview_link(const std::wstring& overview_link); + void set_video_link(const std::wstring& video_link); + + // Add properties to the PowerToy settings. + void add_bool_toogle(const std::wstring& name, UINT description_resource_id, bool value); + void add_bool_toogle(const std::wstring& name, const std::wstring& description, bool value); + + void add_int_spinner(const std::wstring& name, UINT description_resource_id, int value, int min, int max, int step); + void add_int_spinner(const std::wstring& name, const std::wstring& description, int value, int min, int max, int step); + + void add_string(const std::wstring& name, UINT description_resource_id, const std::wstring& value); + void add_string(const std::wstring& name, const std::wstring& description, const std::wstring& value); + + void add_color_picker(const std::wstring& name, UINT description_resource_id, const std::wstring& value); + void add_color_picker(const std::wstring& name, const std::wstring& description, const std::wstring& value); + + void add_custom_action(const std::wstring& name, UINT description_resource_id, UINT button_text_resource_id, UINT ext_description_resource_id); + void add_custom_action(const std::wstring& name, UINT description_resource_id, UINT button_text_resource_id, const std::wstring& value); + void add_custom_action(const std::wstring& name, const std::wstring& description, const std::wstring& button_text, const std::wstring& value); + + // Serialize the internal json to a string. + std::wstring serialize(); + // Serialize the internal json to the input buffer. + bool serialize_to_buffer(wchar_t* buffer, int *buffer_size); + + private: + web::json::value m_json; + int m_curr_priority = 0; // For keeping order when adding elements. + HINSTANCE m_instance; + + std::wstring get_resource(UINT resource_id); + }; + + class PowerToyValues { + public: + PowerToyValues(const std::wstring& powertoy_name); + static PowerToyValues from_json_string(const std::wstring& json); + static PowerToyValues load_from_settings_file(const std::wstring& powertoy_name); + + template + void add_property(const std::wstring& name, T value); + + // Check property value type + bool is_bool_value(const std::wstring& property_name); + bool is_int_value(const std::wstring& property_name); + bool is_string_value(const std::wstring& property_name); + + // Get property value + bool get_bool_value(const std::wstring& property_name); + int get_int_value(const std::wstring& property_name); + std::wstring get_string_value(const std::wstring& property_name); + + std::wstring serialize(); + void save_to_settings_file(); + + private: + const std::wstring m_version = L"1.0"; + void set_version(); + web::json::value m_json; + std::wstring _name; + PowerToyValues() {} + }; + + class CustomActionObject { + public: + static CustomActionObject from_json_string(const std::wstring& json) { + web::json::value parsed_json = web::json::value::parse(json); + return CustomActionObject(parsed_json); + } + + std::wstring get_name() { return m_json[L"action_name"].as_string(); } + std::wstring get_value() { return m_json[L"value"].as_string(); } + + protected: + CustomActionObject(web::json::value action_json) : m_json(action_json) {}; + web::json::value m_json; + }; +} diff --git a/src/common/start_visible.cpp b/src/common/start_visible.cpp new file mode 100644 index 0000000000..5c9c8d13bf --- /dev/null +++ b/src/common/start_visible.cpp @@ -0,0 +1,16 @@ +#include "pch.h" +#include "start_visible.h" + +bool is_start_visible() { + static winrt::com_ptr app_visibility; + if (!app_visibility) { + winrt::check_hresult(CoCreateInstance(CLSID_AppVisibility, + nullptr, + CLSCTX_INPROC_SERVER, + __uuidof(app_visibility), + app_visibility.put_void())); + } + BOOL visible; + auto result = app_visibility->IsLauncherVisible(&visible); + return SUCCEEDED(result) && visible; +} diff --git a/src/common/start_visible.h b/src/common/start_visible.h new file mode 100644 index 0000000000..05e8b5b720 --- /dev/null +++ b/src/common/start_visible.h @@ -0,0 +1,4 @@ +#pragma once + +bool is_start_visible(); + diff --git a/src/common/tasklist_positions.cpp b/src/common/tasklist_positions.cpp new file mode 100644 index 0000000000..f3970db30f --- /dev/null +++ b/src/common/tasklist_positions.cpp @@ -0,0 +1,93 @@ +#include "pch.h" +#include "tasklist_positions.h" + +void Tasklist::update() { + // Get HWND of the tasklist + auto tasklist_hwnd = FindWindowA("Shell_TrayWnd", nullptr); + if (!tasklist_hwnd) return; + tasklist_hwnd = FindWindowExA(tasklist_hwnd, 0, "ReBarWindow32", nullptr); + if (!tasklist_hwnd) return; + tasklist_hwnd = FindWindowExA(tasklist_hwnd, 0, "MSTaskSwWClass", nullptr); + if (!tasklist_hwnd) return; + tasklist_hwnd = FindWindowExA(tasklist_hwnd, 0, "MSTaskListWClass", nullptr); + if (!tasklist_hwnd) return; + if (!automation) { + winrt::check_hresult(CoCreateInstance(CLSID_CUIAutomation, + nullptr, + CLSCTX_INPROC_SERVER, + IID_IUIAutomation, + automation.put_void())); + winrt::check_hresult(automation->CreateTrueCondition(true_condition.put())); + } + element = nullptr; + winrt::check_hresult(automation->ElementFromHandle(tasklist_hwnd, element.put())); +} + +bool Tasklist::update_buttons(std::vector& buttons) { + if (!automation || !element) { + return false; + } + winrt::com_ptr elements; + if (element->FindAll(TreeScope_Children, true_condition.get(), elements.put()) < 0) + return false; + if (!elements) + return false; + int count; + if (elements->get_Length(&count) < 0) + return false; + winrt::com_ptr child; + std::vector found_butttons; + found_butttons.reserve(count); + for (int i = 0; i < count; ++i) { + child = nullptr; + if (elements->GetElement(i, child.put()) < 0) + return false; + TasklistButton button; + if (VARIANT var_rect; child->GetCurrentPropertyValue(UIA_BoundingRectanglePropertyId, &var_rect) >= 0) { + if (var_rect.vt == (VT_R8 | VT_ARRAY)) { + LONG pos; + double value; + pos = 0; SafeArrayGetElement(var_rect.parray, &pos, &value); + button.x = (long)value; + pos = 1; SafeArrayGetElement(var_rect.parray, &pos, &value); + button.y = (long)value; + pos = 2; SafeArrayGetElement(var_rect.parray, &pos, &value); + button.width = (long)value; + pos = 3; SafeArrayGetElement(var_rect.parray, &pos, &value); + button.height = (long)value; + } + VariantClear(&var_rect); + } else { + return false; + } + if (BSTR automation_id; child->get_CurrentAutomationId(&automation_id) >= 0) { + button.name = automation_id; + SysFreeString(automation_id); + } + found_butttons.push_back(button); + } + // assign keynums + buttons.clear(); + for (auto& button : found_butttons) { + if (buttons.empty()) { + button.keynum = 1; + buttons.push_back(std::move(button)); + } else { + if (button.x < buttons.back().x || button.y < buttons.back().y) // skip 2nd row + break; + if (button.name == buttons.back().name) + continue; // skip buttons from the same app + button.keynum = buttons.back().keynum + 1; + buttons.push_back(std::move(button)); + if (button.keynum == 10) + break; // no more than 10 buttons + } + } + return true; +} + +std::vector Tasklist::get_buttons() { + std::vector buttons; + update_buttons(buttons); + return buttons; +} \ No newline at end of file diff --git a/src/common/tasklist_positions.h b/src/common/tasklist_positions.h new file mode 100644 index 0000000000..05fc92d883 --- /dev/null +++ b/src/common/tasklist_positions.h @@ -0,0 +1,22 @@ +#pragma once +#include +#include +#include +#include +#include + +struct TasklistButton { + std::wstring name; + long x, y, width, height, keynum; +}; + +class Tasklist { +public: + void update(); + std::vector get_buttons(); + bool update_buttons(std::vector& buttons); +private: + winrt::com_ptr automation; + winrt::com_ptr element; + winrt::com_ptr true_condition; +}; diff --git a/src/common/two_way_pipe_message_ipc.h b/src/common/two_way_pipe_message_ipc.h new file mode 100644 index 0000000000..097060531d --- /dev/null +++ b/src/common/two_way_pipe_message_ipc.h @@ -0,0 +1,429 @@ +#pragma once +#include +#include "async_message_queue.h" +#include +#include +#include +#include + +class TwoWayPipeMessageIPC { +public: + typedef void(*callback_function)(const std::wstring&); + void send(std::wstring msg) { + output_queue.queue_message(msg); + } + TwoWayPipeMessageIPC(std::wstring _input_pipe_name, std::wstring _output_pipe_name, callback_function p_func) { + input_pipe_name = _input_pipe_name; + output_pipe_name = _output_pipe_name; + dispatch_inc_message_function = p_func; + } + void start(HANDLE _restricted_pipe_token) { + output_queue_thread = std::thread(&TwoWayPipeMessageIPC::consume_output_queue_thread, this); + input_queue_thread = std::thread(&TwoWayPipeMessageIPC::consume_input_queue_thread, this); + input_pipe_thread = std::thread(&TwoWayPipeMessageIPC::start_named_pipe_server, this, _restricted_pipe_token); + } + + void end() { + closed = true; + input_queue.interrupt(); + input_queue_thread.join(); + output_queue.interrupt(); + output_queue_thread.join(); + pipe_connect_handle_mutex.lock(); + if (current_connect_pipe_handle != NULL) { + //Cancels the Pipe currently waiting for a connection. + CancelIoEx(current_connect_pipe_handle,NULL); + } + pipe_connect_handle_mutex.unlock(); + input_pipe_thread.join(); + } + +private: + AsyncMessageQueue input_queue; + AsyncMessageQueue output_queue; + std::wstring output_pipe_name; + std::wstring input_pipe_name; + std::thread input_queue_thread; + std::thread output_queue_thread; + std::thread input_pipe_thread; + std::mutex pipe_connect_handle_mutex; // For manipulating the current_connect_pipe + + HANDLE current_connect_pipe_handle = NULL; + bool closed = false; + TwoWayPipeMessageIPC::callback_function dispatch_inc_message_function; + const DWORD BUFSIZE = 1024; + + void send_pipe_message(std::wstring message) { + // Adapted from https://docs.microsoft.com/en-us/windows/win32/ipc/named-pipe-client + HANDLE output_pipe_handle; + const wchar_t* message_send = message.c_str(); + BOOL fSuccess = FALSE; + DWORD cbToWrite, cbWritten, dwMode; + const wchar_t* lpszPipename = output_pipe_name.c_str(); + + // Try to open a named pipe; wait for it, if necessary. + + while (1) { + output_pipe_handle = CreateFile( + lpszPipename, // pipe name + GENERIC_READ | // read and write access + GENERIC_WRITE, + 0, // no sharing + NULL, // default security attributes + OPEN_EXISTING, // opens existing pipe + 0, // default attributes + NULL); // no template file + + // Break if the pipe handle is valid. + + if (output_pipe_handle != INVALID_HANDLE_VALUE) + break; + + // Exit if an error other than ERROR_PIPE_BUSY occurs. + DWORD curr_error = 0; + if ((curr_error = GetLastError()) != ERROR_PIPE_BUSY) { + + return; + } + + // All pipe instances are busy, so wait for 20 seconds. + + if (!WaitNamedPipe(lpszPipename, 20000)) { + return; + } + } + dwMode = PIPE_READMODE_MESSAGE; + fSuccess = SetNamedPipeHandleState( + output_pipe_handle, // pipe handle + &dwMode, // new pipe mode + NULL, // don't set maximum bytes + NULL); // don't set maximum time + if (!fSuccess) { + return; + } + + // Send a message to the pipe server. + + cbToWrite = (lstrlen(message_send)) * sizeof(WCHAR); // no need to send final '\0'. Pipe is in message mode. + + fSuccess = WriteFile( + output_pipe_handle, // pipe handle + message_send, // message + cbToWrite, // message length + &cbWritten, // bytes written + NULL); // not overlapped + if (!fSuccess) { + return; + } + CloseHandle(output_pipe_handle); + return; + } + + void consume_output_queue_thread() { + while (!closed) { + std::wstring message = output_queue.pop_message(); + if (message.length() == 0) { + break; + } + send_pipe_message(message); + } + } + + BOOL GetLogonSID(HANDLE hToken, PSID *ppsid) { + // From https://docs.microsoft.com/en-us/previous-versions/aa446670(v=vs.85) + BOOL bSuccess = FALSE; + DWORD dwIndex; + DWORD dwLength = 0; + PTOKEN_GROUPS ptg = NULL; + + // Verify the parameter passed in is not NULL. + if (NULL == ppsid) + goto Cleanup; + + // Get required buffer size and allocate the TOKEN_GROUPS buffer. + + if (!GetTokenInformation( + hToken, // handle to the access token + TokenGroups, // get information about the token's groups + (LPVOID)ptg, // pointer to TOKEN_GROUPS buffer + 0, // size of buffer + &dwLength // receives required buffer size + )) { + if (GetLastError() != ERROR_INSUFFICIENT_BUFFER) + goto Cleanup; + + ptg = (PTOKEN_GROUPS)HeapAlloc(GetProcessHeap(), + HEAP_ZERO_MEMORY, dwLength); + + if (ptg == NULL) + goto Cleanup; + } + + // Get the token group information from the access token. + + if (!GetTokenInformation( + hToken, // handle to the access token + TokenGroups, // get information about the token's groups + (LPVOID)ptg, // pointer to TOKEN_GROUPS buffer + dwLength, // size of buffer + &dwLength // receives required buffer size + )) { + goto Cleanup; + } + + // Loop through the groups to find the logon SID. + + for (dwIndex = 0; dwIndex < ptg->GroupCount; dwIndex++) + if ((ptg->Groups[dwIndex].Attributes & SE_GROUP_LOGON_ID) + == SE_GROUP_LOGON_ID) { + // Found the logon SID; make a copy of it. + + dwLength = GetLengthSid(ptg->Groups[dwIndex].Sid); + *ppsid = (PSID)HeapAlloc(GetProcessHeap(), + HEAP_ZERO_MEMORY, dwLength); + if (*ppsid == NULL) + goto Cleanup; + if (!CopySid(dwLength, *ppsid, ptg->Groups[dwIndex].Sid)) { + HeapFree(GetProcessHeap(), 0, (LPVOID)*ppsid); + goto Cleanup; + } + break; + } + + bSuccess = TRUE; + + Cleanup: + + // Free the buffer for the token groups. + + if (ptg != NULL) + HeapFree(GetProcessHeap(), 0, (LPVOID)ptg); + + return bSuccess; + } + + VOID FreeLogonSID(PSID *ppsid) { + // From https://docs.microsoft.com/en-us/previous-versions/aa446670(v=vs.85) + HeapFree(GetProcessHeap(), 0, (LPVOID)*ppsid); + } + + + int change_pipe_security_allow_restricted_token(HANDLE handle, HANDLE token) { + PACL old_dacl, new_dacl; + PSECURITY_DESCRIPTOR sd; + EXPLICIT_ACCESS ea; + PSID user_restricted; + int error; + + if (!GetLogonSID(token, &user_restricted)) { + error = 5; // No access error. + goto Ldone; + } + + if (GetSecurityInfo(handle, + SE_KERNEL_OBJECT, + DACL_SECURITY_INFORMATION, + NULL, + NULL, + &old_dacl, + NULL, + &sd)) { + error = GetLastError(); + goto Lclean_sid; + } + + memset(&ea, 0, sizeof(EXPLICIT_ACCESS)); + ea.grfAccessPermissions |= GENERIC_READ | FILE_WRITE_ATTRIBUTES; + ea.grfAccessPermissions |= GENERIC_WRITE | FILE_READ_ATTRIBUTES; + ea.grfAccessPermissions |= SYNCHRONIZE; + ea.grfAccessMode = SET_ACCESS; + ea.grfInheritance = NO_INHERITANCE; + ea.Trustee.TrusteeForm = TRUSTEE_IS_SID; + ea.Trustee.TrusteeType = TRUSTEE_IS_USER; + ea.Trustee.ptstrName = (LPTSTR)user_restricted; + + if (SetEntriesInAcl(1, &ea, old_dacl, &new_dacl)) { + error = GetLastError(); + goto Lclean_sd; + } + + if (SetSecurityInfo(handle, + SE_KERNEL_OBJECT, + DACL_SECURITY_INFORMATION, + NULL, + NULL, + new_dacl, + NULL)) { + error = GetLastError(); + goto Lclean_dacl; + } + + error = 0; + + Lclean_dacl: + LocalFree((HLOCAL)new_dacl); + Lclean_sd: + LocalFree((HLOCAL)sd); + Lclean_sid: + FreeLogonSID(&user_restricted); + Ldone: + return error; + } + + HANDLE create_medium_integrity_token() { + HANDLE restricted_token_handle; + SAFER_LEVEL_HANDLE level_handle = NULL; + DWORD sid_size = SECURITY_MAX_SID_SIZE; + BYTE medium_sid[SECURITY_MAX_SID_SIZE]; + if (!SaferCreateLevel(SAFER_SCOPEID_USER, SAFER_LEVELID_NORMALUSER, SAFER_LEVEL_OPEN, &level_handle, NULL)) { + return NULL; + } + if (!SaferComputeTokenFromLevel(level_handle, NULL, &restricted_token_handle, 0, NULL)) { + SaferCloseLevel(level_handle); + return NULL; + } + SaferCloseLevel(level_handle); + + if (!CreateWellKnownSid(WinMediumLabelSid, nullptr, medium_sid, &sid_size)) { + CloseHandle(restricted_token_handle); + return NULL; + } + + TOKEN_MANDATORY_LABEL integrity_level = { 0 }; + integrity_level.Label.Attributes = SE_GROUP_INTEGRITY; + integrity_level.Label.Sid = reinterpret_cast(medium_sid); + + if (!SetTokenInformation(restricted_token_handle, TokenIntegrityLevel, &integrity_level, sizeof(integrity_level))) { + CloseHandle(restricted_token_handle); + return NULL; + } + + return restricted_token_handle; + } + + void handle_pipe_connection(HANDLE input_pipe_handle) { + //Adapted from https://docs.microsoft.com/en-us/windows/win32/ipc/multithreaded-pipe-server + HANDLE hHeap = GetProcessHeap(); + uint8_t* pchRequest = (uint8_t*)HeapAlloc(hHeap, 0, BUFSIZE * sizeof(uint8_t)); + + DWORD cbBytesRead = 0, cbReplyBytes = 0, cbWritten = 0; + BOOL fSuccess = FALSE; + + // Do some extra error checking since the app will keep running even if this thread fails. + std::list> message_parts; + + if (input_pipe_handle == NULL) { + if (pchRequest != NULL) HeapFree(hHeap, 0, pchRequest); + return; + } + + if (pchRequest == NULL) { + return; + } + + // Loop until done reading + do { + // Read client requests from the pipe. This simplistic code only allows messages + // up to BUFSIZE characters in length. + ZeroMemory(pchRequest, BUFSIZE * sizeof(uint8_t)); + fSuccess = ReadFile( + input_pipe_handle, // handle to pipe + pchRequest, // buffer to receive data + BUFSIZE * sizeof(uint8_t), // size of buffer + &cbBytesRead, // number of bytes read + NULL); // not overlapped I/O + + if (!fSuccess && GetLastError() != ERROR_MORE_DATA) { + break; + } + std::vector part_vector; + part_vector.reserve(cbBytesRead); + std::copy(pchRequest, pchRequest + cbBytesRead, std::back_inserter(part_vector)); + message_parts.push_back(part_vector); + } while (!fSuccess); + + if (fSuccess) { + // Reconstruct the total_message. + std::vector reconstructed_message; + size_t total_size = 0; + for (auto& part_vector : message_parts) { + total_size += part_vector.size(); + } + reconstructed_message.reserve(total_size); + for (auto& part_vector : message_parts) { + std::move(part_vector.begin(), part_vector.end(), std::back_inserter(reconstructed_message)); + } + std::wstring unicode_msg; + unicode_msg.assign(reinterpret_cast(reconstructed_message.data()), reconstructed_message.size() / sizeof(std::wstring::value_type)); + input_queue.queue_message(unicode_msg); + } + + // Flush the pipe to allow the client to read the pipe's contents + // before disconnecting. Then disconnect the pipe, and close the + // handle to this pipe instance. + + FlushFileBuffers(input_pipe_handle); + DisconnectNamedPipe(input_pipe_handle); + CloseHandle(input_pipe_handle); + + HeapFree(hHeap, 0, pchRequest); + + printf("InstanceThread exitting.\n"); + } + + void start_named_pipe_server(HANDLE token) { + // Adapted from https://docs.microsoft.com/en-us/windows/win32/ipc/multithreaded-pipe-server + const wchar_t* pipe_name = input_pipe_name.c_str(); + BOOL connected = FALSE; + HANDLE connect_pipe_handle = INVALID_HANDLE_VALUE; + while(!closed) { + { + std::unique_lock lock(pipe_connect_handle_mutex); + connect_pipe_handle = CreateNamedPipe( + pipe_name, + PIPE_ACCESS_DUPLEX | + WRITE_DAC, + PIPE_TYPE_MESSAGE | + PIPE_READMODE_MESSAGE | + PIPE_WAIT, + PIPE_UNLIMITED_INSTANCES, + BUFSIZE, + BUFSIZE, + 0, + NULL + ); + + if (connect_pipe_handle == INVALID_HANDLE_VALUE) { + return; + } + + if (token != NULL) { + int err = change_pipe_security_allow_restricted_token(connect_pipe_handle, token); + } + current_connect_pipe_handle = connect_pipe_handle; + } + connected = ConnectNamedPipe(connect_pipe_handle, NULL) ? TRUE : (GetLastError() == ERROR_PIPE_CONNECTED); + { + std::unique_lock lock(pipe_connect_handle_mutex); + current_connect_pipe_handle = NULL; + } + if (connected) { + std::thread(&TwoWayPipeMessageIPC::handle_pipe_connection, this, connect_pipe_handle).detach(); + } else { + // Client could not connect. + CloseHandle(connect_pipe_handle); + } + } + } + + void consume_input_queue_thread() { + while (!closed) { + std::wstring message = input_queue.pop_message(); + if (message.length() == 0) { + break; + } + dispatch_inc_message_function(message); + } + } + +}; diff --git a/src/common/windows_colors.cpp b/src/common/windows_colors.cpp new file mode 100644 index 0000000000..490469f677 --- /dev/null +++ b/src/common/windows_colors.cpp @@ -0,0 +1,71 @@ +#include "pch.h" +#include "windows_colors.h" + +DWORD WindowsColors::rgb_color(DWORD abgr_color) { + // registry keeps the colors in ABGR format, we want RGB + auto r = (abgr_color & 0xFF); + auto g = (abgr_color & 0xFF00) >> 8; + auto b = (abgr_color & 0xFF0000) >> 16; + return (r << 16) | (g << 8) | b; +} +DWORD WindowsColors::rgb_color(winrt::Windows::UI::Color color) { + return ((DWORD)color.R << 16) | ((DWORD)color.G << 8) | ((DWORD)color.B); +} +WindowsColors::Color WindowsColors::get_button_face_color() { + winrt::Windows::UI::ViewManagement::UISettings uiSettings; + return uiSettings.UIElementColor(winrt::Windows::UI::ViewManagement::UIElementType::ButtonFace); +} +WindowsColors::Color WindowsColors::get_button_text_color() { + winrt::Windows::UI::ViewManagement::UISettings uiSettings; + return uiSettings.UIElementColor(winrt::Windows::UI::ViewManagement::UIElementType::ButtonText); +} +WindowsColors::Color WindowsColors::get_highlight_color() { + winrt::Windows::UI::ViewManagement::UISettings uiSettings; + return uiSettings.UIElementColor(winrt::Windows::UI::ViewManagement::UIElementType::Highlight); +} +WindowsColors::Color WindowsColors::get_hotlight_color() { + winrt::Windows::UI::ViewManagement::UISettings uiSettings; + return uiSettings.UIElementColor(winrt::Windows::UI::ViewManagement::UIElementType::Hotlight); +} +WindowsColors::Color WindowsColors::get_highlight_text_color() { + winrt::Windows::UI::ViewManagement::UISettings uiSettings; + return uiSettings.UIElementColor(winrt::Windows::UI::ViewManagement::UIElementType::HighlightText); +} +WindowsColors::Color WindowsColors::get_accent_light_1_color() { + winrt::Windows::UI::ViewManagement::UISettings uiSettings; + return uiSettings.GetColorValue(winrt::Windows::UI::ViewManagement::UIColorType::AccentLight1); +} +WindowsColors::Color WindowsColors::get_accent_light_2_color() { + winrt::Windows::UI::ViewManagement::UISettings uiSettings; + return uiSettings.GetColorValue(winrt::Windows::UI::ViewManagement::UIColorType::AccentLight2); +} +WindowsColors::Color WindowsColors::get_accent_dark_1_color() { + winrt::Windows::UI::ViewManagement::UISettings uiSettings; + return uiSettings.GetColorValue(winrt::Windows::UI::ViewManagement::UIColorType::AccentDark1); +} +WindowsColors::Color WindowsColors::get_accent_color() { + winrt::Windows::UI::ViewManagement::UISettings uiSettings; + return uiSettings.GetColorValue(winrt::Windows::UI::ViewManagement::UIColorType::Accent); +} +WindowsColors::Color WindowsColors::get_background_color() { + winrt::Windows::UI::ViewManagement::UISettings uiSettings; + return uiSettings.GetColorValue(winrt::Windows::UI::ViewManagement::UIColorType::Background); +} + +bool WindowsColors::update() { + auto new_accent_color_menu = rgb_color(get_accent_color()); + auto new_start_color_menu = new_accent_color_menu; + auto new_desktop_fill_color = rgb_color(GetSysColor(COLOR_DESKTOP)); + auto new_light_mode = rgb_color(get_background_color()) != 0; //Dark mode will have black as the background color. + + bool changed = new_accent_color_menu != accent_color_menu || + new_start_color_menu != start_color_menu || + new_light_mode != light_mode || + new_desktop_fill_color != desktop_fill_color; + accent_color_menu = new_accent_color_menu; + start_color_menu = new_start_color_menu; + light_mode = new_light_mode; + desktop_fill_color = new_desktop_fill_color; + + return changed; +} diff --git a/src/common/windows_colors.h b/src/common/windows_colors.h new file mode 100644 index 0000000000..2fd4e834b9 --- /dev/null +++ b/src/common/windows_colors.h @@ -0,0 +1,27 @@ +#pragma once +#include + +struct WindowsColors { + using Color = winrt::Windows::UI::Color; + + static DWORD rgb_color(DWORD abgr_color); + static DWORD rgb_color(Color color); + static Color get_button_face_color(); + static Color get_button_text_color(); + static Color get_highlight_color(); + static Color get_hotlight_color(); + static Color get_highlight_text_color(); + static Color get_accent_light_1_color(); + static Color get_accent_light_2_color(); + static Color get_accent_dark_1_color(); + static Color get_accent_color(); + static Color get_background_color(); + + // Update colors - returns true if the values where changed + bool update(); + + DWORD accent_color_menu = 0, + start_color_menu = 0, + desktop_fill_color = 0; + bool light_mode = true; +}; diff --git a/src/editor/README.md b/src/editor/README.md new file mode 100644 index 0000000000..e183c720d0 --- /dev/null +++ b/src/editor/README.md @@ -0,0 +1,21 @@ +# PowerToys Settings project + +## Introduction + +This path contains the WebView project for editing the PowerToys settings. + +The html portion of the project that is shown in the WebView is contained in `settings-html`. +Instructions on how build a new version and update this project are in the [Web project for the Settings UI](../settings-web). + +While developing, it's possible to connect the WebView to the development server running in localhost by setting the `_DEBUG_WITH_LOCALHOST` flag to `1` and following the instructions near it in `./main.cpp`. + +## Code Organization + +#### [main.cpp](./main.cpp) +Contains the main executable code, initializing and managing the Window containing the WebView and communication with the main PowerToys executable. + +#### [StreamURIResolverFromFile.cpp](./StreamURIResolverFromFile.cpp) +Defines a class implementing `IUriToStreamResolver`. Allows the WebView to navigate to filesystem files in this Win32 project. + +#### [settings-html/](./settings-html/) +Contains the assets file from building the [Web project for the Settings UI](../settings-web). It will be loaded by the WebView. diff --git a/src/editor/StreamURIResolverFromFile.cpp b/src/editor/StreamURIResolverFromFile.cpp new file mode 100644 index 0000000000..46575d8841 --- /dev/null +++ b/src/editor/StreamURIResolverFromFile.cpp @@ -0,0 +1,24 @@ +#include "pch.h" +#include "StreamUriResolverFromFile.h" + +winrt::Windows::Foundation::IAsyncOperation StreamUriResolverFromFile::UriToStreamAsync(const winrt::Windows::Foundation::Uri & uri) const { + + winrt::Windows::Storage::StorageFolder folder = winrt::Windows::Storage::StorageFolder::GetFolderFromPathAsync(winrt::param::hstring(base_path)).get(); + + std::wstring myuri = uri.Path().c_str(); + myuri.erase(0, 1); // Removes the first slash from the URI + + std::replace(myuri.begin(), myuri.end(), '/', '\\'); + winrt::Windows::Storage::StorageFile file = nullptr; + + try { + file = folder.GetFileAsync(winrt::param::hstring(myuri)).get(); + } + catch (winrt::hresult_error const& e) { + WCHAR message[1024] = L""; + StringCchPrintf(message, ARRAYSIZE(message), L"failed: %ls", e.message().c_str()); + MessageBox(NULL, message, L"Error", MB_OK); + } + + return file.OpenSequentialReadAsync(); +} diff --git a/src/editor/StreamUriResolverFromFile.h b/src/editor/StreamUriResolverFromFile.h new file mode 100644 index 0000000000..a76a7ff170 --- /dev/null +++ b/src/editor/StreamUriResolverFromFile.h @@ -0,0 +1,8 @@ +#pragma once +#include "pch.h" + +struct StreamUriResolverFromFile : winrt::implements { + WCHAR base_path[MAX_PATH]; + winrt::Windows::Foundation::IAsyncOperation UriToStreamAsync(const winrt::Windows::Foundation::Uri & uri) const; +}; + diff --git a/src/editor/main.cpp b/src/editor/main.cpp new file mode 100644 index 0000000000..c140e9ee2a --- /dev/null +++ b/src/editor/main.cpp @@ -0,0 +1,444 @@ +#include "pch.h" +#include +#include "StreamUriResolverFromFile.h" +#include +#include +#include +#include "resource.h" +#include + +#pragma comment(lib, "shlwapi.lib") +#pragma comment(lib, "shcore.lib") +#pragma comment(lib, "windowsapp") +#pragma comment(lib, "dxgi") +#pragma comment(lib, "d3d11") +#pragma comment(lib, "d2d1") +#pragma comment(lib, "dcomp") +#pragma comment(lib, "dwmapi") + +#ifdef _DEBUG +#define _DEBUG_WITH_LOCALHOST 0 +// Define as 1 For debug purposes, to access localhost servers. +// webview_process_options.PrivateNetworkClientServerCapability(winrt::Windows::Web::UI::Interop::WebViewControlProcessCapabilityState::Enabled); +// To access localhost:8080 for development, you'll also need to disable loopback restrictions for the webview: +// > checknetisolation LoopbackExempt -a -n=Microsoft.Win32WebViewHost_cw5n1h2txyewy +// To remove the exception after development: +// > checknetisolation LoopbackExempt -d -n=Microsoft.Win32WebViewHost_cw5n1h2txyewy +// Source: https://github.com/windows-toolkit/WindowsCommunityToolkit/issues/2226#issuecomment-396360314 +#endif +HINSTANCE m_hInst; +HWND main_window_handler = nullptr; +using namespace winrt; +using namespace winrt::Windows::Foundation; +using namespace winrt::Windows::Storage::Streams; +using namespace winrt::Windows::Web::Http; +using namespace winrt::Windows::Web::Http::Headers; +using namespace winrt::Windows::Web::UI; +using namespace winrt::Windows::Web::UI::Interop; +using namespace winrt::Windows::System; + +winrt::Windows::Web::UI::Interop::WebViewControl webview_control = nullptr; +winrt::Windows::Web::UI::Interop::WebViewControlProcess webview_process = nullptr; +winrt::Windows::Web::UI::Interop::WebViewControlProcessOptions webview_process_options = nullptr; +StreamUriResolverFromFile local_uri_resolver; + +// Windows message for receiving copied data to send to the webview. +UINT wm_copydata_webview = 0; + +// Windows message to destroy the window. Used if: +// - Parent process has terminated. +// - WebView confirms that the Window can close. +UINT wm_my_destroy_window = 0; + +// mutex for checking if the window has already been created. +std::mutex m_window_created_mutex; + +TwoWayPipeMessageIPC* current_settings_ipc = NULL; + +// Set to true if waiting for webview confirmation before closing the Window. +bool m_waiting_for_close_confirmation = false; + +#ifdef _DEBUG +void NavigateToLocalhostReactServer() { + // Useful for connecting to instance running in react development server. + webview_control.Navigate(Uri(hstring(L"http://localhost:8080"))); +} +#endif +void NavigateToUri(_In_ LPCWSTR uri_as_string) { + Uri url = webview_control.BuildLocalStreamUri(hstring(L"settings-html"), hstring(uri_as_string)); + webview_control.NavigateToLocalStreamUri(url, local_uri_resolver); + +} + +Rect hwnd_client_rect_to_bounds_rect(_In_ HWND hwnd) { + RECT client_rect = { 0 }; + GetClientRect(hwnd, &client_rect); + + Rect bounds = + { + 0, + 0, + static_cast(client_rect.right - client_rect.left), + static_cast(client_rect.bottom - client_rect.top) + }; + + return bounds; +} + +void resize_web_view() { + Rect bounds = hwnd_client_rect_to_bounds_rect(main_window_handler); + winrt::Windows::Web::UI::Interop::IWebViewControlSite webViewControlSite = (winrt::Windows::Web::UI::Interop::IWebViewControlSite) webview_control; + webViewControlSite.Bounds(bounds); + +} + +#define SEND_TO_WEBVIEW_MSG 1 + +void send_message_to_webview(const std::wstring& msg) { + if (main_window_handler != NULL && wm_copydata_webview!=0) { + // Allocate the COPYDATASTRUCT and message to pass to the Webview. + // This is needed in order to use PostMessage, since COM calls to + // webview_control.InvokeScriptAsync can't be made from + PCOPYDATASTRUCT copy_data_message = new COPYDATASTRUCT(); + const wchar_t* orig_msg = msg.c_str(); + DWORD orig_len = (DWORD)wcslen(orig_msg); + wchar_t* copy_msg = new wchar_t[orig_len + 1]; + wcscpy_s(copy_msg, orig_len + 1, orig_msg); + copy_data_message->dwData = SEND_TO_WEBVIEW_MSG; + copy_data_message->cbData = (orig_len + 1) * sizeof(wchar_t); + copy_data_message->lpData = (PVOID)copy_msg; + PostMessage(main_window_handler, wm_copydata_webview, (WPARAM)main_window_handler, (LPARAM)copy_data_message); + // wnd_static_proc will be responsible for freeing these. + } +} + +void send_message_to_powertoys(const std::wstring msg) { + if (current_settings_ipc != NULL) { + current_settings_ipc->send(msg); + } else { + // For Debug purposes, in case the webview is being run alone. +#ifdef _DEBUG + MessageBox(main_window_handler, msg.c_str(), L"From Webview", MB_OK); + //throw in some sample data + std::wstring debug_settings_info(LR"json({ + "general": { + "startup": true, + "enabled": { + "Shortcut Guide":false, + "Example PowerToy":true + } + }, + "powertoys": { + "Shortcut Guide": { + "version": "1.0", + "name": "Shortcut Guide", + "description": "Shows a help overlay with Windows shortcuts when the Windows key is pressed.", + "icon_key": "pt-shortcut-guide", + "properties": { + "press time" : { + "display_name": "How long to press the Windows key before showing the Shortcut Guide (ms)", + "editor_type": "int_spinner", + "value": 300 + } + } + }, + "Example PowerToy": { + "version": "1.0", + "name": "Example PowerToy", + "description": "Shows the different controls for the settings.", + "overview_link": "https://github.com/microsoft/PowerToys", + "video_link": "https://www.youtube.com/watch?v=d3LHo2yXKoY&t=21462", + "properties": { + "test bool_toggle": { + "display_name": "This is what a bool_toggle looks like", + "editor_type": "bool_toggle", + "value": false + }, + "test int_spinner": { + "display_name": "This is what a int_spinner looks like", + "editor_type": "int_spinner", + "value": 10 + }, + "test string_text": { + "display_name": "This is what a string_text looks like", + "editor_type": "string_text", + "value": "A sample string value" + }, + "test color_picker": { + "display_name": "This is what a color_picker looks like", + "editor_type": "color_picker", + "value": "#0450fd" + }, + "test custom_action": { + "display_name": "This is what a custom_action looks like", + "editor_type": "custom_action", + "value": "This is to be custom data. It\ncan\nhave\nmany\nlines\nthat\nshould\nmake\nthe\nfield\nbigger.", + "button_text": "Call a Custom Action!" + } + } + } + } + })json"); + send_message_to_webview(debug_settings_info); +#endif + } +} + +void receive_message_from_webview(const std::wstring& msg) { + if (msg[0] == '{') { + // It's a JSON, send message to PowerToys + std::thread(send_message_to_powertoys, msg).detach(); + } else { + // It's not a JSON, check for expected control messages. + if (msg == L"exit") { + // WebView confirms the settings application can exit. + PostMessage(main_window_handler, wm_my_destroy_window, 0, 0); + } else if (msg == L"cancel-exit") { + // WebView canceled the exit request. + m_waiting_for_close_confirmation = false; + } + } +} + +void initialize_win32_webview(HWND hwnd, int nCmdShow) { + + // initialize the base_path for the html content relative to the executable. + WCHAR executable_path[MAX_PATH]; + GetModuleFileName(NULL, executable_path, MAX_PATH); + PathRemoveFileSpec(executable_path); + wcscat_s(executable_path, L"\\settings-html"); + wcscpy_s(local_uri_resolver.base_path, executable_path); + + try { + if (!webview_process_options) { + webview_process_options = winrt::Windows::Web::UI::Interop::WebViewControlProcessOptions(); + } + + if (!webview_process) { + webview_process = winrt::Windows::Web::UI::Interop::WebViewControlProcess(webview_process_options); + } + auto asyncwebview = webview_process.CreateWebViewControlAsync((int64_t)main_window_handler, hwnd_client_rect_to_bounds_rect(main_window_handler)); + asyncwebview.Completed([=](IAsyncOperation const& sender, AsyncStatus args) { + webview_control = sender.GetResults(); + + // In order to receive window.external.notify() calls in ScriptNotify + webview_control.Settings().IsScriptNotifyAllowed(true); + + webview_control.Settings().IsJavaScriptEnabled(true); + + webview_control.NewWindowRequested([=](IWebViewControl sender_requester, WebViewControlNewWindowRequestedEventArgs args ) { + // Open the requested link in the default browser registered in the Shell + ShellExecute(NULL, L"open", args.Uri().AbsoluteUri().c_str(), NULL, NULL, SW_SHOWNORMAL); + }); + + webview_control.DOMContentLoaded([=](IWebViewControl sender_loaded, WebViewControlDOMContentLoadedEventArgs const& args_loaded) { + // runs when the content has been loaded. + }); + webview_control.ScriptNotify([=](IWebViewControl sender_script_notify, WebViewControlScriptNotifyEventArgs const& args_script_notify) { + // content called window.external.notify() + std::wstring message_sent = args_script_notify.Value().c_str(); + receive_message_from_webview(message_sent); + }); + resize_web_view(); +#if defined(_DEBUG) && _DEBUG_WITH_LOCALHOST + // navigates to localhost:8080 + NavigateToLocalhostReactServer(); +#else + // navigates to settings-html/index.html + ShowWindow(main_window_handler, nCmdShow); + NavigateToUri(L"index.html"); +#endif + }); + } + catch (hresult_error const& e) { + WCHAR message[1024] = L""; + StringCchPrintf(message, ARRAYSIZE(message), L"failed: %ls", e.message().c_str()); + MessageBox(main_window_handler, message, L"Error", MB_OK); + } +} + +LRESULT CALLBACK wnd_proc_static(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) { + switch (message) { + case WM_CLOSE: + if(m_waiting_for_close_confirmation) { + // If another WM_CLOSE is received while waiting for webview confirmation, + // allow DefWindowProc to be called and destroy the window. + break; + } else { + // Allow user to confirm exit in the WebView in case there's possible data loss. + m_waiting_for_close_confirmation = true; + if (webview_control != NULL) { + webview_control.InvokeScriptAsync(hstring(L"exit_settings_app"), {}); + } else { + break; + } + return 0; + } + case WM_DESTROY: + PostQuitMessage(0); + break; + case WM_SIZE: + if (webview_control != nullptr) { + resize_web_view(); + } + break; + case WM_CREATE: + wm_copydata_webview = RegisterWindowMessageW(L"PTSettingsCopyDataWebView"); + wm_my_destroy_window = RegisterWindowMessageW(L"PTSettingsParentTerminated"); + m_window_created_mutex.unlock(); + break; + case WM_DPICHANGED: + { + // Resize the window using the suggested rect + RECT* const prcNewWindow = (RECT*)lParam; + SetWindowPos(hWnd, + NULL, + prcNewWindow->left, + prcNewWindow->top, + prcNewWindow->right - prcNewWindow->left, + prcNewWindow->bottom - prcNewWindow->top, + SWP_NOZORDER | SWP_NOACTIVATE); + } + break; + case WM_NCCREATE: + { + // Enable auto-resizing the title bar + EnableNonClientDpiScaling(hWnd); + } + break; + default: + if (message == wm_copydata_webview) { + PCOPYDATASTRUCT msg = (PCOPYDATASTRUCT)lParam; + if (msg->dwData == SEND_TO_WEBVIEW_MSG) { + wchar_t* json_message = (wchar_t*)(msg->lpData); + if (webview_control != NULL) { + webview_control.InvokeScriptAsync(hstring(L"receive_from_settings_app"), { hstring(json_message) }); + } + delete[] json_message; + } + // wnd_proc_static is responsible for freeing memory. + delete msg; + } else { + if (message == wm_my_destroy_window) { + DestroyWindow(hWnd); + } + } + break; + } + return DefWindowProc(hWnd, message, wParam, lParam);; +} + +void register_classes(HINSTANCE hInstance) { + WNDCLASSEXW wcex; + wcex.cbSize = sizeof(WNDCLASSEX); + + wcex.style = CS_HREDRAW | CS_VREDRAW; + wcex.lpfnWndProc = wnd_proc_static; + wcex.cbClsExtra = 0; + wcex.cbWndExtra = 0; + wcex.hInstance = hInstance; + wcex.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(APPICON)); + wcex.hCursor = LoadCursor(nullptr, IDC_ARROW); + wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW + 1); + wcex.lpszMenuName = nullptr; + wcex.lpszClassName = L"PTSettingsClass"; + wcex.hIconSm = nullptr; + + RegisterClassExW(&wcex); +} + +int init_instance(HINSTANCE hInstance, int nCmdShow) { + m_hInst = hInstance; + + RECT desktopRect; + const HWND hDesktop = GetDesktopWindow(); + GetWindowRect(hDesktop, &desktopRect); + + int wind_width = 1024; + int wind_height = 700; + DPIAware::Convert(NULL, wind_width, wind_height); + + main_window_handler = CreateWindowW( + L"PTSettingsClass", + L"PowerToys Settings", + WS_OVERLAPPEDWINDOW, + (desktopRect.right - wind_width)/2, + (desktopRect.bottom - wind_height)/2, + wind_width, + wind_height, + nullptr, + nullptr, + hInstance, + nullptr); + + initialize_win32_webview(main_window_handler, nCmdShow); + UpdateWindow(main_window_handler); + + return TRUE; +} + +void wait_on_parent_process_thread(DWORD pid) { + HANDLE process = OpenProcess(SYNCHRONIZE, FALSE, pid); + if (process != NULL) { + if (WaitForSingleObject(process, INFINITE) == WAIT_OBJECT_0) { + // If it's possible to detect when the PowerToys process terminates, message the main window. + CloseHandle(process); + { + // Send a terminated message only after the window has finished initializing. + std::unique_lock lock(m_window_created_mutex); + } + PostMessage(main_window_handler, wm_my_destroy_window, 0, 0); + } else { + CloseHandle(process); + } + } +} + +void quit_when_parent_terminates(std::wstring parent_pid) { + DWORD pid = std::stol(parent_pid); + std::thread(wait_on_parent_process_thread,pid).detach(); +} + +void read_arguments() { + // Expected calling arguments: + // [0] - This executable's path. + // [1] - PowerToys pipe server. + // [2] - Settings pipe server. + // [3] - PowerToys process pid. + LPWSTR *argument_list; + int n_args; + + argument_list = CommandLineToArgvW(GetCommandLineW(), &n_args); + if (n_args > 3) { + current_settings_ipc = new TwoWayPipeMessageIPC(std::wstring(argument_list[2]), std::wstring(argument_list[1]), send_message_to_webview); + current_settings_ipc->start(NULL); + quit_when_parent_terminates(std::wstring(argument_list[3])); + } else { +#ifndef _DEBUG + MessageBox(NULL, L"This executable isn't supposed to be called as a stand-alone process", L"Error running settings", MB_OK); + exit(1); +#endif + } + LocalFree(argument_list); +} + +int start_webview_window(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { + // To be unlocked after the Window has finished being created. + m_window_created_mutex.lock(); + read_arguments(); + register_classes(hInstance); + init_instance(hInstance, nCmdShow); + MSG msg; + // Main message loop: + while (GetMessage(&msg, nullptr, 0, 0)) { + TranslateMessage(&msg); + DispatchMessage(&msg); + } + + return (int)msg.wParam; +} + +int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { + HRESULT hrInit = CoInitialize(nullptr); + return start_webview_window(hInstance, hPrevInstance, lpCmdLine, nCmdShow); +} diff --git a/src/editor/pch.cpp b/src/editor/pch.cpp new file mode 100644 index 0000000000..1d9f38c57d --- /dev/null +++ b/src/editor/pch.cpp @@ -0,0 +1 @@ +#include "pch.h" diff --git a/src/editor/pch.h b/src/editor/pch.h new file mode 100644 index 0000000000..ddb5596363 --- /dev/null +++ b/src/editor/pch.h @@ -0,0 +1,17 @@ +#pragma once +#include +#pragma push_macro("GetCurrentTime") +#undef GetCurrentTime +// include winrt headers with fix for "warning C4002: Too many arguments for function-like macro invocation GetCurrentTime" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#pragma pop_macro("GetCurrentTime") +#include +#include diff --git a/src/editor/resource.h b/src/editor/resource.h new file mode 100644 index 0000000000..268c4bbe4b --- /dev/null +++ b/src/editor/resource.h @@ -0,0 +1 @@ +#define APPICON 101 diff --git a/src/editor/settings-html/200.html b/src/editor/settings-html/200.html new file mode 100644 index 0000000000..d155482b13 --- /dev/null +++ b/src/editor/settings-html/200.html @@ -0,0 +1,25 @@ + + + + + PowerToys Settings + + +
+ + + diff --git a/src/editor/settings-html/dist/bundle.js b/src/editor/settings-html/dist/bundle.js new file mode 100644 index 0000000000..cc65753e10 --- /dev/null +++ b/src/editor/settings-html/dist/bundle.js @@ -0,0 +1,31 @@ +!function(e){var t={};function n(o){if(t[o])return t[o].exports;var r=t[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,n),r.l=!0,r.exports}n.m=e,n.c=t,n.d=function(e,t,o){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:o})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(n.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(o,r,function(t){return e[t]}.bind(null,r));return o},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=29)}([function(e,t,n){"use strict";e.exports=n(20)},,,,,,function(e,t,n){"use strict";!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(e){console.error(e)}}(),e.exports=n(21)},,,,,,,function(e,t,n){"use strict"; +/* +object-assign +(c) Sindre Sorhus +@license MIT +*/var o=Object.getOwnPropertySymbols,r=Object.prototype.hasOwnProperty,i=Object.prototype.propertyIsEnumerable;function a(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map(function(e){return t[e]}).join(""))return!1;var o={};return"abcdefghijklmnopqrst".split("").forEach(function(e){o[e]=e}),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},o)).join("")}catch(e){return!1}}()?Object.assign:function(e,t){for(var n,s,l=a(e),u=1;u0&&p(t)})}function p(e,t){a.loadStyles?a.loadStyles(g(e).styleString,e):n?function(e,t){if("undefined"==typeof document)return;var n=document.getElementsByTagName("head")[0],o=a.registeredStyles,r=a.lastStyleElement,i=r?r.styleSheet:void 0,s=i?i.cssText:"",u=o[o.length-1],c=g(e).styleString;(!r||s.length+c.length>l)&&((r=document.createElement("style")).type="text/css",t?(n.replaceChild(r,t.styleElement),t.styleElement=r):n.appendChild(r),t||(u={styleElement:r,themableStyle:e},o.push(u)));r.styleSheet.cssText+=m(c),Array.prototype.push.apply(u.themableStyle,e),a.lastStyleElement=r}(e,t):function(e){if("undefined"==typeof document)return;var t=document.getElementsByTagName("head")[0],n=document.createElement("style"),o=g(e),r=o.styleString,s=o.themable;n.type="text/css",i&&n.setAttribute("nonce",i);n.appendChild(document.createTextNode(r)),a.perf.count++,t.appendChild(n);var l={styleElement:n,themableStyle:e};s?a.registeredThemableStyles.push(l):a.registeredStyles.push(l)}(e)}function f(e){void 0===e&&(e=3),3!==e&&2!==e||(h(a.registeredStyles),a.registeredStyles=[]),3!==e&&1!==e||(h(a.registeredThemableStyles),a.registeredThemableStyles=[])}function h(e){e.forEach(function(e){var t=e&&e.styleElement;t&&t.parentElement&&t.parentElement.removeChild(t)})}function m(e){return e&&(e=g(v(e)).styleString),e}function g(e){var t=a.theme,n=!1;return{styleString:(e||[]).map(function(e){var o=e.theme;if(o){n=!0;var r=t?t[o]:void 0,i=e.defaultValue||"inherit";return!t||r||!console||o in t||"undefined"==typeof DEBUG||!DEBUG||console.warn('Theming value not provided for "'+o+'". Falling back to "'+i+'".'),r||i}return e.rawString}).join(""),themable:n}}function v(e){var t=[];if(e){for(var n=0,o=void 0;o=s.exec(e);){var r=o.index;r>n&&t.push({rawString:e.substring(n,r)}),t.push({theme:o[1],defaultValue:o[2]}),n=s.lastIndex}t.push({rawString:e.substring(n)})}return t}t.loadStyles=function(e,t){void 0===t&&(t=!1),c(function(){var o=Array.isArray(e)?e:v(e);void 0===n&&(n=function(){var e=!1;if("undefined"!=typeof document){var t=document.createElement("style");t.type="text/css",e=!!t.styleSheet}return e}());var r=a.runState,i=r.mode,s=r.buffer,l=r.flushTimer;t||1===i?(s.push(o),l||(a.runState.flushTimer=setTimeout(function(){a.runState.flushTimer=0,d()},0))):p(o)})},t.configureLoadStyles=function(e){a.loadStyles=e},t.configureRunMode=function(e){a.runState.mode=e},t.flush=d,t.loadTheme=function(e){a.theme=e,function(){if(a.theme){for(var e=[],t=0,n=a.registeredThemableStyles;t0&&(f(1),p([].concat.apply([],e)))}}()},t.clearStyles=f,t.detokenize=m,t.splitStyles=v}).call(this,n(14))},,,,,function(e,t,n){"use strict"; +/** @license React v16.8.6 + * react.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var o=n(13),r="function"==typeof Symbol&&Symbol.for,i=r?Symbol.for("react.element"):60103,a=r?Symbol.for("react.portal"):60106,s=r?Symbol.for("react.fragment"):60107,l=r?Symbol.for("react.strict_mode"):60108,u=r?Symbol.for("react.profiler"):60114,c=r?Symbol.for("react.provider"):60109,d=r?Symbol.for("react.context"):60110,p=r?Symbol.for("react.concurrent_mode"):60111,f=r?Symbol.for("react.forward_ref"):60112,h=r?Symbol.for("react.suspense"):60113,m=r?Symbol.for("react.memo"):60115,g=r?Symbol.for("react.lazy"):60116,v="function"==typeof Symbol&&Symbol.iterator;function y(e){for(var t=arguments.length-1,n="https://reactjs.org/docs/error-decoder.html?invariant="+e,o=0;oA.length&&A.push(e)}function F(e,t,n){return null==e?0:function e(t,n,o,r){var s=typeof t;"undefined"!==s&&"boolean"!==s||(t=null);var l=!1;if(null===t)l=!0;else switch(s){case"string":case"number":l=!0;break;case"object":switch(t.$$typeof){case i:case a:l=!0}}if(l)return o(r,t,""===n?"."+O(t,0):n),1;if(l=0,n=""===n?".":n+":",Array.isArray(t))for(var u=0;uthis.eventPool.length&&this.eventPool.push(e)}function de(e){e.eventPool=[],e.getPooled=ue,e.release=ce}r(le.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():"unknown"!=typeof e.returnValue&&(e.returnValue=!1),this.isDefaultPrevented=ae)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():"unknown"!=typeof e.cancelBubble&&(e.cancelBubble=!0),this.isPropagationStopped=ae)},persist:function(){this.isPersistent=ae},isPersistent:se,destructor:function(){var e,t=this.constructor.Interface;for(e in t)this[e]=null;this.nativeEvent=this._targetInst=this.dispatchConfig=null,this.isPropagationStopped=this.isDefaultPrevented=se,this._dispatchInstances=this._dispatchListeners=null}}),le.Interface={type:null,target:null,currentTarget:function(){return null},eventPhase:null,bubbles:null,cancelable:null,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:null,isTrusted:null},le.extend=function(e){function t(){}function n(){return o.apply(this,arguments)}var o=this;t.prototype=o.prototype;var i=new t;return r(i,n.prototype),n.prototype=i,n.prototype.constructor=n,n.Interface=r({},o.Interface,e),n.extend=o.extend,de(n),n},de(le);var pe=le.extend({data:null}),fe=le.extend({data:null}),he=[9,13,27,32],me=V&&"CompositionEvent"in window,ge=null;V&&"documentMode"in document&&(ge=document.documentMode);var ve=V&&"TextEvent"in window&&!ge,ye=V&&(!me||ge&&8=ge),be=String.fromCharCode(32),_e={beforeInput:{phasedRegistrationNames:{bubbled:"onBeforeInput",captured:"onBeforeInputCapture"},dependencies:["compositionend","keypress","textInput","paste"]},compositionEnd:{phasedRegistrationNames:{bubbled:"onCompositionEnd",captured:"onCompositionEndCapture"},dependencies:"blur compositionend keydown keypress keyup mousedown".split(" ")},compositionStart:{phasedRegistrationNames:{bubbled:"onCompositionStart",captured:"onCompositionStartCapture"},dependencies:"blur compositionstart keydown keypress keyup mousedown".split(" ")},compositionUpdate:{phasedRegistrationNames:{bubbled:"onCompositionUpdate",captured:"onCompositionUpdateCapture"},dependencies:"blur compositionupdate keydown keypress keyup mousedown".split(" ")}},xe=!1;function ke(e,t){switch(e){case"keyup":return-1!==he.indexOf(t.keyCode);case"keydown":return 229!==t.keyCode;case"keypress":case"mousedown":case"blur":return!0;default:return!1}}function Ce(e){return"object"==typeof(e=e.detail)&&"data"in e?e.data:null}var we=!1;var Ee={eventTypes:_e,extractEvents:function(e,t,n,o){var r=void 0,i=void 0;if(me)e:{switch(e){case"compositionstart":r=_e.compositionStart;break e;case"compositionend":r=_e.compositionEnd;break e;case"compositionupdate":r=_e.compositionUpdate;break e}r=void 0}else we?ke(e,n)&&(r=_e.compositionEnd):"keydown"===e&&229===n.keyCode&&(r=_e.compositionStart);return r?(ye&&"ko"!==n.locale&&(we||r!==_e.compositionStart?r===_e.compositionEnd&&we&&(i=ie()):(oe="value"in(ne=o)?ne.value:ne.textContent,we=!0)),r=pe.getPooled(r,t,n,o),i?r.data=i:null!==(i=Ce(n))&&(r.data=i),j(r),i=r):i=null,(e=ve?function(e,t){switch(e){case"compositionend":return Ce(t);case"keypress":return 32!==t.which?null:(xe=!0,be);case"textInput":return(e=t.data)===be&&xe?null:e;default:return null}}(e,n):function(e,t){if(we)return"compositionend"===e||!me&&ke(e,t)?(e=ie(),re=oe=ne=null,we=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1

H&COcV;;XtfT8ah8#ZA}%e7*mSPjxngxV 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 z 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 z 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∾5 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%0Dvr3!xKau>-RCFrnya_=7~=7rQwV%39`8U}8(yXB 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 z%0ATKY@;~tG=nGO-UaQP{;_d?7P$596_9Xwwq}Eu) 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 Ts?P3*fWPzlrcnI3OV|G&-#u|; literal 0 HcmV?d00001 diff --git a/src/modules/fancyzones/FancyZonesSettings.png b/src/modules/fancyzones/FancyZonesSettings.png new file mode 100644 index 0000000000000000000000000000000000000000..a8ba7efc2edca188c17dc115c9eb63d304b17f59 GIT binary patch literal 181718 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�pZ)U|Tq1y3O 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

) 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 literal 0 HcmV?d00001 diff --git a/src/modules/fancyzones/README.md b/src/modules/fancyzones/README.md new file mode 100644 index 0000000000..48a9d67e79 --- /dev/null +++ b/src/modules/fancyzones/README.md @@ -0,0 +1,41 @@ +# Fancy Zones +Fancy Zones is a window manager that is designed to make it easy to arrange and snap windows into efficient layouts for your workflow and also to restore these layouts quickly. Fancy Zones allows the user to define a set of window locations for a desktop that are drag targets for windows. When the user drags a window into a zone, the windows is resized and repositioned to fill that zone. + +![Fancy Zones](FancyZones.png) + +To get started with Fancy Zones, you need to enable the utility in Power Toys settings and then invoke the Fancy Zones setup UI. There is a button in settings to invoke this UI, or you can press Win+~ to launch it. When first launched, the UI presents a list of zone layouts that can be quickly adjusted by how many windows are on the monitor. Choosing a layout shows a preview of that layout on the monitor. Pressing the save and close button sets that layout to the monitor. + +![Fancy Zones Picker](Picker.png) + +The editor also supports creating and saving custom layouts. This functionality is in the “Custom” tab in the editor UI. There are two ways to create custom zone layouts, window layout and table layout. These can also be thought of as additive and subtractive models. The additive window layout model starts with a blank layout and supports adding zones that can be dragged and resized similar to windows. + +![Fancy Zones Window Editor Mode](WindowEditor.png) + +The subtractive table layout model starts with a table layout and allows zones to be created by splitting and merging zones and then resizing the gutter between zones. + +![Fancy Zones Table Editor Mode](TableEditor.png) + +The backlog for the utility can be found [here](https://github.com/Microsoft/PowerToys/tree/master/doc/planning/FancyZonesBacklog.md) and the source code is [here](https://github.com/Microsoft/PowerToys/tree/master/src/modules/fancyzones). + +## Shortcut Keys +| Shortcut | Action | +| ----------- | ----------- | +| Win + ~ | Launches editor | +| Win+Ctrl+ | Cycles through saved layouts with the coresponding number of zones | +| Win+Left/Right Arrow | Move focused window between zones (only if Override snap hotkeys setting is enabled) | + +## Settings +| Setting | Description | +| --------- | ------------- | +| Enable zones while dragging with the shift key | Toggles between auto-snap mode with the shift key disabling snapping during a drag and manual snap mode where pressing the shift key during a drag enables snapping | +| Override Windows Snap hotkeys (win+arrow) to move between zones | Enables or disables Windows Aero Snapping when Fancy Zones is running | +| Keep windows in their zones when the screen resolution changes | After a screen resolution change, if this setting is enabled, Fancy Zones will resize and reposition windows into the zones they were previously in | +| Keep windows in their zones when the active FancyZones layout changes | When this option is on, Fancy Zones will resize and position windows into the new zone layout by maintining the previous zone number location of each window | +| Flash zones when the active FancyZones layout changes | Briefly flash the zone layout when the layout changes or a new virtual desktop is activated | +| Keep windows in their zones when the active virtual desktop changes | If an application is pinned to all virtual desktops, this setting will keep that window in the same zone on all desktops | +| Zone Highlight Color (Default #0078D7) | the color that a zone becomes when it is the active drop target during a window drag +| Use new zone editing experience (Preview) | When enabled, the new editor is enabled. The original editor has better support for multi-mon layouts | +| Move newly created windows to the last known zone | Automatically move a newly opened window into the last zone location that application was in | + +![Fancy Zones Settings UI](FancyZonesSettings.png) + diff --git a/src/modules/fancyzones/TableEditor.png b/src/modules/fancyzones/TableEditor.png new file mode 100644 index 0000000000000000000000000000000000000000..a23debbd7e457d670f06398179405551866d57c9 GIT binary patch literal 295657 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

2bfHN1S!# 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 z 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 literal 0 HcmV?d00001 diff --git a/src/modules/fancyzones/WindowEditor.png b/src/modules/fancyzones/WindowEditor.png new file mode 100644 index 0000000000000000000000000000000000000000..5e96cfc6c5968e5d0168cd06a632da01bd8c3033 GIT binary patch literal 284619 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%0De#6V9Sd(<3-yYQo z5W+>1MQzdN#O#27=T6?-Ue8!vG9@?Z?bRxB>J!$5mz4vzA_8kkqAalKc13OG)VyCl zZ>ozKS&I9X0xL*6R1Be)s;E-bh?Hj@Wg0GbbGoHg>-SKTw)BR)w$WiV$XO|`$U$nc zowyPEn-u7zx|r(POt}IdeZBh%nWfoR3b|`h6O0<7iRN1VmCe!HueA%z!-p-O`my&K zyg~3kLh-&kR5m+F90CK&tFcWyAw!cStU%0hFfV_)o%dSplRsS=7XSR(WHzteW*(^% zOndGjiG`MY5&dZXA?+JQ>XlH((?SB1^s{)E_k6&L(k4Ed^@hr3NlQsp?iV#OY~S5y zy?UFs?q0s;pWC6;Tw?KR1zFy2_MEePOjbVs%l{@Ygg%i+a_kO!UH!kiC$uA zBAK*`Ja%QBtkZN`8KsasoTg)V6~&k+YD*BH_#n-ag5S1UBxOnv{_-XLk&l(hH0&ED z8>6dK=6!5xA2}UnW0BvLCnLekBlc8?)u?_@os+)pp~Fn&-F#KGofsQ5$^E-D@3+h} zXPVIk(p4;;T#)@K747=!A|<1|N-CyGP<6#_)T=Td_%G2U;P(2oKvLZE=+(CNKGn8* zcy15>9<;a1YIv_tNfuuLiF*@o5bnqKwA;!#x=A1~-3&5KWca#eN zT1gy}kcX&_Z}-|KSsbUS0{2<{xhCOHik}vZ;@CAF&Wt?rRZUKTm~2t9korEV)y zc;&78^{bpEViPhnEFO4ao1+Q~?HWYV zGRLAqwpje2$>YrPL$uAj0%y&%vdAFJoNIkCk6f3f?}Ci`iduv3JPSe>4dPo>y30#w z_8foT=Pn>7yW+>BCU^GP%fdwQT-oTIUHxj7K25xyaF?`>dVEV^qTT$-(sZ{hP0*@W z*)pem=WivQ=;vL(R++rrc>3|Ld`WAamzRk%NS(G{{4ro6-4yldwCB*k5&1z+L52rp zpY(y{0*KUefL1}|!yPwi?=MCVwdXs}g-sX#MtV4~jC3z9CM8Vl5aBQ=gl>n2mgN~O z3&#uTtoSR_Z(+r_BNi2jpE_popCs_UayS29&?^TB&7we9oq6%IM34KU zYk!SGc9pPo)pck57gwex=YGZfh2Dcy>2C<2N%H4GLbs3@_h z%TIos({$mwT9gns%>Ac1_}Cn}j~xKCug6EBA%_ZQy>rsW}!e(>n zLXo`Sv--VLgX)?6hN*_FdF%z6L75B`xI})yVKV5MnVGNf;r%vpg8zCV^{SmhL7R3t z>gR8jQeEhfkZv&cxS;7B?)bdg>H#*z(}D2%a8_~Azqw%!dOoMkHDBkoz?bB>c-)>j z1Z~wpQ7?L}B>6nV!WTmhm2GF^X8KuEj)V>xWU)m? z7r?9)?Pka!nIQ-1@R9<=(r_kCrN^e`z0e6eUn`%&d=dfi_=!EZEgv>%Rk~KkQ9bY9_dCfo+pF6J7`rkiLGqdqL1shS zTrjRR!KWvP8m|uB0x=7)ch9HPk|z7vUULa>7A^-)XWAJ%k_*({W{m4BFS~jNHQX?rH7(uqN-yzQM=h9{KiTEk^O(t)N}XB|LN- zNj7+{AxpzKKS0DTOK5_zl=@`iE?P`KLNu*IpmX zaefkRyRy2yAoLyu)74jH9$Qz-qljT17O9;LWjwa&8Th=F6l(hjxKy~vkYjYT`5e@RV_A1c$S=>F-z7W z^-FW5s(oi%7Vtm=4-5UivGiw6c+u6AT>a>+PfTgZ-^_m}pgtl}RIrXMGWkE~e!iyY zTvBSj*&_PITHXE$F~KCGFj+9qC$-R`DA6bkm!JIA(C%>~1E-HEKvSg&L>zYRlQKB| zez<KiIjaU9*;y7wEfXbeIv_2HlG&f@A;~tOYp?s#=OSOEMaUM zv%ab?YE2FPJf4^Nj{j-AB2Gck?=r?0ZgD2j>}SjVsVLMhd#_{rg-Pb6mN(7ziAzJx zuFqrY&*Mfeg& z3BwnY_O9m7k1Z{ngEVj6t_~BNPYcuh)tj^_Vf?@yizRIYYuL(&s;<@jA>Rr8W9MFc zKW6)9R1FrNjdQ2g`)>60Z)(nQ-8|!?tX@sBb{IVTlR6iggxFJU8z_(Q^R_}$zS zaSudAocaSALE-CibMmx{@h)d>oZ`jqtpHWz75^!^(c3{ZpV^BfKqioZcoBjbkP|q2 zXv2AK1P_?_cQwycIQotTKkN+rFavVoC9Jt$pgy0F-CJ1YPKv_8Qc$ zWy&i2jFS5-z+Tr^;7V`u{>B+PP%?ym`rYAaR}s*Ji2e==La||A9&hSO`i*AArp%wA zMWMKz0(9enoY3ONBnHA9f?>4yYMj5Rh5U({ye8nQX;fHWzX8X6(x)Sm zT|m*z6d)><=w`(+=Lx2a7MP!4tKw7CYSz0x@ByJi6k7Ard1eL=svAA8ExOeNGCRD** zo8?)r+u-o`tFVyrBS*wb=uw&61v(S5c+Mf}6LR98RA5<8L{-4?9sYd~&_UeQNWwv0 z+hE-ht>=_=!%6{4tkM7IOZtXo(DBf1m-;1xA%#O&J)h4=-c5%R;vff1H`8~)L>F;X zMCTx-=r*v|wNWMpjg{G%r1pS}J-@R6N_eIH(lQR<2WFolStI$6B6Mb7MZP~pY8(Rg zpDMz8rESq&yoN2A$+W7y4i$&@yuR92Ja|1%5Mc7gEW0ZCuOt3uPGf@Z%!vTbU8Qa# zc^%p%wLY>`Xtt&Y5B4D;5*hdK#!%|N0KOi-uG&V4pr}*rPXq7vL1&EcQrwTRR+pk+ zSI9$l4}Zj`GPTlRu3V#}Iny*Y#$;9(<^L_pgX8X&aMb-(>+INs@VVL)sWnFfyZ1s+ z(mbY+`^7}u>ofs%g+{eqm34hyTcIf9H|k;ml$;K0&`*vz;qKF4j3txbgeH0vNk40s zYP>^^FS{DaT3ZkuQN1X*x=*@Na?Jhf?$TloO)@Z!cgcQ8EqC5K{8fjclI?C8=ohtw z*sI0ZJJgTdpV-YRbegE}Jh3_kI}BB4$o{1_i`x8CM)S@*U#)03Ux>AI(~Yf?@9A)r z@aD`+tppxk@i{hz+Vj-E^{SZ=B~7bl zYGK^^*N)HnpC_*s0mN+CzYC8UO9JVMvK)Mm$gQpGA59UwOJgW=^J;t@>Bp&3%4|2g z>Xz_?7PH1F6q;Z9vpT0xN+ti39T&F45PMtRP#^V!g|YfZaKVRsZBI? zZB(z}=0M(lYnku5@Hm#^^OU;t*ATofSN=(!L6@a4xAC)%n^mdh>Xmx=abExJRI^H2 zX7arh6He9ox5X{9#^j*=j+jJis^?_lBc@*bT*)UBT2vV};v^NJqw;4oZc%kUBkgH; zM1uJBn_E4!cT@G*)QvPl1d86iUrfZ!_IWSAC5L=KU-!6aX^PBIHdArD!LjJF}%p_}62VCZ$fwSq6DIXc5eZzo+| zk6us@E?`SeCW(=BmH{IbiHW4Ik*_+q!RNabEHDOU#eVdW!7SQVbxr4&c6W3b^XGJz zjQ62H%+Fy&rJei;TTA{FvUU5~HpGZ=M7tIM(-T0r%}C|lSF{2_2ehDruz$AlP=HXx z0OSDvAJ1-V?s5V&grP_~Py!q%*?e-bhuqj@hp4wV#S#v)MJFk{-D4L9+_Ab6=(5@A z<4-O&OF^=qLlTVcUrz{}^5+7xO5>h&nx(k^OkCYhbssC+I#U$@k?~*S-ymLY5DrY` zjG0%U1~4G-O83p`83!KM4pWYXk3D4^^z9T{-&RS+ z<*rvovfzOvEiPkp6?$riOwyumkk$gZ8EnR8GFdE|IimI4FFm?psh$c6DgF=eQ=5&U zV*a@K%k()!{3KJm$#3c+8u6`S)#bi#jT0{2D&TAhvk*unBKI7*KL}eqnyXb@lz|qc ze;jpzcY+3yNopNC{VdkE4+9H)@eG2W*jALO|`>2y^H^{j?`V8wMO#mwA}c) zQnsB{K2H|K{j%&WqQZoDZncnrA@=aoA)(vD9I;b?0&&kMb}H0Ndn)W(tT9Z5dpq22 zgo~+*wGuPCHhmSQstEUMtka@8sk~CMLYs9Ti-4YHTo%ZlUuJXEoyNxa(J0YC>qr+U z{;GqEha;D|MH@DPx#n?21`q){bHV1{R~heo*6)Q;@BeXyoFvjnsks8Yxm)VA_mm|9 zzks FU>o6ibtXEGCN>{8Q!Cq-!7~2j82ewLZ;+vDak&?3R+1`cQTB#k-kK|M=Oe zD0!qQbQ}9zv181dG>>LU03pLx=G`RiR=AaS~&!E-hVDZTfvU>~&3+)-?;4r#ze*JnU4sCW2? z3-|(MAR_>UM2aLJiMw5peoC7d->L5%{k1s&r8kczkbt9WvU`$(7Pl;2Nk@Mp&T#1x z`i)Wh#5|GgfWul^wA7Bd;sE2b-7?JXDoECMCNFK|yGce+-??>dFfeaa3Q*%5;I0&Z z{E_UuIF+Mj1@Bczg{72a)#4o6s^@FHCQkYgxLQE()3t>>+lZi>v}`1zOyGo>%O>!L z>qT@M;-+3RGIY9WwYc!*?2Ov8P66?T0GW!#V7{z?3{ zuW}%hnr#In0g)}0v~RctEhISn8OqKJW%$cKe!V5%%b`SS+^gCb4u!m7JQfaedNYr_ zu#mSuEk5bXhE57pF9y5=k!4MR*Y>iHPKSa4F#e>k##6}RS!y*1^MdEgU@{%(^s zYHv@q{CE1cC`=AzP2{~s^=}!msonfx@X~e0M?ObIO9aj-pI9YG{%*+dK?+O1=eMlcN|<#y6GUZ(~hk#zo&wlc!7Q~KUUWrlBD@ECu&8;L}ak<1&g_r z^P@&JO|f5J(>XXx5CN94;p>ltZ1E58H)TI)@c+|Mf8&QklARER3Emg#?(&8-m2e4} zPC$mtte8mioRCdFEsm>%#zL3-99^*~J&^h3e!1O)Rp9vn(BUGIL5Dq()3~2pO=mx+ z8i>b9)^+9=<7f=>xQ}Du{RiYc4l|>80cjT??sTEuN%&xGXTHu&>MVGvfSqAnqInfx zc<%CYm-4>*m}ITmlp`2FGu5>3&DDdx?_9YAvHrC4 zMg0254m(z3!P(Ax)p%E*x+ia<;0T6qlP#PO94e8fMS+00)+U#DKH33CVJkre$Qvl zr5ZB?CINj`qu${7!)&9E*KA1;XdKUil5?C!BG2LcA%B*|qCutms9brNPZa>FcT00u zhTTK~O$Bq@ihXbFGbHw_mgEny%y*So|qmlWAVDC84LN^=< zT3a{+C~$RY{bq6i=g}Pill33|Q}fSb1}h#XeUU>2y-z-`=G|gE z;#*^zi;1i6>R&l}rTNCxn!^>jd1+5Pa&RV0UygxLb1hWfQijZ#bsEuK5k+TMsBOHI zQ5IDbgxf&}h4kELOX4EhPKc8n_lil5n;X^wfgR#Q^Y4~#f@M*O0^bPTOxE~rCQE$j zR0!b}n{L2#2@*Oj0X*#n{8g(@p$dnA31?HW0u@~o0QJ4+8Q-`JPpChH>(&5IgVSu$ zSx+}kO@IDIjuGhkq@$YdBg^ixpM{3MC$%GTIYbds_8rg}$EU%zfkK=uV!4Xf9`r1rJF&R zhgf0KC{em++wx}+S}~v%yDipa4R)KK40-Qh)1=+v>XMpWE)eS5mVzRBL|)q#nyJCf zA_8#u?@Eif$?7b>mFT3~&vApkP4|I%9pFWL@q5*XE)4|l-VbCkrm%y`?Wqje;h$IT zbXcjVPK-jh#dcyWwc+A}LtE&9To!Sk8G49af=D)OZCD5UAk9wRBLJtm8Pf4=58Q9h z4Ba%v6zXUpJ$3rGf8F8Eel5H28z~f>pd9+MrbOLmI{?Brfz)pb)muOG?Qq!%If7*( zy!P0Hb%J+HN-TXbaEUBT(g4zjxQbL-cc059)a=~`6Q2t^k5k&zky*GZMDyd=a&?DV zU12V@3hmksr50SOyTI=x8fl@5Uay=UHtd0;2`XovSTpH z(zB^{tP-iEvL?I-g6yv!mb6k>x{rz*AcF9w!`TC4Z*xHE(+U+<0@ zJKVJ4=#Nab1feH07E)(-I%{4qXy$pEA(ILy*?KF%2-|@nopfJ9$5g+-%gT)vYS`e* zpoQdoIg(oo!a^LEO>k1GDzrvaxdM`I2mF*V8sdb(Q z=2-nKBTr-JO247->SVH6=z-yfVK)~Wk|)1y&n_*X9^6^Y^LMv|vGzsm54PaePELdV z+(kv9ig_0b16hOSTn_2J%N>*X{VzU?&->RQ@$U^dCGG$~S1~;RYtP6Oy5c?I@JM}32cIPhQO zX(WxPmuRILEs}TW8+YGl$coYlbtHcZnJW0HrYKovu{phR+oSG?`!rSFs8L9C|(?3xhS6ozJTwZ#;wK0KL9A5RkGj4HsEL??1 zPTYAZ;vra@^^2RSKmVT1@A~m9;Y!#{kg?%wZu|SxPt&yR4ELRnD%FR! zifh*s6##tAeZacZ&C0eVucIEi9mR#X;E@dJkh3EGX+s{T{2n8^cU>I{T>Wa^xL$(1 zm_*MI_Xn*9p+f~LT#pd1HDc(GE!yvYms+H>X=D~>s4-3v{53cmo=2hb?^2uf=o4SZ zYz#qn?F1Ate_)sF{Mr*Wh!fU?i5X(^8!H*LSk3;s({TaM`D!0JMbocNe79N+tF0j` z_)#s{-MQp24JD*!ACm>JsEa9$$Xvd@DJU11D%5#5<#9Xpn)oc4fuD=Mkj^hIRi{~P zo+)Zt!ZbhcF&~ZZrSjMlver@w1>^tS`E&bFb*c4?Gmc>nnmU1$yGu*gR6b%f>KpjK zu<9*+p8m4R_rcq_jdsrW^qWkn_h=;iH^aaYFovYv>lTin)Ma}3 zcyWDNdsMb5j^D3TetTwZ0aVEAIX{-v7g#8(gL@(?wefJvZwp)Zn$6Gmp zRO~`xsMfdpz7pgg0Nk>Cy$@FO;kx27XQooq8+dvZ?^5gsKgyVdpUfZI+Jd~8!Z|#| zL~_>xzp}NA%{03I*^CHf)eake$jNQS%lu4B7MXuX;lVROlgQ6PWfZ_IU2EfqS|RLz z$8R7l>K9y08V);St*1bfgq5cnA?V|w5E5`1oN!KSXb-?1_~oIksi;pKP{QnmT=rkTC&ZxF z7gPr#)t@2^Oqe{HZ|AUCZBM+eWWh5diJg8Txpr$QNsg2vjf1l$hzG0%}00Ha~U#{p|LBe zaQ6ptYR?T6g*eF;{l<+}ZTxH$>G)_9aM zq1eFsXhb_33+DpA0*diD*Q3=%uSq+k-^MDkhJ`8g-4)3IZ&pFlB2bb~IttVQ6190J z%zMxQlW@ps2P!C_&lB7zbeciwQ+swK5^F*aud_WG&PCUpe&(ZfZ^xsafrGE|^~)co zV4A$}rbVmoIzoy|)k{MoQo8MCOp2|lK}{l^@{}5~vTb*g;bSW%VwRpA+vc2$Uib?h z2x6noI-}z3<4p-GkM87mAyR>R$6u>0jm#Q^064LDGu&H8zql4HPu~RTK-tHH-~4xxIN)U%XezLjyNo8?X)-Lsb7{l;jfztSkaY+rONTXddmUuww z!0)%B7z*(0_ke6}9}CjW#PuodH(&{1&P{-3xzO)3eMY}vJ_tGV< z!@tQnB8|-Rc_o3bifn^LP20mGWOJVD{lvO{wb)~?YzIDnwx?lgy-)U`Vj_1p0(yG2 zss9xwwjvw?Z=n(%DzKuEAmR;qUA2+iSFE)_zVOtryRVCEO!95DZh7i(rTWTu*_G+# z|EU3g%6M=64;&0;B=4NQyW|zuZk$#^q4oUFV>6CM(~mlT>@WSv$+Lo7k4Y}oViCM< zT9fn9>QY^ItEI6&ExWc^iy)`iUvf(=M4G(nnzhNj#z$W3Js%OM+noRMU-Q`c#lQ$& z?HH}EZyOC?jJ$gtoo}dA$iEh9qd&{fE|;9gcthKk+ONiApvrB^+47aeLV^8edQCv|qe==DGRYyT~fuD=nC2Zm4k z)ds7EcR4U7_OV{+V|<#<6~p)*$TNzXkUzImRzW~R->>wF7cV4^-X`ql!bADe^7;OU z03N^iA5LLBruddrVKL%!*19lHigZ6VDW;C8Ffz8F7HV*^TWkoQO%sHsP&%Ha$KnA2 zUYMl$KH*Vb#ryA5I$F+_z*M;z33Sb|c)dm0YRP@!CYRG==)8L;2I;lugGTIB1Js~3 z0YAEcc(CdZX|RD+rvWXDV1XoW?RF{SlEd;hSvgiW3C4~Q94+ArT<8DH0ER+ND-IQ2 z)*j`&XIdl zB9cGKQp;H?*x~=m{{b=UG>Xi`;wOWJLnKS?25K#^lVO|)K0VaRxyD03<3xND z5DDJ8Ypj$L|L+6QsV_QWyyK|*Exa;ZJ+FBAf+0`kD<{W#UE#Qg4#i{7RsLH(Kq|mt zD}-~T2|efTEDD*_RZL;_MDmjfc=k&pQVS5gcG*t?ehx~{${6$c`OK*QHM_$T!0Mj> zpzckx@>@JJ&COo!^jRe%6N(HYtRvVgF^Si?`LrTsA z_YoC77<9?p#lcCsKrPWs!%{AIvf-tI`N|j*uOW6)539;hSPvnN}hEai!hYoU3`lq{J$)=fWuVV^X9j=+R2#EwlpdV7JKlIBU8z z^-k#uA4R&DG(Q>ixSx|&=bJLSBy6G$W{mb9JObl;=fesRE4qk#SP^6zY1OO^orxQB z%nX_{l{b<5VIAF(Ft|45Jj35kM?RG|ZQ6bee_2(boQKQTsZ)rn&|ihIch zIuEygCNU~(=D1WZRPhr^Ov?b1Mz}R1L|GtUE28d>s;VlW>PlA*JpHGm7q6Zl#hJ2v z`b1y9BSgNJ-@bAeV%4%VUBoQPw6cXx$Bdv)4G5kH_!a=+e}%^aJ#f>f{izVo4Q*@B zPHn4`AHIa0Gp11M>b9$UluOa*23#*}V=Nc`Xs*hUvy}7Ojm1QQK(4#^m9O2gNzf~X zEugJpE|5DQT(9Xn*PTDVxG+bYqe6V;QHPLtNJqA&hDYjRz{ZN^Dbj0sXWunB0;v7y3^M!P-d|XXwbXGECWZ7`i#UP=aQj1`y)FA5 zw$8I4+jBJ$&Wl??@->mHtmOmufer}9_@;opFh|S4;h*>6nfK*%YLFZYUeDUS7@}of zy<$^Cv38_z&RBK1M=N08D5nB|Knra%+7EBuVUDcR{>S74m|u~+dqJjxQzYLa@zheZ zCh6!6lwvv-R;)fZOdLY}Ss0rPYUR-Yz2*x(`+w+q%ebh&uI+m$>6C6zq)VhF6i@`E zq@+twx*G&bkY6>6 zgT$}rw0GkqmfZJ>#o-5ZpkYW){YjA^QlugGA5o3!Em6}FH`pO&h@E%;Oit`_E0KJ- zMknza4YG>%DErI_hfxYp$rJFHA$z~~on)AycQVq3r0!JfMQcvfV-UT6Mr&16VqDSp zQIhc&5MmVDwhQDSH52;Q=vZR%0^*&pPQ0KxCA8?(T7PN{x3^1(22eWJD7#!ff@0~u zY?36~;MZK}>@py*by-UO{&`pK_S1hp&w*8X7&bP|DX?R1ES|vO`&_rDA{~HnM?C<22BoOadfe z*5+=@NF+GqY}LFACaToC zq5S(AD3E?UolsKLFX#r=qD5DfT1qmIOehgxrjDf^z4yG(^>f0i0I1$a=6#z;k!z68 zmAa+Jcmz`?Ps$&xYTk?d0Ul16d$c?4KD_0A`d#r6<;lpj3&1T=jteYLv6knd@=*;h z**BViOPKcE5EMO@2~uVXd_-Vb&#(P3YfsHzK%MhcsN;TUpedyQv$kgj|-x*ti;7j75z;8Fa`a$-c&b>&v7^S9m=6{Oy z=!)4M*bmdf-{J=@D@R(JV*;1wW#X%L?l)_I@hFk9vyzhJXQo$TBr;5mX^W5DyG z@wK%bhM5oYbS4i4PasJXKE99FP1r#<{vq#;p@~O0Y`p?pvfUvYSr$p5&D|52CIu~I zj-x6OP^j-|vi8XW-_NPCu|_uZ(~6B6aJ!7Z*?Udr^(^b{0dIj(K=@+`X9~fGiowhZ z%JL|_QA3TSbqdjvZ)v9ijrz+DKq`Hxf4`yc`DmbQuzKDb?t`KLhr$$uFD3xFghA3> zLksm^XP+LmS4%QQvoM}hZ{?cvdZ%A)-^E1sBr1L)1)km04Q@2itimPCFp>h+nnDRg z?3{;RFy6R`q7a1m?x9I%F53qmCZ!?$-d1@bStjeIErYk;!^+XCgtk!kC9PqzaYYb# z?Wv}KG@WElTY7Dmx9>>YO>o9pI&8&2ZY3)85c3u&EvXkbq9vXOin%rww^ljg6iUHKh%b=Hg^Y` ztK2JWAhY`;Rl|2f^=95cU07o<1Gi+l6`fF<#MVisj;kV6BbL>h7OlQDIj68%%xGH? z(3_?0m)QaWd%EVWRj`oj^}9HTme7Qk4vI;;Mv)eu*=%BkY4P1MEU4ygYHa81YdGV; z4F5OIcH;NBDq@v-#6gnQ9+#$|<$Bd)JF;PqIlZmBzPH1!SAc0nOY@711&dgQ)dI#` z9pSs^Z<`;k#;#o3eb3UsV;_>z9OpGVyM`H+IjDlK^L9FS{x$JZJBo66c_+Is^)3oD z0PNGz9j!|w5HXx|KE?;SZ-9tl3aB-3gRlD`0MyUP6Z&1{WZT8n)%E&x1L*G8ZFD_p z55NZM4a$mOVHWF-61~cCP6HT265luC#@}V0U@{&OI*Wwot=0l0kKfYkQiPd%8dXe$O`w6}>;X{86E^IuyU?@-cX5e_FprW~Idzr?J<}TLajbYFy zeel`95%{#;p~d!AbA7;$E-d8CdXuLiY$eauIYuBfz7__xJyYci|-stM7^g9*oUv?27~V4 z=ZZGhUB=#}OK$Sbwr%A{I%T^_AIZE9^D4OG#lOuz|Gd-IwX)l-$jHOW*dHIfm-c7w zVoxeJWINQ`9MLn^E^`=n=qZe(7`a$(GVsv#UnzlYo5>YGSSObcwCb)m9R{LCM# za@iZ}$~ccs>rJ#OuD(2lsMuNTLg)n!L7iJ3FQiCxXFKz3q!ZDm`$2ToO{i=;M|$z~ z#JEZvDp2((l+f0cc0U|7^StjLQg@gVk*Vcy2y)Jsg4=NR5!O*MCF;Re13<=E92j>K zih}m)*_%R?(lTdRO&O6+dn`701}|-vnC3z$PSGyQiZgv5&Dw0X@s(__**$ zk}QukxGiGBvJtooP4Wsk6ih5*F^O_}kWB}7Ggdjb33{KT8iGjx(Lk0-Qz=X5H-R@A zcfa_n9`X30?=H%otjVlU z1qomj3;6e~nrD`7UXDOi{LlM=*rCa4RNDCRD_T z^4|w4No%*Nb+!&^(41!3dmDK|qX3o|ZYI@L85TGGrdnm@AWfl8RxBKndGeMf(Enqs zRI7oPVC0e#mg&i2m0|XN;u@rp{}`yze3CN7I}LsETip8}hhsV+M$~<2b$_1=SiU zn_ui2M~dPBoY2ob?-NbP(OLZodGZPO;vM(xc;9-9cPb=0a*&X6f5O^fEcdfAVC646 zGAxX@s4Lj%kHwGj-nZ+aQnc|j3^sZh;^tiWr_UKui)1T~(h=nvO>M+#J?Oip4A}At zZ>1(x6b16^Q)l6u6G#%aJ_TL`Kz;e$fZ2lq^VSlm#5MX5sgy3|R$Egu&|9&kxekJz ziLvC7<^=`9BCEPd^?Sb&k(qIt`C~$oGjG(dbR_h#@});!-t_2Hx1cK+KutM}u%lzJ zb}y*~Y7Lem0+-7I@vxOzU92D|$JuWhK~)s;YVe;XqLl~6AhYul{OF#`o9w(6z2u?% zP`ef>STiOwwGSoBG(s#U*B44PI<1Axdu$4+YWTiwfCp&=5stvZ<@g9ld{#$X_zm9U z%KKLG8c9ZLRu_ZF=TP!=-eojCx>d(L)HzOQDDj%KDRJMhifdZ!#@4If5F{g2kboOY zB;A+m>s~9iBwffEwc0?uH@G2Jx!So+mauosl~IDJh%r$vFdDR>#BFl0AKXf;V3|tfD;gtcWjj~5dG#1O5Kp3|XCh-UqWKOJA+m#cB(Zsdus>g0 za+z3zdaSQO9oE;Dzze@z5Tm3^&6_~Kz+qkP{kkwS^n9RWTI?X5L=k>-{1IR0r1G1( z_`!0FBBHw>m#+L~XG!NQ+@`qci|I>HwVK3lNz^7@R228RmuQW6lWP7_2DY(UF6T__ zbQMcuH+-$vd+Bj^FnDa^`n=SUxZRhdKK9GB`d#^t>Yk_JDeaQ6^P};0`AT?+I6Twe)w;`^=0NMFIc|rp&m!u-+)swBF;AeQ zs6*~oib#gxmyHtFs|%QGD(h>V|2+cP9tqOE)RQ^06EYks2yuH!`0pzl{2!VVe#m_XQnYjvj@bmNr|U zCC4!|Bvxx$bI_0t(|oXHj{O;urNE|J_*<{`JV-+Cs)LX8?l}B9_Z!`y#6i$mv&+ps zzW2HZ#2fCS2fyjigV(nT*a)o-il&`rC=SdSx9mNl1sz?^u2|I|+LD}8n>*%Lk&ZnO z2Y(!X>ven>j$9K~-uKmPp)N2GV8wQoz$;eGEGcyp9{4#vwZam5R{ngY~;pDW`1Zif6~M%4Cw z_IX5hJdE>5V5W#P`{i&keg4ldvXrLVu;2UeM2Df5t8*DSPqwU|db-Z;_62c?d1ivV=~!|=!_u=}{C zp?G*zSWrZ*(WKz-fq7UktAw}qY(H6O7j z5;jjG&mOntrkrz*-cJ_(KjZ}U&-JV|@Fju!^43!@6=@n}8F)7G8M2$h?{))ucKfBJ ziENpzM$gt<)}keQS{YpZ7Oh8bfdev7qBEr9m%qb8=F)C($7ji(?Rg^$(GgWtC!-jg ztoSj+{vtln^`WLTwk7+eQEI=kOM*$Tq9^{!zHy=anfgTGScV2gdipd^wD({W3&q&M zE|T)M%Wu{c~8{kBBQLC z&Nshaat36Q(L9VF-LUhWa$}2%-pKLj`>by>uTS!yZ?IC_@1sCuhu1asno& zay%Jg%c&`Ycj>b=36xZ8Z3_tA0r=7mlhHiuQ#QP^0DF=NLiQXPRs!UgA7n_Hwn6sz zw-Qg}0iW8D+kS>d7Cq#Jsw_Fe1ODfa%2W=g?}tmCv&Fq|KbSMs6j?5!*~Fn~YuBZ4 z3Ib*+StjlaN-1*AALI%UmOHN6Q>$=b2(eb|pukHIn}!O8jsF|2J-++<;TTl4f~qGa zo0-_5az>%l?);PTo$9ehtp7Eh_>y9r=`cKc?_~}f?O*9U!23Q`la3xTBmgM~BdFCt zUM9x@bB)A$Q%r;uyZ6af@KanUWdGj zmWgzTL}YOtA@X*<*Ck>xL_)XJQGj!@^w=4y0vwa2Ipo#Dj)J>D3xXAEa94_Kj-%wv zX+}mDa1d$MerfXy*zz`Sk=L(;hi^5VBnmdVK<8bOPVRtS@EcAtZ}>dBLr}a$m0Zvs zkrfCbsk;9s;}Zz2DUj`_z?+w=gpuTw5r{p?*6VVN*EebK*|h6Lnd6K*%w>G=`V%{^ zMFB4jwOnGEXN=BiUNEoK$7w=lhdR+AZj$>H9G~hP_lj#$9rw$AM0&12(UkUkHw)P1 za>le3NiEN;MKD8|YjNuOIkXx(duoC!w=~9e1H3LXC`sr6nDg=LX9^3#V{Rlx5wWY< z^VdqVu{ZG{1M;ECvMV8mO#7d$kLt3dRC#|wLD~0_YA?*)4^tCOfB=NkYS-ad*x*kmULhd2%$HmF{Q}Sw^cOXm!du@(tn=JAP|5L!UhWmaFXxZG(cLXu=$$2+ zo%fg~SzRVtRbMX$iB~RdNl3WadlD5e+V^h~M~Bi~TUotN7QBxC>I7RL!+WZkA-`Ab z4b-C)Q6*QuKMCqIryyd9dThMwqr%&2?oKlmTE$ph%#r`D>S0SA#ly-PO58_nOdF4@ zzam`6>xMl>+Z?cS!AJUF=TV9K-Ey)!>&>wHvjQ^s)+G1MVhs1)#%J!@i}o$>>UP## zFV(OYlqT+O%?9GikYlYy*^=L&6=R$dO-sHD=vJD~8d+MrmjV3t_pV-|ytGm8U1VqU}Jsn?TX)k2QYx9+Y}|v64$$x|)w(;=22aJs9-S}p{bWcjCgkjxb=%;o;(v#k>M zQ{S^^o`#2-FHaf-Exp^Vj9=~47I~eiaps0IK$^$oJI6=_I-A`9&C3dKvLmLr-`;M= zt$lV|fT!IS1N8%OxYr7{{&u!stofVj&w4aM?w-p-{hcB~@{qjf-9|B1#qmEIXuooG zs`n(o`i&R5OW+<4@ZCMWBBC?3|MIT=I|`uWxlHJU-OxVs{D&u-q{8}r?jZj@rShLLNVj)4wjE4VKn=amY zc0It8P-`+6waT$jy+rH)`wV|zt9jK&P#+#6IQViWYj1e==(5cAd9hEJWyRwJdRg#J z!ca9sad2@gaa(3iKP08W;J#gky?nJXW73SX-Vjjzd6zB+KB)88h4&(xoEHiCrm01Y zCo#8DBpiGDxol^HsVum+yk>Y#%XWS?3dIVv~ovfjb?xpe3;O&m3 z&&&%em2or?bBIc4ib4B0-7Sb*W&zQHWI3$&9BGTVo9z%Wzjyq}M*Oge^Nn3J`Ag$& zIOZ~9oUY|C50eO<^{@4nD7t;6x619Tq)|pHvMQEHu92}yHW8m~ z?=GypJ~zUe?pppc8Cvk|g3V&{0^#Ta zM1B9hb+JiIzXq-C1`uWG)F3eNBAj+KF$3KLcw09(83oJP!g0?&`r{I}WjV!Eh9Y|l z-qLZkPwERnSkLnP0fV#`q&xN#^$RGi0ao%9vmX+8e-s#dqT%?@zGL+5s50O;{e<)Kv&dwzJjj{3w{?iUGsSU}e%zktCIYhmxvO%%Sui03nA8^< zai8W?q`Q0yOrLh3Z{81^!#?`gfEV*?+PaMsa%dvPZrRn+nPot4StIxZ>;4`$U!MG1 zTBv!zIP%P#y-6C0*-pt20pkX}+}WRI<0kmkRk9~TmW#X|e2`=5i#;Fv{5dmqZo~-* z4}mFj&V$f!q(sZ2v|3HB6H8Z%u??jH;V@fglnH$T8uvforXV?*hqr{HVA)$mVZX;9 zSnG;mQa4ReS+R>SqDQ8ne>U#J`52G(2cpsT%)0-Z9WY$ zyFWglYqaeb)Ia`71HOVZ=!<m;XmE`bB=1$!P6q zV(-J!TG`D#Hr&mA_iKc3SQxgzSv_NPnS3>iZ+GanmCq9vI(Z58upzqMtsR}_(j}FM z7u}gzyNl-ftso}BKEU+sA`f)=2g@^Lt7G|H53NOt!*J5gI*{-;=6?(kH644Z11JYj z_Y^^Vx>f6+gp&DOp!HXGkpz%@MqUc;gj$`G00GiJ1nliq)?REh+lKr1OJ8$SXk*Y( z#n{DyVPHCt1`UBk$ezpbD=+pX4<^!dS)nI&B^fJM>JrDiAepKwxM_XvpU*0m)1j{P_A&KL%X&0YOWd-(!-?IKwjkGhG164x3KZ>PTA)DZf+7LwZSiGAyPetb_AKB3i^GwJLj@!cTrL^FtZW3^B721irT+Q z%xrD;yTGs28lb`!ar(Ly{g9Hyi=jg2>#mpvsOKzK1C5gkm0L$w!`C>H$>H>rK&ZU)+GlrJ+MBY0waKb$;6V zq}U=2tyv8ADTsT~Xl%}m4!l+o+441P&DwpcOweyIvhHMON$)lq0&zXnh?BT3lv0cc zYU{w^PPY4?Fvgj_kf2*aG|66ceu@W5!2-ID?Kd(fAvZ%K9cLLfVviJBy|x>A-?m?X zT!9Yu23K0XpHQa_We#CB$ytB5js?r8dl%Q(@4ajS?;(qjh}j5rZ{}N9p67V&It+gx@>1FU9^a|2H{dSus`ug%nn5{mQ z1^C>t5ydN@B0f@ivJ#Q6k#*>Ywv$MrI=Icv@JW5|wHRh^6L|D6fcEniGwl%8URb5y zR;J0&SoZxb)uQLu%j7C%$Dvb(T&lsX?bYqK_fY!=_{_HE_xne@6;rgl4udWwnhrw= zZ@Fh+V492XKoMZTqU8=waZBSgM3|fE&^0-I!-w_I%zu`7X+Wi5DB=2T>xQq~VWBc} z5I5jWKnFtME*Xql<#*c7uR}DvZKPd1(!TVy0GmkOZCi!rB96lg zOH#Wu)&c<7O$E|pPh{32a!M{7Zo1u4%WEa0x?0O_k_+~96ke~FOT}sDgJ4mcfYH?c z{;vjW=U z3|&=q0u0C~BP3OC3gmG**xM*S#)1pc%|X4OnzL#};*m#dgSve25wWvR1i4gylr45~ zHZ`J1<|20%#eyo#Ly6iX8+om={pV#n&$%vJL_W>@DUXnHC=OZ7gX`zL^W_#{EdKq) z$NdBGTvR zuCzOPQoD@}Wnr~D8c^4v9$no^bR@I?V6$zbAf?`=0f~%D?LH?#G9^@UBK|uJlOI7d zTi`X4f6f=J4_(9+6U8<@PT~HK4FXOn)A?z%^~HnR;7gu%8Lp5^upa#z+1C+ON2_!7 ziLD?ziJAO-U5)2t`w(ci zX%_3!7uU=hP*{NL+hDTiZHpebpFxJaykB7}_mN@o9P$ZvEeI(kbvm^LM~Q^_Z&pG9 z@TMZSW$O==T;Ge-&us+Y9JA0ey)EI8n?&V3YHCDi4EFA{ z%W)rpMp71wVtsCIK4&TM`2}^}o2_k%3+jymiM|Eu!vXuR3COx%TtYbLH9h+Bp+~(Q zP;rYkdsMqaC-Su|%ety6%=Tnv&C{ zK;A6W*TF!aUqx2L2YjE0_vjBj-L!yWwK?=cKpP0YqE|JIYnz@=u!kc-o5Fg(7h!$S zguQ9iR`N1-To#p1SoE6WP;RZ8k5pT|q?@dV%97ZcKmo(<=j^{%2`f^#eg_kXD*sI+M>~-ffjMP&MzAW3T5xT7BjA-)4rn^z7w>vYo zp1IqmN_9KOO`^dp0e8DVJaz@u5tDIo5VXocE7x9Y4Pk;x8-@g)(}Y z7GDV{Yws{&)zSr^6GP~AD)p$RIkcM&c*AHf1L_`MCVg~mcPRmHp48wjqcJb&)CH8_ z>RX7zSAUK>pDzxooe>#$qMmD4;)-5Jf7}HyE;B%WcD?QbK<^_STvbl{jJ{K?;23Bz;Bx&F6+@V@u5pE@t#X4YQGd?Mjp!z) zK8@G#bXaCRS~LJEsw`cOq;ZaqFQysI4r42s@W<|f)~T)#kAdr(OW?U4aR9j)qXPWd zJNAa4uxcb7+mT{bbmCC0f#@YeWopT@4V{51Yq+~?3T3DG?ejgKOeB(O*Do6(rva{ z3eAPBwhaGh+~pp$e!AVy@fs-8GjK&?M-qBue~3PMsmbLsib0?eY*BpXo#_5?S)`}r z$>Ndw+lOYY)U<0&G#3?G;I^p9*Q97mc4pmMUptf8bSV17yWV}a-|`-EXs5m9dLi!C1=7iblm+diRNpeKyftI_ccw<2)=$P69lYyOojAN0aY8DCBK1%MWro9FVkl_$0p|fQlh+I zLnarq-lyyzxa?{3NB1Pmr{Tb2pGFtnKiYMTF&}p_&%SFI0^P3C-J7uBMVudxM@dFeO@#sJhP@0u&F!Y<8}4T)Pp{fi%us~E^=L#Ze=9`avB$0LcYn{ z-rm8NY((=HBAfU6fWpmu(Id#ln4rtvjkL?lhW&8F0E+O$HrZy)!xoMuj$xa0&ri>s z?tRcBDv1r~)*IcQsu>LZTv>62?JMA_^5l@>7bn(OGVx-^qPI<^2H0vA7XVD%(n2f) zNjx8rIIA?CoF1CQULLtmcik(6)UvCG5?}IT8~000!43RdC`KwjYw0zw;LEdz3u6Lz z_~q%1>!FA1^3GDz;nyJF3q@g*gI~=r&pU^?z1p|pbR9SLtJ6eSWd{~LBZ_!*(TG>8 z*f`=s^*E%Yb@66{G`RJyBOV9Rp4H`m$Kbu(n(>hyYj1tw3F0< z&xM^^_F)*z_Rfw-JvqQF9>7yX!eP|*nrh^CB_md2r$t{V&3Xd4ed^p2xpq1MM2$g_i53*;mflbn@9lPnT6*@TqjIXq_I-59 zbiVJ%4I0Oh4^hs`B|!E`Hb^6W-c$iJ^%X#@TqenuY&S6Jv|KL5YpR40KH6luUNrKn zac1jEGKV|`oyZV$g1}_#k3v;Hj6*)!-Oj#u+XIXp)hwnsK8bryRTefo?V{-?yx4Gf ztMEu)cys?-goxX<#{GTxHwmv5nK(UBGw5lCtNhdH)u>wcDv7l{Om(|QyWzqC%WjI+ z!+v#0A(NUA|7q!ONYtPIh1Nt_u1`-@a0;Mh{;5OQFS4Nb7M^Y;jvrxGcHJp>?s=Zr z(~C0akN^2C?V$a6*-F>*aFv}uhA!C}8gGS^DpVA2dRhr&ERW~cfcE~g_syKIh3GUy zT@jDiJgq2MF}k(d7>`MHPBAcer^0D;K`Jo+ZYU>h#9jV1Beh> zAqyfOM2FoCeFrV(pD_R$6<>BE^drOqKB3UtyJU`EzaOL{7e*9}yY_!&G^QNNetObn ztGG}1_{og9wPC&0`8ekDccXbPH zW+@*nibbU=lYV`3hOAopIM^MPS$SHmvG9joJ41weR4tvfBfm(_Mt0$Zt)y?XiXNve zqm>LYhLq#SqTe<1L2y>SV7rz;%?tO0?Z3qFy7)Kd6pX*a{8rG^ln5nHVbRW+s8hf4 zl1qXv@6Doi7+|T%TGHslT`t?v2kf3 z3)#q{W#rUmoKm3QB}M=Hl?AmjxEBKFQ19 zGHEQ7<(Nnm2z$~1K``aO^%P^zR$6oL!}xaOE^@PS{Kj|qpLae397bW#`}(Dj$IR;Z z4=-EuB8V4|l!@!ZreX012M4p^gsc*a-RqOW)U8hZ(}?7*Y~#p_6|N3*5}qu@ly}J! z5}=`y`lTnp-?^3cZU%XEdH}62YtIb&#sH<8=uxsuJO5+m!}nXip3zV-CqQ0d2HSr{ z>Q^G2)d3ljhY{;5Icnhg!BGwoeZSTUon)Gxv>;O^fEytjF5PP#j-sfkW_6&Fr!PcL zEz{HUtkDPh-YW};#+cA(y1We}!WHEH_@w^opO>t)$h*8W&?BeFjW?{yLBW@s@57@) zH3J*zqRF~M4hZ7axJKeWht_&XX%T$K$c(&yEbQVMBvV@Lqox`%raU`yXf^PN`eq27 zobeC#L#DnrzoXEp@-IBkf1zY>3}oNu2u1M*6LBlKF)(3u6fD<@STHfrDT!fSr=~8C z+2*WAWfi(DNqB9JwTK_yaGs9Z+@)?Q4}00n><90?f-S&AfhLoY3q`agJw&ukG5C+* zwAl3zC&in&P%}@v(euJho{#hRQW8-!Y|?17i|0DJM%jA7IvQw&fP1EVkVcw&*PlqZ zL65~3$uSzrblwmY)&ow7V*?WHaRNW%iAk+I^8P5-wvf zHjJ1KscAkNpyK*8;dNq4T0Q@mOWr%GRf&))`>4QxkLfiB6CFmippzRmGx{T*r@vK_ zd kJenJY$#zcQt+#MP5SZ`!^&WPMuX#DkHmdeiRQZ#$U-pPB~4h% z+-9jfq%qc907Q>xrPAKn9{cKi>C7)vgxVtwCZX@4>#=iO19ckIs7|{MnAW$uL!bTt zy%n$>+5+3PwMis7O)0A5IO)415hY6!Z}kgUPJduKz6>i#jL-ydIh{olUb;bOu5Qfd zxvfEgL2;bg^_Oqcw60>}bj9H9jk#|=C^r(Ze#Yk=;1^_Q?tQ-+&|SlyQ+6p{Z< z;)I{Mt=)08?HddfPZ4jHbqN+%JxFc8A+PqBNbFG9p*#7*5JE5BH%V2rMr~F47R`~6 zy4%3(nPm!j`>(*~rWkWFq&hm7W*bS4*fPewT~jbL4mEe{pBS{PhsCv!$7D@g{Ek7O zz~Ix@(h;-vGxenQ+zE`;jWd4kAq4V$=zg4eTsDSY1|TUTwyu!ySJAbT{b5h0*+}JE zOSem)wKsE4drb9D`B8N!A%3zNFMNAu3;X;IUX|h>!_#IR@QMG+P>}u^<5~9*&n`~^ za~mAD#m`vi=1l>%BZ)mDOqd07Mv2m6PZ3XVWFNpZQ+6v+a3LmYb3zF{yH^zQ3a>NY zZ_T560;-C3Fl0*LSCMP#Oa_}6%VL!|HUUF)`#Z#d41-`6iV8#nJdosJ={PMJ`8@au zj#u&j+fQ%?-4wB<6yR&Y6$E-GeF^LfvQZ+ZU>->VV-xM%MR}H~kQJ%5GsT@_%5Dn* znZT*9hS~Ldgn$uJ_SDBi6m&=!bo=+# zzhT#GnkioagIj!tncoVH60u}x^Y~B5u#4~=ec7~itCUo0a?tG%f^jMUk}2D8UKi=@ zI#JjBhq)Q#ovL8^fxT@W`#L~uWLZ!0-Z&&!KD9@d^&RmJ6^Kp2yaN| z2U+O1whJ>u$QuoM$f$Z*?t>v=JAGxNwpudmXjWWb$Yx1A3}9drBozN~!+DVdz1L+5 zqNt`Z*s8O>tXj%65njsx=#tCh7g@M!oV2FH%HClQ7O|A)8%Q>h2z9|EC#_f@;rJ zIfQx+D=eS_S&1)=$(=kxfmpA`RGQIi7YnFUO9MsL&4e@!Ce(QPA^A$9d z6U<1;b((a)GKh{cKzw{V+Neg>&367RCsq-yeQ{qy(k4`#Z&@O{aW5conDX^3z+nM+ zhk)oZif-Z28SVTc{H&T$4+vwoTz1IA#6QnLnHA^vvctypDz`$G z+e?{sYPT@S4oKEl#Ufe=corVpFQ9o)g9&HOuEOxdy>61-u=k5^@_+etF5sUcP=j1% zLnkZZit7x93g~p3c5gL`#SaSjCF;#Lt{v3%DjW~|GA28uU&KMXYJzPUmx+<}{x{o% z@at$Oe?wZ?)v$!%mf~f~S$2o@jO7^j{ry$aWy^YfUq!<(%&&JKlH`z7SpN$U@C5BB z3fm`*kE*KB~&D2*9Z}_@ci}xSe+qA}Mq+H2LoX5;LH4ZzAd#xYkUmgeZ0gyhE!b?)z zajlAWUMKKsDkVnogWCGvxrdung0Rzex-R7A^&Qssh1r4Ad`{1u{3d3#aAFiiFc@3DhDCIh`i^FI|M9!$S5D z8Tr^1k~gI2kG=`D-HXTp4fn##4QOtpu30`#vIC5&Z!kMEVIi@|$0Yq*`mTrhK(k&k zIzff0o=~G_Dp?^{UhXelnP1zfS&O??bUoFPT1amRE~0p%Nf#e4Rc3Uq&2tGfY6dE^ z>4vX;vZ39XoFv4XD4O_%dq==yfxY_V1CV0qn1ftWu$u+G6DPkEV82>na}Aq35qVCp z{@9h~RkR#o&aZgqT|D{f{XPO(ViVLVB6{#G$-0D&l(+ zf-3(nR3Ojq^4C!9w{9pt-wO9R{Ee(w|yzHI@XgaV0}wq-I6bq29S@qN<6^5(fU+|Z+0Vwmhc z{R?dH-(q}rov^#sCB&JCY1SuBOaY@1|MM+0oJY|rk;_k=^9o%x7}orys8fFKJo>1^ z9USr|w=&r=hBEdwEk>~hfZ|lh=9i=)BDtB5x)2MP335v`{eeXvHGYWL*M=ek!96=^ zMVfy953PaRzeoe17y`x+%GNQd8DECCtl>Qo!os;HD2>yU#)YUlgq21EdeE3KiVE1G zJ$ncl@yoSP1K|R61No_NzfX+D##jbH4{6~)ImSPm?;o;)^xU~iy#^KyBR*JfWG;x_ zh_(n$2Y4&_nIeMn;wa?*PgMr>f3uiqjd1GwX~JIKZ>61Fw!jdLwNKK(H?+^67ClDt z$Q#E@Ld-k9pFYQVJy3cBAFlVLZ5$TAz7 zTyh~|d2G4Z?iQEeDJ?p4%b)w#ay|0XjY`4eE|=8q20QioR|^2j65zL_I&z5mkSma5 zllwUghett>b0M zIUvl0Uhdx0G5>tQVMhQm{KB`fq5I+goR9!tLI@J7`T*?k=Lq>XBkKLm52Qnm|5>+V ziS>@L-w?IWxPAkeNIp2x%@kRNpRbQIoxRb+1 zZOGN+xT&U5RytwqHK(3Hz_PnxtQ11@7p;|-Mdrs<4(BRt%xN_?YA4@RtB{=}9zq+% zR{amc*57QASwbYA@$a?99zzyM5vX1)e7rgdc$6L5MAYApZRUHP=?YYbzk=9;gE z%a<=#yM<td5;x_$24^Sgp1t#R>6 zNKvnWK!GIYmgagxE@jJ)Achfqc~U~PsSuFAA++pGqt0iN zCPK`@TQJ6A%-EYR05Zm-PuA_r5<)pxx^FQxdlBKo$MtY}^GrSYc=eVr35E#n`&2Lg zjSs$9jG1IO`m+Q%)J*FWS3s0jU~oOP9~*fl8LSzKKtk0uSpgPQws4987YAcn-I^$W z-`iF&T(5vtRf{)T$BKSbO|17r(e!Ihd+Boxf-RIf#M&JJt851YNgL=%7z*2uRWjCK z^}-OweTFi`x4&hXe-;Q(mbql$=~i$1R*N{>d(|kZ48hKm#VjOdK=up3-rWvJ58JQo z2X6F#@l(*Kmi1F!-F9(|4#{(niBvzZ(EgS_D%#clsZBlbXx_wX%5{C)eTDb1USHWs zvF;L-GlnkTVIk9&=s45`%l~kn`JMBy6-z&MTYjT=cW_=yspQIwBK+a;h=x(4b93v) zS|goL&iB#kA_bKPdK3P)n!ltMZQL)$dg>g{_F;%`7Z)}Q3M;5?SVl#!$w>({NHL*V z7Txd0MQ46yrbKIUIa=C14g-S7Gqg?X&if<%AuaU}Xf;Nrjt}L%@Xj;_yD1$#l{px_ zQGp+8w}-jV(*fe#?!FS8KD6_8aBbo%%{6gME(Bd<#aS4b1gIt{2L#%5v|#ZDFu zC+&Wm5ynx&m=R@{luH0u?CIs8Uqh*UaX?d3Qs|$X8%Y;v<8^i!Z6&r19cX${T)}Bj z>t^BWsx(F(LZ4dOFxtxZ^`~MiH@2PcmMS|VLo|L%TlW$c_ORP}tjF=xw(44n!_C@a zEu(aLD5V2SsGVmZxwFH1A1{J!<@J#@FdWm+n>( z8mv}$W2#+M(Rl1b%CGS;zOrn z<+~DDNU~V+GfD)M{ZurNgq(DP*{mf~ilA&NjnUQ3$tuxRWn-V7Q}aNGrTI@WH@?a1 z(bOSnN;1+V_J(#gzQ|&{b#$Ww?7~@7`QOCK1La8qeJ;$9Sy!C?dN~4;3hDx4JH5IN zfj6Vis&bMvk!Efh^+LL5a7z8s*6B-HkkmoHRqfiB)znqEiqW#-lZVT%IlY&|XQi9Z zlY1?qLO-E3u2Y(#8PDw)m3V*4mmVZ$f1|7-rE8Um+6CX|`F$vuD`kwct>9eRD{G@x zUCfu=V|Er3l#iztu6E$WqIYO7%m%>g5P>>Bwq6vk&3YXKm3S2PBg17ciRYqxl7 z$?~Pps5oqp;;mMDX@f95tAG1TRhG^}{T5m(eI$WB>d`E+jKT!D6xS{mIrF^257Fta z&3GX=IV}VxMuilLQ^y0r6~{i>s7d~H%Vp11zuS3lL^{cS|B^|k9-mWLTSjZ2JMtD{ zQbks%gU9!~p`64=CHpF`r_^bEe2LJXKp-;WD!!V|Ss?8~1Se;BH}HV>3RFvV8R>c! zWvgI?@;!Ap@a$Ze+u79|`?lI5eKy%DHZzo8neBh3`^;&3;$X0i9Ay=py{(O`=3j@& zIZs6PsNFfo68hLEPn_q4j0#lR<&Cr<&7ArC`#NgMtQuscP+|xpr{hT^y&tuu|0aQJ z2F?G>xX~gXNne6G9i=Q)+MIAevsG3@r#HJ+T5%S3|2jRl#riF4R4GSnq+g;9 zbxYUtSK5YgE8ksr&!?|sx#Y5~gM1^q|ul{Od2&nv-s>MF6P{1cyf>rlJS zoMf}*aKH1Wd$^E)%ywn9@)FKru`tfT$N3Nyt)Xgyi}cBgZ=(QM#K0W8l3==qB>5rd z6m;=)G?IotX{m`;S2fJjlZ&!m{PoY?i|lMRY&hik+c|{}px? zZc%qz-)Cs)8Ug8&E|o?ZfdQnOAtgi*qw4!On04(~zqR-NuFtn!brSPmE7`#z3JHnmqUCMLR_d?BG;<|x2oVO>@TdJf zp1n%z?vHc?p6`9S_Go-B36y0m7d(#fs7GJA$0)vRbhcLY(iqlGE(Th;{!|pG=oM%d zEH>!ci{s+MX&u%~6s{&4-e6g-py#6o9_x$ABg}($#3)9>@aGs0-?yE?dli}7xLMe zI`3JQXT7ZDN9}ArWXX)KZ1RpcVOlpbC#FZ4g~GT$aK#YlR#ojLj=mvo51FgLJraQ7 zSCurqYJnBr%vH_r1O-&+T!7#;p3nnD*>$MMvN}Uj(Lw#sRDfrXq69z3^|#uZ^1P7| zeA$dT**F^?fK}jY4C3aa8#x%`cEa zG;3-=FvopW`I@~E2ed$gRk1QiUocNMMy|`G%fhgSN^is!4Q9!V^rDXTV5f!PWPV*y zWbOTEYRMF|#Wo4DtW<%r1kFZ2_s1XmV)+U0GP*1BQ0)2C>_cTuS7AJlU^9Vnb=^oZ zgL?gR+u)wsoAQv(ET?g zfRaIXl3|JurIx93DXgM`UJIYO799f2N=Q~qUt8js+q>{g(qsbWPFZF5fpAA0GW+Ta zo^M9cr7c{L7p)&nfG`VJKDn;9zzA!6=Hhg{E~$D{S;DRTQ|_vMbZ;m&oxU(U>A`+| zhDiw8{kBsh2s=~Q)TQ3#YCKarFjm1eJG-2|Xac`TCf}A&$aO_K8u+f1Jr>8p8cmvy ze^!IYz!|4nNzvsNp#L*$`}sHo&qq=zJvsYZorONe-mxPqrY8;AX5n(UV~g7KF7uD71#oBllUHo1A3eMRpl95g<$RCN?7aQ4sqqsV?bRrkp4+5dmR3@jaDu3Cy=!EA zGpe`v3b2IQ2v69OUg@5&EA!|k14=MQ;PQa--WxEJ^^1g6P*IbpB(mwF*~pqapIOWW z)@%7J;5@G-bh$0heuq)8V)v&2A|1IK&#IMR=PS6br|{btBTW2y<%GI2rs{h^;zzms z`r6x}<$7A|9tFRcKkMHg;+CIy?&x)yrmm?;-ItQwyvIeP!d-*o0iaZQ0_hNE{vhCz zPeJ&wVBUS(GwQY?!h*{z`qL-5gY*Sf%o~4X!g|YnAM!$Vr+b9L4G2_pzuoOho>KGi z7ltNbcru~zDv5aGuUxC|pQzeNyXqyeqV5k60_I$zW!vq+T@lA9a$s~+ipo&2hXKvQ zfk)WMN4*8l96|J@)4^2Vs!azJm+^anoV(nLeqs!BNHSn1+Fcp^g4m-miXs{PuF%k< zx+wTeskJR5=;7wdt36CKArp1b*U_iN){CV7yox$|Q)h80Cw?n0&Z%C((x-Hs*c$}i zOm>B63g*31rPqs1IeQX250xxzP$&mR&KO$#4!fxLU!@uGG0IOkq(w5!mE0;xZ4DJ= z9^~qEBa^0n{51-F5E0G|RH)7tFt?1tCH+W{4#UM=j25;0PTnu?ZZ0%u({=ZB<=A3B zLu5xS8-Z^0+g#f^+Ryb}_3zXPaZbJKngih{^WelxNqs%2DUL~n(xY9=g&h?LX` ziqZZDO>j3z%7o#jI4b42%o^NxQwuY;IXlQB{wpH0*`1(orS04WXkJ@Tlt7Spl!*hq z%KX)_q^P+%RW^m5lvvi5E7S&Bwp*L0K(LZo%&9F$SZeEU^==0l)Bg0!>4S)^l{%U5 zS}uex8u(%4hIh_m9EJEyQ5lmQ!+toV*5m^^i%>ZcAxg;^x~-CzeI@W z4ie1x;R0MCa!)a;MZ7>Y^(m$HeBB7~;%0m6uMZvw8O8JGb7f5i5%8L(!H=HD033Q{ z1sh(yQXODMyPMk_Ls-iL$UBU%(y7Ghf$vc6^Q~4EBABT; z_;@f^(;WIKez2JKcZ7+{C(dmQ6TrHE#Yj@@Oa9_v<3SOV><`kim*vh%vZ|V~+`XcE z-&NyPDrMEMVgU5IuQl-;N!)AHRnsbhJrcL9qJ#*kCM!hp{0|?DL!NG~)R=gtTdc5n z(Xi)kMjTlgos@g}BG(HoR8upoo;tMSaFHZ#E$uQzjI*SdR|BIv3w)7ZAXi zqYjtr()<*`pBCtiX)mJ7GNAnZukk_W&G4_0K89OtSExH4Q0q1=F!jg|%ZSR9hs0xV zHbW}U;H&bCNUFJMi<;RRpzhxg3Qmb-{$lmlcB5yP3bHQHB-p}QHPMPT}T zoG>J1aDc+%K39Q(J%$K>#WM=@Nc*x1)(Ju)-Q)SGEsV}7I6mMsRGdDG^_R=hh*GPunCUKAzstSL)x*F@+?Wch@W&4{Es77c>z=}d^Bf?% zRZ1{R^fHB&zm%_;!>}_FJx5IVtMYj>(VvvuA|Lk*1ykckn-%m?bthniGK3(Gw^N^0 zW4`5XJoY2xS#b419*Ky6(%`2GvcJB8lzr-C9i_w4J#BG-{J?V9(~rWU<}{aA?kLhL z{O;?|x`^J4d3kgkyL&>Iyp}I^IUmNMd^iGh2a~rs-b%NU&zZagw!%Va_vSm>*&2G8 zZK0zKD)O^}zsId)+x2Tnf>qmNHK#+=s=ab6(tVnQFS!X1Ip~|!yL@->l+9#eYJkg> z+ZeMjI-YAGcztd9t_0iS*MKIT{n829TIjy);Hd&+5kcxcFDaO?Cox`1NPwm^xBGzM zB|+fX0b`=D-gk6rLRx*F(NAz9H3&JZgzI>?INAx?KNqNn-sP^uLb#=a;j8d4uBKI& zd--|$)c0x(N;-F4Vgod8I#r%5u$129v=+x#V1xoWa8l~JudGpLKk)>$A4e~H;|s3{ z8GP!vajPTxH?(~+NQ5=Acv(~ zqu2xQp(Wm({sO*-$xfc^C5t}+vX1pD3(kuxDW z6PP;@{ji%0z!KL-2lM_B{Ox~bT3@j^U*4-xzsxAq*~2wUtyTtO z&J%J|BKjJOg}b|WMlrWGxUVS&PlXNsYoJzNUDE+-)Xt^vf~?@9By*3hnXVzRa-E#2XpNAC*EOn5$D?aT(o+y!1N zaTVT6omWawIw-d&q*Wioy;cdjP)@06-{+rHf#ko&&Z*S2@i#dedQ`90H~ZO&mbEF7 z!a|6vK#adZzOnAHsIVzc$GM4_&JZ|#?lsjrp)eSYcK|qoT=zk9Jew{^Z>V zb|s56Hw|3*QYC~X-K`J64P8=XJh+S`X!82mC(6{mIw^zP!Vj6_h2&!6T`}WSBzb1_ zmUJ=-DOgy|JPkNj<`APf2zM0A;r){I`GDI@@fYO|eMz?c0UdGB`5v3#yE>>}n}pkA z!F}CsK*+`R`hL-D4q!JCvrb37f67roKxt7W60DLsQ^ z!p%pG8=a^#wUX0WX(-HV<-Tix%A&F^ZlgdZ=0SaYu|o7(Fk`2Zl#o<+f!L)U>TH zg>~xyuuIY=lp8vbKHG2kX*HBW@ntQc?adQ$IfP@|*QvI;o0orA4c&uxPG*D5cMO_I ziq39T#-;AvWeax-$0$_fCzM>MzwciZQ_D&#$v%c`ZZkW%$BPyn+FLv|*ZAH3@mHu{ z5e|JNW7jR)Db}wtVfL4YUw=17`RJ6)L4R+~#Evj+?2-3$fpcjDDbIx15*{;g4iU&& z9{ZmD%*|6eeyOvF*$Y`9avYXaS>-|7e#K}NG)q$dN(v!pGQn-rS1m4`ck{xJ30wZ_ zF4yn!D}^OhTPJ|ew)xmzq|en$=QqNQ+Ul`46ZU!U#_iZni?gX}hIH32swBAr+fHr| zJ@U$NaeBvp~6GYEkeEqpMyF~ zgEI%#YozMS`d7rjk8(rmPMIYRcsNbWX-;~nMTsnqmi{25HbHfHM&zCdRm_vl91bG zIZ>UjTFOfX=c<4m3G)|H6~1#T{I4Xru8ajGSS8eJwq9WYs|VsD-uWE^`((9teoK@{A+@(~v!qvn6C4X8UL5!bo8RZ|#`E*c~H z00>-r*J1{F4n>oP)kU5oQW|8F9i(dh#c6(XB~!Fdrr9l2Q<$3f?I{hq@-<->IYiQK z(>OkFK%?dP6MIL;wYnGV=rBh@zLh=l4rm{VMu z9%f(zRqyQ`@`x9TY&Go^SWI?>B2X+Oyi-9u#nh#{K%i!kq}JO=9&}~uqla;cTSkD^ z&Yr`yMO#o&yH|RBZYGF{TDd0O-wAAQXPtmj+>c0xT&nK$6D7J=Xq9EA*;yMSu+ z3nsp1F>7#i&itU3{N+KOZsO#Nz$&f9d}YP!%%rR0WoQ=nZCKh~OeF#255_ubR;5Fo zXV~4|cu=BE#YFh>Z;&G5(A>RSoFU{RR$fW4MgNuD9YbSd80B;2k9hw#&}H*~?4UI` zTgR5nLLIy7@zQN>|BC|>+A-8h7@<5i9yJ`%va#qV7sFO#K~JV_SAAc-gnGt=mR3>! zK?6$Bi=Lu-HRSYyCzOC{*YzA1z(R5ckD5bxHki*04P zk(qedB-G6CKhWBL@QSU?H@VgWOD2yfWDjfDvxlG3fvB$w$8_s{8EnPKP+4Fe2Y?d*)8< zt6{Aw1mexQ_+rqD@2P}@G|)9q+w9-XUi#e0R2$1b3qR`P$lI=t4>y6xS5aHVkyE*e z9nZ6}S;884R2;Bcne;^X0K(lC5IP4C(cWy0$c@aLvhQt0Fug*N{!c zSOG@MRGnV%)}=6;xyVndbrH;#M#B#`tVNmt7p)8x+zCAVJ&Q9dOS?%5IsONE!oZG& zEQ?oMF$PaS#!P8?Jk9cGYIj*$vk8Q*7JYS<%q94r<}XMSxL^12=VUIeb8SfmIR)}A zW(h$OrOoY&q`YS5R8bYPQ- z<#riSOKp(F%(&xGEGUnQbViLivgMpLrs$iKz*uP?k)uO2+{M#p&#!|6@MI8vD(Ei^ zxHoBzx}bR%(OmOhMBEU{=u!KC_15LMF{b)OLc6DjZ=JAK0YG7>?z8+-VPM1p4VlfP z)7bZjq%Tk2@lsD0$q1P2yO0TAGV5mUESWkoQ{UHmbK$-fx^(Bjmy z?bV-p{Z=zAOBpnr1rF<^uNHz^AKbRNF^WqVIFy{%#LYDcVbmgnLW01u7?pY0%-aLG ze#F~kmO;|Ts9T`HlNPzL9%S_SfJgHG)&}{nK|cgV7K`P12T?QjW-u6|*TuGi5Xu(q zYG>lsLnJz!!Os(fghYXum@k7wRMJF%fF*@uidIzxdmOz9An^n=jjO{|g`FJfAaC6V z_T3oIPS_Lqs2=rQ)~A9Bo;x7nx-(!%#E$NeWHor!b)FZCSIp)3>n=WZF?9BPkb(_( z{eygJKO9mWAk#$-M?WJY+&CEYiD1WWTyL;yVf*^Ml6?MrS^eHHL%6e6D{vZ-1uosK ze;rMb2Rluz8se|Ri{`bg`Z}6E&zqcJ*E#a>t+c#&}9d` zz3M2kHoA<%df}ZYhJ7Sig#|+@<8Dn2^Ao<)#EHhEnZk!hHEm5n!@MNOiuGS`noQae z#=ftLCVP+j>*wg1O|5P{r}~B79@_|w-F9}?8)3QEU)u-Z|UyLtk4JfD5U>aRO<}RmVP6bAC2OGCKofYYs-tm6t^q*P zxwl$?-`mM_D`1Nwc{T$mV7J{*Abd3viUt9*lgp+;tES&DiNHGl z!oR=1;0VM}9E&jR2@lzN_Ocj0efM`?G4hOD#!alNK>77tfG7sYuV#q0=kLo7XV{XMJG4wZFU7@6+ku1@|)C0?NTsjej7C8u)%xFm+#<^#is;T za?M-opAJ1Le#WwgdH-)a7Id9*q=q);`HPcZ6U|$S)iUuzGJ z9laGE#>GyIj|Vea;ghCRa!C2V~ufrbMI3 z$7MAZ?ttGl)k41*r^v*s^VDkC$r2-)6DXoLDAIAU9VU$J>cuTkWoUJULU_|fCy^ZaYN83Uq ze)?UHUfoa2F02MyZf02Gk=Y1CZS|%4w7*?SDcoMH`F+dir8vv4fhjip1W_-MN~IYR zpVX`F**$zWqa`yloG9%k#e(Ez_WPNT-do)DFe(;LoHL@DcW>{>|sju5UZ zHMYUR-HGzI)@YIMp_I%5VjwRZy}_s#nKY)Y2$v`;oeO}{3e~7c&tF1zB7pakV4eqg zkfQb~Ry?X;sc;{rGP$P5?VbLg6B-?x4XIbP z&xeTubBvy)6TQFT;_xMm-G40c$uS2AdX4wO%QTnV-gXGE$uVCMAg40=i_6S0%G3(L zZ=y?gWj}tH!!U8~=&}IP;tPS(3IOmw+-`Fjb*-miNofyXu}*uI+$Y!KpOe<9)GR*7 zy{7g}jftl7Xb(Qmu4G?E|p9sKIn$0R0>CUEucl=ly#Kw=X)=pQD`bON2F}PdRLsJ^G{z=<{Xu z2j#V1CF$RO2*(1A4p?0$R;c)ZFKjPnIM6_<-+mGtKJ^v8*}VS z2~I+Oma)25AB~24mSK_e5XI7DV^Va3?1iTxKzR7RqWUrg-)7xXs{3M`?C{7j=@aZhX=q-()dA?%f zh1OK09~Zj83n-*s8DgJjIIgQQN#==ZEIwoCVYp=FWXv6FBx?Lb7M44IvqNBtQ7cXY zvrnpXA!oTTa;w_>U<lwW`jzf|)qd>pp@SaH4qVO>9oB$O^B;!?MIW`rM$nAKs zTR$9c3HGg7yafk}F6~|9?6FP6kJ@*clqInDt~QeH2jx~CfQT05C+WMI*J(WFm&bRx z1+~TcQGJtFfo@Ckk;Q{Ri9-D-%0nM(042Z;oOvs6B&nxsQJF)tL6(^&#b*$;toKtR z+V}uS)q-EKGvv^y%H&frwt%;Br=e_iaD2ChsuIb9Y4P&QVQ~M}MOD{X=nH*7Hg0Lx zJyiZ%DyJ%2_CrCf6Qy!8F}5|TuN#@Ld`G@l1PuKxA2HIT7OImEl~_z;kF3DbqD+C5 zhKOXBb>G&DOn3@y8-HB^% z8)!iXUQDwr-My4Fxw|8kRsdt)=Hv+~fVIl>xvnKm9NJB*&gYLX)A4{RFWo2$e{i0< z;&FnlOC~^{#s<}Vg?g)-snv>dQ>ZL5S;TWk4RDB#{6}w8M)Pl3!c7~>@CB=Xr~Q;E zLR-?wZ4%6Wxs=YLU!a{>t&Rgz=1W(4t2%!Yi3C78#hq_KF5m7@ct3vi@|m_5oT0}g zaaU>3y3C2hHrOVF8k3dJ)Aq_9_+6Eafp{=+2(#zy7oTjS!N)gObtukUf6q)D1YTFy z^l*)AXz~Ig2*E1%Izn@7MdK8bcn3PG2yx$@-iq_OsVq+^;9^M%(c&T%$3y-@R9lMI z6>?K}Ws%T)+R~|_94VAcU1rfw+LugN%KPXe^9g3r7Tt42Z0Vf+f>)ZWcTxiMO>j%{ z)yf|lKQ1FE7lIm8{0u6D@P#=r*?0*B`$8fb&4B8fA;1&}F^y9U0?xZfF)RDt+D~Ny z093`}LD1-9L0Ps_hwX6FdFL^)9ubEBkXgVA^$lpBskF%^?<0Legh%kqeVy~M5zv`V z|E&)W5f>cH1wk!CLg5#60_vvI`vB?$%4zui!u~X04cKJ*?h`eb zsRtDuVPk>HQO{0$^*g(HMvdAp_zTDAVgF7j6TEmUJCCLvvZ9tZey0@2d#7Y;j9#Q> zV~0N7mm9>Z4!x5dmcB?p4b@C4VI-S!C8;2sq45ZOd4vdy;t}dmu1%uN}x~1wL#of;Ez2 zpp0w2!PQ5aB&$~~5C6drG;P{ME))qT4Pgq%M(sn|>R(V1Le-x8x-|NwK2b|c%{S{N z8+2P-AWE8AN*0~}Go`~m!~GK>hB6%LLP~vDw#7n!k8Y*lx`bAr@es`m@B`evr2`TQ z>CN{0#0o;6lv8@@RcbM*t;w%{4zzyYA^m>G^tE_j|8bW|>wOwcL#r1SAPc2LJZsbr zG5nX~i-y!*E@fvYRM(A+l#Tig1y2raXO#jyDiQoOK>%;h-`x=Z`B63>*7QX^+f zC0{!k;e$D-UVC3elyW6*jF^IHzskv2{BY#L%a*|r3vzc*xYAGtwq!U?1-jjv&+h_S zB3v$9>#*v1FtrK9BcFJw6UlE8hshtq_}S}rzE8)^(-(W^y@yz&B%5)4hBZLAsx+=q z%y07NE{BJ$u3=iDxv5b!2wScqm=898a}Rp;s;4Gm6Kt1$s%6Xk!RuD$BkIN&d(xSY z-f~h~)EhPa)V%iebJ6P4hHtdB@d1rQXISR+B)(H%%PQMbi)$1(9j$@E?P z9(!>!w?lO=oC(IAc9t5Qk5jewpCRLr|J*Tujp^vWUjNsCva=P(_eHFp!J+T06c}Qa z7v(XFs4+*@9a${@rQ2UCB6_qQD2?G-)8N!RES_`{U3X!3&k|=_$JWa2TYk4KQ-iLc zp$BTPdt}5tlWvixdz^vH>E$u5TSye1C4so*$AvX3evWalZAk(peb%$1Ww&!bh6nnW z!HcNhFgoreZw%G=g^eHE0SmtzMXG8Zz;nOAF%jpFNKe7oa+r@ReWl3=*q!|7SAUR! zk7JLiwXQ=uReL9XQbn;0vwmv(jw0ftJU^>4*Ip`{;jeB@C9Io?;@|x5AUTSot)H5J1<9%WRFh%Dknw z^>q3mat%dvYc*eMf~0k;FjnHC3mZdu*U~ca#kQ}s5KTvw4!o%HF~JTd7>3LDt;?%9 z(5WRYK22Is!dCDU)E!B3IPtLYqr=YVbtIt{@=YqWc7f0cIKc}l?rC~ZW2sur$9)IrxLxeJheMi^b+nq=G+KVLwt z4byVGAnpa7-wjyQ^pg5g=A0MBalR`PzeDt`#x(+;`@HzRVEc!vJEf-nKh@E6fRG-=$Vf^ zx!$=63|PRwBYzw^=8;8VnL+eOX3}l4;S%M7x>>6RJ-(LEpnAbN&eh;5zh2PY%BsY# zW%Jtnjw>qZ>UGzf`<^s7AtiHb_qOsbX~`QU`fw^;c3YS6abfEHx@C|Yiq-;LoxWXB z^NJRX+<>Edd$mZ+vg$pKe$*y z%Ywmnq&E2-QRnom`*hpK5nz}fna69~?f4|FFX1{mj}P^mJsko(en2I2J`re<-0k1W z=<%eM$Okmp!D&`-*ULhF_3m`81=?<3_`pgxtfQWJQ9k{;bAlokWz~=-lT(TlANqhx{L;CpQBC literal 0 HcmV?d00001 diff --git a/src/modules/fancyzones/dll/FancyZonesModule.vcxproj b/src/modules/fancyzones/dll/FancyZonesModule.vcxproj new file mode 100644 index 0000000000..ce37e749c2 --- /dev/null +++ b/src/modules/fancyzones/dll/FancyZonesModule.vcxproj @@ -0,0 +1,137 @@ + + + + + Debug + x64 + + + Release + x64 + + + + 15.0 + {48804216-2A0E-4168-A6D8-9CD068D14227} + Win32Proj + fancyzones + 10.0 + fancyzones + + + + DynamicLibrary + true + v142 + Unicode + + + DynamicLibrary + false + v142 + true + Unicode + + + + + + + + + + + + + + + + true + $(SolutionDir)$(Platform)\$(Configuration)\modules\ + + + false + $(SolutionDir)$(Platform)\$(Configuration)\modules\ + + + + Use + Level3 + Disabled + true + _DEBUG;FANCYZONES_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + true + pch.h + ..\;..\..\..\common\inc;..\..\..\common\Telemetry;..\..\;..\..\..\;..\..\..\..\deps\cpprestsdk\include;%(AdditionalIncludeDirectories) + MultiThreadedDebug + stdcpplatest + + + Windows + true + $(OutDir)$(TargetName)$(TargetExt) + gdiplus.lib;dwmapi.lib;shlwapi.lib;uxtheme.lib;shcore.lib;%(AdditionalDependencies) + fancyzones.def + + + + + Use + Level3 + MaxSpeed + true + true + true + NDEBUG;FANCYZONES_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + true + pch.h + ..\;..\..\..\common\inc;..\..\..\common\Telemetry;..\..\;..\..\..\;..\..\..\..\deps\cpprestsdk\include;%(AdditionalIncludeDirectories) + MultiThreaded + stdcpplatest + + + Windows + true + true + true + $(OutDir)$(TargetName)$(TargetExt) + gdiplus.lib;dwmapi.lib;shlwapi.lib;uxtheme.lib;shcore.lib;%(AdditionalDependencies) + fancyzones.def + + + + + + + + + + Create + Create + pch.h + pch.h + + + + + {74485049-c722-400f-abe5-86ac52d929b3} + + + {f9c68edf-ac74-4b77-9af1-005d9c9f6a99} + + + + + + + + + + + + + This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. + + + + \ No newline at end of file diff --git a/src/modules/fancyzones/dll/FancyZonesModule.vcxproj.filters b/src/modules/fancyzones/dll/FancyZonesModule.vcxproj.filters new file mode 100644 index 0000000000..33fe26da87 --- /dev/null +++ b/src/modules/fancyzones/dll/FancyZonesModule.vcxproj.filters @@ -0,0 +1,34 @@ + + + + + Source Files + + + Source Files + + + + + Header Files + + + Header Files + + + + + {21926bf1-03b3-482d-8f60-8bc4fbfc6564} + + + {2f10207d-d8d1-4a42-8027-8ca597b3cb23} + + + + + + + + + + \ No newline at end of file diff --git a/src/modules/fancyzones/dll/README.md b/src/modules/fancyzones/dll/README.md new file mode 100644 index 0000000000..92b3bc9bb3 --- /dev/null +++ b/src/modules/fancyzones/dll/README.md @@ -0,0 +1,53 @@ +# Introduction +Super FancyZones! Just like FancyZones except super. + +# Getting Started +Grab FancyZones.exe from the bin directory or \\\\wexfs\users\bretan\proto\superfancyzones and run it + +## Dragging windows +* While dragging a window around, zones will appear that the window can be dropped in. Dropping the window in a zone will position it in the zone. +* While dragging a window, you can hit number keys to cycle the active zone set. Eg, drag a window around and hit the '3' key will change to a zone set with 3 zones. + +## Hotkeys +* Win+~ - opens the zone viewer/editor +* Win+ctrl+number - cycle through layouts with the corresponding number of zones (only if Override snap hotkeys setting is enabled) +* Win+left arrow, Win+right arrow - move foreground window between zones + +## Zone Viewer/Editor (Win + ~) +* Hitting a number key cycles through layouts matching the number of zones (eg 3 cycles through layouts with 3 zones) +* R resets the focused monitor back to defaults +* C clears the current layout so you can start fresh +* W opens a dialog to choose wallpaper +* Left click moves the zone to the top +* Right click moves the zone to the bottom + +### E enters editor mode (hit E or Escape to exit editor mode) +* Left/Right/Up/Down arrows adjust the grid spacing +* PgUp/PgDn adjust grid margins +* Ctrl+left click splits the clicked zone in half horizontally +* Ctrl+right click splits the clicked zone in half vertically + +# Options +### Default Drag Mode +* None - don't do anything when dragging windows around (shift enters normal mode, ctrl enters adjusted mode) +* Normal - show zones when dragging windows around (shift disables, ctrl enters adjusted mode) +* Adjusted - show zones when dragging windows around with an accelerated cursor + +### Display change +* Move windows - automatically move windows around when display changes + +### Virtual Desktop change +* Move windows - automatically move windows around when virtual desktop changes +* Change wallpaper - use custom wallpaper per-monitor per-desktop +* Flash zones - flash zones on each monitor + +### Miscellanious +* Override snap hotkeys - steal hotkeys normally used by shell (win+left/right, win+ctrl+num) +* Colorful zones - use colored zones in zone viewer + +# Known issues +* See open bugs for full list of issues +* Win+left and Win+right don't move between monitors +* If you use Virtual Desktops, make sure to perform at least one virtual desktop switch before launching the fancyzones (it relies on a volatile regkey that explorer writes) +* Sometimes you have to click on a zone viewer window before it gets keyboard focus when opening views with Win+~ +* Quickly switching virtual desktops with win+ctrl+arrow hotkeys can crash fancyzones \ No newline at end of file diff --git a/src/modules/fancyzones/dll/dllmain.cpp b/src/modules/fancyzones/dll/dllmain.cpp new file mode 100644 index 0000000000..41c3e62677 --- /dev/null +++ b/src/modules/fancyzones/dll/dllmain.cpp @@ -0,0 +1,319 @@ +#include "pch.h" +#include +#include +#include +#include +#include +#include + +extern "C" IMAGE_DOS_HEADER __ImageBase; + +BOOL APIENTRY DllMain(HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved) +{ + switch (ul_reason_for_call) + { + case DLL_PROCESS_ATTACH: + Trace::RegisterProvider(); + break; + + case DLL_THREAD_ATTACH: + case DLL_THREAD_DETACH: + break; + + case DLL_PROCESS_DETACH: + Trace::UnregisterProvider(); + break; + } + return TRUE; +} + +// TODO: multimon support, need to pass the HMONITOR from the editor to here instead +// of using MonitorFromPoint +// This function is exported and called from FancyZonesEditor.exe to save a layout from the editor. +STDAPI PersistZoneSet( + PCWSTR activeKey, // Registry key holding ActiveZoneSet + PCWSTR resolutionKey, // Registry key for screen resolution + WORD layoutId, // LayoutModel Id + int zoneCount, // Number of zones in zones + int zones[]) // Array of zones serialized in left/top/right/bottom chunks +{ + // See if we have already persisted this layout we can update. + UUID id{GUID_NULL}; + if (wil::unique_hkey key{ RegistryHelpers::OpenKey(resolutionKey) }) + { + ZoneSetPersistedData data{}; + DWORD dataSize = sizeof(data); + wchar_t value[256]{}; + DWORD valueLength = ARRAYSIZE(value); + DWORD i = 0; + while (RegEnumValueW(key.get(), i++, value, &valueLength, nullptr, nullptr, reinterpret_cast(&data), &dataSize) == ERROR_SUCCESS) + { + if (data.LayoutId == layoutId) + { + if (data.ZoneCount == zoneCount) + { + CLSIDFromString(value, &id); + break; + } + } + valueLength = ARRAYSIZE(value); + dataSize = sizeof(data); + } + } + + if (id == GUID_NULL) + { + // No existing layout found so let's create a new one. + UuidCreate(&id); + } + + if (id != GUID_NULL) + { + winrt::com_ptr zoneSet = MakeZoneSet( + ZoneSetConfig( + id, + layoutId, + MonitorFromPoint({}, MONITOR_DEFAULTTOPRIMARY), + resolutionKey, + ZoneSetLayout::Custom, + 0, 0, 0)); + + for (int i = 0; i < zoneCount; i++) + { + const int baseIndex = i * 4; + const int left = zones[baseIndex]; + const int top = zones[baseIndex+1]; + const int right = zones[baseIndex+2]; + const int bottom = zones[baseIndex+3]; + zoneSet->AddZone(MakeZone({ left, top, right, bottom }), false); + } + zoneSet->Save(); + + wil::unique_cotaskmem_string zoneSetId; + if (SUCCEEDED_LOG(StringFromCLSID(id, &zoneSetId))) + { + RegistryHelpers::SetString(activeKey, L"ActiveZoneSetId", zoneSetId.get()); + } + + return S_OK; + } + return E_FAIL; +} + +class FancyZonesModule : public PowertoyModuleIface +{ +public: + // Return the display name of the powertoy, this will be cached + virtual PCWSTR get_name() override + { + return L"FancyZones"; + } + + // Return array of the names of all events that this powertoy listens for, with + // nullptr as the last element of the array. Nullptr can also be retured for empty list. + virtual PCWSTR* get_events() override + { + static PCWSTR events[] = { ll_keyboard, win_hook_event, nullptr }; + return events; + } + + // Return JSON with the configuration options. + // These are the settings shown on the settings page along with their current values. + virtual bool get_config(_Out_ PWSTR buffer, _Out_ int *buffer_size) override + { + return m_settings->GetConfig(buffer, buffer_size); + } + + // Passes JSON with the configuration settings for the powertoy. + // This is called when the user hits Save on the settings page. + virtual void set_config(PCWSTR config) override + { + m_settings->SetConfig(config); + } + + // Signal from the Settings editor to call a custom action. + // This can be used to spawn more complex editors. + virtual void call_custom_action(const wchar_t* action) override + { + m_settings->CallCustomAction(action); + } + + // Enable the powertoy + virtual void enable() + { + if (!m_app) + { + Trace::FancyZones::EnableFancyZones(true); + m_app = MakeFancyZones(reinterpret_cast(&__ImageBase), m_settings.get()); + if (m_app) + { + m_app->Run(); + } + } + } + + // Disable the powertoy + virtual void disable() + { + if (m_app) + { + Trace::FancyZones::EnableFancyZones(false); + m_app->Destroy(); + m_app = nullptr; + } + } + + // Returns if the powertoy is enabled + virtual bool is_enabled() override + { + return (m_app != nullptr); + } + + // Handle incoming event, data is event-specific + virtual intptr_t signal_event(const wchar_t* name, intptr_t data) override + { + if (m_app) + { + if (wcscmp(name, ll_keyboard) == 0) + { + // Return 1 if the keypress is to be suppressed (not forwarded to Windows), otherwise return 0. + return HandleKeyboardHookEvent(reinterpret_cast(data)); + } + else if (wcscmp(name, win_hook_event) == 0) + { + // Return value is ignored + HandleWinHookEvent(reinterpret_cast(data)); + } + } + return 0; + } + + // Destroy the powertoy and free memory + virtual void destroy() override + { + disable(); + delete this; + } + + FancyZonesModule() + { + m_settings = MakeFancyZonesSettings(reinterpret_cast(&__ImageBase), get_name()); + } + +private: + static bool IsInterestingWindow(HWND window) + { + auto style = GetWindowLongPtr(window, GWL_STYLE); + auto exStyle = GetWindowLongPtr(window, GWL_EXSTYLE); + return WI_IsFlagSet(style, WS_MAXIMIZEBOX) && WI_IsFlagClear(style, WS_CHILD) && WI_IsFlagClear(exStyle, WS_EX_TOOLWINDOW); + } + + intptr_t HandleKeyboardHookEvent(LowlevelKeyboardEvent* data) noexcept; + void HandleWinHookEvent(WinHookEvent* data) noexcept; + void MoveSizeStart(HWND window, POINT const& ptScreen) noexcept; + void MoveSizeEnd(HWND window, POINT const& ptScreen) noexcept; + void MoveSizeUpdate(POINT const& ptScreen) noexcept; + + winrt::com_ptr m_app; + winrt::com_ptr m_settings; +}; + +intptr_t FancyZonesModule::HandleKeyboardHookEvent(LowlevelKeyboardEvent* data) noexcept +{ + if (data->wParam == WM_KEYDOWN) + { + return m_app.as()->OnKeyDown(data->lParam) ? 1 : 0; + } + return 0; +} + +void FancyZonesModule::HandleWinHookEvent(WinHookEvent* data) noexcept +{ + POINT ptScreen; + GetPhysicalCursorPos(&ptScreen); + + switch (data->event) + { + case EVENT_SYSTEM_MOVESIZESTART: + { + MoveSizeStart(data->hwnd, ptScreen); + } + break; + + case EVENT_SYSTEM_MOVESIZEEND: + { + MoveSizeEnd(data->hwnd, ptScreen); + } + break; + + case EVENT_OBJECT_LOCATIONCHANGE: + { + if (m_app.as()->InMoveSize()) + { + MoveSizeUpdate(ptScreen); + } + } + break; + + case EVENT_OBJECT_NAMECHANGE: + { + // The accessibility name of the desktop window changes whenever the user + // switches virtual desktops. + if (data->hwnd == GetDesktopWindow()) + { + Trace::VirtualDesktopChanged(); + m_app.as()->VirtualDesktopChanged(); + } + } + break; + + case EVENT_OBJECT_CREATE: + { + if (data->idObject == OBJID_WINDOW) + { + if (IsInterestingWindow(data->hwnd)) + { + m_app.as()->WindowCreated(data->hwnd); + } + } + } + break; + + default: + break; + } +} + +void FancyZonesModule::MoveSizeStart(HWND window, POINT const& ptScreen) noexcept +{ + if (IsInterestingWindow(window)) + { + if (auto monitor = MonitorFromPoint(ptScreen, MONITOR_DEFAULTTONULL)) + { + m_app.as()->MoveSizeStart(window, monitor, ptScreen); + } + } +} + +void FancyZonesModule::MoveSizeEnd(HWND window, POINT const& ptScreen) noexcept +{ + if (IsInterestingWindow(window)) + { + m_app.as()->MoveSizeEnd(window, ptScreen); + } +} + +void FancyZonesModule::MoveSizeUpdate(POINT const& ptScreen) noexcept +{ + if (auto monitor = MonitorFromPoint(ptScreen, MONITOR_DEFAULTTONULL)) + { + m_app.as()->MoveSizeUpdate(monitor, ptScreen); + } +} + +extern "C" __declspec(dllexport) PowertoyModuleIface* __cdecl powertoy_create() +{ + return new FancyZonesModule(); +} + + diff --git a/src/modules/fancyzones/dll/fancyzones.def b/src/modules/fancyzones/dll/fancyzones.def new file mode 100644 index 0000000000..32441a425a --- /dev/null +++ b/src/modules/fancyzones/dll/fancyzones.def @@ -0,0 +1,4 @@ +LIBRARY fancyzones.dll + +EXPORTS + PersistZoneSet PRIVATE diff --git a/src/modules/fancyzones/dll/packages.config b/src/modules/fancyzones/dll/packages.config new file mode 100644 index 0000000000..2e822b86d0 --- /dev/null +++ b/src/modules/fancyzones/dll/packages.config @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/src/modules/fancyzones/dll/pch.cpp b/src/modules/fancyzones/dll/pch.cpp new file mode 100644 index 0000000000..9e6b2e073e --- /dev/null +++ b/src/modules/fancyzones/dll/pch.cpp @@ -0,0 +1 @@ +#include "pch.h" diff --git a/src/modules/fancyzones/dll/pch.h b/src/modules/fancyzones/dll/pch.h new file mode 100644 index 0000000000..87e5233473 --- /dev/null +++ b/src/modules/fancyzones/dll/pch.h @@ -0,0 +1,18 @@ +#pragma once + +#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers +#include +#include +#include +#include +#include +#include + +#include "lib\trace.h" +#include "lib\FancyZones.h" +#include "lib\Settings.h" + +namespace winrt +{ + using namespace ::winrt; +} \ No newline at end of file diff --git a/src/modules/fancyzones/dll/targetver.h b/src/modules/fancyzones/dll/targetver.h new file mode 100644 index 0000000000000000000000000000000000000000..567cd346efccbe2d1f43a4056bdcb58a2b93e1a8 GIT binary patch literal 630 zcmaiyOKZYV5QWcL=zj>fEfw0WxN;+co0fK2Vs4B9U*sm0{`t1wOo&Foy0~*EXI^K{ z&F{}p2USW{Xp2p>*G`#oJ!s%(q!H-M(Ty4fmG}kNtEQTB%)V1m=}BwwfWPvrT#@e@ zH0NG}74Ao{glS)#QXA|NYdIfY7hrMp+Ji@H`t9kzWx_SD6;~Ri;cvXH)6CO{-I1p_IJPQ#X=r zigZeSqQguJz35q;zt9^Q_C^^>*mmuXUCp&pw^fPoGX+dho4RCrySs7j@9_UipWkA5 OQDt4mH~x-^Z~X_?9czaG literal 0 HcmV?d00001 diff --git a/src/modules/fancyzones/editor/FancyZonesEditor.sln b/src/modules/fancyzones/editor/FancyZonesEditor.sln new file mode 100644 index 0000000000..ecdf7c236b --- /dev/null +++ b/src/modules/fancyzones/editor/FancyZonesEditor.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.27703.2042 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FancyZonesEditor", "FancyZonesEditor\FancyZonesEditor.csproj", "{5CCC8468-DEC8-4D36-99D4-5C891BEBD481}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {5CCC8468-DEC8-4D36-99D4-5C891BEBD481}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {5CCC8468-DEC8-4D36-99D4-5C891BEBD481}.Debug|Any CPU.Build.0 = Debug|Any CPU + {5CCC8468-DEC8-4D36-99D4-5C891BEBD481}.Release|Any CPU.ActiveCfg = Release|Any CPU + {5CCC8468-DEC8-4D36-99D4-5C891BEBD481}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {9A90742C-8AA0-4A56-A01F-70C8754B4684} + EndGlobalSection +EndGlobal diff --git a/src/modules/fancyzones/editor/FancyZonesEditor/App.config b/src/modules/fancyzones/editor/FancyZonesEditor/App.config new file mode 100644 index 0000000000..de277144ee --- /dev/null +++ b/src/modules/fancyzones/editor/FancyZonesEditor/App.config @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/modules/fancyzones/editor/FancyZonesEditor/App.xaml b/src/modules/fancyzones/editor/FancyZonesEditor/App.xaml new file mode 100644 index 0000000000..2d445b51fe --- /dev/null +++ b/src/modules/fancyzones/editor/FancyZonesEditor/App.xaml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + diff --git a/src/modules/fancyzones/editor/FancyZonesEditor/App.xaml.cs b/src/modules/fancyzones/editor/FancyZonesEditor/App.xaml.cs new file mode 100644 index 0000000000..6115581a74 --- /dev/null +++ b/src/modules/fancyzones/editor/FancyZonesEditor/App.xaml.cs @@ -0,0 +1,74 @@ +using FancyZonesEditor; +using System; +using System.Collections.Generic; +using System.Configuration; +using System.Data; +using System.Linq; +using System.Threading.Tasks; +using System.Windows; +using FancyZonesEditor.Models; + +namespace FancyZonesEditor +{ + ///

+ /// Interaction logic for App.xaml + /// + public partial class App : Application + { + public Settings ZoneSettings { get { return _settings; } } + private Settings _settings; + private ushort _idInitial = 0; + public App() + { + //init settings + _settings = new Settings(); + } + + private void OnStartup(object sender, StartupEventArgs e) + { + if (e.Args.Length > 1) + { + UInt16.TryParse(e.Args[1], out _idInitial); + } + + LayoutModel foundModel = null; + + if (_idInitial != 0) + { + foreach (LayoutModel model in _settings.DefaultModels) + { + if (model.Id == _idInitial) + { + // found match + foundModel = model; + break; + } + } + + if (foundModel == null) + { + foreach (LayoutModel model in _settings.CustomModels) + { + if (model.Id == _idInitial) + { + // found match + foundModel = model; + break; + } + } + } + } + if (foundModel == null) + { + foundModel = _settings.DefaultModels[0]; + } + + foundModel.IsSelected = true; + // TODO: multimon + // Pass in the correct args to show on the desired monitor + EditorOverlay overlay = new EditorOverlay(); + overlay.Show(); + overlay.DataContext = foundModel; + } + } +} diff --git a/src/modules/fancyzones/editor/FancyZonesEditor/CanvasEditor.xaml b/src/modules/fancyzones/editor/FancyZonesEditor/CanvasEditor.xaml new file mode 100644 index 0000000000..c1a3ea97ba --- /dev/null +++ b/src/modules/fancyzones/editor/FancyZonesEditor/CanvasEditor.xaml @@ -0,0 +1,12 @@ + + + + + diff --git a/src/modules/fancyzones/editor/FancyZonesEditor/CanvasEditor.xaml.cs b/src/modules/fancyzones/editor/FancyZonesEditor/CanvasEditor.xaml.cs new file mode 100644 index 0000000000..ed6a0f0bd0 --- /dev/null +++ b/src/modules/fancyzones/editor/FancyZonesEditor/CanvasEditor.xaml.cs @@ -0,0 +1,77 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows; +using System.Windows.Controls; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Input; +using System.Windows.Media; +using System.Windows.Media.Imaging; +using System.Windows.Navigation; +using System.Windows.Shapes; +using FancyZonesEditor.Models; + +namespace FancyZonesEditor +{ + /// + /// Interaction logic for CanvasEditor.xaml + /// + public partial class CanvasEditor : UserControl + { + public CanvasEditor() + { + InitializeComponent(); + Loaded += CanvasEditor_Loaded; + } + + private void CanvasEditor_Loaded(object sender, RoutedEventArgs e) + { + CanvasLayoutModel model = (CanvasLayoutModel)DataContext; + if (model != null) + { + Model = model; + UpdateZoneRects(); + + model.PropertyChanged += OnModelChanged; + } + } + + private void OnModelChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e) + { + if (e.PropertyName == "Zones") + { + UpdateZoneRects(); + } + } + + private void UpdateZoneRects() + { + UIElementCollection previewChildren = Preview.Children; + int previewChildrenCount = previewChildren.Count; + while (previewChildrenCount < Model.Zones.Count) + { + CanvasZone zone = new CanvasZone(); + zone.Model = Model; + Preview.Children.Add(zone); + previewChildrenCount++; + } + + for (int i = 0; i < previewChildrenCount; i++) + { + Int32Rect rect = Model.Zones[i]; + CanvasZone zone = previewChildren[i] as CanvasZone; + + zone.ZoneIndex = i; + Canvas.SetLeft(zone, rect.X); + Canvas.SetTop(zone, rect.Y); + zone.MinHeight = rect.Height; + zone.MinWidth = rect.Width; + } + } + + public CanvasLayoutModel Model; + } +} diff --git a/src/modules/fancyzones/editor/FancyZonesEditor/CanvasEditorWindow.xaml b/src/modules/fancyzones/editor/FancyZonesEditor/CanvasEditorWindow.xaml new file mode 100644 index 0000000000..6b10173e8a --- /dev/null +++ b/src/modules/fancyzones/editor/FancyZonesEditor/CanvasEditorWindow.xaml @@ -0,0 +1,189 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/modules/fancyzones/editor/FancyZonesEditor/CanvasZone.xaml.cs b/src/modules/fancyzones/editor/FancyZonesEditor/CanvasZone.xaml.cs new file mode 100644 index 0000000000..ba3b26b82d --- /dev/null +++ b/src/modules/fancyzones/editor/FancyZonesEditor/CanvasZone.xaml.cs @@ -0,0 +1,167 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows; +using System.Windows.Controls; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Input; +using System.Windows.Media; +using System.Windows.Media.Imaging; +using System.Windows.Navigation; +using System.Windows.Shapes; +using FancyZonesEditor.Models; + +namespace FancyZonesEditor +{ + /// + /// Once you've "Committ"ed the starter grid, then the Zones within the grid come to life for you to be able to further subdivide them + /// using splitters + /// + + public partial class CanvasZone : UserControl + { + public CanvasZone() + { + InitializeComponent(); + Canvas.SetZIndex(this, c_zIndex++); + } + + public CanvasLayoutModel Model; + public int ZoneIndex; + + private Point Move(double xDelta, double yDelta) + { + Int32Rect rect = Model.Zones[ZoneIndex]; + if (xDelta < 0) + { + xDelta = Math.Max(xDelta, -rect.X); + } + else if (xDelta > 0) + { + xDelta = Math.Min(xDelta, c_workArea.Width - rect.Width - rect.X); + } + + if (yDelta < 0) + { + yDelta = Math.Max(yDelta, -rect.Y); + } + else if (yDelta > 0) + { + yDelta = Math.Min(yDelta, c_workArea.Height - rect.Height - rect.Y); + } + + rect.X += (int) xDelta; + rect.Y += (int) yDelta; + + Canvas.SetLeft(this, rect.X); + Canvas.SetTop(this, rect.Y); + Model.Zones[ZoneIndex] = rect; + return new Point(xDelta, yDelta); + } + + private void Size(double xDelta, double yDelta) + { + Int32Rect rect = Model.Zones[ZoneIndex]; + if (xDelta != 0) + { + int newWidth = rect.Width + (int) xDelta; + + if (newWidth < 48) + { + newWidth = 48; + } + else if (newWidth > (c_workArea.Width - rect.X)) + { + newWidth = (int) c_workArea.Width - rect.X; + } + MinWidth = rect.Width = newWidth; + } + + if (yDelta != 0) + { + int newHeight = rect.Height + (int)yDelta; + + if (newHeight < 48) + { + newHeight = 48; + } + else if (newHeight > (c_workArea.Height - rect.Y)) + { + newHeight = (int)c_workArea.Height - rect.Y; + } + MinHeight = rect.Height = newHeight; + } + Model.Zones[ZoneIndex] = rect; + } + + private static int c_zIndex = 0; + + // TODO: multimon + // This needs to be the work area of the monitor we get launched on + private static Rect c_workArea = System.Windows.SystemParameters.WorkArea; + + protected override void OnPreviewMouseDown(MouseButtonEventArgs e) + { + Canvas.SetZIndex(this, c_zIndex++); + base.OnPreviewMouseDown(e); + } + private void NWResize_DragDelta(object sender, System.Windows.Controls.Primitives.DragDeltaEventArgs e) + { + Point actualChange = Move(e.HorizontalChange, e.VerticalChange); + Size(-actualChange.X, -actualChange.Y); + } + + private void NEResize_DragDelta(object sender, System.Windows.Controls.Primitives.DragDeltaEventArgs e) + { + Point actualChange = Move(0, e.VerticalChange); + Size(e.HorizontalChange, -actualChange.Y); + } + + private void SWResize_DragDelta(object sender, System.Windows.Controls.Primitives.DragDeltaEventArgs e) + { + Point actualChange = Move(e.HorizontalChange, 0); + Size(-actualChange.X, e.VerticalChange); + } + + private void SEResize_DragDelta(object sender, System.Windows.Controls.Primitives.DragDeltaEventArgs e) + { + Size(e.HorizontalChange, e.VerticalChange); + } + + private void NResize_DragDelta(object sender, System.Windows.Controls.Primitives.DragDeltaEventArgs e) + { + Point actualChange = Move(0, e.VerticalChange); + Size(0, -actualChange.Y); + } + + private void SResize_DragDelta(object sender, System.Windows.Controls.Primitives.DragDeltaEventArgs e) + { + Size(0, e.VerticalChange); + } + + private void WResize_DragDelta(object sender, System.Windows.Controls.Primitives.DragDeltaEventArgs e) + { + Point actualChange = Move(e.HorizontalChange, 0); + Size(-actualChange.X, 0); + } + + private void EResize_DragDelta(object sender, System.Windows.Controls.Primitives.DragDeltaEventArgs e) + { + Size(e.HorizontalChange, 0); + } + + private void Caption_DragDelta(object sender, System.Windows.Controls.Primitives.DragDeltaEventArgs e) + { + Move(e.HorizontalChange, e.VerticalChange); + } + + private void OnClose(object sender, RoutedEventArgs e) + { + ((Panel)Parent).Children.Remove(this); + Model.RemoveZoneAt(ZoneIndex); + } + } +} diff --git a/src/modules/fancyzones/editor/FancyZonesEditor/EditorOverlay.xaml b/src/modules/fancyzones/editor/FancyZonesEditor/EditorOverlay.xaml new file mode 100644 index 0000000000..c679b98cdb --- /dev/null +++ b/src/modules/fancyzones/editor/FancyZonesEditor/EditorOverlay.xaml @@ -0,0 +1,15 @@ + + diff --git a/src/modules/fancyzones/editor/FancyZonesEditor/EditorOverlay.xaml.cs b/src/modules/fancyzones/editor/FancyZonesEditor/EditorOverlay.xaml.cs new file mode 100644 index 0000000000..e537e9b523 --- /dev/null +++ b/src/modules/fancyzones/editor/FancyZonesEditor/EditorOverlay.xaml.cs @@ -0,0 +1,138 @@ +using FancyZonesEditor.Models; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Net.NetworkInformation; +using System.Security.RightsManagement; +using System.Text; +using System.Threading.Tasks; +using System.Windows; +using System.Windows.Controls; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Input; +using System.Windows.Media; +using System.Windows.Media.Imaging; +using System.Windows.Shapes; + +namespace FancyZonesEditor +{ + /// + /// Interaction logic for Window1.xaml + /// + public partial class EditorOverlay : Window + { + public Int32Rect[] GetZoneRects() + { + // TODO: the ideal here is that the ArrangeRects logic is entirely inside the model, so we don't have to walk the UIElement children to get the rect info + Panel previewPanel = null; + + if (_editor != null) + { + GridEditor gridEditor = _editor as GridEditor; + if (gridEditor != null) + { + previewPanel = gridEditor.PreviewPanel; + } + else + { + //CanvasEditor + previewPanel = ((CanvasEditor)_editor).Preview; + } + } + else + { + previewPanel = _layoutPreview.PreviewPanel; + } + + var count = previewPanel.Children.Count; + Int32Rect[] zones = new Int32Rect[count]; + + int i = 0; + foreach (FrameworkElement child in previewPanel.Children) + { + Point topLeft = child.TransformToAncestor(previewPanel).Transform(new Point()); + + var right = topLeft.X + child.ActualWidth; + var bottom = topLeft.Y + child.ActualHeight; + zones[i].X = (int)topLeft.X; + zones[i].Y = (int)topLeft.Y; + zones[i].Width = (int)child.ActualWidth; + zones[i].Height = (int)child.ActualHeight; + i++; + } + + return zones; + } + + public static EditorOverlay Current; + public EditorOverlay() + { + InitializeComponent(); + Current = this; + + // TODO: multimon + // Need to set Left and Top to the correct monitor based on the + // foreground window passed in the command line arguments + Rect workArea = System.Windows.SystemParameters.WorkArea; + Left = workArea.Left; + Top = workArea.Top; + Width = workArea.Width; + Height = workArea.Height; + } + + void onLoad(object sender, RoutedEventArgs e) + { + ShowLayoutPicker(); + } + + public void ShowLayoutPicker() + { + DataContext = null; + + _editor = null; + _layoutPreview = new LayoutPreview(); + _layoutPreview.IsActualSize = true; + _layoutPreview.Opacity = 0.5; + Content = _layoutPreview; + + MainWindow window = new MainWindow(); + window.Owner = this; + window.Show(); + } + + // These event handlers are used to track the current state of the Shift and Ctrl keys on the keyboard + // They reflect that current state into properties on the Settings object, which the Zone view will listen to in editing mode + protected override void OnPreviewKeyDown(KeyEventArgs e) + { + _settings.IsShiftKeyPressed = Keyboard.Modifiers.HasFlag(ModifierKeys.Shift); + _settings.IsCtrlKeyPressed = Keyboard.Modifiers.HasFlag(ModifierKeys.Control); + base.OnPreviewKeyDown(e); + } + + protected override void OnPreviewKeyUp(KeyEventArgs e) + { + _settings.IsShiftKeyPressed = Keyboard.Modifiers.HasFlag(ModifierKeys.Shift); + _settings.IsCtrlKeyPressed = Keyboard.Modifiers.HasFlag(ModifierKeys.Control); + base.OnPreviewKeyUp(e); + } + + public void Edit() + { + _layoutPreview = null; + if (DataContext is GridLayoutModel) + { + _editor = new GridEditor(); + } + else if (DataContext is CanvasLayoutModel) + { + _editor = new CanvasEditor(); + } + Content = _editor; + } + + private Settings _settings = ((App)Application.Current).ZoneSettings; + private LayoutPreview _layoutPreview; + private UserControl _editor; + } +} diff --git a/src/modules/fancyzones/editor/FancyZonesEditor/EditorWindow.cs b/src/modules/fancyzones/editor/FancyZonesEditor/EditorWindow.cs new file mode 100644 index 0000000000..17b3c3ac76 --- /dev/null +++ b/src/modules/fancyzones/editor/FancyZonesEditor/EditorWindow.cs @@ -0,0 +1,51 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows; +using System.Windows.Controls; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Input; +using System.Windows.Media; +using System.Windows.Media.Imaging; +using System.Windows.Shapes; +using FancyZonesEditor.Models; +using MahApps.Metro.Controls; + +namespace FancyZonesEditor +{ + public class EditorWindow : MetroWindow + { + protected void OnSaveApplyTemplate(object sender, RoutedEventArgs e) + { + EditorOverlay mainEditor = EditorOverlay.Current; + LayoutModel model = mainEditor.DataContext as LayoutModel; + if (model != null) + { + model.Persist(mainEditor.GetZoneRects()); + } + _choosing = true; + this.Close(); + EditorOverlay.Current.Close(); + } + + protected void OnClosed(object sender, EventArgs e) + { + if (!_choosing) + { + EditorOverlay.Current.ShowLayoutPicker(); + } + } + + protected void OnCancel(object sender, RoutedEventArgs e) + { + _choosing = true; + this.Close(); + EditorOverlay.Current.ShowLayoutPicker(); + } + + private bool _choosing = false; + } +} diff --git a/src/modules/fancyzones/editor/FancyZonesEditor/FancyZonesEditor.csproj b/src/modules/fancyzones/editor/FancyZonesEditor/FancyZonesEditor.csproj new file mode 100644 index 0000000000..848a54db31 --- /dev/null +++ b/src/modules/fancyzones/editor/FancyZonesEditor/FancyZonesEditor.csproj @@ -0,0 +1,193 @@ + + + + + Debug + AnyCPU + {5CCC8468-DEC8-4D36-99D4-5C891BEBD481} + WinExe + FancyZonesEditor + FancyZonesEditor + v4.7.2 + 512 + {60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} + 4 + true + + + + + + x64 + true + full + false + ..\..\..\..\..\x64\Debug\modules\ + DEBUG;TRACE + prompt + 4 + false + + + x64 + pdbonly + true + $(SolutionDir)$(Platform)\$(Configuration)\modules\ + TRACE + prompt + 4 + + + + + + + + + + + + + + + + 4.0 + + + + + + + + MSBuild:Compile + Designer + + + CanvasEditor.xaml + + + + GridEditor.xaml + + + GridResizer.xaml + + + LayoutPreview.xaml + + + + + + + EditorOverlay.xaml + + + + GridEditorWindow.xaml + + + WindowLayout.xaml + + + CanvasEditorWindow.xaml + + + CanvasZone.xaml + + + GridZone.xaml + + + Designer + MSBuild:Compile + + + Designer + MSBuild:Compile + + + Designer + MSBuild:Compile + + + Designer + MSBuild:Compile + + + MSBuild:Compile + Designer + + + App.xaml + Code + + + MainWindow.xaml + Code + + + Designer + MSBuild:Compile + + + Designer + MSBuild:Compile + + + Designer + MSBuild:Compile + + + Designer + MSBuild:Compile + + + MSBuild:Compile + Designer + + + Designer + MSBuild:Compile + + + + + Code + + + True + True + Resources.resx + + + True + Settings.settings + True + + + ResXFileCodeGenerator + Resources.Designer.cs + + + SettingsSingleFileGenerator + Settings.Designer.cs + + + + + + + + 2.0.0-alpha0455 + + + + + + + + + + + \ No newline at end of file diff --git a/src/modules/fancyzones/editor/FancyZonesEditor/GridEditor.xaml b/src/modules/fancyzones/editor/FancyZonesEditor/GridEditor.xaml new file mode 100644 index 0000000000..d223e9165f --- /dev/null +++ b/src/modules/fancyzones/editor/FancyZonesEditor/GridEditor.xaml @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/modules/fancyzones/editor/FancyZonesEditor/GridEditor.xaml.cs b/src/modules/fancyzones/editor/FancyZonesEditor/GridEditor.xaml.cs new file mode 100644 index 0000000000..d4f382e58a --- /dev/null +++ b/src/modules/fancyzones/editor/FancyZonesEditor/GridEditor.xaml.cs @@ -0,0 +1,911 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows; +using System.Windows.Controls; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Input; +using System.Windows.Media; +using System.Windows.Media.Imaging; +using System.Windows.Navigation; +using System.Windows.Shapes; +using FancyZonesEditor.Models; + + +namespace FancyZonesEditor +{ + /// + /// GridEditor is how you tweak an initial GridLayoutModel before saving + /// + public partial class GridEditor : UserControl + { + public static readonly DependencyProperty ModelProperty = DependencyProperty.Register("Model", typeof(GridLayoutModel), typeof(GridEditor), new PropertyMetadata(null, OnGridDimensionsChanged)); + + public GridEditor() + { + InitializeComponent(); + Loaded += GridEditor_Loaded; + ((App)Application.Current).ZoneSettings.PropertyChanged += ZoneSettings_PropertyChanged; + } + + private void GridEditor_Loaded(object sender, RoutedEventArgs e) + { + GridLayoutModel model = (GridLayoutModel)DataContext; + if (model != null) + { + int rows = model.Rows; + int cols = model.Columns; + _rowInfo = new RowColInfo[rows]; + for (int row = 0; row < rows; row++) + { + _rowInfo[row] = new RowColInfo(model.RowPercents[row]); + } + _colInfo = new RowColInfo[cols]; + for (int col = 0; col < cols; col++) + { + _colInfo[col] = new RowColInfo(model.ColumnPercents[col]); + } + + int maxIndex = 0; + for (int row = 0; row < rows; row++) + { + for (int col = 0; col < cols; col++) + { + maxIndex = Math.Max(maxIndex, model.CellChildMap[row, col]); + } + } + for (int i = 0; i <= maxIndex; i++) + { + AddZone(); + } + } + + Model = model; + if (Model == null) + { + Model = new GridLayoutModel(); + DataContext = Model; + } + Model.PropertyChanged += OnGridDimensionsChanged; + AddDragHandles(); + } + + private void ZoneSettings_PropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e) + { + Size actualSize = new Size(ActualWidth, ActualHeight); + if (actualSize.Width > 0) + { + ArrangeGridRects(actualSize); + } + } + + public GridLayoutModel Model + { + get { return (GridLayoutModel)GetValue(ModelProperty); } + set { SetValue(ModelProperty, value); } + } + + public Panel PreviewPanel { get { return Preview; } } + + private void OnFullSplit(object o, SplitEventArgs e) + { + UIElementCollection previewChildren = Preview.Children; + UIElement splitee = (UIElement)o; + + GridLayoutModel model = Model; + int spliteeIndex = previewChildren.IndexOf(splitee); + + int rows = model.Rows; + int cols = model.Columns; + _startRow = -1; + _startCol = -1; + + for (int row = rows - 1; row >= 0; row--) + { + for (int col = cols - 1; col >= 0; col--) + { + if (model.CellChildMap[row, col] == spliteeIndex) + { + RemoveDragHandles(); + _startRow = _endRow = row; + _startCol = _endCol = col; + ExtendRangeToHaveEvenCellEdges(); + + for (row = _startRow; row <= _endRow; row++) + { + for (col = _startCol; col <= _endCol; col++) + { + if ((row != _startRow) || (col != _startCol)) + { + model.CellChildMap[row, col] = AddZone(); + } + } + } + OnGridDimensionsChanged(); + return; + } + } + } + } + + private void ExtendRangeToHaveEvenCellEdges() + { + // extend each edge of the [(_startCol, _startRow) - (_endCol, _endRow)] range based on merged cells until you have 4 straight edges with no "straddling cells" + + GridLayoutModel model = Model; + + while (_startRow > 0) + { + bool dirty = false; + for (int col = _startCol; col <= _endCol; col++) + { + if (model.CellChildMap[_startRow - 1, col] == model.CellChildMap[_startRow, col]) + { + _startRow--; + dirty = true; + break; + } + } + if (!dirty) + { + break; + } + } + + while (_endRow < model.Rows - 1) + { + bool dirty = false; + for (int col = _startCol; col <= _endCol; col++) + { + if (model.CellChildMap[_endRow + 1, col] == model.CellChildMap[_endRow, col]) + { + _endRow++; + dirty = true; + break; + } + } + if (!dirty) + { + break; + } + } + + while (_startCol > 0) + { + bool dirty = false; + for (int row = _startRow; row <= _endRow; row++) + { + if (model.CellChildMap[row, _startCol - 1] == model.CellChildMap[row, _startCol]) + { + _startCol--; + dirty = true; + break; + } + } + if (!dirty) + { + break; + } + } + + while (_endCol < model.Columns - 1) + { + bool dirty = false; + for (int row = _startRow; row <= _endRow; row++) + { + if (model.CellChildMap[row, _endCol + 1] == model.CellChildMap[row, _endCol]) + { + _endCol++; + dirty = true; + break; + } + } + if (!dirty) + { + break; + } + } + + } + + private void OnSplit(object o, SplitEventArgs e) + { + UIElementCollection previewChildren = Preview.Children; + GridZone splitee = (GridZone)o; + + int spliteeIndex = previewChildren.IndexOf(splitee); + GridLayoutModel model = Model; + + int rows = model.Rows; + int cols = model.Columns; + int foundRow = -1; + int foundCol = -1; + + for (int row = 0; row < rows; row++) + { + for (int col = 0; col < cols; col++) + { + if (model.CellChildMap[row, col] == spliteeIndex) + { + foundRow = row; + foundCol = col; + break; + } + } + + if (foundRow != -1) + { + break; + } + } + + + int newChildIndex = AddZone(); + + double offset = e.Offset; + + + if (e.Orientation == Orientation.Vertical) + { + if (splitee.VerticalSnapPoints != null) + { + offset += Canvas.GetLeft(splitee); + int count = splitee.VerticalSnapPoints.Length; + bool foundExistingSplit = false; + + for (int i = 0; i <= count; i++) + { + if (foundExistingSplit) + { + int walkRow = foundRow; + while ((walkRow < rows) && (model.CellChildMap[walkRow, foundCol + i] == spliteeIndex)) + { + model.CellChildMap[walkRow++, foundCol + i] = newChildIndex; + } + } + if (_colInfo[foundCol + i].End == offset) + { + foundExistingSplit = true; + // use existing division + } + } + + if (foundExistingSplit) + { + OnGridDimensionsChanged(); + return; + } + + while (_colInfo[foundCol].End < offset) + { + foundCol++; + } + offset -= _colInfo[foundCol].Start; + } + + AddDragHandle(Orientation.Vertical, cols - 1); + cols++; + int[,] newCellChildMap = new int[rows, cols]; + int[] newColPercents = new int[cols]; + RowColInfo[] newColInfo = new RowColInfo[cols]; + + int sourceCol = 0; + for (int col = 0; col < cols; col++) + { + for (int row = 0; row < rows; row++) + { + if ((col > foundCol) && (model.CellChildMap[row, sourceCol] == spliteeIndex)) + { + newCellChildMap[row, col] = newChildIndex; + } + else + { + newCellChildMap[row, col] = model.CellChildMap[row, sourceCol]; + } + } + if (col != foundCol) + { + sourceCol++; + } + } + model.CellChildMap = newCellChildMap; + + sourceCol = 0; + for (int col = 0; col < cols; col++) + { + if (col == foundCol) + { + RowColInfo[] split = _colInfo[col].Split(offset); + newColPercents[col] = split[0].Percent; + newColInfo[col++] = split[0]; + newColPercents[col] = split[1].Percent; + newColInfo[col] = split[1]; + sourceCol++; + } + else + { + newColPercents[col] = model.ColumnPercents[sourceCol]; + newColInfo[col] = _colInfo[sourceCol++]; + } + } + _colInfo = newColInfo; + model.ColumnPercents = newColPercents; + + model.Columns++; + } + else // Horizontal + { + + if (splitee.HorizontalSnapPoints != null) + { + offset += Canvas.GetTop(splitee); + int count = splitee.HorizontalSnapPoints.Length; + bool foundExistingSplit = false; + + for (int i = 0; i <= count; i++) + { + if (foundExistingSplit) + { + int walkCol = foundCol; + while ((walkCol < cols) && (model.CellChildMap[foundRow + i, walkCol] == spliteeIndex)) + { + model.CellChildMap[foundRow + i, walkCol] = newChildIndex; + } + } + if (_rowInfo[foundRow + i].End == offset) + { + foundExistingSplit = true; + // use existing division + } + } + + if (foundExistingSplit) + { + OnGridDimensionsChanged(); + return; + } + + while (_rowInfo[foundRow].End < offset) + { + foundRow++; + } + offset -= _rowInfo[foundRow].Start; + + } + + AddDragHandle(Orientation.Horizontal, rows - 1); + rows++; + int[,] newCellChildMap = new int[rows, cols]; + int[] newRowPercents = new int[rows]; + RowColInfo[] newRowInfo = new RowColInfo[rows]; + + int sourceRow = 0; + for (int row = 0; row < rows; row++) + { + for (int col = 0; col < cols; col++) + { + if ((row > foundRow) && (model.CellChildMap[sourceRow, col] == spliteeIndex)) + { + newCellChildMap[row, col] = newChildIndex; + } + else + { + newCellChildMap[row, col] = model.CellChildMap[sourceRow, col]; + } + } + if (row != foundRow) + { + sourceRow++; + } + } + model.CellChildMap = newCellChildMap; + + sourceRow = 0; + for (int row = 0; row < rows; row++) + { + if (row == foundRow) + { + RowColInfo[] split = _rowInfo[row].Split(offset); + newRowPercents[row] = split[0].Percent; + newRowInfo[row++] = split[0]; + newRowPercents[row] = split[1].Percent; + newRowInfo[row] = split[1]; + sourceRow++; + } + else + { + newRowPercents[row] = model.RowPercents[sourceRow]; + newRowInfo[row] = _rowInfo[sourceRow++]; + } + } + _rowInfo = newRowInfo; + model.RowPercents = newRowPercents; + + model.Rows++; + } + } + + private void RemoveDragHandles() + { + AdornerLayer.Children.Clear(); + } + + private void AddDragHandles() + { + if (AdornerLayer.Children.Count == 0) + { + int interiorRows = Model.Rows - 1; + int interiorCols = Model.Columns - 1; + + for (int row = 0; row < interiorRows; row++) + { + AddDragHandle(Orientation.Horizontal, row); + } + + for (int col = 0; col < interiorCols; col++) + { + AddDragHandle(Orientation.Vertical, col); + } + } + } + + private void AddDragHandle(Orientation orientation, int index) + { + GridResizer resizer = new GridResizer(); + resizer.Orientation = orientation; + resizer.Index = index; + resizer.Model = Model; + resizer.DragDelta += Resizer_DragDelta; + if (orientation == Orientation.Vertical) + { + index += (Model.Rows - 1); + } + AdornerLayer.Children.Insert(index, resizer); + } + + private void DeleteZone(int index) + { + IList freeZones = Model.FreeZones; + + if (freeZones.Contains(index)) + { + return; + } + + freeZones.Add(index); + GridZone zone = (GridZone)Preview.Children[index]; + zone.Visibility = Visibility.Hidden; + zone.MinHeight = 0; + zone.MinWidth = 0; + } + + private int AddZone() + { + GridZone zone; + if (Model != null) + { + IList freeZones = Model.FreeZones; + + // first check free list + if (freeZones.Count > 0) + { + int freeIndex = freeZones[0]; + freeZones.RemoveAt(0); + zone = (GridZone)Preview.Children[freeIndex]; + zone.Visibility = Visibility.Visible; + return freeIndex; + } + } + + zone = new GridZone(); + zone.Split += OnSplit; + zone.MergeDrag += OnMergeDrag; + zone.MergeComplete += OnMergeComplete; + zone.FullSplit += OnFullSplit; + Preview.Children.Add(zone); + return Preview.Children.Count - 1; + } + + private void OnGridDimensionsChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e) + { + if ((e.PropertyName == "Rows") || (e.PropertyName == "Columns")) + { + OnGridDimensionsChanged(); + } + } + private static void OnGridDimensionsChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) + { + ((GridEditor)d).OnGridDimensionsChanged(); + } + private void OnGridDimensionsChanged() + { + GridLayoutModel model = Model; + + Size actualSize = new Size(ActualWidth, ActualHeight); + if (actualSize.Width > 0) + { + ArrangeGridRects(actualSize); + } + } + + private void ArrangeGridRects(Size arrangeSize) + { + GridLayoutModel model = Model; + if (model == null) + { + return; + } + + Settings settings = ((App)(Application.Current)).ZoneSettings; + int spacing = settings.Spacing; + int gutter = settings.Spacing; + + int cols = model.Columns; + int rows = model.Rows; + + double totalWidth = arrangeSize.Width - (gutter * 2) - (spacing * (cols - 1)); + double totalHeight = arrangeSize.Height - (gutter * 2) - (spacing * (rows - 1)); + + double top = gutter; + for (int row = 0; row < rows; row++) + { + double cellHeight = _rowInfo[row].SetExtent(top, totalHeight); + top += cellHeight + spacing; + } + + double left = gutter; + for (int col = 0; col < cols; col++) + { + double cellWidth = _colInfo[col].SetExtent(left, totalWidth); + left += cellWidth + spacing; + } + + + + for (int row = 0; row < rows; row++) + { + for (int col = 0; col < cols; col++) + { + int i = model.CellChildMap[row, col]; + if (((row == 0) || (model.CellChildMap[row - 1, col] != i)) && + ((col == 0) || (model.CellChildMap[row, col - 1] != i))) + { + // this is not a continuation of a span + GridZone zone = (GridZone)Preview.Children[i]; + left = _colInfo[col].Start; + top = _rowInfo[row].Start; + Canvas.SetLeft(zone, left); + Canvas.SetTop(zone, top); + + int maxRow = row; + while (((maxRow + 1) < rows) && (model.CellChildMap[maxRow + 1, col] == i)) + { + maxRow++; + } + zone.HorizontalSnapPoints = null; + if (maxRow > row) + { + zone.HorizontalSnapPoints = new double[maxRow - row]; + int pointsIndex = 0; + for (int walk = row; walk < maxRow; walk++) + { + zone.HorizontalSnapPoints[pointsIndex++] = _rowInfo[walk].End + spacing / 2 - top; + } + } + + int maxCol = col; + while (((maxCol + 1) < cols) && (model.CellChildMap[row, maxCol + 1] == i)) + { + maxCol++; + } + + zone.VerticalSnapPoints = null; + if (maxCol > col) + { + zone.VerticalSnapPoints = new double[maxCol - col]; + int pointsIndex = 0; + for (int walk = col; walk < maxCol; walk++) + { + zone.VerticalSnapPoints[pointsIndex++] = _colInfo[walk].End + spacing / 2 - left; + } + } + + zone.MinWidth = _colInfo[maxCol].End - left; + zone.MinHeight = _rowInfo[maxRow].End - top; + } + } + } + + AddDragHandles(); + int childIndex = 0; + UIElementCollection adornerChildren = AdornerLayer.Children; + for (int row = 0; row < rows - 1; row++) + { + GridResizer resizer = (GridResizer)adornerChildren[childIndex++]; + int startCol = -1; + int endCol = cols - 1; + for (int col = 0; col < cols; col++) + { + if ((startCol == -1) && (model.CellChildMap[row, col] != model.CellChildMap[row + 1, col])) + { + startCol = col; + } + else if ((startCol != -1) && (model.CellChildMap[row, col] == model.CellChildMap[row + 1, col])) + { + endCol = col - 1; + break; + } + } + if (startCol != -1) + { + Canvas.SetTop(resizer, _rowInfo[row].End + (spacing / 2) - 24); // hard coding this as (resizer.ActualHeight / 2) will still evaluate to 0 here ... a layout hasn't yet happened + Canvas.SetLeft(resizer, (_colInfo[endCol].End + _colInfo[startCol].Start) / 2); + } + else + { + resizer.Visibility = Visibility.Collapsed; + } + } + + for (int col = 0; col < cols - 1; col++) + { + GridResizer resizer = (GridResizer)adornerChildren[childIndex++]; + int startRow = -1; + int endRow = rows - 1;; + for (int row = 0; row < rows; row++) + { + if ((startRow == -1) && (model.CellChildMap[row, col] != model.CellChildMap[row, col + 1])) + { + startRow = row; + } + else if ((startRow != -1) && (model.CellChildMap[row, col] == model.CellChildMap[row, col + 1])) + { + endRow = row - 1; + break; + } + } + if (startRow != -1) + { + Canvas.SetLeft(resizer, _colInfo[col].End + (spacing / 2) - 24); // hard coding this as (resizer.ActualWidth / 2) will still evaluate to 0 here ... a layout hasn't yet happened + Canvas.SetTop(resizer, (_rowInfo[endRow].End + _rowInfo[startRow].Start) / 2); + } + else + { + resizer.Visibility = Visibility.Collapsed; + } + } + } + + private void Resizer_DragDelta(object sender, System.Windows.Controls.Primitives.DragDeltaEventArgs e) + { + GridResizer resizer = (GridResizer)sender; + int[] percents; + RowColInfo[] info; + int index = resizer.Index; + double delta; + + if (resizer.Orientation == Orientation.Vertical) + { + percents = Model.ColumnPercents; + info = _colInfo; + delta = e.HorizontalChange; + } + else + { + percents = Model.RowPercents; + info = _rowInfo; + delta = e.VerticalChange; + } + + double currentExtent = info[index].Extent; + double newExtent = currentExtent + delta; + int currentPercent = info[index].Percent; + int totalPercent = currentPercent + info[index + 1].Percent; + + int newPercent = (int)(currentPercent * newExtent / currentExtent); + + if ((newPercent > 0) && (newPercent < totalPercent)) + { + percents[index] = info[index].Percent = newPercent; + percents[index + 1] = info[index + 1].Percent = totalPercent - newPercent; + + Size actualSize = new Size(ActualWidth, ActualHeight); + ArrangeGridRects(actualSize); + } + } + + private Point _startDragPos = new Point(-1, -1); + + private void OnMergeComplete(object o, MouseButtonEventArgs e) + { + Point mousePoint = e.GetPosition(Preview); + _startDragPos = new Point(-1, -1); + + int mergedIndex = Model.CellChildMap[_startRow, _startCol]; + + for (int row = _startRow; row <= _endRow; row++) + { + for (int col = _startCol; col <= _endCol; col++) + { + if (Model.CellChildMap[row, col] != mergedIndex) + { + // selection is more than one cell, merge is valid + MergePanel.Visibility = Visibility.Visible; + Canvas.SetTop(MergeButtons, mousePoint.Y); + Canvas.SetLeft(MergeButtons, mousePoint.X); + return; + } + } + } + + // merge is only one zone. cancel merge; + ClearSelection(); + } + + private void OnMergeDrag(object o, MouseEventArgs e) + { + if (_startDragPos.X == -1) + { + _startDragPos = e.GetPosition(Preview); + } + + GridLayoutModel model = Model; + + if (_startDragPos.X != -1) + { + Point dragPos = e.GetPosition(Preview); + + _startRow = -1; + _endRow = -1; + _startCol = -1; + _endCol = -1; + + int rows = model.Rows; + int cols = model.Columns; + + double minX, maxX; + if (dragPos.X < _startDragPos.X) + { + minX = dragPos.X; + maxX = _startDragPos.X; + } + else + { + minX = _startDragPos.X; + maxX = dragPos.X; + } + + double minY, maxY; + if (dragPos.Y < _startDragPos.Y) + { + minY = dragPos.Y; + maxY = _startDragPos.Y; + } + else + { + minY = _startDragPos.Y; + maxY = dragPos.Y; + } + + for (int row = 0; row < rows; row++) + { + if (_startRow == -1) + { + if (_rowInfo[row].End > minY) + { + _startRow = row; + } + } + else if (_rowInfo[row].Start > maxY) + { + _endRow = row - 1; + break; + } + } + if ((_startRow >= 0) && (_endRow == -1)) + { + _endRow = rows - 1; + } + + for (int col = 0; col < cols; col++) + { + if (_startCol == -1) + { + if (_colInfo[col].End > minX) + { + _startCol = col; + } + } + else if (_colInfo[col].Start > maxX) + { + _endCol = col - 1; + break; + } + } + if ((_startCol >= 0) && (_endCol == -1)) + { + _endCol = cols - 1; + } + + ExtendRangeToHaveEvenCellEdges(); + + for (int row = 0; row < rows; row++) + { + for (int col = 0; col < cols; col++) + { + ((GridZone)Preview.Children[model.CellChildMap[row, col]]).IsSelected = (row >= _startRow) && (row <= _endRow) && (col >= _startCol) && (col <= _endCol); + } + } + + e.Handled = true; + } + base.OnPreviewMouseMove(e); + } + + private void ClearSelection() + { + foreach (UIElement zone in Preview.Children) + { + ((GridZone) zone).IsSelected = false; + } + } + + private void MergeClick(object sender, RoutedEventArgs e) + { + GridLayoutModel model = Model; + + MergePanel.Visibility = Visibility.Collapsed; + int mergedIndex = model.CellChildMap[_startRow, _startCol]; + + for (int row = _startRow; row <= _endRow; row++) + { + for (int col = _startCol; col <= _endCol; col++) + { + int childIndex = model.CellChildMap[row, col]; + if (childIndex != mergedIndex) + { + model.CellChildMap[row, col] = mergedIndex; + DeleteZone(childIndex); + } + } + } + OnGridDimensionsChanged(); + ClearSelection(); + } + + private void CancelClick(object sender, RoutedEventArgs e) + { + MergePanel.Visibility = Visibility.Collapsed; + ClearSelection(); + } + + private void MergePanelMouseUp(object sender, MouseButtonEventArgs e) + { + CancelClick(null, null); + } + + protected override Size ArrangeOverride(Size arrangeBounds) + { + Size returnSize = base.ArrangeOverride(arrangeBounds); + ArrangeGridRects(arrangeBounds); + + return returnSize; + } + + Point _mouseDownPos = new Point(-1, -1); + private RowColInfo[] _rowInfo; + private RowColInfo[] _colInfo; + + private int _startRow = -1; + private int _endRow = -1; + private int _startCol = -1; + private int _endCol = -1; + + private const int c_multiplier = 10000; + + } + +} diff --git a/src/modules/fancyzones/editor/FancyZonesEditor/GridEditorWindow.xaml b/src/modules/fancyzones/editor/FancyZonesEditor/GridEditorWindow.xaml new file mode 100644 index 0000000000..71e0e3a39c --- /dev/null +++ b/src/modules/fancyzones/editor/FancyZonesEditor/GridEditorWindow.xaml @@ -0,0 +1,184 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

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%0AlAfv^N8$ID7y0 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 z znKBNO$*S5no;hpU{JeYW)_q(pjGU45$oOF2mg*FUZw~QR8_m zXCnNSPn~&~^Qj}27)hYtjS($oI;MHL7gd3@>Ft$oQ~+o$L8V!60d)aAdsX_(GrMiK zOkshqtt@m7>!sNOa`pxKxt?5QXVj%i&g>QqX&7kLAf$?Q2?vf;9AJ!+a2iDk>GCdl z`6gg2?vIOF5STIn>~s2b>$NqSx0kQv4OucRg{R8E?j{=UPm~M1l)_(+=-K;f1cpl& zwBbr)7%^i1M_5Z~?;{Y_UeLQtk`e$rkoa40IBN>ggz5f
X~qgOIlomRR3PJ9Cmt$g-0=a1wUk^P4jDK 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
G?NZp)2RAO_8ChGVL~ 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