Skip to content
Browse files

Work in progress portable library.

ReactiveCommand and ReactiveAsyncCommand moved to RxUI-Core
  • Loading branch information...
1 parent 2e9205d commit 5399c973af6c5d8c3a2a5ec9fe314ee691e44ed9 @jlaanstra jlaanstra committed with paulcbetts Mar 19, 2013
Showing with 14,051 additions and 108 deletions.
  1. +1 −0 MobileSample-WP8/MobileSample-WP8.csproj
  2. +2 −0 MobileSample-WP8/packages.config
  3. +5 −0 MobileSample-WinRT/MobileSample-WinRT.csproj
  4. +5 −0 MobileSample-WinRT/packages.config
  5. +1 −0 ReactiveUI.Blend/ReactiveUI.Blend_Net45.csproj
  6. +6 −0 ReactiveUI.Blend/packages.config
  7. +1 −0 ReactiveUI.Mobile/ReactiveUI.Mobile_WP8.csproj
  8. +6 −0 ReactiveUI.Mobile/packages.config
  9. +1 −0 ReactiveUI.NLog/ReactiveUI.NLog_Net45.csproj
  10. +1 −1 ReactiveUI.NLog/packages.config
  11. +1 −0 ReactiveUI.Routing/ReactiveUI.Routing_Net45.csproj
  12. +6 −0 ReactiveUI.Routing/packages.config
  13. +1 −0 ReactiveUI.Testing/ReactiveUI.Testing_Net45.csproj
  14. +6 −0 ReactiveUI.Testing/packages.config
  15. +1 −0 ReactiveUI.Tests/ReactiveUI.Tests.csproj
  16. +6 −0 ReactiveUI.Tests/ReactiveUI.Tests_SL5.csproj
  17. +0 −71 ReactiveUI.Xaml/Interfaces.cs
  18. +0 −3 ReactiveUI.Xaml/ReactiveUI.Xaml.csproj
  19. +2 −3 ReactiveUI.Xaml/ReactiveUI.Xaml_Net45.csproj
  20. +0 −3 ReactiveUI.Xaml/ReactiveUI.Xaml_SL5.csproj
  21. +0 −3 ReactiveUI.Xaml/ReactiveUI.Xaml_WP7.csproj
  22. +0 −3 ReactiveUI.Xaml/ReactiveUI.Xaml_WP8.csproj
  23. +0 −3 ReactiveUI.Xaml/ReactiveUI.Xaml_WinRT.csproj
  24. +6 −0 ReactiveUI.Xaml/packages.config
  25. +16 −0 ReactiveUI.sln
  26. +1 −1 ReactiveUI/BindingTypeConverters.cs
  27. +2 −2 ReactiveUI/ContractStubs.cs
  28. +59 −0 ReactiveUI/Interfaces.cs
  29. 0 {ReactiveUI.Xaml → ReactiveUI}/ReactiveAsyncCommand.cs
  30. 0 {ReactiveUI.Xaml → ReactiveUI}/ReactiveCommand.cs
  31. +1 −1 ReactiveUI/ReactiveObject.cs
  32. +5 −1 ReactiveUI/ReactiveUI.csproj
  33. +2 −3 ReactiveUI/ReactiveUI_Net45.csproj
  34. +111 −0 ReactiveUI/ReactiveUI_Portable.csproj
  35. +2 −0 ReactiveUI/ReactiveUI_SL5.csproj
  36. +2 −0 ReactiveUI/ReactiveUI_WP7.csproj
  37. +2 −0 ReactiveUI/ReactiveUI_WP8.csproj
  38. +2 −0 ReactiveUI/ReactiveUI_WinRT.csproj
  39. +1 −1 ReactiveUI/Reflection.cs
  40. +10 −9 ReactiveUI/RxApp.cs
  41. +2 −0 ReactiveUI/packages.config
  42. +2,873 −0 ext/Portable-Net45+WinRT45+WP8/System.Reactive.Core.XML
  43. BIN ext/Portable-Net45+WinRT45+WP8/System.Reactive.Core.dll
  44. +336 −0 ext/Portable-Net45+WinRT45+WP8/System.Reactive.Interfaces.XML
  45. BIN ext/Portable-Net45+WinRT45+WP8/System.Reactive.Interfaces.dll
  46. +10,565 −0 ext/Portable-Net45+WinRT45+WP8/System.Reactive.Linq.XML
  47. BIN ext/Portable-Net45+WinRT45+WP8/System.Reactive.Linq.dll
  48. +1 −0 packages/repositories.config
