private static void ApplyGeneralProperty(string key, string var) { string val = Evaluate(var); switch (key) { case "menu-language": string[] menuItems = val.Split('|'); for (int i = 2; i < menuItems.Length; i += 3) { MenuItemConfig menuItem = new MenuItemConfig(); menuItem.Text = menuItems[i - 2]; menuItem.Value = menuItems[i - 1]; menuItem.ShortcutKeys = GetKeys(menuItems[i]); config.LanguageMenuItems.Add(menuItem); } break; case "language-names": config.LanguageNames.AddRange(val.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries)); break; case "extension-languages": PropertiesReader.GetKeyValuePairs(val, config.ExtensionLanguages); break; case "open-filter": config.FileOpenFilter = val; break; case "default-file-ext": config.DefaultFileExtention = val; break; default: config.Properties[key] = Evaluate(val); break; } }