public static void StartUp() { _listOfThemes = new Dictionary <string, ThemeSchema>(); Debug.LogError("theme directory " + MagicRoomManager.instance.systemConfiguration.resourcesPath); string themedirectory = MagicRoomManager.instance.systemConfiguration.resourcesPath + "/../Themes";// "C://LUDOMI/Themes"; Debug.Log(themedirectory); if (Directory.Exists(themedirectory)) { foreach (string s in Directory.GetFiles(themedirectory)) { string json = File.ReadAllText(s); ThemeSchema tm = JsonUtility.FromJson <ThemeSchema>(json); _listOfThemes.Add(tm.id, tm); } } if (allowOnlyFullThemes) { do { themeIndex = (themeIndex + 1) % _listOfThemes.Count; } while (allowOnlyFullThemes && (_listOfThemes[_listOfThemes.Keys.ElementAt(themeIndex)].sound_associated != "1" || themeIndex == _listOfThemes.Count)); } else { themeIndex = 0; } activeTheme = _listOfThemes[_listOfThemes.Keys.ElementAt(themeIndex)]; }
/// <summary> /// 设置界面风格 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void SetSchema(object sender, EventArgs e) { if (sender == menuItemSchemaVS2005) { ThemeSchema = ThemeSchema.VS2005; } else if (sender == menuItemSchemaVS2003) { ThemeSchema = ThemeSchema.VS2003; } else if (sender == menuItemSchemaVS2012Light) { ThemeSchema = ThemeSchema.VS2012Light; } else if (sender == menuItemSchemaVS2012Blue) { ThemeSchema = ThemeSchema.VS2012Blue; } else if (sender == menuItemSchemaVS2012Dark) { ThemeSchema = ThemeSchema.VS2012Dark; } else if (sender == menuItemSchemaVS2013Blue) { ThemeSchema = ThemeSchema.VS2013Blue; } else if (sender == menuItemSchemaVS2013Light) { ThemeSchema = ThemeSchema.VS2013Light; } else if (sender == menuItemSchemaVS2013Dark) { ThemeSchema = ThemeSchema.VS2013Dark; } else if (sender == menuItemSchemaVS2015Blue) { ThemeSchema = ThemeSchema.VS2015Blue; } else if (sender == menuItemSchemaVS2015Light) { ThemeSchema = ThemeSchema.VS2015Light; } else if (sender == menuItemSchemaVS2015Dark) { ThemeSchema = ThemeSchema.VS2015Dark; } else { ThemeSchema = ThemeSchema.VS2015Blue; } Setting.Instance.ThemeSchema = ThemeSchema; SetSchema(Setting.Instance.ThemeSchema); }
public static void SetThemeByName(string name) { foreach (var t in _listOfThemes) { if (t.Key == name) { activeTheme = t.Value; return; } } }
public static ThemeSchema getNextThemeName() { int oldIndex = themeIndex; do { themeIndex = (themeIndex + 1) % _listOfThemes.Count; } while (allowOnlyFullThemes && (_listOfThemes[_listOfThemes.Keys.ElementAt(themeIndex)].sound_associated != "1" || themeIndex == oldIndex)); string name = _listOfThemes.Keys.ElementAt(themeIndex); activeTheme = _listOfThemes[name]; return(_listOfThemes[name]); }
/// <summary> /// 设置界面风格 /// </summary> private void SetSchema(ThemeSchema theme, bool init = false) { dockPanel.SaveAsXml(ConfigTempPath); CloseAllContents(); #region 设置主题 if (theme == ThemeSchema.VS2005) { dockPanel.Theme = vS2005Theme1; EnableVsRenderer(VisualStudioToolStripExtender.VsVersion.Vs2005, vS2005Theme1); } else if (theme == ThemeSchema.VS2003) { dockPanel.Theme = vS2003Theme1; EnableVsRenderer(VisualStudioToolStripExtender.VsVersion.Vs2003, vS2003Theme1); } else if (theme == ThemeSchema.VS2012Light) { dockPanel.Theme = vS2012LightTheme1; EnableVsRenderer(VisualStudioToolStripExtender.VsVersion.Vs2012, vS2012LightTheme1); } else if (theme == ThemeSchema.VS2012Blue) { dockPanel.Theme = vS2012BlueTheme1; EnableVsRenderer(VisualStudioToolStripExtender.VsVersion.Vs2012, vS2012BlueTheme1); } else if (theme == ThemeSchema.VS2012Dark) { dockPanel.Theme = vS2012DarkTheme1; EnableVsRenderer(VisualStudioToolStripExtender.VsVersion.Vs2012, vS2012DarkTheme1); } else if (theme == ThemeSchema.VS2013Blue) { dockPanel.Theme = vS2013BlueTheme1; EnableVsRenderer(VisualStudioToolStripExtender.VsVersion.Vs2013, vS2013BlueTheme1); } else if (theme == ThemeSchema.VS2013Light) { dockPanel.Theme = vS2013LightTheme1; EnableVsRenderer(VisualStudioToolStripExtender.VsVersion.Vs2013, vS2013LightTheme1); } else if (theme == ThemeSchema.VS2013Dark) { dockPanel.Theme = vS2013DarkTheme1; EnableVsRenderer(VisualStudioToolStripExtender.VsVersion.Vs2013, vS2013DarkTheme1); } else if (theme == ThemeSchema.VS2015Blue) { dockPanel.Theme = vS2015BlueTheme1; EnableVsRenderer(VisualStudioToolStripExtender.VsVersion.Vs2015, vS2015BlueTheme1); } else if (theme == ThemeSchema.VS2015Light) { dockPanel.Theme = vS2015LightTheme1; EnableVsRenderer(VisualStudioToolStripExtender.VsVersion.Vs2015, vS2015LightTheme1); } else if (theme == ThemeSchema.VS2015Dark) { dockPanel.Theme = vS2015DarkTheme1; EnableVsRenderer(VisualStudioToolStripExtender.VsVersion.Vs2015, vS2015DarkTheme1); } #endregion #region 界面颜色和勾选 menuItemSchemaVS2005.Checked = (theme == ThemeSchema.VS2005); menuItemSchemaVS2003.Checked = (theme == ThemeSchema.VS2003); menuItemSchemaVS2012Light.Checked = (theme == ThemeSchema.VS2012Light); menuItemSchemaVS2012Blue.Checked = (theme == ThemeSchema.VS2012Blue); menuItemSchemaVS2012Dark.Checked = (theme == ThemeSchema.VS2012Dark); menuItemSchemaVS2013Light.Checked = (theme == ThemeSchema.VS2013Light); menuItemSchemaVS2013Blue.Checked = (theme == ThemeSchema.VS2013Blue); menuItemSchemaVS2013Dark.Checked = (theme == ThemeSchema.VS2013Dark); menuItemSchemaVS2015Light.Checked = (theme == ThemeSchema.VS2015Light); menuItemSchemaVS2015Blue.Checked = (theme == ThemeSchema.VS2015Blue); menuItemSchemaVS2015Dark.Checked = (theme == ThemeSchema.VS2015Dark); if (dockPanel.Theme.ColorPalette != null) { statusBar.BackColor = dockPanel.Theme.ColorPalette.MainWindowStatusBarDefault.Background; statusBar.ForeColor = dockPanel.Theme.ColorPalette.MainWindowStatusBarDefault.Text; } #endregion if (init) { if (File.Exists(ConfigFilePath)) { dockPanel.LoadFromXml(ConfigFilePath, _mDeserializeDockContent); } } else { if (File.Exists(ConfigTempPath)) { dockPanel.LoadFromXml(ConfigTempPath, _mDeserializeDockContent); } } }