adddisplaysetting and unicolor

This commit is contained in:
stubbfel
2013-11-26 11:25:10 +01:00
parent 0ebe01dfe6
commit abd3488608
10 changed files with 170 additions and 3 deletions

View File

@@ -13,6 +13,7 @@
<ResourceDictionary Source="Styles/ListButton.xaml"/>
<ResourceDictionary Source="Styles/StartPageStyles.xaml"/>
<ResourceDictionary Source="Styles/Labels.xaml"/>
<ResourceDictionary Source="Styles/UniColors.xaml"/>
<ResourceDictionary>
<local:LocalizedStrings xmlns:local="clr-namespace:CampusAppWP8" x:Key="LocalizedStrings"/>
<local:ThemelizedIcons xmlns:local="clr-namespace:CampusAppWP8" x:Key="ThemelizedIcons"/>

View File

@@ -10,6 +10,7 @@ using System.IO.IsolatedStorage;
using System.Threading;
using System.Windows;
using System.Windows.Markup;
using System.Windows.Media;
using System.Windows.Navigation;
@@ -157,6 +158,19 @@ namespace CampusAppWP8
Settings.AppSetting.InitApp = false;
}
Color appColor = ((SolidColorBrush)App.Current.Resources["PhoneAccentBrush"]).Color;
if (!Settings.AppSetting.DisplaySetting.PhoneAccentColor.Equals(appColor))
{
if (Settings.AppSetting.DisplaySetting.AppAccentColor.Equals(Settings.AppSetting.DisplaySetting.PhoneAccentColor))
{
Settings.AppSetting.DisplaySetting.AppAccentColor = appColor;
}
Settings.AppSetting.DisplaySetting.PhoneAccentColor = appColor;
}
appColor = Settings.AppSetting.DisplaySetting.AppAccentColor;
Utilities.SwitchAccentColor(appColor);
this.UserSettingsLoaded();
Settings.AppSetting.NetworkSetting.UniNetwork = Utilities.IsUniNetworkAvailable();

View File

@@ -134,6 +134,7 @@
<Compile Include="Model\Setting\AppSettings.cs" />
<Compile Include="Model\Setting\BTUTagHandlerTypes.cs" />
<Compile Include="Model\Setting\BTUTagSetting.cs" />
<Compile Include="Model\Setting\DisplaySetting.cs" />
<Compile Include="Model\Setting\FunctionSettings.cs" />
<Compile Include="Model\Setting\ISetting.cs" />
<Compile Include="Model\Setting\LocatingSetting.cs" />
@@ -542,6 +543,10 @@
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Page Include="Styles\UniColors.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Page Include="Styles\Labels.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>

View File

@@ -26,10 +26,30 @@ namespace CampusAppWP8.Model.Setting
/// <summary> The locating setting. </summary>
private static LocatingSetting locatingSetting = new LocatingSetting();
private static DisplaySetting displaySetting = new DisplaySetting();
#endregion
#region Property
/// <summary> Gets or sets the display setting. </summary>
/// <value> The display setting. </value>
public DisplaySetting DisplaySetting
{
get
{
return AppSettings.displaySetting;
}
set
{
if (AppSettings.displaySetting != value)
{
AppSettings.displaySetting = value;
}
}
}
/// <summary> Gets or sets the locating setting. </summary>
/// <value> The locating setting. </value>
public LocatingSetting LocatingSetting
@@ -150,6 +170,7 @@ namespace CampusAppWP8.Model.Setting
this.FunctionSettings.SetSettingToDefault();
this.NetworkSetting.SetSettingToDefault();
this.LocatingSetting.SetSettingToDefault();
this.DisplaySetting.SetSettingToDefault();
}
#endregion
}

View File

@@ -0,0 +1,64 @@
using CampusAppWP8.Resources;
//-----------------------------------------------------------------------
// <copyright file="DisplaySetting.cs" company="BTU/IIT">
// The MIT License (MIT). Copyright (c) 2013 BTU/IIT.
// </copyright>
// <author>Stubbfel</author>
// <date>26.11.2013</date>
// <summary>Implements the display setting class</summary>
//-----------------------------------------------------------------------
using System.Windows.Media;
namespace CampusAppWP8.Model.Setting
{
/// <summary> A display setting. </summary>
/// <remarks> Stubbfel, 26.11.2013. </remarks>
/// <seealso cref="T:CampusAppWP8.Model.Setting.ISetting"/>
public class DisplaySetting : ISetting
{
#region property
/// <summary> Gets or sets the color of the application accent. </summary>
/// <value> The color of the application accent. </value>
public Color AppAccentColor
{
get
{
return App.LoadFromAppState<Color>(Constants.Setting_AppAccentColor);
}
set
{
App.SaveToAppState<Color>(Constants.Setting_AppAccentColor, value);
}
}
/// <summary> Gets or sets the color of the phone accent. </summary>
/// <value> The color of the phone accent. </value>
public Color PhoneAccentColor
{
get
{
return App.LoadFromAppState<Color>(Constants.Setting_PhoneAccentColor);
}
set
{
App.SaveToAppState<Color>(Constants.Setting_PhoneAccentColor, value);
}
}
#endregion
#region method
/// <summary> Sets setting to default. </summary>
/// <remarks> Stubbfel, 25.11.2013. </remarks>
/// <seealso cref="M:CampusAppWP8.Model.Setting.ISetting.SetSettingToDefault()"/>
public void SetSettingToDefault()
{
this.AppAccentColor = this.PhoneAccentColor;
}
#endregion
}
}

