Themes apply everywhere now
This commit is contained in:

committed by
John Gross

parent
d92daccdbf
commit
b18420ad55
@@ -28,6 +28,15 @@ namespace Torch.Server.Views.Blocks
|
||||
public BlockView()
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
ThemeControl.UpdateWeirdViews += UpdateResourceDict;
|
||||
UpdateResourceDict(ThemeControl.currentTheme);
|
||||
}
|
||||
|
||||
public void UpdateResourceDict(ResourceDictionary dictionary)
|
||||
{
|
||||
this.Resources.MergedDictionaries.Clear();
|
||||
this.Resources.MergedDictionaries.Add(dictionary);
|
||||
}
|
||||
|
||||
/*
|
||||
|
@@ -26,6 +26,15 @@ namespace Torch.Server.Views.Blocks
|
||||
{
|
||||
InitializeComponent();
|
||||
DataContextChanged += OnDataContextChanged;
|
||||
|
||||
ThemeControl.UpdateWeirdViews += UpdateResourceDict;
|
||||
UpdateResourceDict(ThemeControl.currentTheme);
|
||||
}
|
||||
|
||||
public void UpdateResourceDict(ResourceDictionary dictionary)
|
||||
{
|
||||
this.Resources.MergedDictionaries.Clear();
|
||||
this.Resources.MergedDictionaries.Add(dictionary);
|
||||
}
|
||||
|
||||
private void OnDataContextChanged(object sender, DependencyPropertyChangedEventArgs args)
|
||||
|
@@ -23,6 +23,15 @@ namespace Torch.Server.Views.Entities
|
||||
public CharacterView()
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
ThemeControl.UpdateWeirdViews += UpdateResourceDict;
|
||||
UpdateResourceDict(ThemeControl.currentTheme);
|
||||
}
|
||||
|
||||
public void UpdateResourceDict(ResourceDictionary dictionary)
|
||||
{
|
||||
this.Resources.MergedDictionaries.Clear();
|
||||
this.Resources.MergedDictionaries.Add(dictionary);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -17,6 +17,15 @@ namespace Torch.Server.Views.Entities
|
||||
{
|
||||
InitializeComponent();
|
||||
DataContextChanged += OnDataContextChanged;
|
||||
|
||||
ThemeControl.UpdateWeirdViews += UpdateResourceDict;
|
||||
UpdateResourceDict(ThemeControl.currentTheme);
|
||||
}
|
||||
|
||||
public void UpdateResourceDict(ResourceDictionary dictionary)
|
||||
{
|
||||
this.Resources.MergedDictionaries.Clear();
|
||||
this.Resources.MergedDictionaries.Add(dictionary);
|
||||
}
|
||||
|
||||
private void OnDataContextChanged(object sender, DependencyPropertyChangedEventArgs e)
|
||||
|
@@ -1,4 +1,5 @@
|
||||
using System.Windows.Controls;
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
|
||||
namespace Torch.Server.Views.Entities
|
||||
{
|
||||
@@ -10,6 +11,15 @@ namespace Torch.Server.Views.Entities
|
||||
public EntityControlsView()
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
ThemeControl.UpdateWeirdViews += UpdateResourceDict;
|
||||
UpdateResourceDict(ThemeControl.currentTheme);
|
||||
}
|
||||
|
||||
public void UpdateResourceDict(ResourceDictionary dictionary)
|
||||
{
|
||||
this.Resources.MergedDictionaries.Clear();
|
||||
this.Resources.MergedDictionaries.Add(dictionary);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -6,6 +6,7 @@
|
||||
xmlns:entities="clr-namespace:Torch.Server.ViewModels.Entities"
|
||||
xmlns:local="clr-namespace:Torch.Server.Views.Entities"
|
||||
mc:Ignorable="d">
|
||||
|
||||
<UserControl.DataContext>
|
||||
<entities:GridViewModel />
|
||||
</UserControl.DataContext>
|
||||
|
@@ -23,6 +23,15 @@ namespace Torch.Server.Views.Entities
|
||||
public GridView()
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
ThemeControl.UpdateWeirdViews += UpdateResourceDict;
|
||||
UpdateResourceDict(ThemeControl.currentTheme);
|
||||
}
|
||||
|
||||
public void UpdateResourceDict(ResourceDictionary dictionary)
|
||||
{
|
||||
this.Resources.MergedDictionaries.Clear();
|
||||
this.Resources.MergedDictionaries.Add(dictionary);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -25,6 +25,15 @@ namespace Torch.Server.Views.Entities
|
||||
{
|
||||
InitializeComponent();
|
||||
DataContextChanged += VoxelMapView_DataContextChanged;
|
||||
|
||||
ThemeControl.UpdateWeirdViews += UpdateResourceDict;
|
||||
UpdateResourceDict(ThemeControl.currentTheme);
|
||||
}
|
||||
|
||||
public void UpdateResourceDict(ResourceDictionary dictionary)
|
||||
{
|
||||
this.Resources.MergedDictionaries.Clear();
|
||||
this.Resources.MergedDictionaries.Add(dictionary);
|
||||
}
|
||||
|
||||
private void VoxelMapView_DataContextChanged(object sender, DependencyPropertyChangedEventArgs e)
|
||||
|
@@ -22,6 +22,9 @@ namespace Torch.Server.Views
|
||||
/// </summary>
|
||||
public partial class ThemeControl : UserControl, INotifyPropertyChanged
|
||||
{
|
||||
public static Action<ResourceDictionary> UpdateWeirdViews;
|
||||
public static ResourceDictionary currentTheme;
|
||||
|
||||
public TorchUI uiSource;
|
||||
private TorchConfig _torchConfig;
|
||||
|
||||
@@ -66,7 +69,10 @@ namespace Torch.Server.Views
|
||||
public void ChangeTheme(Uri uri)
|
||||
{
|
||||
uiSource.Resources.MergedDictionaries.Clear();
|
||||
uiSource.Resources.MergedDictionaries.Add(new ResourceDictionary() { Source = uri });
|
||||
var resource = new ResourceDictionary() { Source = uri };
|
||||
uiSource.Resources.MergedDictionaries.Add(resource);
|
||||
UpdateWeirdViews?.Invoke(resource);
|
||||
currentTheme = resource;
|
||||
}
|
||||
|
||||
private void Hyperlink_RequestNavigate(object sender, RequestNavigateEventArgs e)
|
||||
|
Reference in New Issue
Block a user