1
0
Fork 0
mirror of https://github.com/hawkeye-stan/msfs-popout-panel-manager.git synced 2024-11-25 15:20:10 +00:00
msfs-popout-panel-manager/MainApp/ViewModel/SwitchWindowViewModel.cs
2024-09-17 17:33:23 -04:00

32 lines
981 B
C#

using System;
using System.Linq;
using MSFSPopoutPanelManager.DomainModel.Profile;
using MSFSPopoutPanelManager.Orchestration;
using MSFSPopoutPanelManager.WindowsAgent;
using Prism.Commands;
namespace MSFSPopoutPanelManager.MainApp.ViewModel
{
public class SwitchWindowViewModel : BaseViewModel
{
public DelegateCommand<string> ButtonCommand { get; private set; }
public Guid PanelId { get; set; }
public PanelConfig PanelConfig => ActiveProfile.PanelConfigs.FirstOrDefault(p => p.Id == PanelId);
public SwitchWindowViewModel(SharedStorage sharedStorage) : base(sharedStorage)
{
ButtonCommand = new DelegateCommand<string>(OnButtonActivated);
}
private void OnButtonActivated(string commandParameter)
{
var handle = PInvoke.GetWindowHandle(commandParameter);
if(handle != IntPtr.Zero)
PInvoke.SwitchToThisWindow(handle, true);
}
}
}