using XFEEDToolBox.ViewModels;
namespace XFEEDToolBox.Controls;
public sealed partial class ShipStatusPanel:UserControl
{
public ToolboxViewModel ViewModel=>App.ViewModel;
private bool visible;
public ShipStatusPanel()
{
InitializeComponent();Loaded+=(_,_)=>{if(!visible){visible=true;ViewModel.ShowShipStatus();}};
Unloaded+=(_,_)=>{if(visible){visible=false;ViewModel.HideShipStatus();}};
}
private void StatusTabChanged(SelectorBar sender,SelectorBarSelectionChangedEventArgs args)
{
if(SpecificationsView is null||FlightView is null||AmmoView is null||CockpitView is null)return;
var index=sender.Items.IndexOf(sender.SelectedItem);
SpecificationsView.Visibility=index==0?Visibility.Visible:Visibility.Collapsed;
FlightView.Visibility=index==1?Visibility.Visible:Visibility.Collapsed;
AmmoView.Visibility=index==2?Visibility.Visible:Visibility.Collapsed;
CockpitView.Visibility=index==3?Visibility.Visible:Visibility.Collapsed;
}
private static readonly Microsoft.UI.Xaml.Media.Brush normalPowerBrush=new Microsoft.UI.Xaml.Media.SolidColorBrush(Windows.UI.Color.FromArgb(255,255,174,73));
private static readonly Microsoft.UI.Xaml.Media.Brush overloadedPowerBrush=new Microsoft.UI.Xaml.Media.SolidColorBrush(Windows.UI.Color.FromArgb(255,255,91,100));
public Microsoft.UI.Xaml.Media.Brush PowerBrush(bool overloaded)=>overloaded?overloadedPowerBrush:normalPowerBrush;
private void SpecificationsSizeChanged(object sender,SizeChangedEventArgs args)
{
var stacked=args.NewSize.Width<900;
PowerColumn.Width=stacked?new(0):new(1,GridUnitType.Star);
Grid.SetColumn(PowerSection,stacked?0:1);Grid.SetRow(PowerSection,stacked?1:0);
}
}
using XFEEDToolBox.ViewModels;
namespace XFEEDToolBox.Controls;
public sealed partial class ShipStatusPanel:UserControl
{
public ToolboxViewModel ViewModel=>App.ViewModel;
private bool visible;
public ShipStatusPanel()
{
InitializeComponent();Loaded+=(_,_)=>{if(!visible){visible=true;ViewModel.ShowShipStatus();}};
Unloaded+=(_,_)=>{if(visible){visible=false;ViewModel.HideShipStatus();}};
}
private void StatusTabChanged(SelectorBar sender,SelectorBarSelectionChangedEventArgs args)
{
if(SpecificationsView is null||FlightView is null||AmmoView is null||CockpitView is null)return;
var index=sender.Items.IndexOf(sender.SelectedItem);
SpecificationsView.Visibility=index==0?Visibility.Visible:Visibility.Collapsed;
FlightView.Visibility=index==1?Visibility.Visible:Visibility.Collapsed;
AmmoView.Visibility=index==2?Visibility.Visible:Visibility.Collapsed;
CockpitView.Visibility=index==3?Visibility.Visible:Visibility.Collapsed;
}
private static readonly Microsoft.UI.Xaml.Media.Brush normalPowerBrush=new Microsoft.UI.Xaml.Media.SolidColorBrush(Windows.UI.Color.FromArgb(255,255,174,73));
private static readonly Microsoft.UI.Xaml.Media.Brush overloadedPowerBrush=new Microsoft.UI.Xaml.Media.SolidColorBrush(Windows.UI.Color.FromArgb(255,255,91,100));
public Microsoft.UI.Xaml.Media.Brush PowerBrush(bool overloaded)=>overloaded?overloadedPowerBrush:normalPowerBrush;
private void SpecificationsSizeChanged(object sender,SizeChangedEventArgs args)
{
var stacked=args.NewSize.Width<900;
PowerColumn.Width=stacked?new(0):new(1,GridUnitType.Star);
Grid.SetColumn(PowerSection,stacked?0:1);Grid.SetRow(PowerSection,stacked?1:0);
}
}