public DockPanel() { m_focusManager = new FocusManagerImpl(this); m_extender = new DockPanelExtender(this); m_panes = new DockPaneCollection(); m_floatWindows = new FloatWindowCollection(); SetStyle(ControlStyles.ResizeRedraw | ControlStyles.UserPaint | ControlStyles.AllPaintingInWmPaint, true); SuspendLayout(); //Font = PluginCore.PluginBase.Settings.DefaultFont; m_autoHideWindow = new AutoHideWindowControl(this); m_autoHideWindow.Visible = false; SetAutoHideWindowParent(); m_dummyControl = new DummyControl(); m_dummyControl.Bounds = new Rectangle(0, 0, 1, 1); Controls.Add(m_dummyControl); m_dockWindows = new DockWindowCollection(this); Controls.AddRange(new Control[] { DockWindows[DockState.Document], DockWindows[DockState.DockLeft], DockWindows[DockState.DockRight], DockWindows[DockState.DockTop], DockWindows[DockState.DockBottom] }); m_dummyContent = new DockContent(); ResumeLayout(); }
/// <summary> /// This function allows DockContents to place themselves within the /// DockPanel of the main IDE. /// </summary> /// <param name="dc">The DockContent to place in the IDE.</param> /// <param name="state">Where and how the DockContent should be placed.</param> public void ShowDock(DockContent dc, DockState state) { dc.Show(this.c_DockWorkspace, state); }