View
1 MobileSample-WP8/MobileSample-WP8.csproj
@@ -231,4 +231,5 @@
-->
<ProjectExtensions />
<Import Project="$(SolutionDir)\.nuget\nuget.targets" />
+ <Import Project="..\packages\Microsoft.Bcl.Build.1.0.0-rc\tools\Microsoft.Bcl.Build.targets" />
</Project>
View
2 MobileSample-WP8/packages.config
@@ -1,4 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
+ <package id="Microsoft.Bcl" version="1.0.16-rc" targetFramework="wp80" />
<package id="Microsoft.Bcl.Async" version="1.0.14-rc" targetFramework="wp80" />
+ <package id="Microsoft.Bcl.Build" version="1.0.0-rc" targetFramework="wp80" />
</packages>
View
5 MobileSample-WinRT/MobileSample-WinRT.csproj
@@ -13,6 +13,8 @@
<FileAlignment>512</FileAlignment>
<ProjectTypeGuids>{BC8A1FFA-BEE3-4634-8014-F334798102B3};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<PackageCertificateKeyFile>MobileSample-WinRT_TemporaryKey.pfx</PackageCertificateKeyFile>
+ <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\</SolutionDir>
+ <RestorePackages>true</RestorePackages>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
@@ -136,6 +138,7 @@
</AppxManifest>
<None Include="Common\ReadMe.txt" />
<None Include="MobileSample-WinRT_TemporaryKey.pfx" />
+ <None Include="packages.config" />
</ItemGroup>
<ItemGroup>
<Content Include="Assets\Logo.png" />
@@ -226,6 +229,8 @@
<VisualStudioVersion>11.0</VisualStudioVersion>
</PropertyGroup>
<Import Project="$(MSBuildExtensionsPath)\Microsoft\WindowsXaml\v$(VisualStudioVersion)\Microsoft.Windows.UI.Xaml.CSharp.targets" />
+ <Import Project="$(SolutionDir)\.nuget\nuget.targets" />
+ <Import Project="..\packages\Microsoft.Bcl.Build.1.0.0-rc\tools\Microsoft.Bcl.Build.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
View
5 MobileSample-WinRT/packages.config
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+ <package id="Microsoft.Bcl" version="1.0.16-rc" targetFramework="win" />
+ <package id="Microsoft.Bcl.Build" version="1.0.0-rc" targetFramework="win" />
+</packages>
View
1 ReactiveUI.Blend/ReactiveUI.Blend_Net45.csproj
@@ -94,6 +94,7 @@
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<Import Project="$(SolutionDir)\.nuget\nuget.targets" />
+ <Import Project="..\packages\Microsoft.Bcl.Build.1.0.0-rc\tools\Microsoft.Bcl.Build.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
View
6 ReactiveUI.Blend/packages.config
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+ <package id="Microsoft.Bcl" version="1.0.16-rc" targetFramework="net45" />
+ <package id="Microsoft.Bcl.Async" version="1.0.14-rc" targetFramework="net45" />
+ <package id="Microsoft.Bcl.Build" version="1.0.0-rc" targetFramework="net45" />
+</packages>
View
1 ReactiveUI.Mobile/ReactiveUI.Mobile_WP8.csproj
@@ -143,6 +143,7 @@
<Import Project="$(MSBuildExtensionsPath)\Microsoft\$(TargetFrameworkIdentifier)\$(TargetFrameworkVersion)\Microsoft.$(TargetFrameworkIdentifier).CSharp.targets" />
<ProjectExtensions />
<Import Project="$(SolutionDir)\.nuget\nuget.targets" />
+ <Import Project="..\packages\Microsoft.Bcl.Build.1.0.0-rc\tools\Microsoft.Bcl.Build.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
View
6 ReactiveUI.Mobile/packages.config
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+ <package id="Microsoft.Bcl" version="1.0.16-rc" targetFramework="wp80" />
+ <package id="Microsoft.Bcl.Async" version="1.0.14-rc" targetFramework="wp80" />
+ <package id="Microsoft.Bcl.Build" version="1.0.0-rc" targetFramework="wp80" />
+</packages>
View
1 ReactiveUI.NLog/ReactiveUI.NLog_Net45.csproj
@@ -139,6 +139,7 @@
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<Import Project="$(SolutionDir)\.nuget\nuget.targets" />
+ <Import Project="..\packages\Microsoft.Bcl.Build.1.0.0-rc\tools\Microsoft.Bcl.Build.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
View
2 ReactiveUI.NLog/packages.config
@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="NLog" version="2.0.0.2000" targetFramework="net40-Client" />
-</packages>
+</packages>
View
1 ReactiveUI.Routing/ReactiveUI.Routing_Net45.csproj
@@ -92,6 +92,7 @@
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<Import Project="$(SolutionDir)\.nuget\nuget.targets" />
+ <Import Project="..\packages\Microsoft.Bcl.Build.1.0.0-rc\tools\Microsoft.Bcl.Build.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
View
6 ReactiveUI.Routing/packages.config
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+ <package id="Microsoft.Bcl" version="1.0.16-rc" targetFramework="net45" />
+ <package id="Microsoft.Bcl.Async" version="1.0.14-rc" targetFramework="net45" />
+ <package id="Microsoft.Bcl.Build" version="1.0.0-rc" targetFramework="net45" />
+</packages>
View
1 ReactiveUI.Testing/ReactiveUI.Testing_Net45.csproj
@@ -141,6 +141,7 @@
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<Import Project="$(SolutionDir)\.nuget\nuget.targets" />
+ <Import Project="..\packages\Microsoft.Bcl.Build.1.0.0-rc\tools\Microsoft.Bcl.Build.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
View
6 ReactiveUI.Testing/packages.config
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+ <package id="Microsoft.Bcl" version="1.0.16-rc" targetFramework="net45" />
+ <package id="Microsoft.Bcl.Async" version="1.0.14-rc" targetFramework="net45" />
+ <package id="Microsoft.Bcl.Build" version="1.0.0-rc" targetFramework="net45" />
+</packages>
View
1 ReactiveUI.Tests/ReactiveUI.Tests.csproj
@@ -156,6 +156,7 @@
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<Import Project="$(SolutionDir)\.nuget\nuget.targets" />
<Import Project="..\packages\Microsoft.Bcl.Build.1.0.0-rc\tools\Microsoft.Bcl.Build.targets" />
+ <Import Project="..\packages\Microsoft.Bcl.Build.1.0.0-rc\tools\Microsoft.Bcl.Build.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
View
6 ReactiveUI.Tests/ReactiveUI.Tests_SL5.csproj
@@ -117,6 +117,10 @@
<Reference Include="System.Runtime.Serialization" />
<Reference Include="System.Runtime.Serialization.Json, Version=5.0.5.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL" />
<Reference Include="System.ServiceModel.Web" />
+ <Reference Include="System.Threading.Tasks, Version=2.5.16.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
+ <SpecificVersion>False</SpecificVersion>
+ <HintPath>..\packages\Microsoft.Bcl.1.0.16-rc\lib\sl5\System.Threading.Tasks.dll</HintPath>
+ </Reference>
<Reference Include="System.Windows" />
<Reference Include="mscorlib" />
<Reference Include="system" />
@@ -198,3 +202,5 @@
</ProjectExtensions>
<Import Project="$(SolutionDir)\.nuget\nuget.targets" />
</Project>
+ <Import Project="..\packages\Microsoft.Bcl.Build.1.0.0-rc\tools\Microsoft.Bcl.Build.targets" />
+</Project>
View
71 ReactiveUI.Xaml/Interfaces.cs
@@ -1,71 +0,0 @@
-using System;
-using System.Collections;
-using System.Collections.Generic;
-using System.Collections.Specialized;
-using System.ComponentModel;
-using System.Reactive;
-using System.Reactive.Subjects;
-using System.Windows.Input;
-using ReactiveUI;
-
-namespace ReactiveUI.Xaml
-{
- /// <summary>
- /// IReactiveCommand is an Rx-enabled version of ICommand that is also an
- /// Observable. Its Observable fires once for each invocation of
- /// ICommand.Execute and its value is the CommandParameter that was
- /// provided.
- /// </summary>
- public interface IReactiveCommand : ICommand, IObservable<object>, IHandleObservableErrors
- {
- /// <summary>
- /// Fires whenever the CanExecute of the ICommand changes. Note that
- /// this should not fire notifications unless the CanExecute changes
- /// (i.e. it should not fire 'true', 'true').
- /// </summary>
- IObservable<bool> CanExecuteObservable { get; }
- }
-
- /// <summary>
- /// IReactiveAsyncCommand represents commands that run an asynchronous
- /// operation in the background when invoked.
- /// </summary>
- public interface IReactiveAsyncCommand : IReactiveCommand
- {
- /// <summary>
- /// Fires whenever the number of asynchronous operations in-flight (i.e.
- /// currently running) changes and provides the new Count.
- /// </summary>
- IObservable<int> ItemsInflight { get; }
-
- /// <summary>
- /// Should be fired whenever an async operation starts.
- /// </summary>
- ISubject<Unit> AsyncStartedNotification { get; }
-
- /// <summary>
- /// Should be fired whenever an async operation completes.
- /// </summary>
- ISubject<Unit> AsyncCompletedNotification { get; }
-
- /// <summary>
- /// RegisterAsyncObservable registers an Rx-based async method whose
- /// results will be returned on the UI thread.
- /// </summary>
- /// <param name="calculationFunc">A calculation method that returns a
- /// future result, such as a method returned via
- /// Observable.FromAsyncPattern.</param>
- /// <returns>An Observable representing the items returned by the
- /// calculation result. Note that with this method it is possible with a
- /// calculationFunc to return multiple items per invocation of Execute.</returns>
- IObservable<TResult> RegisterAsyncObservable<TResult>(Func<object, IObservable<TResult>> calculationFunc);
-
- /// <summary>
- /// The maximum number of in-flight
- /// operations at a time - defaults to one.
- /// </summary>
- int MaximumConcurrent { get; }
- }
-}
-
-// vim: tw=120 ts=4 sw=4 et :
View
3 ReactiveUI.Xaml/ReactiveUI.Xaml.csproj
@@ -133,10 +133,7 @@
<Compile Include="CreatesCommandBinding.cs" />
<Compile Include="DependencyObjectObservableForProperty.cs" />
<Compile Include="Errors.cs" />
- <Compile Include="Interfaces.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
- <Compile Include="ReactiveAsyncCommand.cs" />
- <Compile Include="ReactiveCommand.cs" />
<Compile Include="SampleDataBinder.cs" />
<Compile Include="ServiceLocationRegistration.cs" />
<Compile Include="TransitioningContentControl.cs" />
View
5 ReactiveUI.Xaml/ReactiveUI.Xaml_Net45.csproj
@@ -135,10 +135,7 @@
<Compile Include="CreatesCommandBinding.cs" />
<Compile Include="DependencyObjectObservableForProperty.cs" />
<Compile Include="Errors.cs" />
- <Compile Include="Interfaces.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
- <Compile Include="ReactiveAsyncCommand.cs" />
- <Compile Include="ReactiveCommand.cs" />
<Compile Include="SampleDataBinder.cs" />
<Compile Include="ServiceLocationRegistration.cs" />
<Compile Include="TransitioningContentControl.cs" />
@@ -158,6 +155,8 @@
</ProjectReference>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
+ <Import Project="$(SolutionDir)\.nuget\nuget.targets" />
+ <Import Project="..\packages\Microsoft.Bcl.Build.1.0.0-rc\tools\Microsoft.Bcl.Build.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
View
3 ReactiveUI.Xaml/ReactiveUI.Xaml_SL5.csproj
@@ -92,10 +92,7 @@
<Compile Include="CreatesCommandBinding.cs" />
<Compile Include="DependencyObjectObservableForProperty.cs" />
<Compile Include="Errors.cs" />
- <Compile Include="Interfaces.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
- <Compile Include="ReactiveAsyncCommand.cs" />
- <Compile Include="ReactiveCommand.cs" />
<Compile Include="SampleDataBinder.cs" />
<Compile Include="ServiceLocationRegistration.cs" />
<Compile Include="TransitioningContentControl.cs" />
View
3 ReactiveUI.Xaml/ReactiveUI.Xaml_WP7.csproj
@@ -116,10 +116,7 @@
<Compile Include="CreatesCommandBinding.cs" />
<Compile Include="DependencyObjectObservableForProperty.cs" />
<Compile Include="Errors.cs" />
- <Compile Include="Interfaces.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
- <Compile Include="ReactiveAsyncCommand.cs" />
- <Compile Include="ReactiveCommand.cs" />
<Compile Include="SampleDataBinder.cs" />
<Compile Include="ServiceLocationRegistration.cs" />
<Compile Include="TransitioningContentControl.cs">
View
3 ReactiveUI.Xaml/ReactiveUI.Xaml_WP8.csproj
@@ -113,10 +113,7 @@
<Compile Include="CreatesCommandBinding.cs" />
<Compile Include="DependencyObjectObservableForProperty.cs" />
<Compile Include="Errors.cs" />
- <Compile Include="Interfaces.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
- <Compile Include="ReactiveAsyncCommand.cs" />
- <Compile Include="ReactiveCommand.cs" />
<Compile Include="SampleDataBinder.cs" />
<Compile Include="ServiceLocationRegistration.cs" />
<Compile Include="TransitioningContentControl.cs">
View
3 ReactiveUI.Xaml/ReactiveUI.Xaml_WinRT.csproj
@@ -39,10 +39,7 @@
<Compile Include="CreatesCommandBinding.cs" />
<Compile Include="DependencyObjectObservableForProperty.cs" />
<Compile Include="Errors.cs" />
- <Compile Include="Interfaces.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
- <Compile Include="ReactiveAsyncCommand.cs" />
- <Compile Include="ReactiveCommand.cs" />
<Compile Include="SampleDataBinder.cs" />
<Compile Include="ServiceLocationRegistration.cs" />
<Compile Include="WaitForDispatcherScheduler.cs" />
View
6 ReactiveUI.Xaml/packages.config
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+ <package id="Microsoft.Bcl" version="1.0.16-rc" targetFramework="net45" />
+ <package id="Microsoft.Bcl.Async" version="1.0.14-rc" targetFramework="net45" />
+ <package id="Microsoft.Bcl.Build" version="1.0.0-rc" targetFramework="net45" />
+</packages>
View
16 ReactiveUI.sln
@@ -85,6 +85,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MobileSample-WP8", "MobileS
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MobileSample-WinRT", "MobileSample-WinRT\MobileSample-WinRT.csproj", "{E8C81219-761C-4749-B997-23E171B58D14}"
EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ReactiveUI_Portable", "ReactiveUI\ReactiveUI_Portable.csproj", "{464CB812-F99F-401B-BE4C-E8F0515CD19D}"
+EndProject
Global
GlobalSection(TestCaseManagementSettings) = postSolution
CategoryFile = ReactiveUI.vsmdi
@@ -708,6 +710,20 @@ Global
{E8C81219-761C-4749-B997-23E171B58D14}.Release|x86.ActiveCfg = Release|x86
{E8C81219-761C-4749-B997-23E171B58D14}.Release|x86.Build.0 = Release|x86
{E8C81219-761C-4749-B997-23E171B58D14}.Release|x86.Deploy.0 = Release|x86
+ {464CB812-F99F-401B-BE4C-E8F0515CD19D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {464CB812-F99F-401B-BE4C-E8F0515CD19D}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {464CB812-F99F-401B-BE4C-E8F0515CD19D}.Debug|ARM.ActiveCfg = Debug|Any CPU
+ {464CB812-F99F-401B-BE4C-E8F0515CD19D}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+ {464CB812-F99F-401B-BE4C-E8F0515CD19D}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+ {464CB812-F99F-401B-BE4C-E8F0515CD19D}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {464CB812-F99F-401B-BE4C-E8F0515CD19D}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {464CB812-F99F-401B-BE4C-E8F0515CD19D}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {464CB812-F99F-401B-BE4C-E8F0515CD19D}.Release|Any CPU.Build.0 = Release|Any CPU
+ {464CB812-F99F-401B-BE4C-E8F0515CD19D}.Release|ARM.ActiveCfg = Release|Any CPU
+ {464CB812-F99F-401B-BE4C-E8F0515CD19D}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+ {464CB812-F99F-401B-BE4C-E8F0515CD19D}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+ {464CB812-F99F-401B-BE4C-E8F0515CD19D}.Release|x64.ActiveCfg = Release|Any CPU
+ {464CB812-F99F-401B-BE4C-E8F0515CD19D}.Release|x86.ActiveCfg = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
View
2 ReactiveUI/BindingTypeConverters.cs
@@ -96,7 +96,7 @@ public bool TryConvert(object from, Type toType, object conversionHint, out obje
}
}
-#if !SILVERLIGHT && !WINRT
+#if !SILVERLIGHT && !WINRT && !PORTABLE
public class ComponentModelTypeConverter : IBindingTypeConverter
{
readonly MemoizingMRUCache<Tuple<Type, Type>, TypeConverter> typeConverterCache = new MemoizingMRUCache<Tuple<Type, Type>, TypeConverter>((types, _) => {
View
4 ReactiveUI/ContractStubs.cs
@@ -17,7 +17,7 @@ internal class Contract
#endif
-#if IOS || WINRT
+#if IOS || WINRT || PORTABLE
namespace System.ComponentModel
{
@@ -43,7 +43,7 @@ public interface INotifyPropertyChanging
}
#endif
-#if SILVERLIGHT || WINRT
+#if SILVERLIGHT || WINRT || PORTABLE
namespace System
{
[AttributeUsage(AttributeTargets.All, Inherited = false, AllowMultiple = true)]
View
59 ReactiveUI/Interfaces.cs
@@ -6,6 +6,8 @@
using System.Linq.Expressions;
using System.Reactive;
using System.Reactive.Concurrency;
+using System.Reactive.Subjects;
+using System.Windows.Input;
namespace ReactiveUI
{
@@ -256,6 +258,63 @@ public interface IReactiveCollection<T> : IEnumerable<T>, IReactiveCollection
}
/// <summary>
+ /// IReactiveCommand is an Rx-enabled version of ICommand that is also an
+ /// Observable. Its Observable fires once for each invocation of
+ /// ICommand.Execute and its value is the CommandParameter that was
+ /// provided.
+ /// </summary>
+ public interface IReactiveCommand : ICommand, IObservable<object>, IHandleObservableErrors
+ {
+ /// <summary>
+ /// Fires whenever the CanExecute of the ICommand changes. Note that
+ /// this should not fire notifications unless the CanExecute changes
+ /// (i.e. it should not fire 'true', 'true').
+ /// </summary>
+ IObservable<bool> CanExecuteObservable { get; }
+ }
+
+ /// <summary>
+ /// IReactiveAsyncCommand represents commands that run an asynchronous
+ /// operation in the background when invoked.
+ /// </summary>
+ public interface IReactiveAsyncCommand : IReactiveCommand
+ {
+ /// <summary>
+ /// Fires whenever the number of asynchronous operations in-flight (i.e.
+ /// currently running) changes and provides the new Count.
+ /// </summary>
+ IObservable<int> ItemsInflight { get; }
+
+ /// <summary>
+ /// Should be fired whenever an async operation starts.
+ /// </summary>
+ ISubject<Unit> AsyncStartedNotification { get; }
+
+ /// <summary>
+ /// Should be fired whenever an async operation completes.
+ /// </summary>
+ ISubject<Unit> AsyncCompletedNotification { get; }
+
+ /// <summary>
+ /// RegisterAsyncObservable registers an Rx-based async method whose
+ /// results will be returned on the UI thread.
+ /// </summary>
+ /// <param name="calculationFunc">A calculation method that returns a
+ /// future result, such as a method returned via
+ /// Observable.FromAsyncPattern.</param>
+ /// <returns>An Observable representing the items returned by the
+ /// calculation result. Note that with this method it is possible with a
+ /// calculationFunc to return multiple items per invocation of Execute.</returns>
+ IObservable<TResult> RegisterAsyncObservable<TResult>(Func<object, IObservable<TResult>> calculationFunc);
+
+ /// <summary>
+ /// The maximum number of in-flight
+ /// operations at a time - defaults to one.
+ /// </summary>
+ int MaximumConcurrent { get; }
+ }
+
+ /// <summary>
/// IMessageBus represents an object that can act as a "Message Bus", a
/// simple way for ViewModels and other objects to communicate with each
/// other in a loosely coupled way.
View
0 ReactiveUI.Xaml/ReactiveAsyncCommand.cs → ReactiveUI/ReactiveAsyncCommand.cs
File renamed without changes.
View
0 ReactiveUI.Xaml/ReactiveCommand.cs → ReactiveUI/ReactiveCommand.cs
File renamed without changes.
View
2 ReactiveUI/ReactiveObject.cs
@@ -157,7 +157,7 @@ void verifyPropertyName(string propertyName)
if (String.IsNullOrEmpty(propertyName))
return;
-#if !SILVERLIGHT && !WINRT
+#if !SILVERLIGHT && !WINRT && !PORTABLE
// Verify that the property name matches a real,
// public, instance property on this object.
if (TypeDescriptor.GetProperties(this)[propertyName] == null) {
View
6 ReactiveUI/ReactiveUI.csproj
@@ -21,7 +21,8 @@
<SccProvider>
</SccProvider>
<CodeContractsAssemblyMode>1</CodeContractsAssemblyMode>
- <TargetFrameworkProfile>Client</TargetFrameworkProfile>
+ <TargetFrameworkProfile>
+ </TargetFrameworkProfile>
<SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\..\</SolutionDir>
<RestorePackages>true</RestorePackages>
</PropertyGroup>
@@ -94,6 +95,7 @@
<NoWarn>1591, 1573, 1711, 1587, 1570, 1572</NoWarn>
</PropertyGroup>
<ItemGroup>
+ <Reference Include="PresentationCore" />
<Reference Include="System" />
<Reference Include="System.ComponentModel.DataAnnotations" />
<Reference Include="System.Core" />
@@ -143,9 +145,11 @@
<Compile Include="POCOObservableForProperty.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="PropertyBinding.cs" />
+ <Compile Include="ReactiveAsyncCommand.cs" />
<Compile Include="ReactiveCollection.cs" />
<Compile Include="CollectionDebugView.cs" />
<Compile Include="ReactiveCollectionMixins.cs" />
+ <Compile Include="ReactiveCommand.cs" />
<Compile Include="ReactiveNotifyPropertyChangedMixin.cs" />
<Compile Include="ReactiveObject.cs" />
<Compile Include="MakeObjectReactiveHelper.cs" />
View
5 ReactiveUI/ReactiveUI_Net45.csproj
@@ -139,8 +139,10 @@
<Compile Include="POCOObservableForProperty.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="PropertyBinding.cs" />
+ <Compile Include="ReactiveAsyncCommand.cs" />
<Compile Include="ReactiveCollection.cs" />
<Compile Include="ReactiveCollectionMixins.cs" />
+ <Compile Include="ReactiveCommand.cs" />
<Compile Include="ReactiveNotifyPropertyChangedMixin.cs" />
<Compile Include="ReactiveObject.cs" />
<Compile Include="MakeObjectReactiveHelper.cs" />
@@ -164,9 +166,6 @@
<ItemGroup>
<Service Include="{508349B6-6B84-4DF5-91F0-309BEEBAD82D}" />
</ItemGroup>
- <ItemGroup>
- <WCFMetadata Include="Service References\" />
- </ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<Import Project="$(SolutionDir)\.nuget\nuget.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
View
111 ReactiveUI/ReactiveUI_Portable.csproj
@@ -0,0 +1,111 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
+ <PropertyGroup>
+ <MinimumVisualStudioVersion>11.0</MinimumVisualStudioVersion>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProjectGuid>{464CB812-F99F-401B-BE4C-E8F0515CD19D}</ProjectGuid>
+ <OutputType>Library</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <RootNamespace>ReactiveUI</RootNamespace>
+ <AssemblyName>ReactiveUI_Portable</AssemblyName>
+ <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
+ <TargetFrameworkProfile>Profile78</TargetFrameworkProfile>
+ <FileAlignment>512</FileAlignment>
+ <ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
+ <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\</SolutionDir>
+ <RestorePackages>true</RestorePackages>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <DebugType>full</DebugType>
+ <Optimize>false</Optimize>
+ <OutputPath>bin\Debug\</OutputPath>
+ <DefineConstants>DEBUG;TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <DebugType>pdbonly</DebugType>
+ <Optimize>true</Optimize>
+ <OutputPath>bin\Release\</OutputPath>
+ <DefineConstants>TRACE;PORTABLE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <ItemGroup>
+ <!-- A reference to the entire .NET Framework is automatically included -->
+ <None Include="packages.config" />
+ <None Include="VariadicTemplates.tt">
+ <Generator>TextTemplatingFileGenerator</Generator>
+ <LastGenOutput>VariadicTemplates.cs</LastGenOutput>
+ </None>
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="BindingTypeConverters.cs" />
+ <Compile Include="CollectionDebugView.cs" />
+ <Compile Include="CompatMixins.cs" />
+ <Compile Include="ContractStubs.cs" />
+ <Compile Include="DefaultPropertyBinding.cs" />
+ <Compile Include="INPCObservableForProperty.cs" />
+ <Compile Include="Interfaces.cs" />
+ <Compile Include="IRNPCObservableForProperty.cs" />
+ <Compile Include="Logging.cs" />
+ <Compile Include="MakeObjectReactiveHelper.cs" />
+ <Compile Include="MemoizingMRUCache.cs" />
+ <Compile Include="MessageBus.cs" />
+ <Compile Include="ObservableAsPropertyHelper.cs" />
+ <Compile Include="ObservableAsyncMRUCache.cs" />
+ <Compile Include="ObservedChangedMixin.cs" />
+ <Compile Include="POCOObservableForProperty.cs" />
+ <Compile Include="Properties\AssemblyInfo.cs" />
+ <Compile Include="PropertyBinding.cs" />
+ <Compile Include="ReactiveAsyncCommand.cs" />
+ <Compile Include="ReactiveCollection.cs" />
+ <Compile Include="ReactiveCollectionMixins.cs" />
+ <Compile Include="ReactiveCommand.cs" />
+ <Compile Include="ReactiveNotifyPropertyChangedMixin.cs" />
+ <Compile Include="ReactiveObject.cs" />
+ <Compile Include="RefcountDisposeWrapper.cs" />
+ <Compile Include="Reflection.cs" />
+ <Compile Include="ReflectionStubs.cs" />
+ <Compile Include="RxApp.cs" />
+ <Compile Include="ScheduledSubject.cs" />
+ <Compile Include="VariadicTemplates.cs">
+ <AutoGen>True</AutoGen>
+ <DesignTime>True</DesignTime>
+ <DependentUpon>VariadicTemplates.tt</DependentUpon>
+ </Compile>
+ </ItemGroup>
+ <ItemGroup>
+ <Service Include="{508349B6-6B84-4DF5-91F0-309BEEBAD82D}" />
+ </ItemGroup>
+ <ItemGroup>
+ <Reference Include="Microsoft.Threading.Tasks">
+ <HintPath>..\packages\Microsoft.Bcl.Async.1.0.14-rc\lib\portable-net45+win8+wp8\Microsoft.Threading.Tasks.dll</HintPath>
+ </Reference>
+ <Reference Include="Microsoft.Threading.Tasks.Extensions">
+ <HintPath>..\packages\Microsoft.Bcl.Async.1.0.14-rc\lib\portable-net45+win8+wp8\Microsoft.Threading.Tasks.Extensions.dll</HintPath>
+ </Reference>
+ <Reference Include="System.Reactive.Core">
+ <HintPath>..\ext\Portable-Net45+WinRT45+WP8\System.Reactive.Core.dll</HintPath>
+ </Reference>
+ <Reference Include="System.Reactive.Interfaces">
+ <HintPath>..\ext\Portable-Net45+WinRT45+WP8\System.Reactive.Interfaces.dll</HintPath>
+ </Reference>
+ <Reference Include="System.Reactive.Linq">
+ <HintPath>..\ext\Portable-Net45+WinRT45+WP8\System.Reactive.Linq.dll</HintPath>
+ </Reference>
+ </ItemGroup>
+ <Import Project="$(MSBuildExtensionsPath32)\Microsoft\Portable\$(TargetFrameworkVersion)\Microsoft.Portable.CSharp.targets" />
+ <Import Project="$(SolutionDir)\.nuget\nuget.targets" />
+ <Import Project="..\packages\Microsoft.Bcl.Build.1.0.0-rc\tools\Microsoft.Bcl.Build.targets" />
+ <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
+ Other similar extension points exist, see Microsoft.Common.targets.
+ <Target Name="BeforeBuild">
+ </Target>
+ <Target Name="AfterBuild">
+ </Target>
+ -->
+</Project>
View
2 ReactiveUI/ReactiveUI_SL5.csproj
@@ -121,8 +121,10 @@
<Compile Include="POCOObservableForProperty.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="PropertyBinding.cs" />
+ <Compile Include="ReactiveAsyncCommand.cs" />
<Compile Include="ReactiveCollection.cs" />
<Compile Include="ReactiveCollectionMixins.cs" />
+ <Compile Include="ReactiveCommand.cs" />
<Compile Include="ReactiveNotifyPropertyChangedMixin.cs" />
<Compile Include="ReactiveObject.cs" />
<Compile Include="RefcountDisposeWrapper.cs" />
View
2 ReactiveUI/ReactiveUI_WP7.csproj
@@ -131,8 +131,10 @@
<Compile Include="POCOObservableForProperty.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="PropertyBinding.cs" />
+ <Compile Include="ReactiveAsyncCommand.cs" />
<Compile Include="ReactiveCollection.cs" />
<Compile Include="ReactiveCollectionMixins.cs" />
+ <Compile Include="ReactiveCommand.cs" />
<Compile Include="ReactiveNotifyPropertyChangedMixin.cs" />
<Compile Include="ReactiveObject.cs" />
<Compile Include="RefcountDisposeWrapper.cs" />
View
2 ReactiveUI/ReactiveUI_WP8.csproj
@@ -122,8 +122,10 @@
<Compile Include="POCOObservableForProperty.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="PropertyBinding.cs" />
+ <Compile Include="ReactiveAsyncCommand.cs" />
<Compile Include="ReactiveCollection.cs" />
<Compile Include="ReactiveCollectionMixins.cs" />
+ <Compile Include="ReactiveCommand.cs" />
<Compile Include="ReactiveNotifyPropertyChangedMixin.cs" />
<Compile Include="ReactiveObject.cs" />
<Compile Include="RefcountDisposeWrapper.cs" />
View
2 ReactiveUI/ReactiveUI_WinRT.csproj
@@ -54,8 +54,10 @@
<Compile Include="POCOObservableForProperty.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="PropertyBinding.cs" />
+ <Compile Include="ReactiveAsyncCommand.cs" />
<Compile Include="ReactiveCollection.cs" />
<Compile Include="ReactiveCollectionMixins.cs" />
+ <Compile Include="ReactiveCommand.cs" />
<Compile Include="ReactiveNotifyPropertyChangedMixin.cs" />
<Compile Include="ReactiveObject.cs">
<SubType>Code</SubType>
View
2 ReactiveUI/Reflection.cs
@@ -317,7 +317,7 @@ public static bool SetValueToPropertyChain<TValue>(object target, string[] propN
}
static readonly MemoizingMRUCache<string, Type> typeCache = new MemoizingMRUCache<string, Type>((type,_) => {
- #if WINRT
+ #if WINRT || PORTABLE
// WinRT hates your favorite band too.
return Type.GetType(type, false);
#else
View
19 ReactiveUI/RxApp.cs
@@ -94,18 +94,19 @@ static RxApp()
RxApp.Register(typeof(EqualityTypeConverter), typeof(IBindingTypeConverter));
RxApp.Register(typeof(StringConverter), typeof(IBindingTypeConverter));
-#if !SILVERLIGHT && !WINRT
+#if !SILVERLIGHT && !WINRT && !PORTABLE
RxApp.Register(typeof(ComponentModelTypeConverter), typeof(IBindingTypeConverter));
#endif
var namespaces = attemptToEarlyLoadReactiveUIDLLs();
- namespaces.ForEach(ns => {
-#if WINRT
- var assm = typeof (RxApp).GetTypeInfo().Assembly;
+#if WINRT || PORTABLE
+ var assm = typeof (RxApp).GetTypeInfo().Assembly;
#else
- var assm = Assembly.GetExecutingAssembly();
+ var assm = Assembly.GetExecutingAssembly();
#endif
+
+ namespaces.ForEach(ns => {
var fullName = typeof (RxApp).AssemblyQualifiedName;
var targetType = ns + ".ServiceLocationRegistration";
fullName = fullName.Replace("ReactiveUI.RxApp", targetType);
@@ -121,16 +122,16 @@ static RxApp()
if (InUnitTestRunner()) {
LogHost.Default.Warn("*** Detected Unit Test Runner, setting Scheduler to Immediate ***");
LogHost.Default.Warn("If we are not actually in a test runner, please file a bug\n");
- DeferredScheduler = Scheduler.Immediate;
+ RxApp.DeferredScheduler = ImmediateScheduler.Instance;
} else {
LogHost.Default.Info("Initializing to normal mode");
}
if (DeferredScheduler == null) {
- LogHost.Default.Error("*** ReactiveUI.Xaml DLL reference not added - using Event Loop *** ");
+ LogHost.Default.Error("*** ReactiveUI.Xaml DLL reference not added - using Default scheduler *** ");
LogHost.Default.Error("Add a reference to ReactiveUI.Xaml if you're using WPF / SL5 / WP7 / WinRT");
LogHost.Default.Error("or consider explicitly setting RxApp.DeferredScheduler if not");
- RxApp.DeferredScheduler = new EventLoopScheduler();
+ RxApp.DeferredScheduler = DefaultScheduler.Instance;
}
}
@@ -382,7 +383,7 @@ static IEnumerable<string> attemptToEarlyLoadReactiveUIDLLs()
"ReactiveUI.Mobile",
};
-#if WINRT || WP8
+#if WINRT || WP8 || PORTABLE
// NB: WinRT hates your Freedom
return new[] {"ReactiveUI.Xaml", "ReactiveUI.Routing", "ReactiveUI.Mobile", };
#elif SILVERLIGHT
View
2 ReactiveUI/packages.config
@@ -1,4 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
+ <package id="Microsoft.Bcl" version="1.0.16-rc" targetFramework="portable-win+net45+wp80" />
<package id="Microsoft.Bcl.Async" version="1.0.14-rc" targetFramework="win" />
+ <package id="Microsoft.Bcl.Build" version="1.0.0-rc" targetFramework="portable-win+net45+wp80" />
</packages>
View
2,873 ext/Portable-Net45+WinRT45+WP8/System.Reactive.Core.XML
2,873 additions, 0 deletions not shown because the diff is too large. Please use a local Git client to view these changes.
View
BIN ext/Portable-Net45+WinRT45+WP8/System.Reactive.Core.dll
Binary file not shown.
View
336 ext/Portable-Net45+WinRT45+WP8/System.Reactive.Interfaces.XML
@@ -0,0 +1,336 @@
+<?xml version="1.0"?>
+<doc>
+ <assembly>
+ <name>System.Reactive.Interfaces</name>
+ </assembly>
+ <members>
+ <member name="T:System.Reactive.NamespaceDoc">
+ <summary>
+ The <b>System.Reactive</b> namespace contains interfaces and classes used throughout the Reactive Extensions library.
+ </summary>
+ </member>
+ <member name="T:System.Reactive.Concurrency.NamespaceDoc">
+ <summary>
+ The <b>System.Reactive.Concurrency</b> namespace contains interfaces and classes that provide the scheduler infrastructure used by Reactive Extensions to construct and
+ process event streams. Schedulers are used to parameterize the concurrency introduced by query operators, provide means to virtualize time, to process historical data,
+ and to write unit tests for functionality built using Reactive Extensions constructs.
+ </summary>
+ </member>
+ <member name="T:System.Reactive.Disposables.NamespaceDoc">
+ <summary>
+ The <b>System.Reactive.Disposables</b> namespace contains interfaces and classes that provide a compositional set of constructs used to deal with resource and subscription
+ management in Reactive Extensions. Those types are used extensively within the implementation of Reactive Extensions and are useful when writing custom query operators or
+ schedulers.
+ </summary>
+ </member>
+ <member name="T:System.Reactive.Linq.NamespaceDoc">
+ <summary>
+ The <b>System.Reactive.Linq</b> namespace contains interfaces and classes that support expressing queries over observable sequences, using Language Integrated Query (LINQ).
+ Query operators are made available as extension methods for IObservable&lt;T&gt; and IQbservable&lt;T&gt; defined on the Observable and Qbservable classes, respectively.
+ </summary>
+ </member>
+ <member name="T:System.Reactive.Subjects.NamespaceDoc">
+ <summary>
+ The <b>System.Reactive.Subjects</b> namespace contains interfaces and classes to represent subjects, which are objects implementing both IObservable&lt;T&gt; and IObserver&lt;T&gt;.
+ Subjects are often used as sources of events, allowing one party to raise events and allowing another party to write queries over the event stream. Because of their ability to
+ have multiple registered observers, subjects are also used as a facility to provide multicast behavior for event streams in queries.
+ </summary>
+ </member>
+ <member name="T:System.Reactive.Concurrency.ISchedulerPeriodic">
+ <summary>
+ Scheduler with support for running periodic tasks.
+ This type of scheduler can be used to run timers more efficiently instead of using recursive scheduling.
+ </summary>
+ </member>
+ <member name="M:System.Reactive.Concurrency.ISchedulerPeriodic.SchedulePeriodic``1(``0,System.TimeSpan,System.Func{``0,``0})">
+ <summary>
+ Schedules a periodic piece of work.
+ </summary>
+ <typeparam name="TState">The type of the state passed to the scheduled action.</typeparam>
+ <param name="state">Initial state passed to the action upon the first iteration.</param>
+ <param name="period">Period for running the work periodically.</param>
+ <param name="action">Action to be executed, potentially updating the state.</param>
+ <returns>The disposable object used to cancel the scheduled recurring action (best effort).</returns>
+ </member>
+ <member name="T:System.Reactive.Concurrency.IStopwatchProvider">
+ <summary>
+ Provider for IStopwatch objects.
+ </summary>
+ </member>
+ <member name="M:System.Reactive.Concurrency.IStopwatchProvider.StartStopwatch">
+ <summary>
+ Starts a new stopwatch object.
+ </summary>
+ <returns>New stopwatch object; started at the time of the request.</returns>
+ </member>
+ <member name="T:System.Reactive.Concurrency.IScheduledItem`1">
+ <summary>
+ Represents a work item that has been scheduled.
+ </summary>
+ <typeparam name="TAbsolute">Absolute time representation type.</typeparam>
+ </member>
+ <member name="M:System.Reactive.Concurrency.IScheduledItem`1.Invoke">
+ <summary>
+ Invokes the work item.
+ </summary>
+ </member>
+ <member name="P:System.Reactive.Concurrency.IScheduledItem`1.DueTime">
+ <summary>
+ Gets the absolute time at which the item is due for invocation.
+ </summary>
+ </member>
+ <member name="T:System.Reactive.Concurrency.IScheduler">
+ <summary>
+ Represents an object that schedules units of work.
+ </summary>
+ </member>
+ <member name="M:System.Reactive.Concurrency.IScheduler.Schedule``1(``0,System.Func{System.Reactive.Concurrency.IScheduler,``0,System.IDisposable})">
+ <summary>
+ Schedules an action to be executed.
+ </summary>
+ <typeparam name="TState">The type of the state passed to the scheduled action.</typeparam>
+ <param name="state">State passed to the action to be executed.</param>
+ <param name="action">Action to be executed.</param>
+ <returns>The disposable object used to cancel the scheduled action (best effort).</returns>
+ </member>
+ <member name="M:System.Reactive.Concurrency.IScheduler.Schedule``1(``0,System.TimeSpan,System.Func{System.Reactive.Concurrency.IScheduler,``0,System.IDisposable})">
+ <summary>
+ Schedules an action to be executed after dueTime.
+ </summary>
+ <typeparam name="TState">The type of the state passed to the scheduled action.</typeparam>
+ <param name="state">State passed to the action to be executed.</param>
+ <param name="action">Action to be executed.</param>
+ <param name="dueTime">Relative time after which to execute the action.</param>
+ <returns>The disposable object used to cancel the scheduled action (best effort).</returns>
+ </member>
+ <member name="M:System.Reactive.Concurrency.IScheduler.Schedule``1(``0,System.DateTimeOffset,System.Func{System.Reactive.Concurrency.IScheduler,``0,System.IDisposable})">
+ <summary>
+ Schedules an action to be executed at dueTime.
+ </summary>
+ <typeparam name="TState">The type of the state passed to the scheduled action.</typeparam>
+ <param name="state">State passed to the action to be executed.</param>
+ <param name="action">Action to be executed.</param>
+ <param name="dueTime">Absolute time at which to execute the action.</param>
+ <returns>The disposable object used to cancel the scheduled action (best effort).</returns>
+ </member>
+ <member name="P:System.Reactive.Concurrency.IScheduler.Now">
+ <summary>
+ Gets the scheduler's notion of current time.
+ </summary>
+ </member>
+ <member name="T:System.Reactive.Concurrency.ISchedulerLongRunning">
+ <summary>
+ Scheduler with support for starting long-running tasks.
+ This type of scheduler can be used to run loops more efficiently instead of using recursive scheduling.
+ </summary>
+ </member>
+ <member name="M:System.Reactive.Concurrency.ISchedulerLongRunning.ScheduleLongRunning``1(``0,System.Action{``0,System.Reactive.Disposables.ICancelable})">
+ <summary>
+ Schedules a long-running piece of work.
+ </summary>
+ <typeparam name="TState">The type of the state passed to the scheduled action.</typeparam>
+ <param name="state">State passed to the action to be executed.</param>
+ <param name="action">Action to be executed.</param>
+ <returns>The disposable object used to cancel the scheduled action (best effort).</returns>
+ <remarks>
+ <para><b>Notes to implementers</b></para>
+ The returned disposable object should not prevent the work from starting, but only set the cancellation flag passed to the specified action.
+ </remarks>
+ </member>
+ <member name="T:System.Reactive.Concurrency.IStopwatch">
+ <summary>
+ Abstraction for a stopwatch to compute time relative to a starting point.
+ </summary>
+ </member>
+ <member name="P:System.Reactive.Concurrency.IStopwatch.Elapsed">
+ <summary>
+ Gets the time elapsed since the stopwatch object was obtained.
+ </summary>
+ </member>
+ <member name="T:System.Reactive.Disposables.ICancelable">
+ <summary>
+ Disposable resource with dipsosal state tracking.
+ </summary>
+ </member>
+ <member name="P:System.Reactive.Disposables.ICancelable.IsDisposed">
+ <summary>
+ Gets a value that indicates whether the object is disposed.
+ </summary>
+ </member>
+ <member name="T:System.Reactive.IEventPattern`2">
+ <summary>
+ Represents a .NET event invocation consisting of the strongly typed object that raised the event and the data that was generated by the event.
+ </summary>
+ <typeparam name="TSender">
+ The type of the sender that raised the event.
+ This type parameter is covariant. That is, you can use either the type you specified or any type that is more derived. For more information about covariance and contravariance, see Covariance and Contravariance in Generics.
+ </typeparam>
+ <typeparam name="TEventArgs">
+ The type of the event data generated by the event.
+ This type parameter is covariant. That is, you can use either the type you specified or any type that is more derived. For more information about covariance and contravariance, see Covariance and Contravariance in Generics.
+ </typeparam>
+ </member>
+ <member name="P:System.Reactive.IEventPattern`2.Sender">
+ <summary>
+ Gets the sender object that raised the event.
+ </summary>
+ </member>
+ <member name="P:System.Reactive.IEventPattern`2.EventArgs">
+ <summary>
+ Gets the event data that was generated by the event.
+ </summary>
+ </member>
+ <member name="T:System.Reactive.IEventPatternSource`1">
+ <summary>
+ Represents a data stream signaling its elements by means of an event.
+ </summary>
+ <typeparam name="TEventArgs">The type of the event data generated by the event.</typeparam>
+ </member>
+ <member name="E:System.Reactive.IEventPatternSource`1.OnNext">
+ <summary>
+ Event signaling the next element in the data stream.
+ </summary>
+ </member>
+ <member name="T:System.Reactive.IEventSource`1">
+ <summary>
+ Represents a data stream signaling its elements by means of an event.
+ </summary>
+ <typeparam name="T">
+ The type of the event data generated by the event.
+ This type parameter is covariant. That is, you can use either the type you specified or any type that is more derived. For more information about covariance and contravariance, see Covariance and Contravariance in Generics.
+ </typeparam>
+ </member>
+ <member name="E:System.Reactive.IEventSource`1.OnNext">
+ <summary>
+ Event signaling the next element in the data stream.
+ </summary>
+ </member>
+ <member name="T:System.Reactive.IObserver`2">
+ <summary>
+ Provides a mechanism for receiving push-based notifications and returning a response.
+ </summary>
+ <typeparam name="TValue">
+ The type of the elements received by the observer.
+ This type parameter is contravariant. That is, you can use either the type you specified or any type that is less derived. For more information about covariance and contravariance, see Covariance and Contravariance in Generics.
+ </typeparam>
+ <typeparam name="TResult">
+ The type of the result returned from the observer's notification handlers.
+ This type parameter is covariant. That is, you can use either the type you specified or any type that is more derived. For more information about covariance and contravariance, see Covariance and Contravariance in Generics.
+ </typeparam>
+ </member>
+ <member name="M:System.Reactive.IObserver`2.OnNext(`0)">
+ <summary>
+ Notifies the observer of a new element in the sequence.
+ </summary>
+ <param name="value">The new element in the sequence.</param>
+ <returns>Result returned upon observation of a new element.</returns>
+ </member>
+ <member name="M:System.Reactive.IObserver`2.OnError(System.Exception)">
+ <summary>
+ Notifies the observer that an exception has occurred.
+ </summary>
+ <param name="exception">The exception that occurred.</param>
+ <returns>Result returned upon observation of an error.</returns>
+ </member>
+ <member name="M:System.Reactive.IObserver`2.OnCompleted">
+ <summary>
+ Notifies the observer of the end of the sequence.
+ </summary>
+ <returns>Result returned upon observation of the sequence completion.</returns>
+ </member>
+ <member name="T:System.Reactive.Linq.IGroupedObservable`2">
+ <summary>
+ Represents an observable sequence of elements that have a common key.
+ </summary>
+ <typeparam name="TKey">
+ The type of the key shared by all elements in the group.
+ This type parameter is covariant. That is, you can use either the type you specified or any type that is more derived. For more information about covariance and contravariance, see Covariance and Contravariance in Generics.
+ </typeparam>
+ <typeparam name="TElement">
+ The type of the elements in the group.
+ This type parameter is covariant. That is, you can use either the type you specified or any type that is more derived. For more information about covariance and contravariance, see Covariance and Contravariance in Generics.
+ </typeparam>
+ </member>
+ <member name="P:System.Reactive.Linq.IGroupedObservable`2.Key">
+ <summary>
+ Gets the common key.
+ </summary>
+ </member>
+ <member name="T:System.Reactive.Linq.IQbservable`1">
+ <summary>
+ Provides functionality to evaluate queries against a specific data source wherein the type of the data is known.
+ </summary>
+ <typeparam name="T">
+ The type of the data in the data source.
+ This type parameter is covariant. That is, you can use either the type you specified or any type that is more derived. For more information about covariance and contravariance, see Covariance and Contravariance in Generics.
+ </typeparam>
+ </member>
+ <member name="T:System.Reactive.Linq.IQbservable">
+ <summary>
+ Provides functionality to evaluate queries against a specific data source wherein the type of the data is not specified.
+ </summary>
+ </member>
+ <member name="P:System.Reactive.Linq.IQbservable.ElementType">
+ <summary>
+ Gets the type of the element(s) that are returned when the expression tree associated with this instance of IQbservable is executed.
+ </summary>
+ </member>
+ <member name="P:System.Reactive.Linq.IQbservable.Expression">
+ <summary>
+ Gets the expression tree that is associated with the instance of IQbservable.
+ </summary>
+ </member>
+ <member name="P:System.Reactive.Linq.IQbservable.Provider">
+ <summary>
+ Gets the query provider that is associated with this data source.
+ </summary>
+ </member>
+ <member name="T:System.Reactive.Linq.IQbservableProvider">
+ <summary>
+ Defines methods to create and execute queries that are described by an IQbservable object.
+ </summary>
+ </member>
+ <member name="M:System.Reactive.Linq.IQbservableProvider.CreateQuery``1(System.Linq.Expressions.Expression)">
+ <summary>
+ Constructs an IQbservable&gt;TResult&lt; object that can evaluate the query represented by a specified expression tree.
+ </summary>
+ <typeparam name="TResult">The type of the elements of the System.Reactive.Linq.IQbservable&lt;T&gt; that is returned.</typeparam>
+ <param name="expression">Expression tree representing the query.</param>
+ <returns>IQbservable object that can evaluate the given query expression.</returns>
+ </member>
+ <member name="T:System.Reactive.Subjects.IConnectableObservable`1">
+ <summary>
+ Represents an observable wrapper that can be connected and disconnected from its underlying observable sequence.
+ </summary>
+ <typeparam name="T">
+ The type of the elements in the sequence.
+ This type parameter is covariant. That is, you can use either the type you specified or any type that is more derived. For more information about covariance and contravariance, see Covariance and Contravariance in Generics.
+ </typeparam>
+ </member>
+ <member name="M:System.Reactive.Subjects.IConnectableObservable`1.Connect">
+ <summary>
+ Connects the observable wrapper to its source. All subscribed observers will receive values from the underlying observable sequence as long as the connection is established.
+ </summary>
+ <returns>Disposable used to disconnect the observable wrapper from its source, causing subscribed observer to stop receiving values from the underlying observable sequence.</returns>
+ </member>
+ <member name="T:System.Reactive.Subjects.ISubject`1">
+ <summary>
+ Represents an object that is both an observable sequence as well as an observer.
+ </summary>
+ <typeparam name="T">The type of the elements processed by the subject.</typeparam>
+ </member>
+ <member name="T:System.Reactive.Subjects.ISubject`2">
+ <summary>
+ Represents an object that is both an observable sequence as well as an observer.
+ </summary>
+ <typeparam name="TSource">
+ The type of the elements received by the subject.
+ This type parameter is contravariant. That is, you can use either the type you specified or any type that is less derived. For more information about covariance and contravariance, see Covariance and Contravariance in Generics.
+ </typeparam>
+ <typeparam name="TResult">
+ The type of the elements produced by the subject.
+ This type parameter is covariant. That is, you can use either the type you specified or any type that is more derived. For more information about covariance and contravariance, see Covariance and Contravariance in Generics.
+ </typeparam>
+ </member>
+ </members>
+</doc>
View
BIN ext/Portable-Net45+WinRT45+WP8/System.Reactive.Interfaces.dll
Binary file not shown.
View
10,565 ext/Portable-Net45+WinRT45+WP8/System.Reactive.Linq.XML
10,565 additions, 0 deletions not shown because the diff is too large. Please use a local Git client to view these changes.
View
BIN ext/Portable-Net45+WinRT45+WP8/System.Reactive.Linq.dll
Binary file not shown.
View
1 packages/repositories.config
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<repositories>
+ <repository path="..\MobileSample-WinRT\packages.config" />
<repository path="..\MobileSample-WP8\packages.config" />
<repository path="..\PerfConsoleRunner\packages.config" />
<repository path="..\ReactiveUI.NLog\packages.config" />

0 comments on commit 5399c97

Please sign in to comment.
Something went wrong with that request. Please try again.