📄 workbenchsingleton.cs
字号:
// <file>
// <copyright see="prj:///doc/copyright.txt"/>
// <license see="prj:///doc/license.txt"/>
// <owner name="Mike Krüger" email="mike@icsharpcode.net"/>
// <version value="$version"/>
// </file>
using System;
using System.CodeDom.Compiler;
using System.Windows.Forms;
using ICSharpCode.Core.Properties;
using ICSharpCode.Core.Services;
using ICSharpCode.SharpDevelop.Gui;
using ICSharpCode.SharpDevelop.Internal.Project;
using ICSharpCode.SharpDevelop.Internal.Templates;
namespace ICSharpCode.SharpDevelop.Gui
{
public class WorkbenchSingleton
{
const string workbenchMemento = "SharpDevelop.Workbench.WorkbenchMemento";
const string uiIconStyle = "IconMenuItem.IconMenuStyle";
const string uiLanguageProperty = "CoreProperties.UILanguage";
static IWorkbench workbench = null;
public static IWorkbench Workbench {
get {
return workbench;
}
set {
workbench = value;
}
}
static WorkbenchSingleton()
{
PropertyService propertyService = (PropertyService)ServiceManager.Services.GetService(typeof(PropertyService));
propertyService.PropertyChanged += new PropertyEventHandler(TrackPropertyChanges);
}
static void SetWbLayout()
{
workbench.WorkbenchLayout = new SdiWorkbenchLayout();
}
/// <remarks>
/// This method handles the redraw all event for specific changed IDE properties
/// </remarks>
static void TrackPropertyChanges(object sender, ICSharpCode.Core.Properties.PropertyEventArgs e)
{
if (e.OldValue != e.NewValue) {
switch (e.Key) {
case "ICSharpCode.SharpDevelop.Gui.VisualStyle":
case "CoreProperties.UILanguage":
workbench.RedrawAllComponents();
break;
}
}
}
public static void CreateWorkspace()
{
SetWbLayout();
OnWorkbenchCreated();
workbench.RedrawAllComponents();
}
protected static void OnWorkbenchCreated()
{
if (WorkbenchCreated != null) {
WorkbenchCreated(null, EventArgs.Empty);
}
}
/// <summary>
/// Is called, when the workbench is created
/// </summary>
public static event EventHandler WorkbenchCreated;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -