VRDash/VDash/UI/MonitorOverlayEditor.xaml.cs

51 lines
1.6 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using VDash.Overlay.Config;
using static VDash.Utilities.User32;
namespace VDash.UI
{
/// <summary>
/// Interaction logic for MonitorOverlayEditor.xaml
/// </summary>
public partial class MonitorOverlayEditor : UserControl,IOverlayEditor
{
public IOverlayConfig Config { get { return OverlayConfig; } }
public MonitorOverlayConfig OverlayConfig { get; set; } = new MonitorOverlayConfig();
public MonitorOverlayEditor(ref MonitorOverlayConfig config)
{
InitializeComponent();
OverlayConfig = config;
DataContext = OverlayConfig;
var displays = GetDisplays();
cbMontitor.ItemsSource = displays;
cbMontitor.SelectedItem = displays.Single(x => x.MonitorInfo.DeviceName == OverlayConfig.MonitorName);
}
public MonitorOverlayEditor()
{
InitializeComponent();
DataContext = OverlayConfig;
cbMontitor.ItemsSource = GetDisplays();
}
private void cbMontitor_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
OverlayConfig.MonitorName = ((DisplayInfo)cbMontitor.SelectedItem).MonitorInfo.DeviceName;
}
}
}