From 3da4221af3ebabae70ac0138beb4bd9a3275b6b8 Mon Sep 17 00:00:00 2001 From: dcompunet <117437050+dcompunet@users.noreply.github.com> Date: Fri, 4 Nov 2022 12:38:34 +0200 Subject: [PATCH] Initial --- Resources/Rubik-VariableFont_wght.ttf | Bin 0 -> 207728 bytes Resources/appicon.ico | Bin 0 -> 15889 bytes Source/.editorconfig | 4 + Source/Compunet.SudokuSolver.sln | 30 ++ Source/Compunet.SudokuSolver/App.xaml | 18 + Source/Compunet.SudokuSolver/App.xaml.cs | 46 +++ Source/Compunet.SudokuSolver/AppWindow.xaml | 70 ++++ .../Compunet.SudokuSolver/AppWindow.xaml.cs | 38 ++ Source/Compunet.SudokuSolver/AssemblyInfo.cs | 10 + .../InvokeCommandOnKeyDownBehavior.cs | 38 ++ .../Behaviors/SidebarCollapseBehavior.cs | 31 ++ .../Behaviors/SystemWindowButtonBehavior.cs | 42 +++ .../SystemWindowButtonCloseBehavior.cs | 12 + .../SystemWindowButtonMaximaizeBehavior.cs | 17 + .../SystemWindowButtonMinimaizeBehavior.cs | 12 + .../Compunet.SudokuSolver.csproj | 49 +++ Source/Compunet.SudokuSolver/Container/IoC.cs | 23 ++ .../Controls/BaseWindow.cs | 9 + .../Controls/ButtonBubbleChrome.xaml | 69 ++++ .../Controls/ButtonBubbleChrome.xaml.cs | 333 ++++++++++++++++++ .../Controls/ButtonChrome.cs | 72 ++++ .../Controls/SudokuListBox.xaml | 70 ++++ .../Controls/SudokuListBox.xaml.cs | 73 ++++ .../Controls/SudokuListBoxItem.xaml | 85 +++++ .../Controls/SudokuListBoxItem.xaml.cs | 64 ++++ .../Controls/WindowChrome.cs | 23 ++ .../Controls/Windows/DialogWindow.xaml | 65 ++++ .../Controls/Windows/DialogWindow.xaml.cs | 23 ++ .../Core/.Board/BoardGeneratorEngine.cs | 126 +++++++ .../Core/.Board/BoardValidationExtensions.cs | 104 ++++++ .../Core/.Board/SudokuBoardCreator.cs | 184 ++++++++++ .../Core/.Board/SudokuBoardGenerator.cs | 64 ++++ .../Core/.Board/SudokuGeneratorStatus.cs | 11 + .../Core/.Board/SudokuPuzzleLevel.cs | 9 + .../Core/.Interfaces/IBoard.cs | 14 + .../Core/.Interfaces/IBoardCallValue.cs | 11 + .../Core/.Interfaces/IEditableBoard.cs | 8 + .../.Interfaces/IEditableBoardCallValue.cs | 8 + .../Core/.Structs/Cell.cs | 110 ++++++ .../Core/.Structs/Value.cs | 57 +++ .../Extensions/Generic/ListExtensions.cs | 76 ++++ .../Reactive/ObservableExtension.cs | 31 ++ Source/Compunet.SudokuSolver/FodyWeavers.xml | 3 + Source/Compunet.SudokuSolver/FodyWeavers.xsd | 74 ++++ .../Mvvm/AppSidebarViewModel.cs | 40 +++ .../Mvvm/AppWindowViewModel.cs | 43 +++ .../Mvvm/AsyncBindable{T}.cs | 36 ++ .../Mvvm/BindableBase.cs | 14 + .../Mvvm/Commands/IRxCommand.cs | 10 + .../Mvvm/Commands/IRxCommand{T}.cs | 12 + .../Mvvm/Commands/RelayCommand.cs | 75 ++++ .../Mvvm/Commands/RxCommand.cs | 14 + .../Mvvm/Commands/RxCommand{T}.cs | 61 ++++ .../Converters/BooleanConvertConverter.cs | 13 + .../BooleanToVisibilityConverter.cs | 14 + .../Mvvm/Converters/ConverterExtension{T}.cs | 38 ++ .../Mvvm/CreatePuzzleDialogViewModel.cs | 33 ++ .../Mvvm/SudokuViewModel.cs | 75 ++++ .../Platform/BasePlatformWindow.cs | 137 +++++++ .../Platform/PInvoke/User32.cs | 54 +++ .../Services/.Dialogs/IDialogService.cs | 82 +++++ .../Services/.Exit/ExitService.cs | 19 + .../Services/.Exit/IExitService.cs | 10 + .../Services/.Settings/ISettingsService.cs | 13 + .../Services/.Settings/SettingsService.cs | 65 ++++ .../.SudokuApp/ISudokuInputService.cs | 11 + .../.SudokuApp/ISudokuStoreService.cs | 26 ++ .../Services/.SudokuApp/SolutionStatus.cs | 10 + .../Services/.SudokuApp/SudokuInputService.cs | 50 +++ .../Services/.SudokuApp/SudokuStoreService.cs | 151 ++++++++ .../Services/CreatePuzzleDialogService.cs | 45 +++ .../Services/ICreatePuzzleDialogService.cs | 9 + .../Services/IThemeService.cs | 11 + .../Theming/Buttons.xaml | 196 +++++++++++ .../Compunet.SudokuSolver/Theming/Fonts.xaml | 30 ++ .../Compunet.SudokuSolver/Theming/Icons.xaml | 202 +++++++++++ .../Theming/TextBox.xaml | 103 ++++++ .../Theming/Themes/DarkTheme.xaml | 45 +++ .../Theming/Themes/LightTheme.xaml | 46 +++ .../Theming/Themes/ThemeManager.cs | 116 ++++++ .../Theming/ToolTip.xaml | 33 ++ .../Theming/Windows.xaml | 176 +++++++++ ...\342\200\217\342\200\217dark-theme.ctheme" | 17 + ...342\200\217\342\200\217light-theme.ctheme" | 17 + .../all-themes/green-dark-theme.ctheme | 17 + .../all-themes/green-light-theme.ctheme | 17 + .../Compunet.SudokuSolver/Utilities/MathEx.cs | 12 + .../Utilities/SemaphoreLocker.cs | 87 +++++ .../Utilities/StoryboardHelpers.cs | 64 ++++ .../Compunet.SudokuSolver/Utilities/Tasks.cs | 14 + .../Utilities/VisualTreeHelperEx.cs | 48 +++ .../Views/AppSidebarControl.xaml | 73 ++++ .../Views/AppSidebarControl.xaml.cs | 28 ++ .../Views/CreateSudokuPuzzleControl.xaml | 89 +++++ .../Views/CreateSudokuPuzzleControl.xaml.cs | 14 + .../Views/SubmitFeedbackContent.xaml | 113 ++++++ .../Views/SubmitFeedbackContent.xaml.cs | 12 + .../Views/SudokuControl.xaml | 107 ++++++ .../Views/SudokuControl.xaml.cs | 24 ++ .../Windows/RedoKeyBinding.cs | 13 + .../Windows/UndoKeyBinding.cs | 13 + Source/Compunet.SudokuSolver/appicon.ico | Bin 0 -> 15889 bytes 102 files changed, 5113 insertions(+) create mode 100644 Resources/Rubik-VariableFont_wght.ttf create mode 100644 Resources/appicon.ico create mode 100644 Source/.editorconfig create mode 100644 Source/Compunet.SudokuSolver.sln create mode 100644 Source/Compunet.SudokuSolver/App.xaml create mode 100644 Source/Compunet.SudokuSolver/App.xaml.cs create mode 100644 Source/Compunet.SudokuSolver/AppWindow.xaml create mode 100644 Source/Compunet.SudokuSolver/AppWindow.xaml.cs create mode 100644 Source/Compunet.SudokuSolver/AssemblyInfo.cs create mode 100644 Source/Compunet.SudokuSolver/Behaviors/InvokeCommandOnKeyDownBehavior.cs create mode 100644 Source/Compunet.SudokuSolver/Behaviors/SidebarCollapseBehavior.cs create mode 100644 Source/Compunet.SudokuSolver/Behaviors/SystemWindowButtonBehavior.cs create mode 100644 Source/Compunet.SudokuSolver/Behaviors/SystemWindowButtonCloseBehavior.cs create mode 100644 Source/Compunet.SudokuSolver/Behaviors/SystemWindowButtonMaximaizeBehavior.cs create mode 100644 Source/Compunet.SudokuSolver/Behaviors/SystemWindowButtonMinimaizeBehavior.cs create mode 100644 Source/Compunet.SudokuSolver/Compunet.SudokuSolver.csproj create mode 100644 Source/Compunet.SudokuSolver/Container/IoC.cs create mode 100644 Source/Compunet.SudokuSolver/Controls/BaseWindow.cs create mode 100644 Source/Compunet.SudokuSolver/Controls/ButtonBubbleChrome.xaml create mode 100644 Source/Compunet.SudokuSolver/Controls/ButtonBubbleChrome.xaml.cs create mode 100644 Source/Compunet.SudokuSolver/Controls/ButtonChrome.cs create mode 100644 Source/Compunet.SudokuSolver/Controls/SudokuListBox.xaml create mode 100644 Source/Compunet.SudokuSolver/Controls/SudokuListBox.xaml.cs create mode 100644 Source/Compunet.SudokuSolver/Controls/SudokuListBoxItem.xaml create mode 100644 Source/Compunet.SudokuSolver/Controls/SudokuListBoxItem.xaml.cs create mode 100644 Source/Compunet.SudokuSolver/Controls/WindowChrome.cs create mode 100644 Source/Compunet.SudokuSolver/Controls/Windows/DialogWindow.xaml create mode 100644 Source/Compunet.SudokuSolver/Controls/Windows/DialogWindow.xaml.cs create mode 100644 Source/Compunet.SudokuSolver/Core/.Board/BoardGeneratorEngine.cs create mode 100644 Source/Compunet.SudokuSolver/Core/.Board/BoardValidationExtensions.cs create mode 100644 Source/Compunet.SudokuSolver/Core/.Board/SudokuBoardCreator.cs create mode 100644 Source/Compunet.SudokuSolver/Core/.Board/SudokuBoardGenerator.cs create mode 100644 Source/Compunet.SudokuSolver/Core/.Board/SudokuGeneratorStatus.cs create mode 100644 Source/Compunet.SudokuSolver/Core/.Board/SudokuPuzzleLevel.cs create mode 100644 Source/Compunet.SudokuSolver/Core/.Interfaces/IBoard.cs create mode 100644 Source/Compunet.SudokuSolver/Core/.Interfaces/IBoardCallValue.cs create mode 100644 Source/Compunet.SudokuSolver/Core/.Interfaces/IEditableBoard.cs create mode 100644 Source/Compunet.SudokuSolver/Core/.Interfaces/IEditableBoardCallValue.cs create mode 100644 Source/Compunet.SudokuSolver/Core/.Structs/Cell.cs create mode 100644 Source/Compunet.SudokuSolver/Core/.Structs/Value.cs create mode 100644 Source/Compunet.SudokuSolver/Extensions/Generic/ListExtensions.cs create mode 100644 Source/Compunet.SudokuSolver/Extensions/Reactive/ObservableExtension.cs create mode 100644 Source/Compunet.SudokuSolver/FodyWeavers.xml create mode 100644 Source/Compunet.SudokuSolver/FodyWeavers.xsd create mode 100644 Source/Compunet.SudokuSolver/Mvvm/AppSidebarViewModel.cs create mode 100644 Source/Compunet.SudokuSolver/Mvvm/AppWindowViewModel.cs create mode 100644 Source/Compunet.SudokuSolver/Mvvm/AsyncBindable{T}.cs create mode 100644 Source/Compunet.SudokuSolver/Mvvm/BindableBase.cs create mode 100644 Source/Compunet.SudokuSolver/Mvvm/Commands/IRxCommand.cs create mode 100644 Source/Compunet.SudokuSolver/Mvvm/Commands/IRxCommand{T}.cs create mode 100644 Source/Compunet.SudokuSolver/Mvvm/Commands/RelayCommand.cs create mode 100644 Source/Compunet.SudokuSolver/Mvvm/Commands/RxCommand.cs create mode 100644 Source/Compunet.SudokuSolver/Mvvm/Commands/RxCommand{T}.cs create mode 100644 Source/Compunet.SudokuSolver/Mvvm/Converters/BooleanConvertConverter.cs create mode 100644 Source/Compunet.SudokuSolver/Mvvm/Converters/BooleanToVisibilityConverter.cs create mode 100644 Source/Compunet.SudokuSolver/Mvvm/Converters/ConverterExtension{T}.cs create mode 100644 Source/Compunet.SudokuSolver/Mvvm/CreatePuzzleDialogViewModel.cs create mode 100644 Source/Compunet.SudokuSolver/Mvvm/SudokuViewModel.cs create mode 100644 Source/Compunet.SudokuSolver/Platform/BasePlatformWindow.cs create mode 100644 Source/Compunet.SudokuSolver/Platform/PInvoke/User32.cs create mode 100644 Source/Compunet.SudokuSolver/Services/.Dialogs/IDialogService.cs create mode 100644 Source/Compunet.SudokuSolver/Services/.Exit/ExitService.cs create mode 100644 Source/Compunet.SudokuSolver/Services/.Exit/IExitService.cs create mode 100644 Source/Compunet.SudokuSolver/Services/.Settings/ISettingsService.cs create mode 100644 Source/Compunet.SudokuSolver/Services/.Settings/SettingsService.cs create mode 100644 Source/Compunet.SudokuSolver/Services/.SudokuApp/ISudokuInputService.cs create mode 100644 Source/Compunet.SudokuSolver/Services/.SudokuApp/ISudokuStoreService.cs create mode 100644 Source/Compunet.SudokuSolver/Services/.SudokuApp/SolutionStatus.cs create mode 100644 Source/Compunet.SudokuSolver/Services/.SudokuApp/SudokuInputService.cs create mode 100644 Source/Compunet.SudokuSolver/Services/.SudokuApp/SudokuStoreService.cs create mode 100644 Source/Compunet.SudokuSolver/Services/CreatePuzzleDialogService.cs create mode 100644 Source/Compunet.SudokuSolver/Services/ICreatePuzzleDialogService.cs create mode 100644 Source/Compunet.SudokuSolver/Services/IThemeService.cs create mode 100644 Source/Compunet.SudokuSolver/Theming/Buttons.xaml create mode 100644 Source/Compunet.SudokuSolver/Theming/Fonts.xaml create mode 100644 Source/Compunet.SudokuSolver/Theming/Icons.xaml create mode 100644 Source/Compunet.SudokuSolver/Theming/TextBox.xaml create mode 100644 Source/Compunet.SudokuSolver/Theming/Themes/DarkTheme.xaml create mode 100644 Source/Compunet.SudokuSolver/Theming/Themes/LightTheme.xaml create mode 100644 Source/Compunet.SudokuSolver/Theming/Themes/ThemeManager.cs create mode 100644 Source/Compunet.SudokuSolver/Theming/ToolTip.xaml create mode 100644 Source/Compunet.SudokuSolver/Theming/Windows.xaml create mode 100644 "Source/Compunet.SudokuSolver/Theming/all-themes/depp-orange-\342\200\217\342\200\217dark-theme.ctheme" create mode 100644 "Source/Compunet.SudokuSolver/Theming/all-themes/depp-orange-\342\200\217\342\200\217light-theme.ctheme" create mode 100644 Source/Compunet.SudokuSolver/Theming/all-themes/green-dark-theme.ctheme create mode 100644 Source/Compunet.SudokuSolver/Theming/all-themes/green-light-theme.ctheme create mode 100644 Source/Compunet.SudokuSolver/Utilities/MathEx.cs create mode 100644 Source/Compunet.SudokuSolver/Utilities/SemaphoreLocker.cs create mode 100644 Source/Compunet.SudokuSolver/Utilities/StoryboardHelpers.cs create mode 100644 Source/Compunet.SudokuSolver/Utilities/Tasks.cs create mode 100644 Source/Compunet.SudokuSolver/Utilities/VisualTreeHelperEx.cs create mode 100644 Source/Compunet.SudokuSolver/Views/AppSidebarControl.xaml create mode 100644 Source/Compunet.SudokuSolver/Views/AppSidebarControl.xaml.cs create mode 100644 Source/Compunet.SudokuSolver/Views/CreateSudokuPuzzleControl.xaml create mode 100644 Source/Compunet.SudokuSolver/Views/CreateSudokuPuzzleControl.xaml.cs create mode 100644 Source/Compunet.SudokuSolver/Views/SubmitFeedbackContent.xaml create mode 100644 Source/Compunet.SudokuSolver/Views/SubmitFeedbackContent.xaml.cs create mode 100644 Source/Compunet.SudokuSolver/Views/SudokuControl.xaml create mode 100644 Source/Compunet.SudokuSolver/Views/SudokuControl.xaml.cs create mode 100644 Source/Compunet.SudokuSolver/Windows/RedoKeyBinding.cs create mode 100644 Source/Compunet.SudokuSolver/Windows/UndoKeyBinding.cs create mode 100644 Source/Compunet.SudokuSolver/appicon.ico diff --git a/Resources/Rubik-VariableFont_wght.ttf b/Resources/Rubik-VariableFont_wght.ttf new file mode 100644 index 0000000000000000000000000000000000000000..c253818f315eb97af5f47b185b340e098789f93d GIT binary patch literal 207728 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

