Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/xamarin/Xamarin.PropertyEditing.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Xamarin.PropertyEditing.Tests/MockControls/MockControl.cs4
-rw-r--r--Xamarin.PropertyEditing.Tests/MockControls/MockSampleControl.cs56
-rw-r--r--Xamarin.PropertyEditing.Tests/Xamarin.PropertyEditing.Tests.csproj1
-rw-r--r--Xamarin.PropertyEditing.Windows.Standalone/IMockedControl.cs7
-rw-r--r--Xamarin.PropertyEditing.Windows.Standalone/MainWindow.xaml12
-rw-r--r--Xamarin.PropertyEditing.Windows.Standalone/MainWindow.xaml.cs2
-rw-r--r--Xamarin.PropertyEditing.Windows.Standalone/MockedControlButton.cs18
-rw-r--r--Xamarin.PropertyEditing.Windows.Standalone/MockedSampleControlButton.cs8
-rw-r--r--Xamarin.PropertyEditing.Windows.Standalone/MockedWpfControlButton.cs13
-rw-r--r--Xamarin.PropertyEditing.Windows.Standalone/Xamarin.PropertyEditing.Windows.Standalone.csproj3
10 files changed, 105 insertions, 19 deletions
diff --git a/Xamarin.PropertyEditing.Tests/MockControls/MockControl.cs b/Xamarin.PropertyEditing.Tests/MockControls/MockControl.cs
index 5e44981..635bcb0 100644
--- a/Xamarin.PropertyEditing.Tests/MockControls/MockControl.cs
+++ b/Xamarin.PropertyEditing.Tests/MockControls/MockControl.cs
@@ -28,9 +28,9 @@ namespace Xamarin.PropertyEditing.Tests.MockControls
Values.Add (propertyInfo, default (T));
}
- public void AddReadOnlyProperty<T> (string name)
+ public void AddReadOnlyProperty<T> (string name, string category = "")
{
- AddProperty<T> (name, "", false);
+ AddProperty<T> (name, category, false);
}
public void AddEvent(string name)
diff --git a/Xamarin.PropertyEditing.Tests/MockControls/MockSampleControl.cs b/Xamarin.PropertyEditing.Tests/MockControls/MockSampleControl.cs
new file mode 100644
index 0000000..b49ab79
--- /dev/null
+++ b/Xamarin.PropertyEditing.Tests/MockControls/MockSampleControl.cs
@@ -0,0 +1,56 @@
+using System;
+using Xamarin.PropertyEditing.Drawing;
+
+namespace Xamarin.PropertyEditing.Tests.MockControls
+{
+ public class MockSampleControl : MockControl
+ {
+ public MockSampleControl()
+ {
+ AddProperty<bool> ("Boolean", ReadWrite);
+ AddProperty<long> ("Integer", ReadWrite);
+ AddProperty<double> ("FloatingPoint", ReadWrite);
+ AddProperty<string> ("String", ReadWrite);
+ AddProperty<Enumeration> ("Enumeration", ReadWrite);
+ AddProperty<Flags> ("Flags", ReadWrite, canWrite: true, flag: true);
+ AddProperty<CommonPoint> ("Point", ReadWrite);
+ AddProperty<CommonSize> ("Size", ReadWrite);
+ AddProperty<CommonThickness> ("Thickness", ReadWrite);
+
+ AddReadOnlyProperty<bool> ("ReadOnlyBoolean", ReadOnly);
+ AddReadOnlyProperty<long> ("ReadOnlyInteger", ReadOnly);
+ AddReadOnlyProperty<double> ("ReadOnlyFloatingPoint", ReadOnly);
+ AddReadOnlyProperty<string> ("ReadOnlyString", ReadOnly);
+ AddReadOnlyProperty<Enumeration> ("ReadOnlyEnumeration", ReadOnly);
+ AddProperty<Flags> ("ReadOnlyFlags", ReadOnly, canWrite: false, flag: true);
+ AddReadOnlyProperty<CommonPoint> ("ReadOnlyPoint", ReadOnly);
+ AddReadOnlyProperty<CommonSize> ("ReadOnlySize", ReadOnly);
+ AddReadOnlyProperty<CommonThickness> ("ReadOnlyThickness", ReadOnly);
+
+ AddProperty<NotImplemented> ("Uncategorized", None);
+
+ AddEvents ("Click", "Hover", "Focus");
+ }
+
+ // Categories
+ public static readonly string ReadWrite = nameof (ReadWrite);
+ public static readonly string ReadOnly = nameof (ReadOnly);
+ public static readonly string None = "";
+
+ // Some enumeration and flags to test with
+ public enum Enumeration
+ {
+ FirstOption,
+ SecondOption,
+ ThirdOption
+ }
+
+ [Flags]
+ public enum Flags
+ {
+ FlagOne,
+ FlagTwo,
+ FlagThree
+ }
+ }
+}
diff --git a/Xamarin.PropertyEditing.Tests/Xamarin.PropertyEditing.Tests.csproj b/Xamarin.PropertyEditing.Tests/Xamarin.PropertyEditing.Tests.csproj
index be0ceb7..38df8f2 100644
--- a/Xamarin.PropertyEditing.Tests/Xamarin.PropertyEditing.Tests.csproj
+++ b/Xamarin.PropertyEditing.Tests/Xamarin.PropertyEditing.Tests.csproj
@@ -60,6 +60,7 @@
<Compile Include="BrushPropertyViewModelTests.cs" />
<Compile Include="Helpers.cs" />
<Compile Include="MockControls\MockControl.cs" />
+ <Compile Include="MockControls\MockSampleControl.cs" />
<Compile Include="MockControls\MockWpfButton.cs" />
<Compile Include="MockControls\MockWpfControl.cs" />
<Compile Include="MockEditorProvider.cs" />
diff --git a/Xamarin.PropertyEditing.Windows.Standalone/IMockedControl.cs b/Xamarin.PropertyEditing.Windows.Standalone/IMockedControl.cs
new file mode 100644
index 0000000..3edab63
--- /dev/null
+++ b/Xamarin.PropertyEditing.Windows.Standalone/IMockedControl.cs
@@ -0,0 +1,7 @@
+namespace Xamarin.PropertyEditing.Windows.Standalone
+{
+ interface IMockedControl
+ {
+ object MockedControl { get; }
+ }
+}
diff --git a/Xamarin.PropertyEditing.Windows.Standalone/MainWindow.xaml b/Xamarin.PropertyEditing.Windows.Standalone/MainWindow.xaml
index 53a11d9..e5fb974 100644
--- a/Xamarin.PropertyEditing.Windows.Standalone/MainWindow.xaml
+++ b/Xamarin.PropertyEditing.Windows.Standalone/MainWindow.xaml
@@ -1,4 +1,4 @@
-<Window x:Class="Xamarin.PropertyEditing.Windows.Standalone.MainWindow"
+<Window x:Class="Xamarin.PropertyEditing.Windows.Standalone.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
@@ -16,11 +16,15 @@
<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition />
+ <RowDefinition />
+ <RowDefinition />
</Grid.RowDefinitions>
- <local:MockedWpfButton Grid.Row="0" Grid.Column="0" Click="Button_Click">Select me (Mock)</local:MockedWpfButton>
- <Button Grid.Row="1" Grid.Column="0" Click="Button_Click">Select me (WPF)</Button>
+ <local:MockedSampleControlButton Grid.Row="0" Grid.Column="0" Click="Button_Click">Mocked Sample 1</local:MockedSampleControlButton>
+ <local:MockedSampleControlButton Grid.Row="1" Grid.Column="0" Click="Button_Click">Mocked Sample 2</local:MockedSampleControlButton>
+ <local:MockedWpfButton Grid.Row="2" Grid.Column="0" Click="Button_Click">Mocked WPF button</local:MockedWpfButton>
+ <Button Grid.Row="3" Grid.Column="0" Click="Button_Click">Actual WPF button</Button>
- <xamarinprops:PropertyEditorPanel Name="panel" Grid.Row="0" Grid.RowSpan="2" Grid.Column="1" />
+ <xamarinprops:PropertyEditorPanel Name="panel" Grid.Row="0" Grid.RowSpan="4" Grid.Column="1" />
</Grid>
</Window> \ No newline at end of file
diff --git a/Xamarin.PropertyEditing.Windows.Standalone/MainWindow.xaml.cs b/Xamarin.PropertyEditing.Windows.Standalone/MainWindow.xaml.cs
index 7037535..92fe3c8 100644
--- a/Xamarin.PropertyEditing.Windows.Standalone/MainWindow.xaml.cs
+++ b/Xamarin.PropertyEditing.Windows.Standalone/MainWindow.xaml.cs
@@ -16,7 +16,7 @@ namespace Xamarin.PropertyEditing.Windows.Standalone
private void Button_Click (object sender, RoutedEventArgs e)
{
- var mockedButton = sender as MockedWpfButton;
+ var mockedButton = sender as IMockedControl;
var inspectedObject = (mockedButton == null || mockedButton.MockedControl == null)
? sender : mockedButton.MockedControl;
if (this.panel.SelectedItems.Contains (inspectedObject))
diff --git a/Xamarin.PropertyEditing.Windows.Standalone/MockedControlButton.cs b/Xamarin.PropertyEditing.Windows.Standalone/MockedControlButton.cs
new file mode 100644
index 0000000..cda6719
--- /dev/null
+++ b/Xamarin.PropertyEditing.Windows.Standalone/MockedControlButton.cs
@@ -0,0 +1,18 @@
+using System.Windows.Controls;
+using Xamarin.PropertyEditing.Tests.MockControls;
+
+namespace Xamarin.PropertyEditing.Windows.Standalone
+{
+ public abstract class MockedControlButton<T> : Button, IMockedControl
+ where T : MockControl
+ {
+ public MockedControlButton(T mockedControl)
+ {
+ MockedControl = mockedControl;
+ }
+
+ public T MockedControl { get; }
+
+ object IMockedControl.MockedControl => MockedControl;
+ }
+}
diff --git a/Xamarin.PropertyEditing.Windows.Standalone/MockedSampleControlButton.cs b/Xamarin.PropertyEditing.Windows.Standalone/MockedSampleControlButton.cs
new file mode 100644
index 0000000..17d9317
--- /dev/null
+++ b/Xamarin.PropertyEditing.Windows.Standalone/MockedSampleControlButton.cs
@@ -0,0 +1,8 @@
+using Xamarin.PropertyEditing.Tests.MockControls;
+
+namespace Xamarin.PropertyEditing.Windows.Standalone
+{
+ public class MockedSampleControlButton: MockedControlButton<MockSampleControl> {
+ public MockedSampleControlButton () : base(new MockSampleControl ()) { }
+ }
+}
diff --git a/Xamarin.PropertyEditing.Windows.Standalone/MockedWpfControlButton.cs b/Xamarin.PropertyEditing.Windows.Standalone/MockedWpfControlButton.cs
index 67e4312..5bce465 100644
--- a/Xamarin.PropertyEditing.Windows.Standalone/MockedWpfControlButton.cs
+++ b/Xamarin.PropertyEditing.Windows.Standalone/MockedWpfControlButton.cs
@@ -1,20 +1,9 @@
-using System.Windows.Controls;
using Xamarin.PropertyEditing.Tests.MockControls;
namespace Xamarin.PropertyEditing.Windows.Standalone
{
- public abstract class MockedWpfControlButton<T> : Button
- where T : MockControl
- {
- public MockedWpfControlButton(T mockedControl)
- {
- MockedControl = mockedControl;
- }
- public T MockedControl { get; }
- }
-
- public class MockedWpfButton: MockedWpfControlButton<MockWpfButton> {
+ public class MockedWpfButton: MockedControlButton<MockWpfButton> {
public MockedWpfButton() : base(new MockWpfButton()) { }
}
}
diff --git a/Xamarin.PropertyEditing.Windows.Standalone/Xamarin.PropertyEditing.Windows.Standalone.csproj b/Xamarin.PropertyEditing.Windows.Standalone/Xamarin.PropertyEditing.Windows.Standalone.csproj
index eaf6ab0..0f2ed58 100644
--- a/Xamarin.PropertyEditing.Windows.Standalone/Xamarin.PropertyEditing.Windows.Standalone.csproj
+++ b/Xamarin.PropertyEditing.Windows.Standalone/Xamarin.PropertyEditing.Windows.Standalone.csproj
@@ -62,12 +62,15 @@
<DependentUpon>App.xaml</DependentUpon>
<SubType>Code</SubType>
</Compile>
+ <Compile Include="IMockedControl.cs" />
<Compile Include="MainWindow.xaml.cs">
<DependentUpon>MainWindow.xaml</DependentUpon>
<SubType>Code</SubType>
</Compile>
</ItemGroup>
<ItemGroup>
+ <Compile Include="MockedControlButton.cs" />
+ <Compile Include="MockedSampleControlButton.cs" />
<Compile Include="MockedWpfControlButton.cs" />
<Compile Include="Properties\AssemblyInfo.cs">
<SubType>Code</SubType>