diff --git a/SpineViewer/Resources/Strings/en.xaml b/SpineViewer/Resources/Strings/en.xaml
index 386cf0d..dea11f7 100644
--- a/SpineViewer/Resources/Strings/en.xaml
+++ b/SpineViewer/Resources/Strings/en.xaml
@@ -78,13 +78,13 @@
Y
Skin
- Enable Skins
- Disable Skins
+ Enable
+ Disable
+ Enable All
+ Disable All
Slot
Clear Slots Attachment
- Enable Slots
- Disable Slots
Animation
Add
diff --git a/SpineViewer/Resources/Strings/ja.xaml b/SpineViewer/Resources/Strings/ja.xaml
index 8dff2b9..f4919c5 100644
--- a/SpineViewer/Resources/Strings/ja.xaml
+++ b/SpineViewer/Resources/Strings/ja.xaml
@@ -78,13 +78,13 @@
Y座標
スキン
- 有効
- 無効
+ 有効にする
+ 無効にする
+ すべて有効にする
+ すべて無効にする
スロット
アタッチメントをクリア
- 有効
- 無効
アニメーション
追加
diff --git a/SpineViewer/Resources/Strings/zh.xaml b/SpineViewer/Resources/Strings/zh.xaml
index d99a38b..14af92e 100644
--- a/SpineViewer/Resources/Strings/zh.xaml
+++ b/SpineViewer/Resources/Strings/zh.xaml
@@ -78,13 +78,13 @@
纵坐标
皮肤
- 启用
- 禁用
+ 启用
+ 禁用
+ 全部启用
+ 全部禁用
插槽
清除附件
- 启用
- 禁用
动画
添加
diff --git a/SpineViewer/ViewModels/MainWindow/SpineObjectTabViewModel.cs b/SpineViewer/ViewModels/MainWindow/SpineObjectTabViewModel.cs
index 444d25f..138848f 100644
--- a/SpineViewer/ViewModels/MainWindow/SpineObjectTabViewModel.cs
+++ b/SpineViewer/ViewModels/MainWindow/SpineObjectTabViewModel.cs
@@ -346,6 +346,18 @@ namespace SpineViewer.ViewModels.MainWindow
);
private RelayCommand _cmd_DisableSkins;
+ public RelayCommand Cmd_EnableAllSkins => _cmd_EnableAllSkins ??= new(
+ () => { if (_skins.Count <= 0) return; foreach (var s in _skins) s.Status = true; },
+ () => { return _skins.Count > 0; }
+ );
+ private RelayCommand _cmd_EnableAllSkins;
+
+ public RelayCommand Cmd_DisableAllSkins => _cmd_DisableAllSkins ??= new(
+ () => { if (_skins.Count <= 0) return; foreach (var s in _skins) s.Status = false; },
+ () => { return _skins.Count > 0; }
+ );
+ private RelayCommand _cmd_DisableAllSkins;
+
public ObservableCollection Slots => _slots;
public RelayCommand Cmd_EnableSlots => _cmd_EnableSlots ??= new (
@@ -360,6 +372,18 @@ namespace SpineViewer.ViewModels.MainWindow
);
private RelayCommand _cmd_DisableSlots;
+ public RelayCommand Cmd_EnableAllSlots => _cmd_EnableAllSlots ??= new(
+ () => { if (_slots.Count <= 0) return; foreach (var s in _slots) s.Visible = true; },
+ () => { return _slots.Count > 0; }
+ );
+ private RelayCommand _cmd_EnableAllSlots;
+
+ public RelayCommand Cmd_DisableAllSlots => _cmd_DisableAllSlots ??= new(
+ () => { if (_slots.Count <= 0) return; foreach (var s in _slots) s.Visible = false; },
+ () => { return _slots.Count > 0; }
+ );
+ private RelayCommand _cmd_DisableAllSlots;
+
public ObservableCollection AnimationTracks => _animationTracks;
public RelayCommand Cmd_AppendTrack => _cmd_AppendTrack ??= new(
diff --git a/SpineViewer/Views/MainWindow.xaml b/SpineViewer/Views/MainWindow.xaml
index ffa8fd2..4ce5531 100644
--- a/SpineViewer/Views/MainWindow.xaml
+++ b/SpineViewer/Views/MainWindow.xaml
@@ -437,12 +437,14 @@
-
-
+
+
@@ -468,12 +470,14 @@
-
-
+
+