View File

@@ -27,6 +27,7 @@ namespace CampusAppWP8.Pages
using Microsoft.Phone.Controls;
using Microsoft.Phone.Shell;
using Windows.Networking.Proximity;
using System.Windows.Media;
/// <summary> Class for the StartPage. </summary>
/// <remarks> Stubbfel, 15.10.2013. </remarks>
@@ -75,7 +76,7 @@ namespace CampusAppWP8.Pages
#region protected
/// <summary> Methods overrides the OnNavigatedTo-Method. </summary>
/// <summary> Methods overrides the OnNavigatedTo-Method. </summary>
/// <remarks> Stubbfel, 15.10.2013. </remarks>
/// <seealso cref="M:System.Windows.Controls.Page.OnNavigatedTo(NavigationEventArgs)"/>
protected override void OnNavigatedTo(NavigationEventArgs e)
@@ -84,7 +85,7 @@ namespace CampusAppWP8.Pages
if (device != null)
{
this.ndefId = this.device.SubscribeForMessage(Constants.NCFMessageType_NDEF, this.NDEFHandler);
}
}
}
/// <summary> Methods overrides the OnNavigatedFrom-Method. </summary>
@@ -123,7 +124,7 @@ namespace CampusAppWP8.Pages
/// <remarks> Stubbfel, 15.10.2013. </remarks>
/// <param name="sender"> Caller of the function. </param>
/// <param name="e"> some EventArgs. </param>
private void NFCButton_Click(object sender,RoutedEventArgs e)
private void NFCButton_Click(object sender, RoutedEventArgs e)
{
MessageBoxes.ShowMainModelInfoMessageBox(AppResources.ScarNfc_Search);
}

View File

@@ -678,4 +678,10 @@
<data name="Setting_Mensa_DefaultCampus" xml:space="preserve">
<value>MensaDefaultCampus</value>
</data>
<data name="Setting_AppAccentColor" xml:space="preserve">
<value>AppAccentColor</value>
</data>
<data name="Setting_PhoneAccentColor" xml:space="preserve">
<value>PhoneAccentColor</value>
</data>
</root>

View File

@@ -1383,6 +1383,15 @@ namespace CampusAppWP8.Resources {
}
}
/// <summary>
/// Sucht eine lokalisierte Zeichenfolge, die AppAccentColor ähnelt.
/// </summary>
public static string Setting_AppAccentColor {
get {
return ResourceManager.GetString("Setting_AppAccentColor", resourceCulture);
}
}
/// <summary>
/// Sucht eine lokalisierte Zeichenfolge, die AppSetting ähnelt.
/// </summary>
@@ -1482,6 +1491,15 @@ namespace CampusAppWP8.Resources {
}
}
/// <summary>
/// Sucht eine lokalisierte Zeichenfolge, die PhoneAccentColor ähnelt.
/// </summary>
public static string Setting_PhoneAccentColor {
get {
return ResourceManager.GetString("Setting_PhoneAccentColor", resourceCulture);
}
}
/// <summary>
/// Sucht eine lokalisierte Zeichenfolge, die UserSetting ähnelt.
/// </summary>

View File

@@ -0,0 +1,12 @@
<ResourceDictionary
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:System="clr-namespace:System;assembly=mscorlib">
<Color x:Key="Faculty1">#d20078</Color>
<Color x:Key="Faculty2">#0050a0</Color>
<Color x:Key="Faculty3">#009bd2</Color>
<Color x:Key="Faculty4">#a5c300</Color>
<Color x:Key="Faculty5">#ff9900</Color>
</ResourceDictionary>

View File

@@ -445,6 +445,31 @@ namespace CampusAppWP8.Utility
obj.SelectedIndex = -1;
}
}
/// <summary> Switch color. </summary>
/// <remarks> Stubbfel, 26.11.2013. </remarks>
/// <param name="ressourceKey"> The ressource key. </param>
/// <param name="newColor"> The new color. </param>
public static void SwitchColor(string ressourceKey, Color newColor)
{
SolidColorBrush oldColor = App.Current.Resources[ressourceKey] as SolidColorBrush;
if (oldColor == null || oldColor.Color.Equals(newColor))
{
return;
}
App.Current.Resources.Remove(ressourceKey);
App.Current.Resources.Add(ressourceKey, newColor);
((SolidColorBrush)App.Current.Resources[ressourceKey]).Color = newColor;
}
/// <summary> Switch accent color. </summary>
/// <remarks> Stubbfel, 26.11.2013. </remarks>
/// <param name="newColor"> The new color. </param>
public static void SwitchAccentColor(Color newColor)
{
Utilities.SwitchColor("PhoneAccentBrush", newColor);
}
#endregion
}
}