+kt=G9@wkLj{Hm80~!KjU6ZZ!8Ep6_!C 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 s9YpZ!S~5FH^p+B;OgzcX8$W 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 Dz&SME literal 0 HcmV?d00001 diff --git a/Resources/appicon.ico b/Resources/appicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..fe395ec526f2719a1304b49c2b6ef4830ccd2a55 GIT binary patch literal 15889 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 Wm6E>Kd*HW*fP##wbg`sK;Qs@X*()pn literal 0 HcmV?d00001 diff --git a/Source/.editorconfig b/Source/.editorconfig new file mode 100644 index 0000000..0f2f33c --- /dev/null +++ b/Source/.editorconfig @@ -0,0 +1,4 @@ +[*.cs] + +# CA1822: Mark members as static +dotnet_diagnostic.CA1822.severity = none diff --git a/Source/Compunet.SudokuSolver.sln b/Source/Compunet.SudokuSolver.sln new file mode 100644 index 0000000..b268966 --- /dev/null +++ b/Source/Compunet.SudokuSolver.sln @@ -0,0 +1,30 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.2.32630.192 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Compunet.SudokuSolver", "Compunet.SudokuSolver\Compunet.SudokuSolver.csproj", "{919C24F3-65B8-41A2-8156-A9A29FEC51FB}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{A6841F4F-45FB-430C-BDCF-358343CDDCBD}" + ProjectSection(SolutionItems) = preProject + .editorconfig = .editorconfig + EndProjectSection +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {919C24F3-65B8-41A2-8156-A9A29FEC51FB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {919C24F3-65B8-41A2-8156-A9A29FEC51FB}.Debug|Any CPU.Build.0 = Debug|Any CPU + {919C24F3-65B8-41A2-8156-A9A29FEC51FB}.Release|Any CPU.ActiveCfg = Release|Any CPU + {919C24F3-65B8-41A2-8156-A9A29FEC51FB}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {C6C6CD8F-B694-45F7-BDC6-5E5B51478904} + EndGlobalSection +EndGlobal diff --git a/Source/Compunet.SudokuSolver/App.xaml b/Source/Compunet.SudokuSolver/App.xaml new file mode 100644 index 0000000..dc88cd9 --- /dev/null +++ b/Source/Compunet.SudokuSolver/App.xaml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + diff --git a/Source/Compunet.SudokuSolver/App.xaml.cs b/Source/Compunet.SudokuSolver/App.xaml.cs new file mode 100644 index 0000000..26fe45c --- /dev/null +++ b/Source/Compunet.SudokuSolver/App.xaml.cs @@ -0,0 +1,46 @@ +using Compunet.SudokuSolver.Container; +using Compunet.SudokuSolver.Mvvm; +using Compunet.SudokuSolver.Services; +using Compunet.SudokuSolver.Theming.Themes; +using Microsoft.Extensions.DependencyInjection; +using System.Windows; + +namespace Compunet.SudokuSolver +{ + public partial class App : Application + { + protected override async void OnStartup(StartupEventArgs e) + { + IServiceCollection services = new ServiceCollection(); + ConfigureServices(services); + + IoC.CreateSimple(services); + + await IoC.Simple.GetRequiredService().Load(); + await IoC.Simple.GetRequiredService().Load(); + + MainWindow = new AppWindow(); + MainWindow.Show(); + } + + private IServiceCollection ConfigureServices(IServiceCollection services) + { + return services.AddTransient() + .AddTransient() + .AddTransient() + .AddTransient() + .AddSingleton() + .AddSingleton() + .AddSingleton() + .AddSingleton() + .AddSingleton() + .AddSingleton(); + } + + protected override void OnExit(ExitEventArgs e) + { + IoC.Simple.GetRequiredService().OnExit(); + IoC.Simple.GetRequiredService().Save().Wait(); + } + } +} diff --git a/Source/Compunet.SudokuSolver/AppWindow.xaml b/Source/Compunet.SudokuSolver/AppWindow.xaml new file mode 100644 index 0000000..95759dd --- /dev/null +++ b/Source/Compunet.SudokuSolver/AppWindow.xaml @@ -0,0 +1,70 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Source/Compunet.SudokuSolver/AppWindow.xaml.cs b/Source/Compunet.SudokuSolver/AppWindow.xaml.cs new file mode 100644 index 0000000..882a875 --- /dev/null +++ b/Source/Compunet.SudokuSolver/AppWindow.xaml.cs @@ -0,0 +1,38 @@ +using Compunet.SudokuSolver.Container; +using Compunet.SudokuSolver.Controls; +using Compunet.SudokuSolver.Mvvm; +using Microsoft.Extensions.DependencyInjection; +using System.Windows; +using System.Windows.Media.Effects; + +namespace Compunet.SudokuSolver +{ + public partial class AppWindow : BaseWindow, IWindowOverlayMode + { + public AppWindow() + { + InitializeComponent(); + DataContext = IoC.Simple.GetRequiredService(); + } + + public void SetOverlay() + { + OverlayBorder.Visibility = Visibility.Visible; + OverlayBorder.Opacity = .5; + Effect = new BlurEffect() { Radius = 10.0 }; + } + + public void CancelOverlay() + { + OverlayBorder.Opacity = 0; + OverlayBorder.Visibility = Visibility.Collapsed; + Effect = null; + } + } + + public interface IWindowOverlayMode + { + void SetOverlay(); + void CancelOverlay(); + } +} diff --git a/Source/Compunet.SudokuSolver/AssemblyInfo.cs b/Source/Compunet.SudokuSolver/AssemblyInfo.cs new file mode 100644 index 0000000..8b5504e --- /dev/null +++ b/Source/Compunet.SudokuSolver/AssemblyInfo.cs @@ -0,0 +1,10 @@ +using System.Windows; + +[assembly: ThemeInfo( + ResourceDictionaryLocation.None, //where theme specific resource dictionaries are located + //(used if a resource is not found in the page, + // or application resource dictionaries) + ResourceDictionaryLocation.SourceAssembly //where the generic resource dictionary is located + //(used if a resource is not found in the page, + // app, or any theme specific resource dictionaries) +)] diff --git a/Source/Compunet.SudokuSolver/Behaviors/InvokeCommandOnKeyDownBehavior.cs b/Source/Compunet.SudokuSolver/Behaviors/InvokeCommandOnKeyDownBehavior.cs new file mode 100644 index 0000000..063f772 --- /dev/null +++ b/Source/Compunet.SudokuSolver/Behaviors/InvokeCommandOnKeyDownBehavior.cs @@ -0,0 +1,38 @@ +using Microsoft.Xaml.Behaviors; +using System.Windows; +using System.Windows.Input; + +namespace Compunet.SudokuSolver.Behaviors +{ + public class InvokeCommandOnKeyDownBehavior : Behavior + { + public static readonly DependencyProperty CommandProperty = + DependencyProperty.Register(nameof(Command), + typeof(ICommand), + typeof(InvokeCommandOnKeyDownBehavior), + new PropertyMetadata(null)); + + + public ICommand Command + { + get => (ICommand)GetValue(CommandProperty); + set => SetValue(CommandProperty, value); + } + + + protected override void OnAttached() + { + AssociatedObject.KeyDown += AssociatedObject_KeyDown; + } + + protected override void OnDetaching() + { + AssociatedObject.KeyDown -= AssociatedObject_KeyDown; + } + + private void AssociatedObject_KeyDown(object sender, KeyEventArgs e) + { + Command?.Execute(e.Key); + } + } +} diff --git a/Source/Compunet.SudokuSolver/Behaviors/SidebarCollapseBehavior.cs b/Source/Compunet.SudokuSolver/Behaviors/SidebarCollapseBehavior.cs new file mode 100644 index 0000000..23eb2a5 --- /dev/null +++ b/Source/Compunet.SudokuSolver/Behaviors/SidebarCollapseBehavior.cs @@ -0,0 +1,31 @@ +using Microsoft.Xaml.Behaviors; +using System.Windows; + +namespace Compunet.SudokuSolver.Behaviors +{ + public class SidebarCollapseBehavior : Behavior + { + public static readonly DependencyProperty HostActualWidthProperty = + DependencyProperty.Register("HostActualWidth", + typeof(double), + typeof(SidebarCollapseBehavior), + new PropertyMetadata(0.0, OnHostActualWidthChanged)); + + private static void OnHostActualWidthChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) + { + } + + public double HostActualWidth + { + get => (double)GetValue(HostActualWidthProperty); + set => SetValue(HostActualWidthProperty, value); + } + + + + protected override void OnAttached() + { + + } + } +} diff --git a/Source/Compunet.SudokuSolver/Behaviors/SystemWindowButtonBehavior.cs b/Source/Compunet.SudokuSolver/Behaviors/SystemWindowButtonBehavior.cs new file mode 100644 index 0000000..cb727f2 --- /dev/null +++ b/Source/Compunet.SudokuSolver/Behaviors/SystemWindowButtonBehavior.cs @@ -0,0 +1,42 @@ +using Microsoft.Xaml.Behaviors; +using System.Windows; +using System.Windows.Controls; + +namespace Compunet.SudokuSolver.Behaviors +{ + public abstract class SystemWindowButtonBehavior : Behavior