Ejemplo n.º 1
0
        public static void InitializeWorkbench()
        {
            LayoutConfiguration.LoadLayoutConfiguration();
            StatusBarService.Initialize();
            DomHostCallback.Register();             // must be called after StatusBarService.Initialize()
            ParserService.InitializeParserService();
            Project.CustomToolsService.Initialize();

            workbench = new DefaultWorkbench();
#endif
            MessageService.MainForm = workbench;

            PropertyService.PropertyChanged += new PropertyChangedEventHandler(TrackPropertyChanges);
            ResourceService.LanguageChanged += delegate { workbench.RedrawAllComponents(); };

            caller = new STAThreadCaller(workbench);

            workbench.InitializeWorkspace();

            workbench.SetMemento(PropertyService.Get(workbenchMemento, new Properties()));

            workbench.WorkbenchLayout = new SdiWorkbenchLayout();

            OnWorkbenchCreated();
        }
Ejemplo n.º 2
0
        /// <remarks>
        /// This method handles the redraw all event for specific changed IDE properties
        /// </remarks>
        static void TrackPropertyChanges(object sender, PropertyChangedEventArgs e)
        {
            if (e.OldValue != e.NewValue && workbench != null)
            {
                switch (e.Key)
                {
                case "ICSharpCode.SharpDevelop.Gui.StatusBarVisible":
                case "ICSharpCode.SharpDevelop.Gui.VisualStyle":
                case "ICSharpCode.SharpDevelop.Gui.ToolBarVisible":
                    workbench.RedrawAllComponents();
                    break;

                case "ICSharpCode.SharpDevelop.Gui.UseProfessionalRenderer":
                    workbench.UpdateRenderer();
                    break;
                }
            }
        }