From f4762349a9956bd7ae4fc11f1e165eafb0d2c444 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jean-Philippe=20Bruy=C3=A8re?= Date: Mon, 7 Dec 2020 12:37:23 +0100 Subject: [PATCH] stickyMouse, dragNdrop + mdiWins debug and tests --- Crow.sln | 18 +++- Crow/Default.style | 7 +- Crow/Templates/DockWindow.template | 13 ++- Crow/src/Fill/BmpPicture.cs | 4 +- Crow/src/IML/Instantiator.cs | 2 +- Crow/src/Interface.cs | 89 +++++++++++++------ Crow/src/ItemTemplate.cs | 20 +++++ Crow/src/Mono.Cairo/Context.cs | 4 +- Crow/src/Mono.Cairo/NativeMethods.cs | 2 +- Crow/src/Widgets/DockStack.cs | 21 ++--- Crow/src/Widgets/DockWindow.cs | 22 +++-- Crow/src/Widgets/Group.cs | 2 +- Crow/src/Widgets/PrivateContainer.cs | 2 +- Crow/src/Widgets/TabItem.cs | 4 +- Crow/src/Widgets/Widget.cs | 66 ++++++++++---- Crow/src/Widgets/Window.cs | 48 +++++----- Samples/Directory.Build.props | 2 +- Samples/ShowCase/ShowCase.cs | 4 +- Samples/common/samples.style | 3 + Samples/common/ui/Interfaces/Divers/2.crow | 5 +- .../ui/Interfaces/Experimental/testDock.crow | 10 +-- .../ui/Interfaces/Experimental/testStack.crow | 2 +- Samples/dockableWindows/dockableWindows.cs | 33 +++++++ .../dockableWindows/dockableWindows.csproj | 13 +++ Samples/dockableWindows/ui/GTreeExp.itemp | 32 +++++++ Samples/dockableWindows/ui/test.crow | 44 +++++++++ Samples/dragNdrop/dragNdrop.cs | 65 ++++++++++++++ Samples/dragNdrop/dragNdrop.csproj | 8 ++ Samples/dragNdrop/ui/GTreeExp.itemp | 32 +++++++ Samples/dragNdrop/ui/test.crow | 55 ++++++++++++ 30 files changed, 518 insertions(+), 114 deletions(-) create mode 100644 Samples/dockableWindows/dockableWindows.cs create mode 100644 Samples/dockableWindows/dockableWindows.csproj create mode 100644 Samples/dockableWindows/ui/GTreeExp.itemp create mode 100644 Samples/dockableWindows/ui/test.crow create mode 100644 Samples/dragNdrop/dragNdrop.cs create mode 100644 Samples/dragNdrop/dragNdrop.csproj create mode 100644 Samples/dragNdrop/ui/GTreeExp.itemp create mode 100644 Samples/dragNdrop/ui/test.crow diff --git a/Crow.sln b/Crow.sln index ee474496..8f6e3f3d 100644 --- a/Crow.sln +++ b/Crow.sln @@ -8,7 +8,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "global", "global", "{728545 README.md = README.md EndProjectSection EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Crow", "Crow\Crow.csproj", "{C2980F9B-4798-4C05-99E2-E174810F7C7B}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Crow", "Crow\Crow.csproj", "{C2980F9B-4798-4C05-99E2-E174810F7C7B}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Samples", "Samples", "{B2C7855A-2878-47FD-AD32-9A83DB4AB8C6}" ProjectSection(SolutionItems) = preProject @@ -27,7 +27,11 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BasicTests", "Samples\Basic EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "PerfTests", "Samples\PerfTests\PerfTests.csproj", "{18EBB41F-815E-4BF5-B80F-C9E2FAB2993A}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DebugLogAnalyzer", "Samples\DebugLogAnalyzer\DebugLogAnalyzer.csproj", "{7915538F-B2B1-414C-95A3-1FC58E3286B9}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DebugLogAnalyzer", "Samples\DebugLogAnalyzer\DebugLogAnalyzer.csproj", "{7915538F-B2B1-414C-95A3-1FC58E3286B9}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "dragNdrop", "Samples\dragNdrop\dragNdrop.csproj", "{6E361E34-D266-4BEB-97F4-E209E01C6246}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "dockableWindows", "Samples\dockableWindows\dockableWindows.csproj", "{E19FD3DB-902A-4C99-8BF0-5ACAFFE35608}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -65,6 +69,14 @@ Global {7915538F-B2B1-414C-95A3-1FC58E3286B9}.Debug|Any CPU.Build.0 = Debug|Any CPU {7915538F-B2B1-414C-95A3-1FC58E3286B9}.Release|Any CPU.ActiveCfg = Release|Any CPU {7915538F-B2B1-414C-95A3-1FC58E3286B9}.Release|Any CPU.Build.0 = Release|Any CPU + {6E361E34-D266-4BEB-97F4-E209E01C6246}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {6E361E34-D266-4BEB-97F4-E209E01C6246}.Debug|Any CPU.Build.0 = Debug|Any CPU + {6E361E34-D266-4BEB-97F4-E209E01C6246}.Release|Any CPU.ActiveCfg = Release|Any CPU + {6E361E34-D266-4BEB-97F4-E209E01C6246}.Release|Any CPU.Build.0 = Release|Any CPU + {E19FD3DB-902A-4C99-8BF0-5ACAFFE35608}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {E19FD3DB-902A-4C99-8BF0-5ACAFFE35608}.Debug|Any CPU.Build.0 = Debug|Any CPU + {E19FD3DB-902A-4C99-8BF0-5ACAFFE35608}.Release|Any CPU.ActiveCfg = Release|Any CPU + {E19FD3DB-902A-4C99-8BF0-5ACAFFE35608}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -76,6 +88,8 @@ Global {7AEB6DD5-916E-4415-84E1-78EC6E5881CE} = {B2C7855A-2878-47FD-AD32-9A83DB4AB8C6} {18EBB41F-815E-4BF5-B80F-C9E2FAB2993A} = {B2C7855A-2878-47FD-AD32-9A83DB4AB8C6} {7915538F-B2B1-414C-95A3-1FC58E3286B9} = {B2C7855A-2878-47FD-AD32-9A83DB4AB8C6} + {6E361E34-D266-4BEB-97F4-E209E01C6246} = {B2C7855A-2878-47FD-AD32-9A83DB4AB8C6} + {E19FD3DB-902A-4C99-8BF0-5ACAFFE35608} = {B2C7855A-2878-47FD-AD32-9A83DB4AB8C6} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {00D4E149-7131-49F4-BAAD-559AA961A78E} diff --git a/Crow/Default.style b/Crow/Default.style index cbc9dcba..04cb01dc 100644 --- a/Crow/Default.style +++ b/Crow/Default.style @@ -124,7 +124,9 @@ Slider { } Splitter { Focusable = "true"; - Margin = "1"; + Margin = "0"; + StickyMouseEnabled="true"; + StickyMouse="10"; Background = "Grey"; } @@ -175,7 +177,8 @@ Docker { Focusable="true"; } DockStack { - Margin="1"; + Margin="2"; + Spacing="2"; AllowDrop = "true"; Focusable="true"; //DragEnter="{Background=Blue}"; diff --git a/Crow/Templates/DockWindow.template b/Crow/Templates/DockWindow.template index e62672bc..9a2bd3b4 100644 --- a/Crow/Templates/DockWindow.template +++ b/Crow/Templates/DockWindow.template @@ -1,12 +1,9 @@  - - + - - + -