OSDN Git Service

C#7.0で追加されたType switchの構文を使用する
[opentween/open-tween.git] / OpenTween / FilterDialog.cs
index 24c5a34..d7a86e5 100644 (file)
@@ -99,8 +99,7 @@ namespace OpenTween
 
             var tab = _sts.Tabs[tabName];
 
-            var filterTab = tab as FilterTabModel;
-            if (filterTab != null)
+            if (tab is FilterTabModel filterTab)
                 ListFilters.Items.AddRange(filterTab.GetFilters());
 
             if (ListFilters.Items.Count > 0)
@@ -151,16 +150,22 @@ namespace OpenTween
             GroupTab.Enabled = true;
             ListFilters.Enabled = true;
             EditFilterGroup.Enabled = false;
-            switch (tab.TabType)
+
+            if (tab.IsDistributableTabType)
             {
-                case MyCommon.TabUsageType.Home:
-                case MyCommon.TabUsageType.DirectMessage:
-                case MyCommon.TabUsageType.Favorites:
-                case MyCommon.TabUsageType.PublicSearch:
-                case MyCommon.TabUsageType.Lists:
-                case MyCommon.TabUsageType.Related:
-                case MyCommon.TabUsageType.UserTimeline:
-                    ButtonNew.Enabled = false;
+                ButtonNew.Enabled = true;
+                if (ListFilters.SelectedIndex > -1)
+                {
+                    ButtonEdit.Enabled = true;
+                    ButtonDelete.Enabled = true;
+                    ButtonRuleUp.Enabled = true;
+                    ButtonRuleDown.Enabled = true;
+                    ButtonRuleCopy.Enabled = true;
+                    ButtonRuleMove.Enabled = true;
+                    buttonRuleToggleEnabled.Enabled = true;
+                }
+                else
+                {
                     ButtonEdit.Enabled = false;
                     ButtonDelete.Enabled = false;
                     ButtonRuleUp.Enabled = false;
@@ -168,31 +173,20 @@ namespace OpenTween
                     ButtonRuleCopy.Enabled = false;
                     ButtonRuleMove.Enabled = false;
                     buttonRuleToggleEnabled.Enabled = false;
-                    break;
-                default:
-                    ButtonNew.Enabled = true;
-                    if (ListFilters.SelectedIndex > -1)
-                    {
-                        ButtonEdit.Enabled = true;
-                        ButtonDelete.Enabled = true;
-                        ButtonRuleUp.Enabled = true;
-                        ButtonRuleDown.Enabled = true;
-                        ButtonRuleCopy.Enabled = true;
-                        ButtonRuleMove.Enabled = true;
-                        buttonRuleToggleEnabled.Enabled = true;
-                    }
-                    else
-                    {
-                        ButtonEdit.Enabled = false;
-                        ButtonDelete.Enabled = false;
-                        ButtonRuleUp.Enabled = false;
-                        ButtonRuleDown.Enabled = false;
-                        ButtonRuleCopy.Enabled = false;
-                        ButtonRuleMove.Enabled = false;
-                        buttonRuleToggleEnabled.Enabled = false;
-                    }
-                    break;
+                }
+            }
+            else
+            {
+                ButtonNew.Enabled = false;
+                ButtonEdit.Enabled = false;
+                ButtonDelete.Enabled = false;
+                ButtonRuleUp.Enabled = false;
+                ButtonRuleDown.Enabled = false;
+                ButtonRuleCopy.Enabled = false;
+                ButtonRuleMove.Enabled = false;
+                buttonRuleToggleEnabled.Enabled = false;
             }
+
             switch (tab.TabType)
             {
                 case MyCommon.TabUsageType.Home: