diff --git a/FrontendplayDemos.sln b/FrontendplayDemos.sln index bbfafc7..08471db 100644 --- a/FrontendplayDemos.sln +++ b/FrontendplayDemos.sln @@ -5,6 +5,8 @@ VisualStudioVersion = 14.0.24720.0 MinimumVisualStudioVersion = 10.0.40219.1 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PointerButton", "PointerButton\PointerButton.csproj", "{1738DF10-3A86-4B38-B598-1EB1EF221F1F}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SimpleStatusBar", "SimpleStatusBar\SimpleStatusBar.csproj", "{2B4F0A23-1E7F-43DF-A763-AD24F34F7EDC}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|ARM = Debug|ARM @@ -33,6 +35,24 @@ Global {1738DF10-3A86-4B38-B598-1EB1EF221F1F}.Release|x86.ActiveCfg = Release|x86 {1738DF10-3A86-4B38-B598-1EB1EF221F1F}.Release|x86.Build.0 = Release|x86 {1738DF10-3A86-4B38-B598-1EB1EF221F1F}.Release|x86.Deploy.0 = Release|x86 + {2B4F0A23-1E7F-43DF-A763-AD24F34F7EDC}.Debug|ARM.ActiveCfg = Debug|ARM + {2B4F0A23-1E7F-43DF-A763-AD24F34F7EDC}.Debug|ARM.Build.0 = Debug|ARM + {2B4F0A23-1E7F-43DF-A763-AD24F34F7EDC}.Debug|ARM.Deploy.0 = Debug|ARM + {2B4F0A23-1E7F-43DF-A763-AD24F34F7EDC}.Debug|x64.ActiveCfg = Debug|x64 + {2B4F0A23-1E7F-43DF-A763-AD24F34F7EDC}.Debug|x64.Build.0 = Debug|x64 + {2B4F0A23-1E7F-43DF-A763-AD24F34F7EDC}.Debug|x64.Deploy.0 = Debug|x64 + {2B4F0A23-1E7F-43DF-A763-AD24F34F7EDC}.Debug|x86.ActiveCfg = Debug|x86 + {2B4F0A23-1E7F-43DF-A763-AD24F34F7EDC}.Debug|x86.Build.0 = Debug|x86 + {2B4F0A23-1E7F-43DF-A763-AD24F34F7EDC}.Debug|x86.Deploy.0 = Debug|x86 + {2B4F0A23-1E7F-43DF-A763-AD24F34F7EDC}.Release|ARM.ActiveCfg = Release|ARM + {2B4F0A23-1E7F-43DF-A763-AD24F34F7EDC}.Release|ARM.Build.0 = Release|ARM + {2B4F0A23-1E7F-43DF-A763-AD24F34F7EDC}.Release|ARM.Deploy.0 = Release|ARM + {2B4F0A23-1E7F-43DF-A763-AD24F34F7EDC}.Release|x64.ActiveCfg = Release|x64 + {2B4F0A23-1E7F-43DF-A763-AD24F34F7EDC}.Release|x64.Build.0 = Release|x64 + {2B4F0A23-1E7F-43DF-A763-AD24F34F7EDC}.Release|x64.Deploy.0 = Release|x64 + {2B4F0A23-1E7F-43DF-A763-AD24F34F7EDC}.Release|x86.ActiveCfg = Release|x86 + {2B4F0A23-1E7F-43DF-A763-AD24F34F7EDC}.Release|x86.Build.0 = Release|x86 + {2B4F0A23-1E7F-43DF-A763-AD24F34F7EDC}.Release|x86.Deploy.0 = Release|x86 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/SimpleStatusBar/App.xaml b/SimpleStatusBar/App.xaml new file mode 100644 index 0000000..e5e83e8 --- /dev/null +++ b/SimpleStatusBar/App.xaml @@ -0,0 +1,8 @@ + + + diff --git a/SimpleStatusBar/App.xaml.cs b/SimpleStatusBar/App.xaml.cs new file mode 100644 index 0000000..b928a5a --- /dev/null +++ b/SimpleStatusBar/App.xaml.cs @@ -0,0 +1,105 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Runtime.InteropServices.WindowsRuntime; +using Windows.ApplicationModel; +using Windows.ApplicationModel.Activation; +using Windows.Foundation; +using Windows.Foundation.Collections; +using Windows.UI.Xaml; +using Windows.UI.Xaml.Controls; +using Windows.UI.Xaml.Controls.Primitives; +using Windows.UI.Xaml.Data; +using Windows.UI.Xaml.Input; +using Windows.UI.Xaml.Media; +using Windows.UI.Xaml.Navigation; + +namespace SimpleStatusBar +{ + /// + /// Provides application-specific behavior to supplement the default Application class. + /// + sealed partial class App : Application + { + /// + /// Initializes the singleton application object. This is the first line of authored code + /// executed, and as such is the logical equivalent of main() or WinMain(). + /// + public App() + { + this.InitializeComponent(); + this.Suspending += OnSuspending; + } + + /// + /// Invoked when the application is launched normally by the end user. Other entry points + /// will be used such as when the application is launched to open a specific file. + /// + /// Details about the launch request and process. + protected override void OnLaunched(LaunchActivatedEventArgs e) + { + +#if DEBUG + if (System.Diagnostics.Debugger.IsAttached) + { + this.DebugSettings.EnableFrameRateCounter = true; + } +#endif + + Frame rootFrame = Window.Current.Content as Frame; + + // Do not repeat app initialization when the Window already has content, + // just ensure that the window is active + if (rootFrame == null) + { + // Create a Frame to act as the navigation context and navigate to the first page + rootFrame = new Frame(); + + rootFrame.NavigationFailed += OnNavigationFailed; + + if (e.PreviousExecutionState == ApplicationExecutionState.Terminated) + { + //TODO: Load state from previously suspended application + } + + // Place the frame in the current Window + Window.Current.Content = rootFrame; + } + + if (rootFrame.Content == null) + { + // When the navigation stack isn't restored navigate to the first page, + // configuring the new page by passing required information as a navigation + // parameter + rootFrame.Navigate(typeof(MainPage), e.Arguments); + } + // Ensure the current window is active + Window.Current.Activate(); + } + + /// + /// Invoked when Navigation to a certain page fails + /// + /// The Frame which failed navigation + /// Details about the navigation failure + void OnNavigationFailed(object sender, NavigationFailedEventArgs e) + { + throw new Exception("Failed to load Page " + e.SourcePageType.FullName); + } + + /// + /// Invoked when application execution is being suspended. Application state is saved + /// without knowing whether the application will be terminated or resumed with the contents + /// of memory still intact. + /// + /// The source of the suspend request. + /// Details about the suspend request. + private void OnSuspending(object sender, SuspendingEventArgs e) + { + var deferral = e.SuspendingOperation.GetDeferral(); + //TODO: Save application state and stop any background activity + deferral.Complete(); + } + } +} diff --git a/SimpleStatusBar/Assets/LockScreenLogo.scale-200.png b/SimpleStatusBar/Assets/LockScreenLogo.scale-200.png new file mode 100644 index 0000000..735f57a Binary files /dev/null and b/SimpleStatusBar/Assets/LockScreenLogo.scale-200.png differ diff --git a/SimpleStatusBar/Assets/SplashScreen.scale-200.png b/SimpleStatusBar/Assets/SplashScreen.scale-200.png new file mode 100644 index 0000000..023e7f1 Binary files /dev/null and b/SimpleStatusBar/Assets/SplashScreen.scale-200.png differ diff --git a/SimpleStatusBar/Assets/Square150x150Logo.scale-200.png b/SimpleStatusBar/Assets/Square150x150Logo.scale-200.png new file mode 100644 index 0000000..af49fec Binary files /dev/null and b/SimpleStatusBar/Assets/Square150x150Logo.scale-200.png differ diff --git a/SimpleStatusBar/Assets/Square44x44Logo.scale-200.png b/SimpleStatusBar/Assets/Square44x44Logo.scale-200.png new file mode 100644 index 0000000..ce342a2 Binary files /dev/null and b/SimpleStatusBar/Assets/Square44x44Logo.scale-200.png differ diff --git a/SimpleStatusBar/Assets/Square44x44Logo.targetsize-24_altform-unplated.png b/SimpleStatusBar/Assets/Square44x44Logo.targetsize-24_altform-unplated.png new file mode 100644 index 0000000..f6c02ce Binary files /dev/null and b/SimpleStatusBar/Assets/Square44x44Logo.targetsize-24_altform-unplated.png differ diff --git a/SimpleStatusBar/Assets/StoreLogo.png b/SimpleStatusBar/Assets/StoreLogo.png new file mode 100644 index 0000000..7385b56 Binary files /dev/null and b/SimpleStatusBar/Assets/StoreLogo.png differ diff --git a/SimpleStatusBar/Assets/Wide310x150Logo.scale-200.png b/SimpleStatusBar/Assets/Wide310x150Logo.scale-200.png new file mode 100644 index 0000000..288995b Binary files /dev/null and b/SimpleStatusBar/Assets/Wide310x150Logo.scale-200.png differ diff --git a/SimpleStatusBar/MainPage.xaml b/SimpleStatusBar/MainPage.xaml new file mode 100644 index 0000000..758ed25 --- /dev/null +++ b/SimpleStatusBar/MainPage.xaml @@ -0,0 +1,20 @@ + + + + + + + +