OSDN Git Service

一覧ウィンドウを一度も表示せずに終了するとエラーになるのを直す
[kancollesniffer/KancolleSniffer.git] / KancolleSniffer / Forms / ListForm.cs
index ffba887..622d214 100644 (file)
@@ -31,7 +31,7 @@ namespace KancolleSniffer.Forms
         private readonly Config _config;\r
         private readonly Form _form;\r
         private readonly MainWindow.TimeOutChecker _suppressActivate;\r
-        private readonly CheckBox[] _shipTypeCheckBoxes;\r
+        private CheckBox[] _shipTypeCheckBoxes;\r
         private bool _isMaster;\r
         private Settings _settings;\r
         public const int PanelWidth = 215;\r
@@ -103,7 +103,32 @@ namespace KancolleSniffer.Forms
             _form = main.Form;\r
             _sniffer = main.Sniffer;\r
             _config = main.Config;\r
+            ApplySettings();\r
+            SetupShipTypeCheckBoxes();\r
             _suppressActivate = main.SuppressActivate;\r
+            battleResultPanel.HpLabelClick += ToggleHpPercent;\r
+            shipListPanel.HpLabelClick += ToggleHpPercent;\r
+            var swipe = new SwipeScrollify();\r
+            swipe.AddShipListPanel(shipListPanel);\r
+            swipe.AddTreeView(itemTreeView);\r
+            swipe.AddPanel(fleetPanel);\r
+        }\r
+\r
+        private void ApplySettings()\r
+        {\r
+            var config = GetConfig();\r
+            _settings = Settings.FromShipListConfig(config);\r
+            if (_settings.ShowHpInPercent)\r
+            {\r
+                shipListPanel.ToggleHpPercent();\r
+                battleResultPanel.ToggleHpPercent();\r
+            }\r
+            LoadShipGroupFromConfig();\r
+            comboBoxGroup.SelectedItem = _settings.Mode;\r
+        }\r
+\r
+        private void SetupShipTypeCheckBoxes()\r
+        {\r
             _shipTypeCheckBoxes = new[]\r
             {\r
                 checkBoxSTypeBattleShip,\r
@@ -115,12 +140,7 @@ namespace KancolleSniffer.Forms
                 checkBoxSTypeSubmarine,\r
                 checkBoxSTypeAuxiliary\r
             };\r
-            battleResultPanel.HpLabelClick += ToggleHpPercent;\r
-            shipListPanel.HpLabelClick += ToggleHpPercent;\r
-            var swipe = new SwipeScrollify();\r
-            swipe.AddShipListPanel(shipListPanel);\r
-            swipe.AddTreeView(itemTreeView);\r
-            swipe.AddPanel(fleetPanel);\r
+            SetCheckBoxSTypeState();\r
         }\r
 \r
         public void UpdateList()\r
@@ -277,16 +297,8 @@ namespace KancolleSniffer.Forms
         {\r
             AdjustHeader();\r
             SetMinimumSize();\r
-            var config = GetConfig();\r
-            _settings = Settings.FromShipListConfig(config);\r
-            if (_settings.ShowHpInPercent)\r
-            {\r
-                shipListPanel.ToggleHpPercent();\r
-                battleResultPanel.ToggleHpPercent();\r
-            }\r
-            LoadShipGroupFromConfig();\r
             comboBoxGroup.SelectedItem = _settings.Mode;\r
-            SetCheckBoxSTypeState();\r
+            var config = GetConfig();\r
             if (config.Location.X == int.MinValue)\r
                 return;\r
             var bounds = new Rectangle(config.Location, config.Size);\r