diff options
| author | Jean-Philippe Bruyère <jp_bruyere@hotmail.com> | 2018-02-18 20:03:36 +0100 |
|---|---|---|
| committer | Jean-Philippe Bruyère <jp_bruyere@hotmail.com> | 2018-02-18 20:03:36 +0100 |
| commit | ac3e60a3c49a2a1175564fbc994d3aed47c6bfb4 (patch) | |
| tree | 64d5dd3ef06d608970a6f2d61e5442dc2fd73b28 | |
| parent | 3f84c4647e1adfb4da0415945113a70371b7527e (diff) | |
'/' handling to start at current node in BindingMember, test drag and drop
| -rw-r--r-- | Tests/BasicTests.cs | 5 | ||||
| -rwxr-xr-x | Tests/Interfaces/DragAndDrop/0.crow | 26 | ||||
| -rw-r--r-- | Tests/Tests.csproj | 4 | ||||
| -rw-r--r-- | src/GraphicObjects/GraphicObject.cs | 6 | ||||
| -rw-r--r-- | src/IML/BindingMember.cs | 4 |
5 files changed, 32 insertions, 13 deletions
diff --git a/Tests/BasicTests.cs b/Tests/BasicTests.cs index 3bfd16e8..8c851286 100644 --- a/Tests/BasicTests.cs +++ b/Tests/BasicTests.cs @@ -167,8 +167,9 @@ namespace Tests //testFiles = new string [] { @"Interfaces/Divers/welcome.crow" }; //testFiles = new string [] { @"Interfaces/TemplatedContainer/testTabView.crow" }; //testFiles = new string [] { @"Interfaces/TemplatedControl/testSpinner.crow" }; - //testFiles = new string [] { @"Interfaces/GraphicObject/testCtxMenu.crow" }; - testFiles = new string [] { @"Interfaces/TemplatedControl/testItemTemplateTag.crow" }; + testFiles = new string [] { @"Interfaces/DragAndDrop/0.crow" }; + //testFiles = new string [] { @"Interfaces/TemplatedControl/testItemTemplateTag.crow" }; + testFiles = testFiles.Concat (Directory.GetFiles (@"Interfaces/DragAndDrop", "*.crow")).ToArray (); testFiles = testFiles.Concat (Directory.GetFiles (@"Interfaces/Divers", "*.crow")).ToArray (); testFiles = testFiles.Concat (Directory.GetFiles (@"Interfaces/GraphicObject", "*.crow")).ToArray (); testFiles = testFiles.Concat (Directory.GetFiles (@"Interfaces/Container", "*.crow")).ToArray (); diff --git a/Tests/Interfaces/DragAndDrop/0.crow b/Tests/Interfaces/DragAndDrop/0.crow index 63290f9e..a9c11334 100755 --- a/Tests/Interfaces/DragAndDrop/0.crow +++ b/Tests/Interfaces/DragAndDrop/0.crow @@ -1,9 +1,19 @@ <?xml version="1.0"?> -<VerticalStack MinimumSize="50,50" Background="Onyx" Margin="10" Width="90%" Height="90%"> - <GraphicObject Margin="10" Width="Stretched" Height="Fit" Background="Mantis" - MinimumSize="10,10"/> - <GraphicObject Margin="10" Width="Stretched" Height="Fit" Background="Mantis" - MinimumSize="10,10"/> - <GraphicObject Margin="10" Width="Stretched" Height="Fit" Background="Mantis" - MinimumSize="10,10"/> -</VerticalStack>
\ No newline at end of file +<HorizontalStack Background="Onyx" Margin="10" Width="90%" Height="90%" Spacing="100" Focusable="true"> + <Container StartDrag="{Background=Yellow}" EndDrag="{Background=Mantis}" Focusable="true" Fit="true" + MouseEnter="{/txt.Foreground=Red;Background=Blue}" MouseLeave="{/txt.Foreground=White}" + AllowDrag="true" Width="200" Height="200" Background="Mantis"> + <VerticalStack Margin="50"> + <Label Name="txt" Text="Drag me" Foreground="Gray"/> + <Label Text="Dragged" Visible="{/IsDragged}"/> + </VerticalStack> + </Container> + <Container StartDrag="{Background=Yellow}" EndDrag="{Background=Mantis}" Focusable="true" Fit="true" + MouseEnter="{/txt.Foreground=Red}" MouseLeave="{/txt.Foreground=White}" + AllowDrop="true" Background="Mantis"> + <VerticalStack Margin="50"> + <Label Name="txt" Text="Drop here" Foreground="Gray"/> + <Label Text="Dragged" Visible="{/IsDragged}"/> + </VerticalStack> + </Container> +</HorizontalStack>
\ No newline at end of file diff --git a/Tests/Tests.csproj b/Tests/Tests.csproj index fb384de9..e5cccb5c 100644 --- a/Tests/Tests.csproj +++ b/Tests/Tests.csproj @@ -365,6 +365,9 @@ <None Include="Interfaces\GraphicObject\testCtxMenu.crow"> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> </None> + <None Include="Interfaces\DragAndDrop\0.crow"> + <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> + </None> </ItemGroup> <ItemGroup> <Folder Include="Interfaces\" /> @@ -380,6 +383,7 @@ <Folder Include="Interfaces\TemplatedGroup\" /> <Folder Include="GraphicObjects\" /> <Folder Include="Tutorials\" /> + <Folder Include="Interfaces\DragAndDrop\" /> </ItemGroup> <ItemGroup> <EmbeddedResource Include="image\tetra.png"> diff --git a/src/GraphicObjects/GraphicObject.cs b/src/GraphicObjects/GraphicObject.cs index aca7032e..ef2e0197 100644 --- a/src/GraphicObjects/GraphicObject.cs +++ b/src/GraphicObjects/GraphicObject.cs @@ -317,7 +317,8 @@ namespace Crow public event EventHandler Enabled; /// <summary>Occurs when the enabled state this object is set to false</summary> public event EventHandler Disabled; - public event EventHandler Dragged; + public event EventHandler StartDrag; + public event EventHandler EndDrag; public event EventHandler Dropped; /// <summary>Occurs when one part of the rendering slot changed</summary> public event EventHandler<LayoutingEventArgs> LayoutChanged; @@ -1100,13 +1101,14 @@ namespace Crow /// </summary> protected virtual void onStartDrag (object sender, EventArgs e){ Debug.WriteLine("DRAG => " + this.ToString()); - Dragged.Raise (this, null); + StartDrag.Raise (this, null); } /// <summary> /// Occured when dragging ends without dropping /// </summary> protected virtual void onEndDrag (object sender, EventArgs e){ IsDragged = false; + EndDrag.Raise (this, null); Debug.WriteLine("END DRAG => " + this.ToString()); } /// <summary> diff --git a/src/IML/BindingMember.cs b/src/IML/BindingMember.cs index 7aaa851c..4a2b2c61 100644 --- a/src/IML/BindingMember.cs +++ b/src/IML/BindingMember.cs @@ -97,8 +97,10 @@ namespace Crow.IML IsStringConstant = true; return; } + } else if (string.IsNullOrEmpty (splitedExp [0])) { + ptr++; } else { - if (string.IsNullOrEmpty (splitedExp [0]) || splitedExp [0] == ".") {//template root + if (splitedExp [0] == ".") {//template root LevelsUp = -1; ptr++; } else { |