├── src ├── .gitignore ├── Weavers │ ├── project.json │ ├── .gitignore │ └── Properties │ │ └── AssemblyInfo.cs ├── Cimbalino.Toolkit.Core (WP8) │ ├── System │ │ └── Security │ │ │ └── Cryptography │ │ │ ├── MD5.Generated.cs │ │ │ └── MD5Managed.Generated.cs │ ├── project.json │ ├── .gitignore │ ├── Services │ │ ├── ApplicationManifestService.cs │ │ ├── StorageServiceStorageType.cs │ │ ├── PersonalizationService.cs │ │ └── RuntimeInformationService.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ └── Compression │ │ └── CompressionExtensions.cs ├── Cimbalino.Toolkit (WPA81) │ ├── project.json │ ├── .gitignore │ ├── Properties │ │ └── AssemblyInfo.cs │ └── Behaviors │ │ └── Behavior{T}.cs ├── Cimbalino.Toolkit (Win81) │ ├── project.json │ ├── .gitignore │ └── Properties │ │ └── AssemblyInfo.cs ├── Cimbalino.Toolkit.Core (WPA81) │ ├── project.json │ ├── .gitignore │ └── Properties │ │ └── AssemblyInfo.cs ├── Cimbalino.Toolkit.Core (Win81) │ ├── project.json │ ├── .gitignore │ ├── System │ │ └── Security │ │ │ └── Cryptography │ │ │ ├── HMACMD5.cs │ │ │ ├── HMACSHA1.cs │ │ │ ├── MD5Managed.cs │ │ │ ├── HMACSHA256.cs │ │ │ ├── SHA1Managed.cs │ │ │ └── SHA256Managed.cs │ └── Properties │ │ └── AssemblyInfo.cs ├── Cimbalino.Toolkit.Core (UWP) │ ├── Properties │ │ ├── Cimbalino.Toolkit.Core.rd.xml │ │ └── AssemblyInfo.cs │ ├── project.json │ └── .gitignore ├── Cimbalino.Toolkit.Controls (UWP) │ ├── Properties │ │ ├── Cimbalino.Toolkit.Controls.rd.xml │ │ └── AssemblyInfo.cs │ ├── project.json │ ├── .gitignore │ └── Controls │ │ ├── MasterDetailViewVisiblePane.cs │ │ └── MasterDetailViewDisplayMode.cs ├── Cimbalino.Toolkit (WP8) │ ├── project.json │ ├── .gitignore │ ├── Converters │ │ ├── BooleanToIntConverter.cs │ │ ├── BooleanToObjectConverter.cs │ │ ├── BooleanToStringConverter.cs │ │ ├── BooleanToBrushConverter.cs │ │ └── ComparableToObjectConverter.cs │ ├── Behaviors │ │ ├── ApplicationBarCollection.cs │ │ ├── ApplicationBarMenuItem.cs │ │ ├── ApplicationBarMenuItemCollection.cs │ │ ├── ApplicationBarIconButtonCollection.cs │ │ ├── AfterAutoFocusEventArgs.cs │ │ └── MultiBindingItem.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Helpers │ │ └── NamescopeBinding.cs │ └── Services │ │ ├── DeviceStatusWithKeyboardService.cs │ │ ├── MapManagerService.cs │ │ ├── FilePickerService.cs │ │ └── TitleBarService.cs ├── Cimbalino.Toolkit (WP81) │ ├── project.json │ ├── .gitignore │ └── Properties │ │ └── AssemblyInfo.cs ├── Cimbalino.Toolkit.Core (WP81) │ ├── project.json │ ├── .gitignore │ └── Properties │ │ └── AssemblyInfo.cs ├── Cimbalino.Toolkit.Core (Portable) │ ├── project.json │ ├── .gitignore │ ├── Services │ │ ├── FilePickerServiceViewMode.cs │ │ ├── LocationServiceRequestResult.cs │ │ ├── IApplicationProfileService.cs │ │ ├── IApplicationManifestService.cs │ │ ├── LockScreenServiceRequestResult.cs │ │ ├── ApplicationProfileServiceMode.cs │ │ ├── DeviceStatusServicePowerSource.cs │ │ ├── IMapManagerService.cs │ │ ├── NavigationServiceBackKeyPressedEventArgs.cs │ │ ├── IRuntimeInformationService.cs │ │ ├── INetworkInformationService.cs │ │ ├── LocationServiceAccuracy.cs │ │ ├── RuntimeInformationServiceProfile.cs │ │ ├── NavigationServiceBackKeyPressedBehavior.cs │ │ ├── TitleBarIsVisibleChangedArgs.cs │ │ ├── ITitleBarService.cs │ │ ├── IWindowsStoreService.cs │ │ ├── IWindowsPhoneStoreService.cs │ │ ├── NavigationServiceNavigationMode.cs │ │ ├── FilePickerServiceOptions.cs │ │ ├── LocationServiceStatusChangedEventArgs.cs │ │ ├── IApplicationSettingsService.cs │ │ ├── IPhoneCallService.cs │ │ ├── ISmsComposeService.cs │ │ ├── IVibrationService.cs │ │ ├── LocationServicePositionChangedEventArgs.cs │ │ ├── WindowsPhoneStoreServiceAppContentNode.cs │ │ ├── IPersonalizationService.cs │ │ ├── IFilePickerService.cs │ │ ├── WindowsStoreServiceAppArchitectureNode.cs │ │ ├── LocationServiceStatus.cs │ │ ├── FilePickerServiceLocationId.cs │ │ ├── ILockScreenService.cs │ │ ├── IStoreService.cs │ │ └── PowerStatusChangedEventArgs.cs │ ├── Helpers │ │ ├── ApplicationManifestDefaultTaskNode.cs │ │ ├── ObservableTask.cs │ │ ├── DebugOptions.cs │ │ ├── ApplicationManifestExtendedTaskNode.cs │ │ ├── ExceptionHelper.cs │ │ ├── ApplicationManifestLanguageNode.cs │ │ ├── ApplicationManifestNamedNode.cs │ │ ├── ObservableTask{T}.cs │ │ └── ApplicationManifestTokenNode.cs │ ├── Handlers │ │ ├── IHandleNavigatedTo.cs │ │ ├── IHandleNavigatedFrom.cs │ │ └── IHandleNavigatingFrom.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Compression │ │ └── CompressionLevel.cs │ └── Extensions │ │ ├── DateTimeExtensions.cs │ │ ├── DateTimeOffsetExtensions.cs │ │ ├── IFormattableExtensions.cs │ │ ├── ComparableOperator.cs │ │ ├── WebRequestExtensions.cs │ │ ├── UriExtensions.cs │ │ └── StreamWriterExtensions.cs ├── Cimbalino.Toolkit (UWP) │ ├── Properties │ │ ├── Cimbalino.Toolkit.rd.xml │ │ └── AssemblyInfo.cs │ ├── project.json │ ├── .gitignore │ └── Services │ │ └── LauncherServiceExtensions.cs ├── License.txt └── StyleCop.Analyzers.ruleset ├── Cimbalino.Toolkit.png ├── tools ├── nuget │ └── NuGet.exe └── psake │ └── psake.ps1 ├── Cimbalino.Toolkit@2x.png ├── Cimbalino.Toolkit@3x.png ├── Cimbalino.Toolkit@4x.png ├── doc └── doc.content ├── samples ├── MultiBinding │ ├── MultiBinding │ │ ├── Assets │ │ │ ├── StoreLogo.png │ │ │ ├── SplashScreen.scale-200.png │ │ │ ├── LockScreenLogo.scale-200.png │ │ │ ├── Square44x44Logo.scale-200.png │ │ │ ├── Wide310x150Logo.scale-200.png │ │ │ ├── Square150x150Logo.scale-200.png │ │ │ └── Square44x44Logo.targetsize-24_altform-unplated.png │ │ ├── MultiBinding_TemporaryKey.pfx │ │ ├── App.xaml │ │ ├── project.json │ │ ├── FullNameConverter.cs │ │ ├── View │ │ │ ├── MainPage.xaml.cs │ │ │ └── MainPage.xaml │ │ ├── Properties │ │ │ ├── AssemblyInfo.cs │ │ │ └── Default.rd.xml │ │ └── Package.appxmanifest │ └── .gitignore └── HamburgerFrame │ ├── HamburgerFrame │ ├── Assets │ │ ├── StoreLogo.png │ │ ├── SplashScreen.scale-200.png │ │ ├── LockScreenLogo.scale-200.png │ │ ├── Square44x44Logo.scale-200.png │ │ ├── Wide310x150Logo.scale-200.png │ │ ├── Square150x150Logo.scale-200.png │ │ └── Square44x44Logo.targetsize-24_altform-unplated.png │ ├── HamburgerFrame_TemporaryKey.pfx │ ├── App.xaml │ ├── project.json │ ├── View │ │ ├── MainPage.xaml │ │ ├── OtherPage.xaml │ │ ├── SettingsPage.xaml │ │ ├── HamburgerPaneControl.xaml.cs │ │ ├── OtherPage.xaml.cs │ │ ├── MainPage.xaml.cs │ │ ├── SettingsPage.xaml.cs │ │ └── HamburgerPaneControl.xaml │ ├── Properties │ │ ├── AssemblyInfo.cs │ │ └── Default.rd.xml │ └── Package.appxmanifest │ ├── .gitignore │ └── HamburgerFrame.sln ├── .gitignore ├── .gitattributes ├── CONTRIBUTING.md └── LICENSE.txt /src/.gitignore: -------------------------------------------------------------------------------- 1 | /packages 2 | /*.cache 3 | /.vs -------------------------------------------------------------------------------- /Cimbalino.Toolkit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cimbalino/Cimbalino-Toolkit/HEAD/Cimbalino.Toolkit.png -------------------------------------------------------------------------------- /tools/nuget/NuGet.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cimbalino/Cimbalino-Toolkit/HEAD/tools/nuget/NuGet.exe -------------------------------------------------------------------------------- /Cimbalino.Toolkit@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cimbalino/Cimbalino-Toolkit/HEAD/Cimbalino.Toolkit@2x.png -------------------------------------------------------------------------------- /Cimbalino.Toolkit@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cimbalino/Cimbalino-Toolkit/HEAD/Cimbalino.Toolkit@3x.png -------------------------------------------------------------------------------- /Cimbalino.Toolkit@4x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cimbalino/Cimbalino-Toolkit/HEAD/Cimbalino.Toolkit@4x.png -------------------------------------------------------------------------------- /doc/doc.content: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /samples/MultiBinding/MultiBinding/Assets/StoreLogo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cimbalino/Cimbalino-Toolkit/HEAD/samples/MultiBinding/MultiBinding/Assets/StoreLogo.png -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | Thumbs.db 2 | *.user 3 | *.vspscc 4 | *.suo 5 | *.log 6 | [Bb]in 7 | [Oo]bj 8 | *.cache 9 | *.Cache 10 | *.ncrunchsolution* 11 | _ReSharper*/ 12 | .JustCode/ -------------------------------------------------------------------------------- /samples/HamburgerFrame/HamburgerFrame/Assets/StoreLogo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cimbalino/Cimbalino-Toolkit/HEAD/samples/HamburgerFrame/HamburgerFrame/Assets/StoreLogo.png -------------------------------------------------------------------------------- /samples/MultiBinding/MultiBinding/MultiBinding_TemporaryKey.pfx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cimbalino/Cimbalino-Toolkit/HEAD/samples/MultiBinding/MultiBinding/MultiBinding_TemporaryKey.pfx -------------------------------------------------------------------------------- /samples/MultiBinding/MultiBinding/Assets/SplashScreen.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cimbalino/Cimbalino-Toolkit/HEAD/samples/MultiBinding/MultiBinding/Assets/SplashScreen.scale-200.png -------------------------------------------------------------------------------- /samples/HamburgerFrame/HamburgerFrame/HamburgerFrame_TemporaryKey.pfx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cimbalino/Cimbalino-Toolkit/HEAD/samples/HamburgerFrame/HamburgerFrame/HamburgerFrame_TemporaryKey.pfx -------------------------------------------------------------------------------- /samples/MultiBinding/MultiBinding/Assets/LockScreenLogo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cimbalino/Cimbalino-Toolkit/HEAD/samples/MultiBinding/MultiBinding/Assets/LockScreenLogo.scale-200.png -------------------------------------------------------------------------------- /samples/MultiBinding/MultiBinding/Assets/Square44x44Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cimbalino/Cimbalino-Toolkit/HEAD/samples/MultiBinding/MultiBinding/Assets/Square44x44Logo.scale-200.png -------------------------------------------------------------------------------- /samples/MultiBinding/MultiBinding/Assets/Wide310x150Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cimbalino/Cimbalino-Toolkit/HEAD/samples/MultiBinding/MultiBinding/Assets/Wide310x150Logo.scale-200.png -------------------------------------------------------------------------------- /samples/HamburgerFrame/HamburgerFrame/Assets/SplashScreen.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cimbalino/Cimbalino-Toolkit/HEAD/samples/HamburgerFrame/HamburgerFrame/Assets/SplashScreen.scale-200.png -------------------------------------------------------------------------------- /samples/MultiBinding/MultiBinding/Assets/Square150x150Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cimbalino/Cimbalino-Toolkit/HEAD/samples/MultiBinding/MultiBinding/Assets/Square150x150Logo.scale-200.png -------------------------------------------------------------------------------- /samples/HamburgerFrame/HamburgerFrame/Assets/LockScreenLogo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cimbalino/Cimbalino-Toolkit/HEAD/samples/HamburgerFrame/HamburgerFrame/Assets/LockScreenLogo.scale-200.png -------------------------------------------------------------------------------- /samples/HamburgerFrame/HamburgerFrame/Assets/Square44x44Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cimbalino/Cimbalino-Toolkit/HEAD/samples/HamburgerFrame/HamburgerFrame/Assets/Square44x44Logo.scale-200.png -------------------------------------------------------------------------------- /samples/HamburgerFrame/HamburgerFrame/Assets/Wide310x150Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cimbalino/Cimbalino-Toolkit/HEAD/samples/HamburgerFrame/HamburgerFrame/Assets/Wide310x150Logo.scale-200.png -------------------------------------------------------------------------------- /src/Weavers/project.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "FodyCecil": "1.30.0-beta01" 4 | }, 5 | "frameworks": { 6 | "net45": {} 7 | }, 8 | "runtimes": { 9 | "win": {} 10 | } 11 | } -------------------------------------------------------------------------------- /samples/HamburgerFrame/HamburgerFrame/Assets/Square150x150Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cimbalino/Cimbalino-Toolkit/HEAD/samples/HamburgerFrame/HamburgerFrame/Assets/Square150x150Logo.scale-200.png -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (WP8)/System/Security/Cryptography/MD5.Generated.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cimbalino/Cimbalino-Toolkit/HEAD/src/Cimbalino.Toolkit.Core (WP8)/System/Security/Cryptography/MD5.Generated.cs -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (WPA81)/project.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "StyleCop.Analyzers": "1.0.0" 4 | }, 5 | "frameworks": { 6 | "wpa81": {} 7 | }, 8 | "runtimes": { 9 | "win": {} 10 | } 11 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (Win81)/project.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "StyleCop.Analyzers": "1.0.0" 4 | }, 5 | "frameworks": { 6 | "netcore451": {} 7 | }, 8 | "runtimes": { 9 | "win": {} 10 | } 11 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (WP8)/System/Security/Cryptography/MD5Managed.Generated.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cimbalino/Cimbalino-Toolkit/HEAD/src/Cimbalino.Toolkit.Core (WP8)/System/Security/Cryptography/MD5Managed.Generated.cs -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (WPA81)/project.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "StyleCop.Analyzers": "1.0.0" 4 | }, 5 | "frameworks": { 6 | "wpa81": {} 7 | }, 8 | "runtimes": { 9 | "win": {} 10 | } 11 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Win81)/project.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "StyleCop.Analyzers": "1.0.0" 4 | }, 5 | "frameworks": { 6 | "netcore451": {} 7 | }, 8 | "runtimes": { 9 | "win": {} 10 | } 11 | } -------------------------------------------------------------------------------- /samples/MultiBinding/MultiBinding/Assets/Square44x44Logo.targetsize-24_altform-unplated.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cimbalino/Cimbalino-Toolkit/HEAD/samples/MultiBinding/MultiBinding/Assets/Square44x44Logo.targetsize-24_altform-unplated.png -------------------------------------------------------------------------------- /samples/HamburgerFrame/HamburgerFrame/Assets/Square44x44Logo.targetsize-24_altform-unplated.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cimbalino/Cimbalino-Toolkit/HEAD/samples/HamburgerFrame/HamburgerFrame/Assets/Square44x44Logo.targetsize-24_altform-unplated.png -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (UWP)/Properties/Cimbalino.Toolkit.Core.rd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /samples/MultiBinding/MultiBinding/App.xaml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Controls (UWP)/Properties/Cimbalino.Toolkit.Controls.rd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (WP8)/project.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "Microsoft.Bcl.Build": "1.0.21", 4 | "Microsoft.Bcl.Compression": "3.9.85", 5 | "StyleCop.Analyzers": "1.0.0" 6 | }, 7 | "frameworks": { 8 | "wp8": {} 9 | }, 10 | "runtimes": { 11 | "win": {} 12 | } 13 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (WP81)/project.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "Microsoft.Bcl.Build": "1.0.21", 4 | "Microsoft.Bcl.Compression": "3.9.85", 5 | "StyleCop.Analyzers": "1.0.0" 6 | }, 7 | "frameworks": { 8 | "wp81": {} 9 | }, 10 | "runtimes": { 11 | "win": {} 12 | } 13 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (WP8)/project.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "Microsoft.Bcl.Build": "1.0.21", 4 | "Microsoft.Bcl.Compression": "3.9.85", 5 | "StyleCop.Analyzers": "1.0.0" 6 | }, 7 | "frameworks": { 8 | "wp8": {} 9 | }, 10 | "runtimes": { 11 | "win": {} 12 | } 13 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (WP81)/project.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "Microsoft.Bcl.Build": "1.0.21", 4 | "Microsoft.Bcl.Compression": "3.9.85", 5 | "StyleCop.Analyzers": "1.0.0" 6 | }, 7 | "frameworks": { 8 | "wp81": {} 9 | }, 10 | "runtimes": { 11 | "win": {} 12 | } 13 | } -------------------------------------------------------------------------------- /samples/HamburgerFrame/HamburgerFrame/App.xaml: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/project.json: -------------------------------------------------------------------------------- 1 | { 2 | "supports": {}, 3 | "dependencies": { 4 | "Microsoft.NETCore.Portable.Compatibility": "1.0.1", 5 | "NETStandard.Library": "1.6.0", 6 | "StyleCop.Analyzers": "1.0.0", 7 | "System.ComponentModel": "4.3.0", 8 | "System.Net.Requests": "4.3.0" 9 | }, 10 | "frameworks": { 11 | "netstandard1.0": {} 12 | } 13 | } -------------------------------------------------------------------------------- /samples/MultiBinding/.gitignore: -------------------------------------------------------------------------------- 1 | 2 | #ignore thumbnails created by windows 3 | Thumbs.db 4 | #Ignore files build by Visual Studio 5 | *.obj 6 | *.exe 7 | *.pdb 8 | *.user 9 | *.aps 10 | *.pch 11 | *.vspscc 12 | *_i.c 13 | *_p.c 14 | *.ncb 15 | *.suo 16 | *.tlb 17 | *.tlh 18 | *.bak 19 | *.cache 20 | *.ilk 21 | *.log 22 | [Bb]in 23 | [Dd]ebug*/ 24 | *.lib 25 | *.sbr 26 | obj/ 27 | [Rr]elease*/ 28 | _ReSharper*/ 29 | [Tt]est[Rr]esult* -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (UWP)/project.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "Microsoft.NETCore.UniversalWindowsPlatform": "5.0.0", 4 | "StyleCop.Analyzers": "1.0.0" 5 | }, 6 | "frameworks": { 7 | "uap10.0": {} 8 | }, 9 | "runtimes": { 10 | "win10-arm": {}, 11 | "win10-arm-aot": {}, 12 | "win10-x86": {}, 13 | "win10-x86-aot": {}, 14 | "win10-x64": {}, 15 | "win10-x64-aot": {} 16 | } 17 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Controls (UWP)/project.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "Microsoft.NETCore.UniversalWindowsPlatform": "5.0.0", 4 | "StyleCop.Analyzers": "1.0.0" 5 | }, 6 | "frameworks": { 7 | "uap10.0": {} 8 | }, 9 | "runtimes": { 10 | "win10-arm": {}, 11 | "win10-arm-aot": {}, 12 | "win10-x86": {}, 13 | "win10-x86-aot": {}, 14 | "win10-x64": {}, 15 | "win10-x64-aot": {} 16 | } 17 | } -------------------------------------------------------------------------------- /samples/HamburgerFrame/.gitignore: -------------------------------------------------------------------------------- 1 | 2 | #ignore thumbnails created by windows 3 | Thumbs.db 4 | #Ignore files build by Visual Studio 5 | *.obj 6 | *.exe 7 | *.pdb 8 | *.user 9 | *.aps 10 | *.pch 11 | *.vspscc 12 | *_i.c 13 | *_p.c 14 | *.ncb 15 | *.suo 16 | *.tlb 17 | *.tlh 18 | *.bak 19 | *.cache 20 | *.ilk 21 | *.log 22 | [Bb]in 23 | [Dd]ebug*/ 24 | *.lib 25 | *.sbr 26 | obj/ 27 | [Rr]elease*/ 28 | _ReSharper*/ 29 | [Tt]est[Rr]esult* 30 | project.lock.json -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (UWP)/Properties/Cimbalino.Toolkit.rd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (Win81)/.gitignore: -------------------------------------------------------------------------------- 1 | 2 | #ignore thumbnails created by windows 3 | Thumbs.db 4 | #Ignore files build by Visual Studio 5 | *.obj 6 | *.exe 7 | *.pdb 8 | *.user 9 | *.aps 10 | *.pch 11 | *.vspscc 12 | *_i.c 13 | *_p.c 14 | *.ncb 15 | *.suo 16 | *.tlb 17 | *.tlh 18 | *.bak 19 | *.cache 20 | *.ilk 21 | *.log 22 | [Bb]in 23 | [Dd]ebug*/ 24 | *.lib 25 | *.sbr 26 | obj/ 27 | [Rr]elease*/ 28 | _ReSharper*/ 29 | [Tt]est[Rr]esult* 30 | project.lock.json -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (UWP)/project.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "Microsoft.NETCore.UniversalWindowsPlatform": "5.0.0", 4 | "Microsoft.Xaml.Behaviors.Uwp.Managed": "1.1.0", 5 | "StyleCop.Analyzers": "1.0.0" 6 | }, 7 | "frameworks": { 8 | "uap10.0": {} 9 | }, 10 | "runtimes": { 11 | "win10-arm": {}, 12 | "win10-arm-aot": {}, 13 | "win10-x86": {}, 14 | "win10-x86-aot": {}, 15 | "win10-x64": {}, 16 | "win10-x64-aot": {} 17 | } 18 | } -------------------------------------------------------------------------------- /src/Weavers/.gitignore: -------------------------------------------------------------------------------- 1 | 2 | #ignore thumbnails created by windows 3 | Thumbs.db 4 | #Ignore files build by Visual Studio 5 | *.obj 6 | *.exe 7 | *.pdb 8 | *.user 9 | *.aps 10 | *.pch 11 | *.vspscc 12 | *_i.c 13 | *_p.c 14 | *.ncb 15 | *.suo 16 | *.tlb 17 | *.tlh 18 | *.bak 19 | *.cache 20 | *.ilk 21 | *.log 22 | [Bb]in 23 | [Dd]ebug*/ 24 | *.lib 25 | *.sbr 26 | obj/ 27 | [Rr]elease*/ 28 | _ReSharper*/ 29 | [Tt]est[Rr]esult* 30 | project.lock.json 31 | *.nuget.props 32 | *.nuget.targets -------------------------------------------------------------------------------- /samples/MultiBinding/MultiBinding/project.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "Cimbalino.Toolkit": "2.3.0", 4 | "Microsoft.NETCore.UniversalWindowsPlatform": "5.1.0", 5 | "Microsoft.Xaml.Behaviors.Uwp.Managed": "1.1.0" 6 | }, 7 | "frameworks": { 8 | "uap10.0": {} 9 | }, 10 | "runtimes": { 11 | "win10-arm": {}, 12 | "win10-arm-aot": {}, 13 | "win10-x86": {}, 14 | "win10-x86-aot": {}, 15 | "win10-x64": {}, 16 | "win10-x64-aot": {} 17 | } 18 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (UWP)/.gitignore: -------------------------------------------------------------------------------- 1 | 2 | #ignore thumbnails created by windows 3 | Thumbs.db 4 | #Ignore files build by Visual Studio 5 | *.obj 6 | *.exe 7 | *.pdb 8 | *.user 9 | *.aps 10 | *.pch 11 | *.vspscc 12 | *_i.c 13 | *_p.c 14 | *.ncb 15 | *.suo 16 | *.tlb 17 | *.tlh 18 | *.bak 19 | *.cache 20 | *.ilk 21 | *.log 22 | [Bb]in 23 | [Dd]ebug*/ 24 | *.lib 25 | *.sbr 26 | obj/ 27 | [Rr]elease*/ 28 | _ReSharper*/ 29 | [Tt]est[Rr]esult* 30 | project.lock.json 31 | *.nuget.props 32 | *.nuget.targets -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (WP8)/.gitignore: -------------------------------------------------------------------------------- 1 | 2 | #ignore thumbnails created by windows 3 | Thumbs.db 4 | #Ignore files build by Visual Studio 5 | *.obj 6 | *.exe 7 | *.pdb 8 | *.user 9 | *.aps 10 | *.pch 11 | *.vspscc 12 | *_i.c 13 | *_p.c 14 | *.ncb 15 | *.suo 16 | *.tlb 17 | *.tlh 18 | *.bak 19 | *.cache 20 | *.ilk 21 | *.log 22 | [Bb]in 23 | [Dd]ebug*/ 24 | *.lib 25 | *.sbr 26 | obj/ 27 | [Rr]elease*/ 28 | _ReSharper*/ 29 | [Tt]est[Rr]esult* 30 | project.lock.json 31 | *.nuget.props 32 | *.nuget.targets -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (WP81)/.gitignore: -------------------------------------------------------------------------------- 1 | 2 | #ignore thumbnails created by windows 3 | Thumbs.db 4 | #Ignore files build by Visual Studio 5 | *.obj 6 | *.exe 7 | *.pdb 8 | *.user 9 | *.aps 10 | *.pch 11 | *.vspscc 12 | *_i.c 13 | *_p.c 14 | *.ncb 15 | *.suo 16 | *.tlb 17 | *.tlh 18 | *.bak 19 | *.cache 20 | *.ilk 21 | *.log 22 | [Bb]in 23 | [Dd]ebug*/ 24 | *.lib 25 | *.sbr 26 | obj/ 27 | [Rr]elease*/ 28 | _ReSharper*/ 29 | [Tt]est[Rr]esult* 30 | project.lock.json 31 | *.nuget.props 32 | *.nuget.targets -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (WPA81)/.gitignore: -------------------------------------------------------------------------------- 1 | 2 | #ignore thumbnails created by windows 3 | Thumbs.db 4 | #Ignore files build by Visual Studio 5 | *.obj 6 | *.exe 7 | *.pdb 8 | *.user 9 | *.aps 10 | *.pch 11 | *.vspscc 12 | *_i.c 13 | *_p.c 14 | *.ncb 15 | *.suo 16 | *.tlb 17 | *.tlh 18 | *.bak 19 | *.cache 20 | *.ilk 21 | *.log 22 | [Bb]in 23 | [Dd]ebug*/ 24 | *.lib 25 | *.sbr 26 | obj/ 27 | [Rr]elease*/ 28 | _ReSharper*/ 29 | [Tt]est[Rr]esult* 30 | project.lock.json 31 | *.nuget.props 32 | *.nuget.targets -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Controls (UWP)/.gitignore: -------------------------------------------------------------------------------- 1 | 2 | #ignore thumbnails created by windows 3 | Thumbs.db 4 | #Ignore files build by Visual Studio 5 | *.obj 6 | *.exe 7 | *.pdb 8 | *.user 9 | *.aps 10 | *.pch 11 | *.vspscc 12 | *_i.c 13 | *_p.c 14 | *.ncb 15 | *.suo 16 | *.tlb 17 | *.tlh 18 | *.bak 19 | *.cache 20 | *.ilk 21 | *.log 22 | [Bb]in 23 | [Dd]ebug*/ 24 | *.lib 25 | *.sbr 26 | obj/ 27 | [Rr]elease*/ 28 | _ReSharper*/ 29 | [Tt]est[Rr]esult* 30 | project.lock.json 31 | *.nuget.props 32 | *.nuget.targets -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (UWP)/.gitignore: -------------------------------------------------------------------------------- 1 | 2 | #ignore thumbnails created by windows 3 | Thumbs.db 4 | #Ignore files build by Visual Studio 5 | *.obj 6 | *.exe 7 | *.pdb 8 | *.user 9 | *.aps 10 | *.pch 11 | *.vspscc 12 | *_i.c 13 | *_p.c 14 | *.ncb 15 | *.suo 16 | *.tlb 17 | *.tlh 18 | *.bak 19 | *.cache 20 | *.ilk 21 | *.log 22 | [Bb]in 23 | [Dd]ebug*/ 24 | *.lib 25 | *.sbr 26 | obj/ 27 | [Rr]elease*/ 28 | _ReSharper*/ 29 | [Tt]est[Rr]esult* 30 | project.lock.json 31 | *.nuget.props 32 | *.nuget.targets -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (WP8)/.gitignore: -------------------------------------------------------------------------------- 1 | 2 | #ignore thumbnails created by windows 3 | Thumbs.db 4 | #Ignore files build by Visual Studio 5 | *.obj 6 | *.exe 7 | *.pdb 8 | *.user 9 | *.aps 10 | *.pch 11 | *.vspscc 12 | *_i.c 13 | *_p.c 14 | *.ncb 15 | *.suo 16 | *.tlb 17 | *.tlh 18 | *.bak 19 | *.cache 20 | *.ilk 21 | *.log 22 | [Bb]in 23 | [Dd]ebug*/ 24 | *.lib 25 | *.sbr 26 | obj/ 27 | [Rr]elease*/ 28 | _ReSharper*/ 29 | [Tt]est[Rr]esult* 30 | project.lock.json 31 | *.nuget.props 32 | *.nuget.targets -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (WP81)/.gitignore: -------------------------------------------------------------------------------- 1 | 2 | #ignore thumbnails created by windows 3 | Thumbs.db 4 | #Ignore files build by Visual Studio 5 | *.obj 6 | *.exe 7 | *.pdb 8 | *.user 9 | *.aps 10 | *.pch 11 | *.vspscc 12 | *_i.c 13 | *_p.c 14 | *.ncb 15 | *.suo 16 | *.tlb 17 | *.tlh 18 | *.bak 19 | *.cache 20 | *.ilk 21 | *.log 22 | [Bb]in 23 | [Dd]ebug*/ 24 | *.lib 25 | *.sbr 26 | obj/ 27 | [Rr]elease*/ 28 | _ReSharper*/ 29 | [Tt]est[Rr]esult* 30 | project.lock.json 31 | *.nuget.props 32 | *.nuget.targets -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (WPA81)/.gitignore: -------------------------------------------------------------------------------- 1 | 2 | #ignore thumbnails created by windows 3 | Thumbs.db 4 | #Ignore files build by Visual Studio 5 | *.obj 6 | *.exe 7 | *.pdb 8 | *.user 9 | *.aps 10 | *.pch 11 | *.vspscc 12 | *_i.c 13 | *_p.c 14 | *.ncb 15 | *.suo 16 | *.tlb 17 | *.tlh 18 | *.bak 19 | *.cache 20 | *.ilk 21 | *.log 22 | [Bb]in 23 | [Dd]ebug*/ 24 | *.lib 25 | *.sbr 26 | obj/ 27 | [Rr]elease*/ 28 | _ReSharper*/ 29 | [Tt]est[Rr]esult* 30 | project.lock.json 31 | *.nuget.props 32 | *.nuget.targets -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Win81)/.gitignore: -------------------------------------------------------------------------------- 1 | 2 | #ignore thumbnails created by windows 3 | Thumbs.db 4 | #Ignore files build by Visual Studio 5 | *.obj 6 | *.exe 7 | *.pdb 8 | *.user 9 | *.aps 10 | *.pch 11 | *.vspscc 12 | *_i.c 13 | *_p.c 14 | *.ncb 15 | *.suo 16 | *.tlb 17 | *.tlh 18 | *.bak 19 | *.cache 20 | *.ilk 21 | *.log 22 | [Bb]in 23 | [Dd]ebug*/ 24 | *.lib 25 | *.sbr 26 | obj/ 27 | [Rr]elease*/ 28 | _ReSharper*/ 29 | [Tt]est[Rr]esult* 30 | project.lock.json 31 | *.nuget.props 32 | *.nuget.targets -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/.gitignore: -------------------------------------------------------------------------------- 1 | 2 | #ignore thumbnails created by windows 3 | Thumbs.db 4 | #Ignore files build by Visual Studio 5 | *.obj 6 | *.exe 7 | *.pdb 8 | *.user 9 | *.aps 10 | *.pch 11 | *.vspscc 12 | *_i.c 13 | *_p.c 14 | *.ncb 15 | *.suo 16 | *.tlb 17 | *.tlh 18 | *.bak 19 | *.cache 20 | *.ilk 21 | *.log 22 | [Bb]in 23 | [Dd]ebug*/ 24 | *.lib 25 | *.sbr 26 | obj/ 27 | [Rr]elease*/ 28 | _ReSharper*/ 29 | [Tt]est[Rr]esult* 30 | project.lock.json 31 | *.nuget.props 32 | *.nuget.targets -------------------------------------------------------------------------------- /samples/HamburgerFrame/HamburgerFrame/project.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "Cimbalino.Toolkit": "2.2.0-beta1", 4 | "Cimbalino.Toolkit.Controls": "2.2.0-beta1", 5 | "Cimbalino.Toolkit.Core": "2.2.0-beta1", 6 | "Microsoft.NETCore.UniversalWindowsPlatform": "5.0.0" 7 | }, 8 | "frameworks": { 9 | "uap10.0": {} 10 | }, 11 | "runtimes": { 12 | "win10-arm": {}, 13 | "win10-arm-aot": {}, 14 | "win10-x86": {}, 15 | "win10-x86-aot": {}, 16 | "win10-x64": {}, 17 | "win10-x64-aot": {} 18 | } 19 | } -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | 4 | # Custom for Visual Studio 5 | *.cs diff=csharp 6 | *.sln merge=union 7 | *.csproj merge=union 8 | *.vbproj merge=union 9 | *.fsproj merge=union 10 | *.dbproj merge=union 11 | 12 | # Standard to msysgit 13 | *.doc diff=astextplain 14 | *.DOC diff=astextplain 15 | *.docx diff=astextplain 16 | *.DOCX diff=astextplain 17 | *.dot diff=astextplain 18 | *.DOT diff=astextplain 19 | *.pdf diff=astextplain 20 | *.PDF diff=astextplain 21 | *.rtf diff=astextplain 22 | *.RTF diff=astextplain 23 | -------------------------------------------------------------------------------- /samples/HamburgerFrame/HamburgerFrame/View/MainPage.xaml: -------------------------------------------------------------------------------- 1 | 9 | 10 | 11 | Main Page 12 | 13 | 14 | -------------------------------------------------------------------------------- /samples/HamburgerFrame/HamburgerFrame/View/OtherPage.xaml: -------------------------------------------------------------------------------- 1 | 9 | 10 | 11 | Other Page 12 | 13 | 14 | -------------------------------------------------------------------------------- /samples/HamburgerFrame/HamburgerFrame/View/SettingsPage.xaml: -------------------------------------------------------------------------------- 1 | 9 | 10 | 11 | Settings Page 12 | 13 | 14 | -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # How to contribute 2 | 3 | Contributions are quite welcome, though some rules should be followed! 4 | 5 | ## C# Coding Style 6 | 7 | The general rule we follow is "use Visual Studio defaults". 8 | 9 | 1. Use [Allman style braces](http://en.wikipedia.org/wiki/Indent_style#Allman_style) 10 | 2. Use four spaces of indentation (no tabs) 11 | 3. Use `_camelCase` private members and use `readonly` where possible 12 | 4. Avoid `this.` unless absolutely necessary 13 | 5. Always specify the visiblity, even if it's the default (i.e. `private string _foo` not `string _foo`) 14 | 6. Namespace imports should be specified at the top of the file, outside of namespace declarations and should be sorted alphabetically, with `System.` namespaces at the top and blank lines between different top level groups -------------------------------------------------------------------------------- /samples/MultiBinding/MultiBinding/FullNameConverter.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Globalization; 3 | using Cimbalino.Toolkit.Converters; 4 | 5 | namespace MultiBinding 6 | { 7 | public class FullNameConverter : MultiValueConverterBase 8 | { 9 | public override object Convert(object[] values, Type targetType, object parameter, CultureInfo culture) 10 | { 11 | if (values == null) 12 | { 13 | return null; 14 | } 15 | 16 | return string.Join(" ", values); 17 | } 18 | 19 | public override object[] ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) 20 | { 21 | var stringValue = (string)value + " "; 22 | 23 | var values = stringValue.Split(' '); 24 | 25 | return new object[] { values[0], values[1] }; 26 | } 27 | } 28 | } -------------------------------------------------------------------------------- /samples/HamburgerFrame/HamburgerFrame/View/HamburgerPaneControl.xaml.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.IO; 4 | using System.Linq; 5 | using System.Runtime.InteropServices.WindowsRuntime; 6 | using Windows.Foundation; 7 | using Windows.Foundation.Collections; 8 | using Windows.UI.Xaml; 9 | using Windows.UI.Xaml.Controls; 10 | using Windows.UI.Xaml.Controls.Primitives; 11 | using Windows.UI.Xaml.Data; 12 | using Windows.UI.Xaml.Input; 13 | using Windows.UI.Xaml.Media; 14 | using Windows.UI.Xaml.Navigation; 15 | 16 | // The User Control item template is documented at http://go.microsoft.com/fwlink/?LinkId=234236 17 | 18 | namespace HamburgerFrame.View 19 | { 20 | public sealed partial class HamburgerPaneControl : UserControl 21 | { 22 | public HamburgerPaneControl() 23 | { 24 | this.InitializeComponent(); 25 | } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /samples/MultiBinding/MultiBinding/View/MainPage.xaml.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.IO; 4 | using System.Linq; 5 | using System.Runtime.InteropServices.WindowsRuntime; 6 | using Windows.Foundation; 7 | using Windows.Foundation.Collections; 8 | using Windows.UI.Xaml; 9 | using Windows.UI.Xaml.Controls; 10 | using Windows.UI.Xaml.Controls.Primitives; 11 | using Windows.UI.Xaml.Data; 12 | using Windows.UI.Xaml.Input; 13 | using Windows.UI.Xaml.Media; 14 | using Windows.UI.Xaml.Navigation; 15 | 16 | // The Blank Page item template is documented at http://go.microsoft.com/fwlink/?LinkId=234238 17 | 18 | namespace MultiBinding.View 19 | { 20 | /// 21 | /// An empty page that can be used on its own or navigated to within a Frame. 22 | /// 23 | public sealed partial class MainPage : Page 24 | { 25 | public MainPage() 26 | { 27 | this.InitializeComponent(); 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /samples/HamburgerFrame/HamburgerFrame/View/OtherPage.xaml.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.IO; 4 | using System.Linq; 5 | using System.Runtime.InteropServices.WindowsRuntime; 6 | using Windows.Foundation; 7 | using Windows.Foundation.Collections; 8 | using Windows.UI.Xaml; 9 | using Windows.UI.Xaml.Controls; 10 | using Windows.UI.Xaml.Controls.Primitives; 11 | using Windows.UI.Xaml.Data; 12 | using Windows.UI.Xaml.Input; 13 | using Windows.UI.Xaml.Media; 14 | using Windows.UI.Xaml.Navigation; 15 | 16 | // The Blank Page item template is documented at http://go.microsoft.com/fwlink/?LinkId=234238 17 | 18 | namespace HamburgerFrame.View 19 | { 20 | /// 21 | /// An empty page that can be used on its own or navigated to within a Frame. 22 | /// 23 | public sealed partial class OtherPage : Page 24 | { 25 | public OtherPage() 26 | { 27 | this.InitializeComponent(); 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /samples/HamburgerFrame/HamburgerFrame/View/MainPage.xaml.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.IO; 4 | using System.Linq; 5 | using System.Runtime.InteropServices.WindowsRuntime; 6 | using Windows.Foundation; 7 | using Windows.Foundation.Collections; 8 | using Windows.UI.Xaml; 9 | using Windows.UI.Xaml.Controls; 10 | using Windows.UI.Xaml.Controls.Primitives; 11 | using Windows.UI.Xaml.Data; 12 | using Windows.UI.Xaml.Input; 13 | using Windows.UI.Xaml.Media; 14 | using Windows.UI.Xaml.Navigation; 15 | 16 | // The Blank Page item template is documented at http://go.microsoft.com/fwlink/?LinkId=402352&clcid=0x409 17 | 18 | namespace HamburgerFrame.View 19 | { 20 | /// 21 | /// An empty page that can be used on its own or navigated to within a Frame. 22 | /// 23 | public sealed partial class MainPage : Page 24 | { 25 | public MainPage() 26 | { 27 | this.InitializeComponent(); 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /samples/HamburgerFrame/HamburgerFrame/View/SettingsPage.xaml.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.IO; 4 | using System.Linq; 5 | using System.Runtime.InteropServices.WindowsRuntime; 6 | using Windows.Foundation; 7 | using Windows.Foundation.Collections; 8 | using Windows.UI.Xaml; 9 | using Windows.UI.Xaml.Controls; 10 | using Windows.UI.Xaml.Controls.Primitives; 11 | using Windows.UI.Xaml.Data; 12 | using Windows.UI.Xaml.Input; 13 | using Windows.UI.Xaml.Media; 14 | using Windows.UI.Xaml.Navigation; 15 | 16 | // The Blank Page item template is documented at http://go.microsoft.com/fwlink/?LinkId=234238 17 | 18 | namespace HamburgerFrame.View 19 | { 20 | /// 21 | /// An empty page that can be used on its own or navigated to within a Frame. 22 | /// 23 | public sealed partial class SettingsPage : Page 24 | { 25 | public SettingsPage() 26 | { 27 | this.InitializeComponent(); 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /LICENSE.txt: -------------------------------------------------------------------------------- 1 | Copyright (C) 2011 Pedro Lamas, http://www.pedrolamas.com 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. -------------------------------------------------------------------------------- /src/License.txt: -------------------------------------------------------------------------------- 1 | Copyright (C) 2011 Pedro Lamas, http://www.pedrolamas.com 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (WP8)/Converters/BooleanToIntConverter.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | #if WINDOWS_PHONE || WINDOWS_PHONE_81 16 | using System.Windows.Data; 17 | #else 18 | using Windows.UI.Xaml.Data; 19 | #endif 20 | 21 | namespace Cimbalino.Toolkit.Converters 22 | { 23 | /// 24 | /// An which converts a value to a value. 25 | /// 26 | public class BooleanToIntConverter : BooleanToValueConverterBase 27 | { 28 | } 29 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (WP8)/Converters/BooleanToObjectConverter.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | #if WINDOWS_PHONE || WINDOWS_PHONE_81 16 | using System.Windows.Data; 17 | #else 18 | using Windows.UI.Xaml.Data; 19 | #endif 20 | 21 | namespace Cimbalino.Toolkit.Converters 22 | { 23 | /// 24 | /// An which converts a value to an value. 25 | /// 26 | public class BooleanToObjectConverter : BooleanToValueConverterBase 27 | { 28 | } 29 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (WP8)/Converters/BooleanToStringConverter.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | #if WINDOWS_PHONE || WINDOWS_PHONE_81 16 | using System.Windows.Data; 17 | #else 18 | using Windows.UI.Xaml.Data; 19 | #endif 20 | 21 | namespace Cimbalino.Toolkit.Converters 22 | { 23 | /// 24 | /// An which converts a value to a value. 25 | /// 26 | public class BooleanToStringConverter : BooleanToValueConverterBase 27 | { 28 | } 29 | } -------------------------------------------------------------------------------- /samples/MultiBinding/MultiBinding/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("MultiBinding")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("")] 12 | [assembly: AssemblyProduct("MultiBinding")] 13 | [assembly: AssemblyCopyright("Copyright © 2016")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Version information for an assembly consists of the following four values: 18 | // 19 | // Major Version 20 | // Minor Version 21 | // Build Number 22 | // Revision 23 | // 24 | // You can specify all the values or you can default the Build and Revision Numbers 25 | // by using the '*' as shown below: 26 | // [assembly: AssemblyVersion("1.0.*")] 27 | [assembly: AssemblyVersion("1.0.0.0")] 28 | [assembly: AssemblyFileVersion("1.0.0.0")] 29 | [assembly: ComVisible(false)] -------------------------------------------------------------------------------- /samples/HamburgerFrame/HamburgerFrame/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("HamburgerFrame")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("")] 12 | [assembly: AssemblyProduct("HamburgerFrame")] 13 | [assembly: AssemblyCopyright("Copyright © 2016")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Version information for an assembly consists of the following four values: 18 | // 19 | // Major Version 20 | // Minor Version 21 | // Build Number 22 | // Revision 23 | // 24 | // You can specify all the values or you can default the Build and Revision Numbers 25 | // by using the '*' as shown below: 26 | // [assembly: AssemblyVersion("1.0.*")] 27 | [assembly: AssemblyVersion("1.0.0.0")] 28 | [assembly: AssemblyFileVersion("1.0.0.0")] 29 | [assembly: ComVisible(false)] -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Controls (UWP)/Controls/MasterDetailViewVisiblePane.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Controls 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | namespace Cimbalino.Toolkit.Controls 16 | { 17 | /// 18 | /// Represents the visible pane. 19 | /// 20 | public enum MasterDetailViewVisiblePane 21 | { 22 | /// 23 | /// Master is visible. 24 | /// 25 | Master, 26 | 27 | /// 28 | /// Detail is visible. 29 | /// 30 | Detail 31 | } 32 | } -------------------------------------------------------------------------------- /src/StyleCop.Analyzers.ruleset: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Controls (UWP)/Controls/MasterDetailViewDisplayMode.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Controls 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | namespace Cimbalino.Toolkit.Controls 16 | { 17 | /// 18 | /// Represents the display mode. 19 | /// 20 | public enum MasterDetailViewDisplayMode 21 | { 22 | /// 23 | /// Normal display mode. 24 | /// 25 | Normal, 26 | 27 | /// 28 | /// Compact display mode. 29 | /// 30 | Compact 31 | } 32 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/FilePickerServiceViewMode.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | namespace Cimbalino.Toolkit.Services 16 | { 17 | /// 18 | /// Indicates the view mode that the file picker is using to present items. 19 | /// 20 | public enum FilePickerServiceViewMode 21 | { 22 | /// 23 | /// A list of items. 24 | /// 25 | List, 26 | 27 | /// 28 | /// A set of thumbnail images. 29 | /// 30 | Thumbnail 31 | } 32 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (WP8)/Converters/BooleanToBrushConverter.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | #if WINDOWS_PHONE || WINDOWS_PHONE_81 16 | using System.Windows.Data; 17 | using System.Windows.Media; 18 | #else 19 | using Windows.UI.Xaml.Data; 20 | using Windows.UI.Xaml.Media; 21 | #endif 22 | 23 | namespace Cimbalino.Toolkit.Converters 24 | { 25 | /// 26 | /// An which converts a value to a value. 27 | /// 28 | public class BooleanToBrushConverter : BooleanToValueConverterBase 29 | { 30 | } 31 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (WP8)/Converters/ComparableToObjectConverter.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | #if WINDOWS_PHONE || WINDOWS_PHONE_81 16 | using System; 17 | using System.Windows.Data; 18 | #else 19 | using System; 20 | using Windows.UI.Xaml.Data; 21 | #endif 22 | 23 | namespace Cimbalino.Toolkit.Converters 24 | { 25 | /// 26 | /// An which converts a value to an value. 27 | /// 28 | public class ComparableToObjectConverter : ComparableToValueConverterBase 29 | { 30 | } 31 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (WP8)/Behaviors/ApplicationBarCollection.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System.Windows; 16 | 17 | namespace Cimbalino.Toolkit.Behaviors 18 | { 19 | /// 20 | /// Represents a collection of . 21 | /// 22 | public class ApplicationBarCollection : DependencyObjectCollection 23 | { 24 | /// 25 | /// Initializes a new instance of the class. 26 | /// 27 | public ApplicationBarCollection() 28 | { 29 | } 30 | } 31 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/LocationServiceRequestResult.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | namespace Cimbalino.Toolkit.Services 16 | { 17 | /// 18 | /// Indicates if your app has permission to access location data. 19 | /// 20 | public enum LocationServiceRequestResult 21 | { 22 | /// 23 | /// Permission to access location was denied. 24 | /// 25 | Denied, 26 | 27 | /// 28 | /// Permission to access location was granted. 29 | /// 30 | Allowed 31 | } 32 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Win81)/System/Security/Cryptography/HMACMD5.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using Windows.Security.Cryptography.Core; 16 | 17 | namespace System.Security.Cryptography 18 | { 19 | /// 20 | /// Computes the MD5 hash for the input data using the managed library. 21 | /// 22 | public sealed class HMACMD5 : HmacHashAlgorithmBase 23 | { 24 | /// 25 | /// Initializes a new instance of the class. 26 | /// 27 | public HMACMD5() 28 | : base(MacAlgorithmNames.HmacMd5) 29 | { 30 | } 31 | } 32 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/IApplicationProfileService.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | namespace Cimbalino.Toolkit.Services 16 | { 17 | /// 18 | /// Represents a service capable of providing profile information about an app. 19 | /// 20 | public interface IApplicationProfileService 21 | { 22 | /// 23 | /// Gets a value that indicates the mode that an app is running in. 24 | /// 25 | /// A value that indicates the mode that an app is running in. 26 | ApplicationProfileServiceMode Mode { get; } 27 | } 28 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Win81)/System/Security/Cryptography/HMACSHA1.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using Windows.Security.Cryptography.Core; 16 | 17 | namespace System.Security.Cryptography 18 | { 19 | /// 20 | /// Computes the MD5 hash for the input data using the managed library. 21 | /// 22 | public sealed class HMACSHA1 : HmacHashAlgorithmBase 23 | { 24 | /// 25 | /// Initializes a new instance of the class. 26 | /// 27 | public HMACSHA1() 28 | : base(MacAlgorithmNames.HmacSha1) 29 | { 30 | } 31 | } 32 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Win81)/System/Security/Cryptography/MD5Managed.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using Windows.Security.Cryptography.Core; 16 | 17 | namespace System.Security.Cryptography 18 | { 19 | /// 20 | /// Computes the MD5 hash for the input data using the managed library. 21 | /// 22 | public sealed class MD5Managed : HashAlgorithmBase 23 | { 24 | /// 25 | /// Initializes a new instance of the class. 26 | /// 27 | public MD5Managed() 28 | : base(HashAlgorithmNames.Md5) 29 | { 30 | } 31 | } 32 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Win81)/System/Security/Cryptography/HMACSHA256.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using Windows.Security.Cryptography.Core; 16 | 17 | namespace System.Security.Cryptography 18 | { 19 | /// 20 | /// Computes the MD5 hash for the input data using the managed library. 21 | /// 22 | public sealed class HMACSHA256 : HmacHashAlgorithmBase 23 | { 24 | /// 25 | /// Initializes a new instance of the class. 26 | /// 27 | public HMACSHA256() 28 | : base(MacAlgorithmNames.HmacSha256) 29 | { 30 | } 31 | } 32 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Win81)/System/Security/Cryptography/SHA1Managed.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using Windows.Security.Cryptography.Core; 16 | 17 | namespace System.Security.Cryptography 18 | { 19 | /// 20 | /// Computes the MD5 hash for the input data using the managed library. 21 | /// 22 | public sealed class SHA1Managed : HashAlgorithmBase 23 | { 24 | /// 25 | /// Initializes a new instance of the class. 26 | /// 27 | public SHA1Managed() 28 | : base(HashAlgorithmNames.Sha1) 29 | { 30 | } 31 | } 32 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/IApplicationManifestService.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using Cimbalino.Toolkit.Helpers; 16 | 17 | namespace Cimbalino.Toolkit.Services 18 | { 19 | /// 20 | /// Represents a service capable of reading from the application manifest. 21 | /// 22 | public interface IApplicationManifestService 23 | { 24 | /// 25 | /// Gets the application manifest for the active app. 26 | /// 27 | /// The application manifest for the active app. 28 | ApplicationManifest GetApplicationManifest(); 29 | } 30 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Win81)/System/Security/Cryptography/SHA256Managed.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using Windows.Security.Cryptography.Core; 16 | 17 | namespace System.Security.Cryptography 18 | { 19 | /// 20 | /// Computes the MD5 hash for the input data using the managed library. 21 | /// 22 | public sealed class SHA256Managed : HashAlgorithmBase 23 | { 24 | /// 25 | /// Initializes a new instance of the class. 26 | /// 27 | public SHA256Managed() 28 | : base(HashAlgorithmNames.Sha256) 29 | { 30 | } 31 | } 32 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Helpers/ApplicationManifestDefaultTaskNode.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | namespace Cimbalino.Toolkit.Helpers 16 | { 17 | /// 18 | /// Represents a default task in the application manifest. 19 | /// 20 | public class ApplicationManifestDefaultTaskNode : ApplicationManifestTaskNodeBase 21 | { 22 | #region Properties 23 | 24 | /// 25 | /// Gets or sets the page to navigate. 26 | /// 27 | /// The page to navigate. 28 | public string NavigationPage { get; set; } 29 | 30 | #endregion 31 | } 32 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Controls (UWP)/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Controls 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System.Reflection; 16 | using System.Runtime.InteropServices; 17 | 18 | [assembly: AssemblyTitle("Cimbalino.Toolkit.Controls")] 19 | [assembly: AssemblyDescription("Cimbalino Toolkit")] 20 | [assembly: AssemblyConfiguration("")] 21 | [assembly: AssemblyCompany("Pedro Lamas")] 22 | [assembly: AssemblyProduct("Cimbalino.Toolkit")] 23 | [assembly: AssemblyCopyright("Copyright © Pedro Lamas 2014")] 24 | [assembly: AssemblyTrademark("")] 25 | [assembly: AssemblyCulture("")] 26 | 27 | [assembly: AssemblyVersion("2.5.2.0")] 28 | [assembly: AssemblyFileVersion("2.5.2.0")] 29 | 30 | [assembly: ComVisible(false)] -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Helpers/ObservableTask.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System.Threading.Tasks; 16 | 17 | namespace Cimbalino.Toolkit.Helpers 18 | { 19 | /// 20 | /// Helper class that will notify any listener for task completion. 21 | /// 22 | public class ObservableTask : ObservableTaskBase 23 | { 24 | /// 25 | /// Initializes a new instance of the class. 26 | /// 27 | /// The associated task instance. 28 | public ObservableTask(Task task) 29 | : base(task) 30 | { 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/LockScreenServiceRequestResult.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | namespace Cimbalino.Toolkit.Services 16 | { 17 | /// 18 | /// Indicates if the app was successfully or unsuccessfully set as the lock screen background provider. 19 | /// 20 | public enum LockScreenServiceRequestResult 21 | { 22 | /// 23 | /// The app was not set as the lock screen background provider. 24 | /// 25 | Denied, 26 | 27 | /// 28 | /// The app was set as the lock screen background provider. 29 | /// 30 | Granted 31 | } 32 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Helpers/DebugOptions.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | namespace Cimbalino.Toolkit.Helpers 16 | { 17 | /// 18 | /// Helper class to set debugging options used in Cimbalino Toolkit. 19 | /// 20 | public static class DebugOptions 21 | { 22 | /// 23 | /// Gets or sets a value indicating whether exceptions should be raised when code tries to access to unsupported features. 24 | /// 25 | /// true if exceptions should be raised when code tries to access to unsupported features; otherwise, false. 26 | public static bool ThrowNotSupportedExceptions { get; set; } 27 | } 28 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (WPA81)/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System.Reflection; 16 | using System.Resources; 17 | using System.Runtime.InteropServices; 18 | 19 | [assembly: AssemblyTitle("Cimbalino.Toolkit")] 20 | [assembly: AssemblyDescription("Cimbalino Toolkit")] 21 | [assembly: AssemblyConfiguration("")] 22 | [assembly: AssemblyCompany("Pedro Lamas")] 23 | [assembly: AssemblyProduct("Cimbalino.Toolkit")] 24 | [assembly: AssemblyCopyright("Copyright © Pedro Lamas 2014")] 25 | [assembly: AssemblyTrademark("")] 26 | [assembly: AssemblyCulture("")] 27 | [assembly: NeutralResourcesLanguage("en-US")] 28 | 29 | [assembly: AssemblyVersion("2.5.2.0")] 30 | [assembly: AssemblyFileVersion("2.5.2.0")] 31 | 32 | [assembly: ComVisible(false)] -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (Win81)/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System.Reflection; 16 | using System.Resources; 17 | using System.Runtime.InteropServices; 18 | 19 | [assembly: AssemblyTitle("Cimbalino.Toolkit")] 20 | [assembly: AssemblyDescription("Cimbalino Toolkit")] 21 | [assembly: AssemblyConfiguration("")] 22 | [assembly: AssemblyCompany("Pedro Lamas")] 23 | [assembly: AssemblyProduct("Cimbalino.Toolkit")] 24 | [assembly: AssemblyCopyright("Copyright © Pedro Lamas 2014")] 25 | [assembly: AssemblyTrademark("")] 26 | [assembly: AssemblyCulture("")] 27 | [assembly: NeutralResourcesLanguage("en-US")] 28 | 29 | [assembly: AssemblyVersion("2.5.2.0")] 30 | [assembly: AssemblyFileVersion("2.5.2.0")] 31 | 32 | [assembly: ComVisible(false)] -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/ApplicationProfileServiceMode.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | namespace Cimbalino.Toolkit.Services 16 | { 17 | /// 18 | /// Describes the application profile mode. 19 | /// 20 | public enum ApplicationProfileServiceMode 21 | { 22 | /// 23 | /// The application is running in an unknown mode. 24 | /// 25 | Unknown, 26 | 27 | /// 28 | /// The application is running in default mode. 29 | /// 30 | Default, 31 | 32 | /// 33 | /// The application is running under kids corner. 34 | /// 35 | KidsCorner 36 | } 37 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/DeviceStatusServicePowerSource.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | namespace Cimbalino.Toolkit.Services 16 | { 17 | /// 18 | /// Indicates whether the device is currently running on battery power or is plugged in to an external power supply. 19 | /// 20 | public enum DeviceStatusServicePowerSource 21 | { 22 | /// 23 | /// The device is running on battery power. 24 | /// 25 | Battery, 26 | 27 | /// 28 | /// The device is plugged in to an external power source, such as being docked to a computer or connected to a power supply. 29 | /// 30 | External 31 | } 32 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (WP8)/Behaviors/ApplicationBarMenuItem.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using Microsoft.Phone.Shell; 16 | 17 | namespace Cimbalino.Toolkit.Behaviors 18 | { 19 | /// 20 | /// An item that can be added to the menu of an . 21 | /// 22 | public class ApplicationBarMenuItem : ApplicationBarItemBase, IApplicationBarMenuItem 23 | { 24 | /// 25 | /// Initializes a new instance of the class. 26 | /// 27 | public ApplicationBarMenuItem() 28 | : base(new Microsoft.Phone.Shell.ApplicationBarMenuItem()) 29 | { 30 | } 31 | } 32 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Helpers/ApplicationManifestExtendedTaskNode.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | namespace Cimbalino.Toolkit.Helpers 16 | { 17 | /// 18 | /// Represents an extended task in the application manifest. 19 | /// 20 | public class ApplicationManifestExtendedTaskNode : ApplicationManifestTaskNodeBase 21 | { 22 | #region Properties 23 | 24 | /// 25 | /// Gets or sets the list of background service agents. 26 | /// 27 | /// The list of background service agents. 28 | public ApplicationManifestBackgroundServiceAgentNode[] BackgroundServiceAgents { get; set; } 29 | 30 | #endregion 31 | } 32 | } -------------------------------------------------------------------------------- /samples/MultiBinding/MultiBinding/Properties/Default.rd.xml: -------------------------------------------------------------------------------- 1 | 17 | 18 | 19 | 20 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (UWP)/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System.Reflection; 16 | using System.Runtime.CompilerServices; 17 | using System.Runtime.InteropServices; 18 | 19 | [assembly: AssemblyTitle("Cimbalino.Toolkit")] 20 | [assembly: AssemblyDescription("Cimbalino Toolkit")] 21 | [assembly: AssemblyConfiguration("")] 22 | [assembly: AssemblyCompany("Pedro Lamas")] 23 | [assembly: AssemblyProduct("Cimbalino.Toolkit")] 24 | [assembly: AssemblyCopyright("Copyright © Pedro Lamas 2014")] 25 | [assembly: AssemblyTrademark("")] 26 | [assembly: AssemblyCulture("")] 27 | 28 | [assembly: AssemblyVersion("2.5.2.0")] 29 | [assembly: AssemblyFileVersion("2.5.2.0")] 30 | 31 | [assembly: ComVisible(false)] 32 | [assembly: InternalsVisibleTo("Cimbalino.Toolkit.Controls")] -------------------------------------------------------------------------------- /samples/HamburgerFrame/HamburgerFrame/Properties/Default.rd.xml: -------------------------------------------------------------------------------- 1 | 17 | 18 | 19 | 20 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (WP8)/Services/ApplicationManifestService.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using Cimbalino.Toolkit.Helpers; 16 | 17 | namespace Cimbalino.Toolkit.Services 18 | { 19 | /// 20 | /// Represents an implementation of the . 21 | /// 22 | public class ApplicationManifestService : IApplicationManifestService 23 | { 24 | /// 25 | /// Gets the application manifest for the active app. 26 | /// 27 | /// The application manifest for the active app. 28 | public virtual ApplicationManifest GetApplicationManifest() 29 | { 30 | return ApplicationManifest.Current; 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/IMapManagerService.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | namespace Cimbalino.Toolkit.Services 16 | { 17 | /// 18 | /// Represents a service capable of displaying the UI that lets users download maps for offline use, or update maps that were previously downloaded. 19 | /// 20 | public interface IMapManagerService 21 | { 22 | /// 23 | /// Displays the UI that lets users download maps for offline use. 24 | /// 25 | void ShowDownloadedMapsUI(); 26 | 27 | /// 28 | /// Displays the UI that lets users update maps that were previously downloaded for offline use. 29 | /// 30 | void ShowMapsUpdateUI(); 31 | } 32 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/NavigationServiceBackKeyPressedEventArgs.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System; 16 | 17 | namespace Cimbalino.Toolkit.Services 18 | { 19 | /// 20 | /// Provides information for the event. 21 | /// 22 | public class NavigationServiceBackKeyPressedEventArgs : EventArgs 23 | { 24 | /// 25 | /// Gets or sets the expected behavior for when the user presses the hardware Back button. 26 | /// 27 | /// The expected behavior for when the user presses the hardware Back button. 28 | public NavigationServiceBackKeyPressedBehavior Behavior { get; set; } 29 | } 30 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Helpers/ExceptionHelper.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System; 16 | 17 | namespace Cimbalino.Toolkit.Helpers 18 | { 19 | internal class ExceptionHelper 20 | { 21 | internal static void ThrowNotSupported(string message = "") 22 | { 23 | if (DebugOptions.ThrowNotSupportedExceptions) 24 | { 25 | throw new NotSupportedException(message); 26 | } 27 | } 28 | 29 | internal static T ThrowNotSupported(string message = "") 30 | { 31 | if (DebugOptions.ThrowNotSupportedExceptions) 32 | { 33 | throw new NotSupportedException(message); 34 | } 35 | 36 | return default(T); 37 | } 38 | } 39 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/IRuntimeInformationService.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System; 16 | 17 | namespace Cimbalino.Toolkit.Services 18 | { 19 | /// 20 | /// Represents a service capable of providing runtime information for a specific device. 21 | /// 22 | public interface IRuntimeInformationService 23 | { 24 | /// 25 | /// Gets the device runtime profile. 26 | /// 27 | /// The device runtime profile. 28 | RuntimeInformationServiceProfile Profile { get; } 29 | 30 | /// 31 | /// Gets the device runtime version. 32 | /// 33 | /// The device runtime version. 34 | Version Version { get; } 35 | } 36 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/INetworkInformationService.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System; 16 | 17 | namespace Cimbalino.Toolkit.Services 18 | { 19 | /// 20 | /// Represents a service capable of providing network information for a specific device. 21 | /// 22 | public interface INetworkInformationService 23 | { 24 | /// 25 | /// Occurs when the network status changes for a connection. 26 | /// 27 | event EventHandler NetworkStatusChanged; 28 | 29 | /// 30 | /// Gets a value indicating whether the network is available. 31 | /// 32 | /// true if the network is available; otherwise, false. 33 | bool IsNetworkAvailable { get; } 34 | } 35 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (UWP)/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System.Reflection; 16 | using System.Runtime.CompilerServices; 17 | using System.Runtime.InteropServices; 18 | 19 | [assembly: AssemblyTitle("Cimbalino.Toolkit.Core")] 20 | [assembly: AssemblyDescription("Cimbalino Toolkit")] 21 | [assembly: AssemblyConfiguration("")] 22 | [assembly: AssemblyCompany("Pedro Lamas")] 23 | [assembly: AssemblyProduct("Cimbalino.Toolkit")] 24 | [assembly: AssemblyCopyright("Copyright © Pedro Lamas 2014")] 25 | [assembly: AssemblyTrademark("")] 26 | [assembly: AssemblyCulture("")] 27 | 28 | [assembly: AssemblyVersion("2.5.2.0")] 29 | [assembly: AssemblyFileVersion("2.5.2.0")] 30 | 31 | [assembly: ComVisible(false)] 32 | [assembly: InternalsVisibleTo("Cimbalino.Toolkit")] 33 | [assembly: InternalsVisibleTo("Cimbalino.Toolkit.Controls")] -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Handlers/IHandleNavigatedTo.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System.Threading.Tasks; 16 | using Cimbalino.Toolkit.Services; 17 | 18 | namespace Cimbalino.Toolkit.Handlers 19 | { 20 | /// 21 | /// Interface for when a page is loaded and becomes the current source of a parent frame. 22 | /// 23 | public interface IHandleNavigatedTo 24 | { 25 | /// 26 | /// Invoked when the page is loaded and becomes the current source of a parent frame. 27 | /// 28 | /// An object that contains the event data. 29 | /// The object representing the asynchronous operation. 30 | Task OnNavigatedToAsync(NavigationServiceNavigationEventArgs eventArgs); 31 | } 32 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (WP8)/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System; 16 | using System.Reflection; 17 | using System.Resources; 18 | using System.Runtime.InteropServices; 19 | 20 | [assembly: AssemblyTitle("Cimbalino.Toolkit")] 21 | [assembly: AssemblyDescription("Cimbalino Toolkit")] 22 | [assembly: AssemblyConfiguration("")] 23 | [assembly: AssemblyCompany("Pedro Lamas")] 24 | [assembly: AssemblyProduct("Cimbalino.Toolkit")] 25 | [assembly: AssemblyCopyright("Copyright © Pedro Lamas 2014")] 26 | [assembly: AssemblyTrademark("")] 27 | [assembly: AssemblyCulture("")] 28 | [assembly: NeutralResourcesLanguage("en-US")] 29 | 30 | [assembly: AssemblyVersion("2.5.2.0")] 31 | [assembly: AssemblyFileVersion("2.5.2.0")] 32 | 33 | [assembly: ComVisible(false)] 34 | [assembly: CLSCompliant(true)] 35 | [assembly: Guid("1c6e97d3-7d3f-486f-ac01-869210f657c5")] -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (WP81)/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System; 16 | using System.Reflection; 17 | using System.Resources; 18 | using System.Runtime.InteropServices; 19 | 20 | [assembly: AssemblyTitle("Cimbalino.Toolkit")] 21 | [assembly: AssemblyDescription("Cimbalino Toolkit")] 22 | [assembly: AssemblyConfiguration("")] 23 | [assembly: AssemblyCompany("Pedro Lamas")] 24 | [assembly: AssemblyProduct("Cimbalino.Toolkit")] 25 | [assembly: AssemblyCopyright("Copyright © Pedro Lamas 2014")] 26 | [assembly: AssemblyTrademark("")] 27 | [assembly: AssemblyCulture("")] 28 | [assembly: NeutralResourcesLanguage("en-US")] 29 | 30 | [assembly: AssemblyVersion("2.5.2.0")] 31 | [assembly: AssemblyFileVersion("2.5.2.0")] 32 | 33 | [assembly: ComVisible(false)] 34 | [assembly: CLSCompliant(true)] 35 | [assembly: Guid("b0f6c0c9-6481-4a8a-857c-3894e57ebe1d")] -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (WPA81)/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System.Reflection; 16 | using System.Resources; 17 | using System.Runtime.CompilerServices; 18 | using System.Runtime.InteropServices; 19 | 20 | [assembly: AssemblyTitle("Cimbalino.Toolkit.Core")] 21 | [assembly: AssemblyDescription("Cimbalino Toolkit")] 22 | [assembly: AssemblyConfiguration("")] 23 | [assembly: AssemblyCompany("Pedro Lamas")] 24 | [assembly: AssemblyProduct("Cimbalino.Toolkit")] 25 | [assembly: AssemblyCopyright("Copyright © Pedro Lamas 2014")] 26 | [assembly: AssemblyTrademark("")] 27 | [assembly: AssemblyCulture("")] 28 | [assembly: NeutralResourcesLanguage("en-US")] 29 | 30 | [assembly: AssemblyVersion("2.5.2.0")] 31 | [assembly: AssemblyFileVersion("2.5.2.0")] 32 | 33 | [assembly: ComVisible(false)] 34 | [assembly: InternalsVisibleTo("Cimbalino.Toolkit")] -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Win81)/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System.Reflection; 16 | using System.Resources; 17 | using System.Runtime.CompilerServices; 18 | using System.Runtime.InteropServices; 19 | 20 | [assembly: AssemblyTitle("Cimbalino.Toolkit.Core")] 21 | [assembly: AssemblyDescription("Cimbalino Toolkit")] 22 | [assembly: AssemblyConfiguration("")] 23 | [assembly: AssemblyCompany("Pedro Lamas")] 24 | [assembly: AssemblyProduct("Cimbalino.Toolkit")] 25 | [assembly: AssemblyCopyright("Copyright © Pedro Lamas 2014")] 26 | [assembly: AssemblyTrademark("")] 27 | [assembly: AssemblyCulture("")] 28 | [assembly: NeutralResourcesLanguage("en-US")] 29 | 30 | [assembly: AssemblyVersion("2.5.2.0")] 31 | [assembly: AssemblyFileVersion("2.5.2.0")] 32 | 33 | [assembly: ComVisible(false)] 34 | [assembly: InternalsVisibleTo("Cimbalino.Toolkit")] -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/LocationServiceAccuracy.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | namespace Cimbalino.Toolkit.Services 16 | { 17 | /// 18 | /// Indicates the requested accuracy level for the location data that the application uses. 19 | /// 20 | public enum LocationServiceAccuracy 21 | { 22 | /// 23 | /// Optimize for power, performance, and other cost considerations. 24 | /// 25 | Default, 26 | 27 | /// 28 | /// Deliver the most accurate report possible. This includes using services that might charge money, or consuming higher levels of battery power or connection bandwidth. An accuracy level of High may degrade system performance and should be used only when necessary. 29 | /// 30 | High 31 | } 32 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (WP8)/Services/StorageServiceStorageType.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | namespace Cimbalino.Toolkit.Services 16 | { 17 | /// 18 | /// Describes the storage type. 19 | /// 20 | public enum StorageServiceStorageType 21 | { 22 | /// 23 | /// Local storage. 24 | /// 25 | Local, 26 | 27 | /// 28 | /// Roaming storage. 29 | /// 30 | Roaming, 31 | 32 | /// 33 | /// Local cache storage. 34 | /// 35 | LocalCache, 36 | 37 | /// 38 | /// Temporary storage. 39 | /// 40 | Temporary, 41 | 42 | /// 43 | /// Package storage. 44 | /// 45 | Package 46 | } 47 | } -------------------------------------------------------------------------------- /src/Weavers/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.InteropServices; 3 | 4 | // General Information about an assembly is controlled through the following 5 | // set of attributes. Change these attribute values to modify the information 6 | // associated with an assembly. 7 | [assembly: AssemblyTitle("Weavers")] 8 | [assembly: AssemblyDescription("")] 9 | [assembly: AssemblyConfiguration("")] 10 | [assembly: AssemblyCompany("")] 11 | [assembly: AssemblyProduct("Weavers")] 12 | [assembly: AssemblyCopyright("Copyright © 2014")] 13 | [assembly: AssemblyTrademark("")] 14 | [assembly: AssemblyCulture("")] 15 | 16 | // Setting ComVisible to false makes the types in this assembly not visible 17 | // to COM components. If you need to access a type in this assembly from 18 | // COM, set the ComVisible attribute to true on that type. 19 | [assembly: ComVisible(false)] 20 | 21 | // The following GUID is for the ID of the typelib if this project is exposed to COM 22 | [assembly: Guid("a7d28238-9bbf-40d4-a869-e0565e56a741")] 23 | 24 | // Version information for an assembly consists of the following four values: 25 | // 26 | // Major Version 27 | // Minor Version 28 | // Build Number 29 | // Revision 30 | // 31 | // You can specify all the values or you can default the Build and Revision Numbers 32 | // by using the '*' as shown below: 33 | // [assembly: AssemblyVersion("1.0.*")] 34 | [assembly: AssemblyVersion("1.0.0.0")] 35 | [assembly: AssemblyFileVersion("1.0.0.0")] 36 | -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Handlers/IHandleNavigatedFrom.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System.Threading.Tasks; 16 | using Cimbalino.Toolkit.Services; 17 | 18 | namespace Cimbalino.Toolkit.Handlers 19 | { 20 | /// 21 | /// Interface for when a page is unloaded and is no longer the current source of a parent frame. 22 | /// 23 | public interface IHandleNavigatedFrom 24 | { 25 | /// 26 | /// Invoked immediately after the page is unloaded and is no longer the current source of a parent frame. 27 | /// 28 | /// An object that contains the event data. 29 | /// The object representing the asynchronous operation. 30 | Task OnNavigatedFromAsync(NavigationServiceNavigationEventArgs eventArgs); 31 | } 32 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/RuntimeInformationServiceProfile.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | namespace Cimbalino.Toolkit.Services 16 | { 17 | /// 18 | /// Indicates the device runtime profile. 19 | /// 20 | public enum RuntimeInformationServiceProfile 21 | { 22 | /// 23 | /// Windows Phone Silverlight Runtime. 24 | /// 25 | WindowsPhoneSilverlight, 26 | 27 | /// 28 | /// Windows Phone Application Runtime. 29 | /// 30 | WindowsPhoneApp, 31 | 32 | /// 33 | /// Windows Application Runtime. 34 | /// 35 | WindowsApp, 36 | 37 | /// 38 | /// Universal Application Runtime. 39 | /// 40 | UniversalAppPlatform 41 | } 42 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (WPA81)/Behaviors/Behavior{T}.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using Windows.UI.Xaml; 16 | 17 | namespace Cimbalino.Toolkit.Behaviors 18 | { 19 | /// 20 | /// Behavior is the base class for providing attachable state and commands to an object. 21 | /// 22 | /// The AssociatedObject type. 23 | public abstract class Behavior : Behavior 24 | where T : DependencyObject 25 | { 26 | /// 27 | /// Gets the object to which this is attached. 28 | /// 29 | /// The object to which this is attached. 30 | protected new T AssociatedObject 31 | { 32 | get 33 | { 34 | return (T)base.AssociatedObject; 35 | } 36 | } 37 | } 38 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (UWP)/Services/LauncherServiceExtensions.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System.Collections.Generic; 16 | using System.Linq; 17 | using Windows.ApplicationModel; 18 | 19 | namespace Cimbalino.Toolkit.Services 20 | { 21 | internal static class LauncherServiceExtensions 22 | { 23 | public static IEnumerable ToLauncherServiceAppInfo(this IEnumerable appInfos) 24 | { 25 | return appInfos.Select(x => 26 | { 27 | if (x.DisplayInfo != null) 28 | { 29 | return new LauncherServiceAppInfo(x.Id, x.AppUserModelId, x.PackageFamilyName, x.DisplayInfo.DisplayName, x.DisplayInfo.Description); 30 | } 31 | 32 | return new LauncherServiceAppInfo(x.Id, x.AppUserModelId, x.PackageFamilyName); 33 | }); 34 | } 35 | } 36 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (WP8)/Behaviors/ApplicationBarMenuItemCollection.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using Microsoft.Phone.Shell; 16 | 17 | namespace Cimbalino.Toolkit.Behaviors 18 | { 19 | /// 20 | /// Represents a collection of 21 | /// 22 | public class ApplicationBarMenuItemCollection : ApplicationBarItemCollectionBase 23 | { 24 | private const int MaxVisibleMenuitems = 50; 25 | 26 | /// 27 | /// Initializes a new instance of the class. 28 | /// 29 | /// The items list. 30 | public ApplicationBarMenuItemCollection(System.Collections.IList itemsList) 31 | : base(itemsList, MaxVisibleMenuitems) 32 | { 33 | } 34 | } 35 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Handlers/IHandleNavigatingFrom.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System.Threading.Tasks; 16 | using Cimbalino.Toolkit.Services; 17 | 18 | namespace Cimbalino.Toolkit.Handlers 19 | { 20 | /// 21 | /// Interface for when a page is about to be unloaded and no longer the current source of a parent frame. 22 | /// 23 | public interface IHandleNavigatingFrom 24 | { 25 | /// 26 | /// Invoked immediately before the page is unloaded and is no longer the current source of a parent frame. 27 | /// 28 | /// An object that contains the event data. 29 | /// The object representing the asynchronous operation. 30 | Task OnNavigatingFromAsync(NavigationServiceNavigatingCancelEventArgs eventArgs); 31 | } 32 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System; 16 | using System.Reflection; 17 | using System.Resources; 18 | using System.Runtime.CompilerServices; 19 | using System.Runtime.InteropServices; 20 | 21 | [assembly: AssemblyTitle("Cimbalino.Toolkit.Core")] 22 | [assembly: AssemblyDescription("Cimbalino Toolkit")] 23 | [assembly: AssemblyConfiguration("")] 24 | [assembly: AssemblyCompany("Pedro Lamas")] 25 | [assembly: AssemblyProduct("Cimbalino.Toolkit")] 26 | [assembly: AssemblyCopyright("Copyright © Pedro Lamas 2014")] 27 | [assembly: AssemblyTrademark("")] 28 | [assembly: AssemblyCulture("")] 29 | [assembly: NeutralResourcesLanguage("en-US")] 30 | 31 | [assembly: AssemblyVersion("2.5.2.0")] 32 | [assembly: AssemblyFileVersion("2.5.2.0")] 33 | 34 | [assembly: ComVisible(false)] 35 | [assembly: CLSCompliant(true)] 36 | [assembly: InternalsVisibleTo("Cimbalino.Toolkit")] -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (WP8)/Behaviors/ApplicationBarIconButtonCollection.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using Microsoft.Phone.Shell; 16 | 17 | namespace Cimbalino.Toolkit.Behaviors 18 | { 19 | /// 20 | /// Represents a collection of 21 | /// 22 | public class ApplicationBarIconButtonCollection : ApplicationBarItemCollectionBase 23 | { 24 | private const int MaxVisibleIconButtons = 4; 25 | 26 | /// 27 | /// Initializes a new instance of the class. 28 | /// 29 | /// The items list. 30 | public ApplicationBarIconButtonCollection(System.Collections.IList itemsList) 31 | : base(itemsList, MaxVisibleIconButtons) 32 | { 33 | } 34 | } 35 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Compression/CompressionLevel.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | namespace Cimbalino.Toolkit.Compression 16 | { 17 | /// 18 | /// Specifies values that indicate whether a compression operation emphasizes speed or compression size. 19 | /// 20 | public enum CompressionLevel 21 | { 22 | /// 23 | /// The compression operation should be optimally compressed, even if the operation takes a longer time to complete. 24 | /// 25 | Optimal, 26 | 27 | /// 28 | /// The compression operation should complete as quickly as possible, even if the resulting file is not optimally compressed. 29 | /// 30 | Fastest, 31 | 32 | /// 33 | /// No compression should be performed on the file. 34 | /// 35 | NoCompression 36 | } 37 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/NavigationServiceBackKeyPressedBehavior.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | namespace Cimbalino.Toolkit.Services 16 | { 17 | /// 18 | /// Indicates the expected behavior for when the user presses the hardware Back button. 19 | /// 20 | public enum NavigationServiceBackKeyPressedBehavior 21 | { 22 | /// 23 | /// Navigate to the most recent item in back navigation history. 24 | /// 25 | GoBack, 26 | 27 | /// 28 | /// Hide the app and returns to the main screen. 29 | /// 30 | HideApp, 31 | 32 | /// 33 | /// Shuts down the app. 34 | /// 35 | ExitApp, 36 | 37 | /// 38 | /// Do nothing. 39 | /// 40 | DoNothing 41 | } 42 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (WP8)/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System; 16 | using System.Reflection; 17 | using System.Resources; 18 | using System.Runtime.CompilerServices; 19 | using System.Runtime.InteropServices; 20 | 21 | [assembly: AssemblyTitle("Cimbalino.Toolkit.Core")] 22 | [assembly: AssemblyDescription("Cimbalino Toolkit")] 23 | [assembly: AssemblyConfiguration("")] 24 | [assembly: AssemblyCompany("Pedro Lamas")] 25 | [assembly: AssemblyProduct("Cimbalino.Toolkit")] 26 | [assembly: AssemblyCopyright("Copyright © Pedro Lamas 2014")] 27 | [assembly: AssemblyTrademark("")] 28 | [assembly: AssemblyCulture("")] 29 | [assembly: NeutralResourcesLanguage("en-US")] 30 | 31 | [assembly: AssemblyVersion("2.5.2.0")] 32 | [assembly: AssemblyFileVersion("2.5.2.0")] 33 | 34 | [assembly: ComVisible(false)] 35 | [assembly: CLSCompliant(true)] 36 | [assembly: Guid("1ebc84f2-9c7a-4bac-93c5-c1dfeffe1173")] 37 | [assembly: InternalsVisibleTo("Cimbalino.Toolkit")] -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (WP81)/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System; 16 | using System.Reflection; 17 | using System.Resources; 18 | using System.Runtime.CompilerServices; 19 | using System.Runtime.InteropServices; 20 | 21 | [assembly: AssemblyTitle("Cimbalino.Toolkit.Core")] 22 | [assembly: AssemblyDescription("Cimbalino Toolkit")] 23 | [assembly: AssemblyConfiguration("")] 24 | [assembly: AssemblyCompany("Pedro Lamas")] 25 | [assembly: AssemblyProduct("Cimbalino.Toolkit")] 26 | [assembly: AssemblyCopyright("Copyright © Pedro Lamas 2014")] 27 | [assembly: AssemblyTrademark("")] 28 | [assembly: AssemblyCulture("")] 29 | [assembly: NeutralResourcesLanguage("en-US")] 30 | 31 | [assembly: AssemblyVersion("2.5.2.0")] 32 | [assembly: AssemblyFileVersion("2.5.2.0")] 33 | 34 | [assembly: ComVisible(false)] 35 | [assembly: CLSCompliant(true)] 36 | [assembly: Guid("f573d090-babc-49bf-b072-dc189196f7d4")] 37 | [assembly: InternalsVisibleTo("Cimbalino.Toolkit")] -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/TitleBarIsVisibleChangedArgs.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System; 16 | 17 | namespace Cimbalino.Toolkit.Services 18 | { 19 | /// 20 | /// Provides data for events. 21 | /// 22 | public class TitleBarIsVisibleChangedArgs : EventArgs 23 | { 24 | /// 25 | /// Gets a value indicating whether the title bar is visible. 26 | /// 27 | /// true if the title bar is visible; otherwise, false. 28 | public bool IsVisible { get; private set; } 29 | 30 | /// 31 | /// Initializes a new instance of the class. 32 | /// 33 | /// The title bar visibility state. 34 | public TitleBarIsVisibleChangedArgs(bool isVisible) 35 | { 36 | IsVisible = isVisible; 37 | } 38 | } 39 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Extensions/DateTimeExtensions.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System; 16 | 17 | namespace Cimbalino.Toolkit.Extensions 18 | { 19 | /// 20 | /// Provides a set of static (Shared in Visual Basic) methods for instances. 21 | /// 22 | public static class DateTimeExtensions 23 | { 24 | private static readonly DateTime EpochDateTime = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc); 25 | 26 | /// 27 | /// Converts the indicated instance to the equivalent unix time representation. 28 | /// 29 | /// The instance. 30 | /// The unix time representation of the instance. 31 | public static double ToUnixTime(this DateTime dateTime) 32 | { 33 | return dateTime.ToUniversalTime().Subtract(EpochDateTime).TotalSeconds; 34 | } 35 | } 36 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (WP8)/Compression/CompressionExtensions.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System; 16 | using SystemCompressionLevel = System.IO.Compression.CompressionLevel; 17 | 18 | namespace Cimbalino.Toolkit.Compression 19 | { 20 | internal static class CompressionExtensions 21 | { 22 | public static SystemCompressionLevel ToCompressionLevel(this CompressionLevel compressionLevel) 23 | { 24 | switch (compressionLevel) 25 | { 26 | case CompressionLevel.Optimal: 27 | return SystemCompressionLevel.Optimal; 28 | 29 | case CompressionLevel.Fastest: 30 | return SystemCompressionLevel.Fastest; 31 | 32 | case CompressionLevel.NoCompression: 33 | return SystemCompressionLevel.NoCompression; 34 | 35 | default: 36 | throw new ArgumentOutOfRangeException(nameof(compressionLevel), compressionLevel, null); 37 | } 38 | } 39 | } 40 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/ITitleBarService.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System; 16 | 17 | namespace Cimbalino.Toolkit.Services 18 | { 19 | /// 20 | /// Represents a service capable of managing the window title bar. 21 | /// 22 | public interface ITitleBarService 23 | { 24 | /// 25 | /// Occurs when the visibility of the title bar changes. 26 | /// 27 | event EventHandler IsVisibleChanged; 28 | 29 | /// 30 | /// Gets or sets a value indicating whether this title bar should replace the default window title bar. 31 | /// 32 | /// true if this title bar should replace the default window title bar; otherwise, false. 33 | bool ExtendViewIntoTitleBar { get; set; } 34 | 35 | /// 36 | /// Gets the title bar height. 37 | /// 38 | /// The title bar height. 39 | double Height { get; } 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Helpers/ApplicationManifestLanguageNode.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | #if WINDOWS_PHONE || WINDOWS_PHONE_81 16 | using System.Xml; 17 | #endif 18 | 19 | namespace Cimbalino.Toolkit.Helpers 20 | { 21 | /// 22 | /// Represents a language in the application manifest. 23 | /// 24 | public class ApplicationManifestLanguageNode 25 | { 26 | #region Properties 27 | 28 | /// 29 | /// Gets or sets the language code. 30 | /// 31 | /// The language code. 32 | public string Code { get; set; } 33 | 34 | #endregion 35 | 36 | #if WINDOWS_PHONE || WINDOWS_PHONE_81 37 | internal static ApplicationManifestLanguageNode ParseXml(XmlReader reader) 38 | { 39 | var node = new ApplicationManifestLanguageNode() 40 | { 41 | Code = reader.GetAttribute("code") 42 | }; 43 | 44 | reader.Skip(); 45 | 46 | return node; 47 | } 48 | 49 | #endif 50 | } 51 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Helpers/ApplicationManifestNamedNode.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | #if WINDOWS_PHONE || WINDOWS_PHONE_81 16 | using System.Xml; 17 | #endif 18 | 19 | namespace Cimbalino.Toolkit.Helpers 20 | { 21 | /// 22 | /// Represents a named node in the application manifest. 23 | /// 24 | public class ApplicationManifestNamedNode 25 | { 26 | #region Properties 27 | 28 | /// 29 | /// Gets or sets the Name attribute value. 30 | /// 31 | /// The Name attribute value. 32 | public string Name { get; set; } 33 | 34 | #endregion 35 | 36 | #if WINDOWS_PHONE || WINDOWS_PHONE_81 37 | internal static ApplicationManifestNamedNode ParseXml(XmlReader reader) 38 | { 39 | var node = new ApplicationManifestNamedNode() 40 | { 41 | Name = reader.GetAttribute("Name") 42 | }; 43 | 44 | reader.Skip(); 45 | 46 | return node; 47 | } 48 | 49 | #endif 50 | } 51 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/IWindowsStoreService.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System.Threading.Tasks; 16 | 17 | namespace Cimbalino.Toolkit.Services 18 | { 19 | /// 20 | /// Represents a service capable of retrieving Windows Store information about an application. 21 | /// 22 | public interface IWindowsStoreService 23 | { 24 | /// 25 | /// Retrieves store information about the running application. 26 | /// 27 | /// The object representing the asynchronous operation. 28 | Task GetAppInformationAsync(); 29 | 30 | /// 31 | /// Retrieves store information about the running application. 32 | /// 33 | /// The application Product ID. 34 | /// The object representing the asynchronous operation. 35 | Task GetAppInformationAsync(string productId); 36 | } 37 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Extensions/DateTimeOffsetExtensions.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System; 16 | 17 | namespace Cimbalino.Toolkit.Extensions 18 | { 19 | /// 20 | /// Provides a set of static (Shared in Visual Basic) methods for instances. 21 | /// 22 | public static class DateTimeOffsetExtensions 23 | { 24 | private static readonly DateTimeOffset EpochDateTime = new DateTimeOffset(1970, 1, 1, 0, 0, 0, TimeSpan.Zero); 25 | 26 | /// 27 | /// Converts the indicated instance to the equivalent unix time representation. 28 | /// 29 | /// The instance. 30 | /// The unix time representation of the instance. 31 | public static double ToUnixTime(this DateTimeOffset dateTimeOffset) 32 | { 33 | return dateTimeOffset.ToUniversalTime().Subtract(EpochDateTime).TotalSeconds; 34 | } 35 | } 36 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Extensions/IFormattableExtensions.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System; 16 | using System.Globalization; 17 | 18 | namespace Cimbalino.Toolkit.Extensions 19 | { 20 | /// 21 | /// Provides a set of static (Shared in Visual Basic) methods for instances. 22 | /// 23 | public static class IFormattableExtensions 24 | { 25 | /// 26 | /// Converts the value of this instance to its equivalent string representation, using the specified format and an . 27 | /// 28 | /// The input. 29 | /// A standard or custom format string. 30 | /// The string representation of the value of this instance as specified by . 31 | public static string ToStringInvariantCulture(this IFormattable input, string format) 32 | { 33 | return input.ToString(format, CultureInfo.InvariantCulture); 34 | } 35 | } 36 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/IWindowsPhoneStoreService.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System.Threading.Tasks; 16 | 17 | namespace Cimbalino.Toolkit.Services 18 | { 19 | /// 20 | /// Represents a service capable of retrieving Windows Phone Store information about an application. 21 | /// 22 | public interface IWindowsPhoneStoreService 23 | { 24 | /// 25 | /// Retrieves store information about the running application. 26 | /// 27 | /// The object representing the asynchronous operation. 28 | Task GetAppInformationAsync(); 29 | 30 | /// 31 | /// Retrieves store information about the running application. 32 | /// 33 | /// The application Product ID. 34 | /// The object representing the asynchronous operation. 35 | Task GetAppInformationAsync(string productId); 36 | } 37 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Extensions/ComparableOperator.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System; 16 | 17 | namespace Cimbalino.Toolkit.Extensions 18 | { 19 | /// 20 | /// Represents an operator. 21 | /// 22 | public enum ComparableOperator 23 | { 24 | /// 25 | /// Specifies an equal operator. 26 | /// 27 | Equal, 28 | 29 | /// 30 | /// Specifies a not equal operator. 31 | /// 32 | NotEqual, 33 | 34 | /// 35 | /// Specifies a less than operator. 36 | /// 37 | LessThan, 38 | 39 | /// 40 | /// Specifies a less than or equal operator. 41 | /// 42 | LessThanOrEqual, 43 | 44 | /// 45 | /// Specifies a greater than operator. 46 | /// 47 | GreaterThan, 48 | 49 | /// 50 | /// Specifies a greater than or equal operator. 51 | /// 52 | GreaterThanOrEqual 53 | } 54 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Helpers/ObservableTask{T}.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System.Threading.Tasks; 16 | 17 | namespace Cimbalino.Toolkit.Helpers 18 | { 19 | /// 20 | /// Helper class that will notify any listener for task completion. 21 | /// 22 | /// The type of the result produced by the associated task instance. 23 | public class ObservableTask : ObservableTaskBase> 24 | { 25 | /// 26 | /// Gets the result value of this task. 27 | /// 28 | /// The result value of this task. 29 | public T Result 30 | { 31 | get 32 | { 33 | return Task.Result; 34 | } 35 | } 36 | 37 | /// 38 | /// Initializes a new instance of the class. 39 | /// 40 | /// The associated task instance. 41 | public ObservableTask(Task task) 42 | : base(task) 43 | { 44 | } 45 | } 46 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/NavigationServiceNavigationMode.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | namespace Cimbalino.Toolkit.Services 16 | { 17 | /// 18 | /// Specifies the navigation stack characteristics of a navigation. 19 | /// 20 | public enum NavigationServiceNavigationMode 21 | { 22 | /// 23 | /// Navigation is to a new instance of a page (not going forward or backward in the stack). 24 | /// 25 | New = 0, 26 | 27 | /// 28 | /// Navigation is going backward in the stack. 29 | /// 30 | Back = 1, 31 | 32 | /// 33 | /// Navigation is going forward in the stack. 34 | /// 35 | Forward = 2, 36 | 37 | /// 38 | /// Navigation is to the current page (perhaps with different data). 39 | /// 40 | Refresh = 3, 41 | 42 | /// 43 | /// Navigation is to reset the current page (perhaps with same data). 44 | /// 45 | Reset = 4 46 | } 47 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/FilePickerServiceOptions.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System.Collections.Generic; 16 | 17 | namespace Cimbalino.Toolkit.Services 18 | { 19 | /// 20 | /// The options for a operation. 21 | /// 22 | public class FilePickerServiceOptions 23 | { 24 | /// 25 | /// Gets or sets the file picker view mode. 26 | /// 27 | /// The file picker view mode. 28 | public FilePickerServiceViewMode ViewMode { get; set; } 29 | 30 | /// 31 | /// Gets or sets the file picker suggested start location. 32 | /// 33 | /// The file picker suggested start location. 34 | public FilePickerServiceLocationId SuggestedStartLocation { get; set; } 35 | 36 | /// 37 | /// Gets or sets the file picker file type filters. 38 | /// 39 | /// The file picker file type filters. 40 | public IEnumerable FileTypeFilters { get; set; } 41 | } 42 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/LocationServiceStatusChangedEventArgs.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System; 16 | 17 | namespace Cimbalino.Toolkit.Services 18 | { 19 | /// 20 | /// Provides information for the event. 21 | /// 22 | public class LocationServiceStatusChangedEventArgs : EventArgs 23 | { 24 | /// 25 | /// Gets the updated status of the object. 26 | /// 27 | /// The updated status of the object. 28 | public LocationServiceStatus Status { get; private set; } 29 | 30 | /// 31 | /// Initializes a new instance of the class. 32 | /// 33 | /// The updated status of the object. 34 | public LocationServiceStatusChangedEventArgs(LocationServiceStatus status) 35 | { 36 | Status = status; 37 | } 38 | } 39 | } -------------------------------------------------------------------------------- /samples/MultiBinding/MultiBinding/Package.appxmanifest: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | 13 | 14 | 15 | 16 | 17 | MultiBinding 18 | pedro 19 | Assets\StoreLogo.png 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 34 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/IApplicationSettingsService.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | namespace Cimbalino.Toolkit.Services 16 | { 17 | /// 18 | /// Represents a service capable of handling the application settings. 19 | /// 20 | public interface IApplicationSettingsService 21 | { 22 | /// 23 | /// Gets the local settings handler instance for the app. 24 | /// 25 | /// The local settings handler instance for the app. 26 | IApplicationSettingsServiceHandler Local { get; } 27 | 28 | /// 29 | /// Gets the roaming settings handler instance for the app. 30 | /// 31 | /// The roaming settings handler instance for the app. 32 | IApplicationSettingsServiceHandler Roaming { get; } 33 | 34 | /// 35 | /// Gets the legacy settings handler instance for the app. 36 | /// 37 | /// The legacy settings handler instance for the app. 38 | IApplicationSettingsServiceHandler Legacy { get; } 39 | } 40 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (WP8)/Helpers/NamescopeBinding.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | #if WINDOWS_PHONE || WINDOWS_PHONE_81 16 | using System.Windows; 17 | #else 18 | using Windows.UI.Xaml; 19 | #endif 20 | 21 | namespace Cimbalino.Toolkit.Helpers 22 | { 23 | /// 24 | /// Allows binding of objects in a different XAML namescope. 25 | /// 26 | public class NamescopeBinding : DependencyObject 27 | { 28 | /// 29 | /// Gets or sets the source to bind. 30 | /// 31 | /// The source to bind. 32 | public FrameworkElement Source 33 | { 34 | get { return (FrameworkElement)GetValue(SourceProperty); } 35 | set { SetValue(SourceProperty, value); } 36 | } 37 | 38 | /// 39 | /// Identifier for the dependency property. 40 | /// 41 | public static readonly DependencyProperty SourceProperty = 42 | DependencyProperty.Register(nameof(Source), typeof(FrameworkElement), typeof(NamescopeBinding), null); 43 | } 44 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/IPhoneCallService.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System.Threading.Tasks; 16 | 17 | namespace Cimbalino.Toolkit.Services 18 | { 19 | /// 20 | /// Represents a service capable of launching the Phone application. 21 | /// 22 | public interface IPhoneCallService 23 | { 24 | /// 25 | /// Shows the Phone application, using the specified phone number. 26 | /// 27 | /// The phone number. 28 | /// The object representing the asynchronous operation. 29 | Task ShowAsync(string phoneNumber); 30 | 31 | /// 32 | /// Shows the Phone application, using the specified phone number and display name. 33 | /// 34 | /// The phone number. 35 | /// The display name. 36 | /// The object representing the asynchronous operation. 37 | Task ShowAsync(string phoneNumber, string displayName); 38 | } 39 | } -------------------------------------------------------------------------------- /samples/HamburgerFrame/HamburgerFrame/Package.appxmanifest: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | 13 | 14 | 15 | 16 | 17 | HamburgerFrame 18 | a-pelama 19 | Assets\StoreLogo.png 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 34 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/ISmsComposeService.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System.Threading.Tasks; 16 | 17 | namespace Cimbalino.Toolkit.Services 18 | { 19 | /// 20 | /// Represents a service capable of launching the Messaging application with a new SMS message displayed. 21 | /// 22 | public interface ISmsComposeService 23 | { 24 | /// 25 | /// Shows the Messaging application, using the specified recipient list. 26 | /// 27 | /// The recipient. 28 | /// The object representing the asynchronous operation. 29 | Task ShowAsync(string recipient); 30 | 31 | /// 32 | /// Shows the Messaging application, using the specified recipient list and message body. 33 | /// 34 | /// The recipient list for the new SMS message. 35 | /// The body text of the new SMS message. 36 | /// The object representing the asynchronous operation. 37 | Task ShowAsync(string recipient, string body); 38 | } 39 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/IVibrationService.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System; 16 | 17 | namespace Cimbalino.Toolkit.Services 18 | { 19 | /// 20 | /// Represents a service capable of using device vibration capabilities. 21 | /// 22 | public interface IVibrationService 23 | { 24 | /// 25 | /// Vibrates the device for 200 milliseconds. 26 | /// 27 | void Vibrate(); 28 | 29 | /// 30 | /// Vibrates the device for the specified duration (from 0 to 5000 milliseconds). 31 | /// 32 | /// The duration (from 0 to 5000 milliseconds) for which the device vibrates. 33 | void Vibrate(double duration); 34 | 35 | /// 36 | /// Vibrates the device for the specified duration (from 0 to 5000 milliseconds). 37 | /// 38 | /// The duration (from 0 to 5000 milliseconds) for which the device vibrates. 39 | void Vibrate(TimeSpan duration); 40 | 41 | /// 42 | /// Stops the vibration of the device. 43 | /// 44 | void Cancel(); 45 | } 46 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Extensions/WebRequestExtensions.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System; 16 | using System.Globalization; 17 | using System.Net; 18 | 19 | namespace Cimbalino.Toolkit.Extensions 20 | { 21 | /// 22 | /// Provides a set of static (Shared in Visual Basic) methods for instances. 23 | /// 24 | public static class WebRequestExtensions 25 | { 26 | private const string NoCacheHeaderValue = "no-cache"; 27 | 28 | /// 29 | /// Set collection with "no-cache header values. 30 | /// 31 | /// The web request. 32 | public static void SetNoCacheHeaders(this WebRequest request) 33 | { 34 | try 35 | { 36 | request.Headers[HttpRequestHeader.CacheControl] = NoCacheHeaderValue; 37 | request.Headers[HttpRequestHeader.Pragma] = NoCacheHeaderValue; 38 | request.Headers[HttpRequestHeader.IfModifiedSince] = DateTime.UtcNow.ToString(CultureInfo.InvariantCulture); 39 | } 40 | catch 41 | { 42 | // ignored 43 | } 44 | } 45 | } 46 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/LocationServicePositionChangedEventArgs.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System; 16 | 17 | namespace Cimbalino.Toolkit.Services 18 | { 19 | /// 20 | /// Provides data for events. 21 | /// 22 | public class LocationServicePositionChangedEventArgs : EventArgs 23 | { 24 | /// 25 | /// Gets the object containing the location and time stamp data for the event. 26 | /// 27 | /// The . 28 | public LocationServicePosition Position { get; private set; } 29 | 30 | /// 31 | /// Initializes a new instance of the class. 32 | /// 33 | /// A object containing the location and time stamp data for the event. 34 | public LocationServicePositionChangedEventArgs(LocationServicePosition position) 35 | { 36 | Position = position; 37 | } 38 | } 39 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/WindowsPhoneStoreServiceAppContentNode.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System.Xml; 16 | 17 | namespace Cimbalino.Toolkit.Services 18 | { 19 | /// 20 | /// Represents an application content information. 21 | /// 22 | public class WindowsPhoneStoreServiceAppContentNode 23 | { 24 | #region Properties 25 | 26 | /// 27 | /// Gets the application content information type. 28 | /// 29 | /// The application content information type. 30 | public string Type { get; private set; } 31 | 32 | /// 33 | /// Gets the application content information text. 34 | /// 35 | /// The application content information text. 36 | public string Text { get; private set; } 37 | 38 | #endregion 39 | 40 | internal static WindowsPhoneStoreServiceAppContentNode ParseXml(XmlReader reader) 41 | { 42 | return new WindowsPhoneStoreServiceAppContentNode 43 | { 44 | Type = reader.GetAttribute("type"), 45 | Text = reader.ReadElementContentAsString() 46 | }; 47 | } 48 | } 49 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/IPersonalizationService.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System.Threading.Tasks; 16 | 17 | namespace Cimbalino.Toolkit.Services 18 | { 19 | /// 20 | /// Represents a service capable of changing of the user's wallpaper and lock screen images. 21 | /// 22 | public interface IPersonalizationService 23 | { 24 | /// 25 | /// Gets a value indicating whether this instance is supported. 26 | /// 27 | /// true if this instance is supported; otherwise, false. 28 | bool IsSupported { get; } 29 | 30 | /// 31 | /// Sets the lock screen image. 32 | /// 33 | /// The file URI. 34 | /// The object representing the asynchronous operation. 35 | Task SetLockScreenImageAsync(string fileUri); 36 | 37 | /// 38 | /// Sets the wallpaper image. 39 | /// 40 | /// The file URI. 41 | /// The object representing the asynchronous operation. 42 | Task SetWallpaperImageAsync(string fileUri); 43 | } 44 | } -------------------------------------------------------------------------------- /samples/HamburgerFrame/HamburgerFrame/View/HamburgerPaneControl.xaml: -------------------------------------------------------------------------------- 1 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 36 | 37 | 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (WP8)/Services/DeviceStatusWithKeyboardService.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using Microsoft.Phone.Info; 16 | 17 | namespace Cimbalino.Toolkit.Services 18 | { 19 | /// 20 | /// Represents an implementation of the . 21 | /// 22 | public class DeviceStatusWithKeyboardService : DeviceStatusService 23 | { 24 | /// 25 | /// Gets a value indicating whether the user has deployed the physical hardware keyboard of the device. 26 | /// 27 | /// true if the keyboard is deployed; otherwise, false. 28 | public override bool IsKeyboardDeployed 29 | { 30 | get 31 | { 32 | return DeviceStatus.IsKeyboardDeployed; 33 | } 34 | } 35 | 36 | /// 37 | /// Gets a value indicating whether the device contains a physical hardware keyboard. 38 | /// 39 | /// true if the device contains a physical hardware keyboard; otherwise, false. 40 | public override bool IsKeyboardPresent 41 | { 42 | get 43 | { 44 | return DeviceStatus.IsKeyboardPresent; 45 | } 46 | } 47 | } 48 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Helpers/ApplicationManifestTokenNode.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | #if WINDOWS_PHONE || WINDOWS_PHONE_81 16 | using System.Xml; 17 | #endif 18 | 19 | namespace Cimbalino.Toolkit.Helpers 20 | { 21 | /// 22 | /// Represents a token in the application manifest. 23 | /// 24 | public class ApplicationManifestTokenNode 25 | { 26 | #region Properties 27 | 28 | /// 29 | /// Gets or sets the token id. 30 | /// 31 | /// The token id. 32 | public string TokenId { get; set; } 33 | 34 | /// 35 | /// Gets or sets the token task name. 36 | /// 37 | /// The token task name. 38 | public string TaskName { get; set; } 39 | 40 | #endregion 41 | 42 | #if WINDOWS_PHONE || WINDOWS_PHONE_81 43 | internal static ApplicationManifestTokenNode ParseXml(XmlReader reader) 44 | { 45 | var node = new ApplicationManifestTokenNode() 46 | { 47 | TokenId = reader.GetAttribute("TokenID"), 48 | TaskName = reader.GetAttribute("TaskName") 49 | }; 50 | 51 | reader.Skip(); 52 | 53 | return node; 54 | } 55 | 56 | #endif 57 | } 58 | } -------------------------------------------------------------------------------- /tools/psake/psake.ps1: -------------------------------------------------------------------------------- 1 | # Helper script for those who want to run psake without importing the module. 2 | # Example run from PowerShell: 3 | # .\psake.ps1 "default.ps1" "BuildHelloWord" "4.0" 4 | 5 | # Must match parameter definitions for psake.psm1/invoke-psake 6 | # otherwise named parameter binding fails 7 | param( 8 | [Parameter(Position=0,Mandatory=0)] 9 | [string]$buildFile, 10 | [Parameter(Position=1,Mandatory=0)] 11 | [string[]]$taskList = @(), 12 | [Parameter(Position=2,Mandatory=0)] 13 | [string]$framework, 14 | [Parameter(Position=3,Mandatory=0)] 15 | [switch]$docs = $false, 16 | [Parameter(Position=4,Mandatory=0)] 17 | [System.Collections.Hashtable]$parameters = @{}, 18 | [Parameter(Position=5, Mandatory=0)] 19 | [System.Collections.Hashtable]$properties = @{}, 20 | [Parameter(Position=6, Mandatory=0)] 21 | [alias("init")] 22 | [scriptblock]$initialization = {}, 23 | [Parameter(Position=7, Mandatory=0)] 24 | [switch]$nologo = $false, 25 | [Parameter(Position=8, Mandatory=0)] 26 | [switch]$help = $false, 27 | [Parameter(Position=9, Mandatory=0)] 28 | [string]$scriptPath, 29 | [Parameter(Position=10,Mandatory=0)] 30 | [switch]$detailedDocs = $false 31 | ) 32 | 33 | # setting $scriptPath here, not as default argument, to support calling as "powershell -File psake.ps1" 34 | if (!$scriptPath) { 35 | $scriptPath = $(Split-Path -parent $MyInvocation.MyCommand.path) 36 | } 37 | 38 | # '[p]sake' is the same as 'psake' but $Error is not polluted 39 | remove-module [p]sake 40 | import-module (join-path $scriptPath psake.psm1) 41 | if ($help) { 42 | Get-Help Invoke-psake -full 43 | return 44 | } 45 | 46 | if ($buildFile -and (-not(test-path $buildFile))) { 47 | $absoluteBuildFile = (join-path $scriptPath $buildFile) 48 | if (test-path $absoluteBuildFile) { 49 | $buildFile = $absoluteBuildFile 50 | } 51 | } 52 | 53 | Invoke-psake $buildFile $taskList $framework $docs $parameters $properties $initialization $nologo $detailedDocs -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/IFilePickerService.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | #if !NETFX_CORE 16 | using System; 17 | using System.Collections.Generic; 18 | using System.Threading.Tasks; 19 | #else 20 | using System.Collections.Generic; 21 | using System.Threading.Tasks; 22 | #endif 23 | 24 | namespace Cimbalino.Toolkit.Services 25 | { 26 | /// 27 | /// Represents a service capable of handling the file pickers. 28 | /// 29 | #if !NETFX_CORE 30 | [CLSCompliant(false)] 31 | #endif 32 | public interface IFilePickerService 33 | { 34 | /// 35 | /// Shows the file picker so that the user can pick one file. 36 | /// 37 | /// The options. 38 | /// The object representing the asynchronous operation. 39 | Task PickSingleFileAsync(FilePickerServiceOptions options); 40 | 41 | /// 42 | /// Shows the file picker so that the user can pick multiple files. 43 | /// 44 | /// The options. 45 | /// The object representing the asynchronous operation. 46 | Task> PickMultipleFilesAsync(FilePickerServiceOptions options); 47 | } 48 | } -------------------------------------------------------------------------------- /samples/MultiBinding/MultiBinding/View/MainPage.xaml: -------------------------------------------------------------------------------- 1 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 21 | 22 | 26 | 27 | 28 | 29 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/WindowsStoreServiceAppArchitectureNode.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System.Xml; 16 | 17 | namespace Cimbalino.Toolkit.Services 18 | { 19 | /// 20 | /// Represents an application supported architecture information. 21 | /// 22 | public class WindowsStoreServiceAppArchitectureNode 23 | { 24 | #region Properties 25 | 26 | /// 27 | /// Gets the application supported architecture name. 28 | /// 29 | /// The application supported architecture name. 30 | public string Name { get; private set; } 31 | 32 | #endregion 33 | 34 | internal static WindowsStoreServiceAppArchitectureNode ParseXml(XmlReader reader) 35 | { 36 | var node = new WindowsStoreServiceAppArchitectureNode(); 37 | 38 | reader.ReadStartElement(); 39 | 40 | while (reader.NodeType != XmlNodeType.EndElement) 41 | { 42 | switch (reader.Name) 43 | { 44 | case "An": 45 | node.Name = reader.ReadElementContentAsString(); 46 | break; 47 | 48 | default: 49 | reader.Skip(); 50 | break; 51 | } 52 | } 53 | 54 | reader.ReadEndElement(); 55 | 56 | return node; 57 | } 58 | } 59 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (WP8)/Services/MapManagerService.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | #if WINDOWS_PHONE || WINDOWS_PHONE_81 16 | using Microsoft.Phone.Tasks; 17 | #elif WINDOWS_PHONE_APP || WINDOWS_UWP 18 | using Windows.Services.Maps; 19 | #else 20 | using Cimbalino.Toolkit.Helpers; 21 | #endif 22 | 23 | namespace Cimbalino.Toolkit.Services 24 | { 25 | /// 26 | /// Represents an implementation of the . 27 | /// 28 | public class MapManagerService : IMapManagerService 29 | { 30 | /// 31 | /// Displays the UI that lets users download maps for offline use. 32 | /// 33 | public virtual void ShowDownloadedMapsUI() 34 | { 35 | #if WINDOWS_PHONE || WINDOWS_PHONE_81 36 | new MapDownloaderTask().Show(); 37 | #elif WINDOWS_PHONE_APP || WINDOWS_UWP 38 | MapManager.ShowDownloadedMapsUI(); 39 | #else 40 | ExceptionHelper.ThrowNotSupported(); 41 | #endif 42 | } 43 | 44 | /// 45 | /// Displays the UI that lets users update maps that were previously downloaded for offline use. 46 | /// 47 | public virtual void ShowMapsUpdateUI() 48 | { 49 | #if WINDOWS_PHONE || WINDOWS_PHONE_81 50 | new MapUpdaterTask().Show(); 51 | #elif WINDOWS_PHONE_APP || WINDOWS_UWP 52 | MapManager.ShowMapsUpdateUI(); 53 | #else 54 | ExceptionHelper.ThrowNotSupported(); 55 | #endif 56 | } 57 | } 58 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (WP8)/Behaviors/AfterAutoFocusEventArgs.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | #if WINDOWS_PHONE || WINDOWS_PHONE_81 16 | using System; 17 | using System.Windows.Controls; 18 | #else 19 | using System; 20 | using Windows.UI.Xaml.Controls; 21 | #endif 22 | 23 | namespace Cimbalino.Toolkit.Behaviors 24 | { 25 | /// 26 | /// Provides data for events. 27 | /// 28 | public class AfterAutoFocusEventArgs : EventArgs 29 | { 30 | #region Properties 31 | 32 | /// 33 | /// Gets the previous focused control. 34 | /// 35 | /// The previous focused control. 36 | public Control FromControl { get; private set; } 37 | 38 | /// 39 | /// Gets the current focused control. 40 | /// 41 | /// The current focused control. 42 | public Control ToControl { get; private set; } 43 | 44 | #endregion 45 | 46 | /// 47 | /// Initializes a new instance of the class. 48 | /// 49 | /// The previous focused control. 50 | /// The current focused control. 51 | public AfterAutoFocusEventArgs(Control fromControl, Control toControl) 52 | { 53 | FromControl = fromControl; 54 | ToControl = toControl; 55 | } 56 | } 57 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Extensions/UriExtensions.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System; 16 | using System.Collections.Generic; 17 | using System.Linq; 18 | using System.Net; 19 | 20 | namespace Cimbalino.Toolkit.Extensions 21 | { 22 | /// 23 | /// Provides a set of static (Shared in Visual Basic) methods for instances. 24 | /// 25 | public static class UriExtensions 26 | { 27 | /// 28 | /// Gets a collection of query string values. 29 | /// 30 | /// The current uri. 31 | /// A collection that contains the query string values. 32 | public static IEnumerable> QueryString(this Uri uri) 33 | { 34 | var uriString = uri.IsAbsoluteUri ? uri.AbsoluteUri : uri.OriginalString; 35 | 36 | var queryIndex = uriString.IndexOf("?", StringComparison.OrdinalIgnoreCase); 37 | 38 | if (queryIndex == -1) 39 | { 40 | return Enumerable.Empty>(); 41 | } 42 | 43 | var query = uriString.Substring(queryIndex + 1); 44 | 45 | return query.Split('&') 46 | .Where(x => !string.IsNullOrEmpty(x)) 47 | .Select(x => x.Split('=')) 48 | .Select(x => new KeyValuePair(WebUtility.UrlDecode(x[0]), x.Length == 2 && !string.IsNullOrEmpty(x[1]) ? WebUtility.UrlDecode(x[1]) : null)); 49 | } 50 | } 51 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/LocationServiceStatus.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | namespace Cimbalino.Toolkit.Services 16 | { 17 | /// 18 | /// Indicates the ability of the to provide location data. 19 | /// 20 | public enum LocationServiceStatus 21 | { 22 | /// 23 | /// Location data is available. 24 | /// 25 | Ready = 0, 26 | 27 | /// 28 | /// The location provider is initializing. This is the status if a GPS is the source of location data and the GPS receiver does not yet have the required number of satellites in view to obtain an accurate position. 29 | /// 30 | Initializing = 1, 31 | 32 | /// 33 | /// No location data is available from any location provider. 34 | /// 35 | NoData = 2, 36 | 37 | /// 38 | /// The location provider is disabled. This status indicates that the user has not granted the application permission to access location. 39 | /// 40 | Disabled = 3, 41 | 42 | /// 43 | /// An operation to retrieve location has not yet been initialized. 44 | /// 45 | NotInitialized = 4, 46 | 47 | /// 48 | /// The Windows Sensor and Location Platform is not available on this version of Windows. 49 | /// 50 | NotAvailable = 5, 51 | } 52 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/FilePickerServiceLocationId.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | namespace Cimbalino.Toolkit.Services 16 | { 17 | /// 18 | /// Identifies the storage location that the file picker presents to the user. 19 | /// 20 | public enum FilePickerServiceLocationId 21 | { 22 | /// 23 | /// The Documents library. 24 | /// 25 | DocumentsLibrary, 26 | 27 | /// 28 | /// The Computer folder. 29 | /// 30 | ComputerFolder, 31 | 32 | /// 33 | /// The Windows desktop. 34 | /// 35 | Desktop, 36 | 37 | /// 38 | /// The Downloads folder. 39 | /// 40 | Downloads, 41 | 42 | /// 43 | /// The HomeGroup. 44 | /// 45 | HomeGroup, 46 | 47 | /// 48 | /// The Music library. 49 | /// 50 | MusicLibrary, 51 | 52 | /// 53 | /// The Pictures library. 54 | /// 55 | PicturesLibrary, 56 | 57 | /// 58 | /// The Videos library. 59 | /// 60 | VideosLibrary, 61 | 62 | /// 63 | /// The Objects library. 64 | /// 65 | Objects3D, 66 | 67 | /// 68 | /// An unspecified location. 69 | /// 70 | Unspecified 71 | } 72 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Extensions/StreamWriterExtensions.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System.Collections.Generic; 16 | using System.IO; 17 | using System.Threading.Tasks; 18 | 19 | namespace Cimbalino.Toolkit.Extensions 20 | { 21 | /// 22 | /// Provides a set of static (Shared in Visual Basic) methods for instances. 23 | /// 24 | public static class StreamWriterExtensions 25 | { 26 | /// 27 | /// Writes all lines. 28 | /// 29 | /// The stream writer. 30 | /// The lines. 31 | public static void WriteAllLines(this StreamWriter streamWriter, IEnumerable lines) 32 | { 33 | foreach (var line in lines) 34 | { 35 | streamWriter.WriteLine(line); 36 | } 37 | } 38 | 39 | /// 40 | /// Writes all lines. 41 | /// 42 | /// The stream writer. 43 | /// The lines. 44 | /// The object representing the asynchronous operation. 45 | public static async Task WriteAllLinesAsync(this StreamWriter streamWriter, IEnumerable lines) 46 | { 47 | foreach (var line in lines) 48 | { 49 | await streamWriter.WriteLineAsync(line).ConfigureAwait(false); 50 | } 51 | } 52 | } 53 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (WP8)/Services/FilePickerService.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System; 16 | using System.Collections.Generic; 17 | using System.Threading.Tasks; 18 | using Cimbalino.Toolkit.Helpers; 19 | 20 | namespace Cimbalino.Toolkit.Services 21 | { 22 | /// 23 | /// Represents an implementation of the . 24 | /// 25 | [CLSCompliant(false)] 26 | public class FilePickerService : IFilePickerService 27 | { 28 | /// 29 | /// Shows the file picker so that the user can pick one file. 30 | /// 31 | /// The options. 32 | /// The object representing the asynchronous operation. 33 | public virtual Task PickSingleFileAsync(FilePickerServiceOptions options) 34 | { 35 | return ExceptionHelper.ThrowNotSupported>(); 36 | } 37 | 38 | /// 39 | /// Shows the file picker so that the user can pick multiple files. 40 | /// 41 | /// The options. 42 | /// The object representing the asynchronous operation. 43 | public virtual Task> PickMultipleFilesAsync(FilePickerServiceOptions options) 44 | { 45 | return ExceptionHelper.ThrowNotSupported>>(); 46 | } 47 | } 48 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/ILockScreenService.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System; 16 | using System.IO; 17 | using System.Threading.Tasks; 18 | 19 | namespace Cimbalino.Toolkit.Services 20 | { 21 | /// 22 | /// Represents a service capable of managing the lock screen. 23 | /// 24 | public interface ILockScreenService 25 | { 26 | /// 27 | /// Sets the lock screen background image. 28 | /// 29 | /// The file URI. 30 | /// The object representing the asynchronous operation. 31 | Task SetLockScreenAsync(Uri uri); 32 | 33 | /// 34 | /// Sets the lock screen background image. 35 | /// 36 | /// The file stream. 37 | /// The object representing the asynchronous operation. 38 | Task SetLockScreenAsync(Stream stream); 39 | 40 | /// 41 | /// Gets the current lock screen background image URI. 42 | /// 43 | /// The file URI. 44 | Uri GetCurrentLockScreenUri(); 45 | 46 | /// 47 | /// Sets the current app as the lock screen background image provider. 48 | /// 49 | /// The object representing the asynchronous operation. 50 | Task RequestAccessAsync(); 51 | } 52 | } 53 | -------------------------------------------------------------------------------- /samples/HamburgerFrame/HamburgerFrame.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 12.00 3 | # Visual Studio 14 4 | VisualStudioVersion = 14.0.24720.0 5 | MinimumVisualStudioVersion = 10.0.40219.1 6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HamburgerFrame", "HamburgerFrame\HamburgerFrame.csproj", "{E00B8D31-28E1-4AE8-A77A-770139128966}" 7 | EndProject 8 | Global 9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 10 | Debug|ARM = Debug|ARM 11 | Debug|x64 = Debug|x64 12 | Debug|x86 = Debug|x86 13 | Release|ARM = Release|ARM 14 | Release|x64 = Release|x64 15 | Release|x86 = Release|x86 16 | EndGlobalSection 17 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 18 | {E00B8D31-28E1-4AE8-A77A-770139128966}.Debug|ARM.ActiveCfg = Debug|ARM 19 | {E00B8D31-28E1-4AE8-A77A-770139128966}.Debug|ARM.Build.0 = Debug|ARM 20 | {E00B8D31-28E1-4AE8-A77A-770139128966}.Debug|ARM.Deploy.0 = Debug|ARM 21 | {E00B8D31-28E1-4AE8-A77A-770139128966}.Debug|x64.ActiveCfg = Debug|x64 22 | {E00B8D31-28E1-4AE8-A77A-770139128966}.Debug|x64.Build.0 = Debug|x64 23 | {E00B8D31-28E1-4AE8-A77A-770139128966}.Debug|x64.Deploy.0 = Debug|x64 24 | {E00B8D31-28E1-4AE8-A77A-770139128966}.Debug|x86.ActiveCfg = Debug|x86 25 | {E00B8D31-28E1-4AE8-A77A-770139128966}.Debug|x86.Build.0 = Debug|x86 26 | {E00B8D31-28E1-4AE8-A77A-770139128966}.Debug|x86.Deploy.0 = Debug|x86 27 | {E00B8D31-28E1-4AE8-A77A-770139128966}.Release|ARM.ActiveCfg = Release|ARM 28 | {E00B8D31-28E1-4AE8-A77A-770139128966}.Release|ARM.Build.0 = Release|ARM 29 | {E00B8D31-28E1-4AE8-A77A-770139128966}.Release|ARM.Deploy.0 = Release|ARM 30 | {E00B8D31-28E1-4AE8-A77A-770139128966}.Release|x64.ActiveCfg = Release|x64 31 | {E00B8D31-28E1-4AE8-A77A-770139128966}.Release|x64.Build.0 = Release|x64 32 | {E00B8D31-28E1-4AE8-A77A-770139128966}.Release|x64.Deploy.0 = Release|x64 33 | {E00B8D31-28E1-4AE8-A77A-770139128966}.Release|x86.ActiveCfg = Release|x86 34 | {E00B8D31-28E1-4AE8-A77A-770139128966}.Release|x86.Build.0 = Release|x86 35 | {E00B8D31-28E1-4AE8-A77A-770139128966}.Release|x86.Deploy.0 = Release|x86 36 | EndGlobalSection 37 | GlobalSection(SolutionProperties) = preSolution 38 | HideSolutionNode = FALSE 39 | EndGlobalSection 40 | EndGlobal 41 | -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (WP8)/Behaviors/MultiBindingItem.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | #if WINDOWS_PHONE || WINDOWS_PHONE_81 16 | using System.Windows; 17 | #else 18 | using Windows.UI.Xaml; 19 | #endif 20 | 21 | namespace Cimbalino.Toolkit.Behaviors 22 | { 23 | /// 24 | /// A multiple binding item. 25 | /// 26 | public class MultiBindingItem : DependencyObject 27 | { 28 | /// 29 | /// Gets or sets the binding value. 30 | /// 31 | /// The binding value. 32 | public object Value 33 | { 34 | get { return GetValue(ValueProperty); } 35 | set { SetValue(ValueProperty, value); } 36 | } 37 | 38 | /// 39 | /// Identifier for the dependency property. 40 | /// 41 | public static readonly DependencyProperty ValueProperty = 42 | DependencyProperty.Register(nameof(Value), typeof(object), typeof(MultiBindingItem), new PropertyMetadata(null, OnValueChanged)); 43 | 44 | private static void OnValueChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) 45 | { 46 | var multiBindingItem = (MultiBindingItem)d; 47 | 48 | multiBindingItem.Update(); 49 | } 50 | 51 | internal MultiBindingItemCollection Parent { get; set; } 52 | 53 | private void Update() 54 | { 55 | var parent = Parent; 56 | 57 | if (parent != null) 58 | { 59 | parent.Update(); 60 | } 61 | } 62 | } 63 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (WP8)/Services/PersonalizationService.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System.Threading.Tasks; 16 | using Cimbalino.Toolkit.Helpers; 17 | 18 | namespace Cimbalino.Toolkit.Services 19 | { 20 | /// 21 | /// Represents an implementation of the . 22 | /// 23 | public class PersonalizationService : IPersonalizationService 24 | { 25 | /// 26 | /// Gets a value indicating whether this instance is supported. 27 | /// 28 | /// true if this instance is supported; otherwise, false. 29 | public virtual bool IsSupported => ExceptionHelper.ThrowNotSupported(); 30 | 31 | /// 32 | /// Sets the lock screen image. 33 | /// 34 | /// The file URI. 35 | /// The object representing the asynchronous operation. 36 | public virtual Task SetLockScreenImageAsync(string fileUri) 37 | { 38 | return ExceptionHelper.ThrowNotSupported>(); 39 | } 40 | 41 | /// 42 | /// Sets the wallpaper image. 43 | /// 44 | /// The file URI. 45 | /// The object representing the asynchronous operation. 46 | public virtual Task SetWallpaperImageAsync(string fileUri) 47 | { 48 | return ExceptionHelper.ThrowNotSupported>(); 49 | } 50 | } 51 | } 52 | -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/IStoreService.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System.Threading.Tasks; 16 | 17 | namespace Cimbalino.Toolkit.Services 18 | { 19 | /// 20 | /// Represents a service capable of launching the Store application. 21 | /// 22 | public interface IStoreService 23 | { 24 | /// 25 | /// Shows the Store application. 26 | /// 27 | /// The object representing the asynchronous operation. 28 | Task ShowAsync(); 29 | 30 | /// 31 | /// Shows the Store application. 32 | /// 33 | /// The publisher display name. 34 | /// The object representing the asynchronous operation. 35 | Task ShowPublisherAsync(string publisherName); 36 | 37 | /// 38 | /// Shows the Store application, optionally filtering results by keyword, publisher, and content type. 39 | /// 40 | /// The keywords to search for. 41 | /// The object representing the asynchronous operation. 42 | Task SearchAsync(string keywords); 43 | 44 | /// 45 | /// Shows the Store application. 46 | /// 47 | /// The application id. 48 | /// The object representing the asynchronous operation. 49 | Task ReviewAsync(string applicationId); 50 | } 51 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (Portable)/Services/PowerStatusChangedEventArgs.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System; 16 | 17 | namespace Cimbalino.Toolkit.Services 18 | { 19 | /// 20 | /// Provides data for events. 21 | /// 22 | public class PowerStatusChangedEventArgs : EventArgs 23 | { 24 | /// 25 | /// Gets the a value indicating the percent of the battery remaining on the device 26 | /// 27 | /// null if the platform can't report this, otherwise, the battery percentage 28 | public int? RemainingChargePercent { get; private set; } 29 | 30 | /// 31 | /// Gets the value indicating if the device is in power saver mode. 32 | /// 33 | /// 34 | /// Null if the platform can't report this, otherwise [true] if in power saver mode 35 | /// 36 | public bool? IsInPowerSaverMode { get; private set; } 37 | 38 | /// 39 | /// Initializes a new instance of the class. 40 | /// 41 | /// A value representing the amount of charge left in the device battery 42 | /// A value represeting whether the device is in power saver mode 43 | public PowerStatusChangedEventArgs(int? remainingChargePercent, bool? isInPowerSaverMode) 44 | { 45 | RemainingChargePercent = remainingChargePercent; 46 | IsInPowerSaverMode = isInPowerSaverMode; 47 | } 48 | } 49 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit.Core (WP8)/Services/RuntimeInformationService.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit.Core 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | #if WINDOWS_PHONE || WINDOWS_PHONE_81 16 | using System; 17 | using System.Windows; 18 | #else 19 | using System; 20 | #endif 21 | 22 | namespace Cimbalino.Toolkit.Services 23 | { 24 | /// 25 | /// Represents an implementation of the . 26 | /// 27 | public class RuntimeInformationService : IRuntimeInformationService 28 | { 29 | /// 30 | /// Gets the device runtime profile. 31 | /// 32 | /// The device runtime profile. 33 | public virtual RuntimeInformationServiceProfile Profile 34 | { 35 | get 36 | { 37 | #if WINDOWS_PHONE || WINDOWS_PHONE_81 38 | return RuntimeInformationServiceProfile.WindowsPhoneSilverlight; 39 | #elif WINDOWS_PHONE_APP 40 | return RuntimeInformationServiceProfile.WindowsPhoneApp; 41 | #elif WINDOWS_APP 42 | return RuntimeInformationServiceProfile.WindowsApp; 43 | #else 44 | return RuntimeInformationServiceProfile.UniversalAppPlatform; 45 | #endif 46 | } 47 | } 48 | 49 | /// 50 | /// Gets the device runtime version. 51 | /// 52 | /// The device runtime version. 53 | public virtual Version Version 54 | { 55 | get 56 | { 57 | #if WINDOWS_PHONE || WINDOWS_PHONE_81 58 | return Version.Parse(Deployment.Current.RuntimeVersion); 59 | #else 60 | return null; 61 | #endif 62 | } 63 | } 64 | } 65 | } -------------------------------------------------------------------------------- /src/Cimbalino.Toolkit (WP8)/Services/TitleBarService.cs: -------------------------------------------------------------------------------- 1 | // **************************************************************************** 2 | // 3 | // Copyright © Pedro Lamas 2014 4 | // 5 | // **************************************************************************** 6 | // Pedro Lamas 7 | // pedrolamas@gmail.com 8 | // Cimbalino.Toolkit 9 | // http://www.pedrolamas.com 10 | // 11 | // See license.txt in this solution or http://www.pedrolamas.com/license_MIT.txt 12 | // 13 | // **************************************************************************** 14 | 15 | using System; 16 | using Cimbalino.Toolkit.Helpers; 17 | 18 | namespace Cimbalino.Toolkit.Services 19 | { 20 | /// 21 | /// Represents an implementation of the . 22 | /// 23 | public class TitleBarService : ITitleBarService 24 | { 25 | /// 26 | /// Gets or sets a value indicating whether this title bar should replace the default window title bar. 27 | /// 28 | /// true if this title bar should replace the default window title bar; otherwise, false. 29 | public virtual bool ExtendViewIntoTitleBar 30 | { 31 | get 32 | { 33 | return ExceptionHelper.ThrowNotSupported(); 34 | } 35 | set 36 | { 37 | ExceptionHelper.ThrowNotSupported(); 38 | } 39 | } 40 | 41 | /// 42 | /// Occurs when the visibility of the title bar changes. 43 | /// 44 | public event EventHandler IsVisibleChanged 45 | { 46 | add 47 | { 48 | ExceptionHelper.ThrowNotSupported(); 49 | } 50 | remove 51 | { 52 | } 53 | } 54 | 55 | /// 56 | /// Gets the title bar height. 57 | /// 58 | /// The title bar height. 59 | public virtual double Height 60 | { 61 | get 62 | { 63 | return ExceptionHelper.ThrowNotSupported(); 64 | } 65 | } 66 | } 67 | } --------------------------------------------------------------------------------