增加上一次状态的保存和恢复
This commit is contained in:
@@ -93,11 +93,6 @@ namespace SpineViewer.ViewModels.MainWindow
|
||||
DebugPoints = DebugPoints,
|
||||
DebugClippings = DebugClippings,
|
||||
|
||||
MaxFps = MaxFps,
|
||||
Speed = Speed,
|
||||
ShowAxis = ShowAxis,
|
||||
BackgroundColor = BackgroundColor,
|
||||
|
||||
RenderSelectedOnly = RenderSelectedOnly,
|
||||
AppLanguage = AppLanguage,
|
||||
};
|
||||
@@ -122,11 +117,6 @@ namespace SpineViewer.ViewModels.MainWindow
|
||||
DebugPoints = value.DebugPoints;
|
||||
DebugClippings = value.DebugClippings;
|
||||
|
||||
MaxFps = value.MaxFps;
|
||||
Speed = value.Speed;
|
||||
ShowAxis = value.ShowAxis;
|
||||
BackgroundColor = value.BackgroundColor;
|
||||
|
||||
RenderSelectedOnly = value.RenderSelectedOnly;
|
||||
AppLanguage = value.AppLanguage;
|
||||
}
|
||||
@@ -230,34 +220,6 @@ namespace SpineViewer.ViewModels.MainWindow
|
||||
|
||||
#endregion
|
||||
|
||||
#region 预览画面首选项
|
||||
|
||||
public uint MaxFps
|
||||
{
|
||||
get => _vmMain.SFMLRendererViewModel.MaxFps;
|
||||
set => SetProperty(_vmMain.SFMLRendererViewModel.MaxFps, value, v => _vmMain.SFMLRendererViewModel.MaxFps = value);
|
||||
}
|
||||
|
||||
public float Speed
|
||||
{
|
||||
get => _vmMain.SFMLRendererViewModel.Speed;
|
||||
set => SetProperty(_vmMain.SFMLRendererViewModel.Speed, value, v => _vmMain.SFMLRendererViewModel.Speed = value);
|
||||
}
|
||||
|
||||
public bool ShowAxis
|
||||
{
|
||||
get => _vmMain.SFMLRendererViewModel.ShowAxis;
|
||||
set => SetProperty(_vmMain.SFMLRendererViewModel.ShowAxis, value, v => _vmMain.SFMLRendererViewModel.ShowAxis = value);
|
||||
}
|
||||
|
||||
public Color BackgroundColor
|
||||
{
|
||||
get => _vmMain.SFMLRendererViewModel.BackgroundColor;
|
||||
set => SetProperty(_vmMain.SFMLRendererViewModel.BackgroundColor, value, v => _vmMain.SFMLRendererViewModel.BackgroundColor = value);
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region 程序选项
|
||||
|
||||
public static ImmutableArray<AppLanguage> AppLanguageOptions { get; } = Enum.GetValues<AppLanguage>().ToImmutableArray();
|
||||
|
||||
@@ -86,6 +86,14 @@ namespace SpineViewer.ViewModels.MainWindow
|
||||
/// </summary>
|
||||
public event NotifyCollectionChangedEventHandler? RequestSelectionChanging;
|
||||
|
||||
public void SetResolution(uint x, uint y)
|
||||
{
|
||||
var lastRes = _renderer.Resolution;
|
||||
_renderer.Resolution = new(x, y);
|
||||
if (lastRes.X != x) OnPropertyChanged(nameof(ResolutionX));
|
||||
if (lastRes.Y != y) OnPropertyChanged(nameof(ResolutionY));
|
||||
}
|
||||
|
||||
public uint ResolutionX
|
||||
{
|
||||
get => _renderer.Resolution.X;
|
||||
@@ -455,8 +463,7 @@ namespace SpineViewer.ViewModels.MainWindow
|
||||
}
|
||||
set
|
||||
{
|
||||
ResolutionX = value.ResolutionX;
|
||||
ResolutionY = value.ResolutionY;
|
||||
SetResolution(value.ResolutionX, value.ResolutionY);
|
||||
CenterX = value.CenterX;
|
||||
CenterY = value.CenterY;
|
||||
Zoom = value.Zoom;
|
||||
|
||||
Reference in New Issue
Block a user