Browse Source

updated dockpanel suite.

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@58 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
Mike Krüger 21 years ago
parent
commit
d814e6235c
  1. 4
      src/Libraries/DockPanel_Src/DockSample/AboutDialog.cs
  2. 2
      src/Libraries/DockPanel_Src/DockSample/DockSample.csproj
  3. BIN
      src/Libraries/DockPanel_Src/DockSample/Images/XmlFile.ico
  4. 135
      src/Libraries/DockPanel_Src/DockSample/MainForm.cs
  5. 98
      src/Libraries/DockPanel_Src/DockSample/MainForm.resx
  6. BIN
      src/Libraries/DockPanel_Src/DockSample/Resources/DockPanel.xml
  7. 39
      src/Libraries/DockPanel_Src/WinFormsUI.ndoc
  8. BIN
      src/Libraries/DockPanel_Src/WinFormsUI.suo
  9. 4
      src/Libraries/DockPanel_Src/WinFormsUI/AssemblyInfo.cs
  10. 75
      src/Libraries/DockPanel_Src/WinFormsUI/Controls/CodeDoc/InertButton.xml
  11. 24
      src/Libraries/DockPanel_Src/WinFormsUI/Controls/InertButton.cs
  12. 1
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/AutoHideWindow.cs
  13. 0
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/AutoHideWindowSplitter.cs
  14. 73
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/CodeDoc/DisplayingDockList.xml
  15. 203
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/CodeDoc/DockContent.xml
  16. 46
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/CodeDoc/DockContentCollection.xml
  17. 86
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/CodeDoc/DockList.xml
  18. 276
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/CodeDoc/DockPane.xml
  19. 45
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/CodeDoc/DockPaneCollection.xml
  20. 238
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/CodeDoc/DockPanel.xml
  21. 48
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/CodeDoc/DockWindow.xml
  22. 14
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/CodeDoc/DockWindowCollection.xml
  23. 88
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/CodeDoc/Enums.xml
  24. 18
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/CodeDoc/EventArgs.xml
  25. 66
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/CodeDoc/FloatWindow.xml
  26. 45
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/CodeDoc/FloatWindowCollection.xml
  27. 89
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/CodeDoc/Interfaces.xml
  28. 60
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/CodeDoc/NestedDockingStatus.xml
  29. 36
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/DisplayingDockList.cs
  30. 0
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/DockAreasEditor.cs
  31. 157
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/DockContent.cs
  32. 6
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/DockContentCollection.cs
  33. 3
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/DockHelper.cs
  34. 11
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/DockList.cs
  35. 162
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/DockPane.cs
  36. 4
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/DockPaneCollection.cs
  37. 0
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/DockPaneSplitter.cs
  38. 74
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/DockPanel.cs
  39. 0
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/DockPanelPersist.cs
  40. 10
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/DockWindow.cs
  41. 2
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/DockWindowCollection.cs
  42. 0
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/DockWindowSplitter.cs
  43. 0
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/DragHandler.cs
  44. 0
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/DragHandlerBase.cs
  45. 0
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/DummyControl.cs
  46. 78
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/Enums.cs
  47. 5
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/EventArgs.cs
  48. 21
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/FloatWindow.cs
  49. 7
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/FloatWindowCollection.cs
  50. 3
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/HiddenMdiChild.cs
  51. 92
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/Interfaces.cs
  52. 0
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/Measures.cs
  53. 13
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/NestedDockingStatus.cs
  54. 0
      src/Libraries/DockPanel_Src/WinFormsUI/Docking/SplitterBase.cs
  55. 60
      src/Libraries/DockPanel_Src/WinFormsUI/Enums.cs
  56. 3
      src/Libraries/DockPanel_Src/WinFormsUI/Helpers/DrawHelper.cs
  57. 0
      src/Libraries/DockPanel_Src/WinFormsUI/Helpers/LocalWindowsHook.cs
  58. 0
      src/Libraries/DockPanel_Src/WinFormsUI/Helpers/Localization.cs
  59. 4
      src/Libraries/DockPanel_Src/WinFormsUI/Helpers/ResourceHelper.cs
  60. 69
      src/Libraries/DockPanel_Src/WinFormsUI/Interfaces.cs
  61. 9
      src/Libraries/DockPanel_Src/WinFormsUI/Strings.ResX
  62. 1
      src/Libraries/DockPanel_Src/WinFormsUI/Win32/User32.cs
  63. 147
      src/Libraries/DockPanel_Src/WinFormsUI/WinFormsUI.csproj
  64. 32
      src/Libraries/DockPanel_Src/WinFormsUI/WinFormsUI.csproj.user
  65. 4
      src/Libraries/ICSharpCode.TextEditor/Project/Src/Actions/BookmarkActions.cs
  66. 4
      src/Libraries/ICSharpCode.TextEditor/Project/Src/Actions/MiscActions.cs

4
src/Libraries/DockPanel_Src/DockSample/AboutDialog.cs

@ -74,7 +74,7 @@ namespace DockSample @@ -74,7 +74,7 @@ namespace DockSample
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(272, 16);
this.label1.TabIndex = 1;
this.label1.Text = "DockSample, Version 1.1";
this.label1.Text = "DockSample, Version 1.2";
//
// label2
//
@ -82,7 +82,7 @@ namespace DockSample @@ -82,7 +82,7 @@ namespace DockSample
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(272, 32);
this.label2.TabIndex = 2;
this.label2.Text = "Copyright 2003, Weifen Luo";
this.label2.Text = "Copyright 2003 - 2005, Weifen Luo";
//
// AboutDialog
//

2
src/Libraries/DockPanel_Src/DockSample/DockSample.csproj

@ -169,6 +169,7 @@ @@ -169,6 +169,7 @@
<EmbeddedResource Include="OptionsDialog.resx">
<DependentUpon>OptionsDialog.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Resources\DockPanel.xml" />
<Content Include="App.ico" />
<Content Include="Images\ArrowDown.bmp" />
<Content Include="Images\ArrowUp.bmp" />
@ -190,6 +191,7 @@ @@ -190,6 +191,7 @@
<Content Include="Images\SolutionExplorer.ico" />
<Content Include="Images\TaskListWindow.ico" />
<Content Include="Images\ToolboxWindow.ico" />
<Content Include="Images\XmlFile.ico" />
<None Include="RtfFiles\DummyDoc.cs.rtf" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSHARP.Targets" />

BIN
src/Libraries/DockPanel_Src/DockSample/Images/XmlFile.ico

Binary file not shown.

After

Width:  |  Height:  |  Size: 318 B

135
src/Libraries/DockPanel_Src/DockSample/MainForm.cs

@ -12,6 +12,7 @@ using System; @@ -12,6 +12,7 @@ using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Reflection;
using System.Windows.Forms;
using System.Data;
using System.IO;
@ -24,6 +25,7 @@ namespace DockSample @@ -24,6 +25,7 @@ namespace DockSample
/// </summary>
public class MainForm : System.Windows.Forms.Form
{
private DeserializeDockContent m_deserializeDockContent;
private DummySolutionExplorer m_solutionExplorer = new DummySolutionExplorer();
private DummyPropertyWindow m_propertyWindow = new DummyPropertyWindow();
private DummyToolbox m_toolbox = new DummyToolbox();
@ -53,7 +55,6 @@ namespace DockSample @@ -53,7 +55,6 @@ namespace DockSample
private System.Windows.Forms.ImageList imageList;
private System.Windows.Forms.ToolBarButton toolBarButtonNew;
private System.Windows.Forms.ToolBarButton toolBarButtonOpen;
private System.Windows.Forms.ToolBarButton toolBarButtonSeparator;
private System.Windows.Forms.ToolBarButton toolBarButtonSolutionExplorer;
private System.Windows.Forms.ToolBarButton toolBarButtonPropertyWindow;
private System.Windows.Forms.ToolBarButton toolBarButtonToolbox;
@ -66,10 +67,18 @@ namespace DockSample @@ -66,10 +67,18 @@ namespace DockSample
private System.Windows.Forms.MenuItem menuItemNewWindow;
private WeifenLuo.WinFormsUI.DockPanel dockPanel;
private System.Windows.Forms.MenuItem menuItemLockLayout;
private System.Windows.Forms.MenuItem menuItem2;
private System.Windows.Forms.ToolBarButton toolBarButtonSeparator1;
private System.Windows.Forms.ToolBarButton toolBarButtonSeparator2;
private System.Windows.Forms.MenuItem menuItemLayoutByCode;
private System.Windows.Forms.ToolBarButton toolBarButtonLayoutByCode;
private System.Windows.Forms.MenuItem menuItemLayoutByXml;
private System.Windows.Forms.ToolBarButton toolBarButtonLayoutByXml;
private System.ComponentModel.IContainer components;
public MainForm()
{
m_deserializeDockContent = new DeserializeDockContent(GetContentFromPersistString);
//
// Required for Windows Form Designer support
//
@ -121,6 +130,9 @@ namespace DockSample @@ -121,6 +130,9 @@ namespace DockSample
this.menuItem1 = new System.Windows.Forms.MenuItem();
this.menuItemToolBar = new System.Windows.Forms.MenuItem();
this.menuItemStatusBar = new System.Windows.Forms.MenuItem();
this.menuItem2 = new System.Windows.Forms.MenuItem();
this.menuItemLayoutByCode = new System.Windows.Forms.MenuItem();
this.menuItemLayoutByXml = new System.Windows.Forms.MenuItem();
this.menuItemTools = new System.Windows.Forms.MenuItem();
this.menuItemLockLayout = new System.Windows.Forms.MenuItem();
this.menuItemOptions = new System.Windows.Forms.MenuItem();
@ -134,12 +146,15 @@ namespace DockSample @@ -134,12 +146,15 @@ namespace DockSample
this.toolBar = new System.Windows.Forms.ToolBar();
this.toolBarButtonNew = new System.Windows.Forms.ToolBarButton();
this.toolBarButtonOpen = new System.Windows.Forms.ToolBarButton();
this.toolBarButtonSeparator = new System.Windows.Forms.ToolBarButton();
this.toolBarButtonSeparator1 = new System.Windows.Forms.ToolBarButton();
this.toolBarButtonSolutionExplorer = new System.Windows.Forms.ToolBarButton();
this.toolBarButtonPropertyWindow = new System.Windows.Forms.ToolBarButton();
this.toolBarButtonToolbox = new System.Windows.Forms.ToolBarButton();
this.toolBarButtonOutputWindow = new System.Windows.Forms.ToolBarButton();
this.toolBarButtonTaskList = new System.Windows.Forms.ToolBarButton();
this.toolBarButtonSeparator2 = new System.Windows.Forms.ToolBarButton();
this.toolBarButtonLayoutByCode = new System.Windows.Forms.ToolBarButton();
this.toolBarButtonLayoutByXml = new System.Windows.Forms.ToolBarButton();
this.SuspendLayout();
//
// mainMenu
@ -210,7 +225,10 @@ namespace DockSample @@ -210,7 +225,10 @@ namespace DockSample
this.menuItemTaskList,
this.menuItem1,
this.menuItemToolBar,
this.menuItemStatusBar});
this.menuItemStatusBar,
this.menuItem2,
this.menuItemLayoutByCode,
this.menuItemLayoutByXml});
this.menuItemView.MergeOrder = 1;
this.menuItemView.Text = "&View";
//
@ -264,6 +282,23 @@ namespace DockSample @@ -264,6 +282,23 @@ namespace DockSample
this.menuItemStatusBar.Text = "Status B&ar";
this.menuItemStatusBar.Click += new System.EventHandler(this.menuItemStatusBar_Click);
//
// menuItem2
//
this.menuItem2.Index = 8;
this.menuItem2.Text = "-";
//
// menuItemLayoutByCode
//
this.menuItemLayoutByCode.Index = 9;
this.menuItemLayoutByCode.Text = "Layout By &Code";
this.menuItemLayoutByCode.Click += new System.EventHandler(this.menuItemLayoutByCode_Click);
//
// menuItemLayoutByXml
//
this.menuItemLayoutByXml.Index = 10;
this.menuItemLayoutByXml.Text = "Layout By &XML";
this.menuItemLayoutByXml.Click += new System.EventHandler(this.menuItemLayoutByXml_Click);
//
// menuItemTools
//
this.menuItemTools.Index = 2;
@ -345,12 +380,15 @@ namespace DockSample @@ -345,12 +380,15 @@ namespace DockSample
this.toolBar.Buttons.AddRange(new System.Windows.Forms.ToolBarButton[] {
this.toolBarButtonNew,
this.toolBarButtonOpen,
this.toolBarButtonSeparator,
this.toolBarButtonSeparator1,
this.toolBarButtonSolutionExplorer,
this.toolBarButtonPropertyWindow,
this.toolBarButtonToolbox,
this.toolBarButtonOutputWindow,
this.toolBarButtonTaskList});
this.toolBarButtonTaskList,
this.toolBarButtonSeparator2,
this.toolBarButtonLayoutByCode,
this.toolBarButtonLayoutByXml});
this.toolBar.DropDownArrows = true;
this.toolBar.ImageList = this.imageList;
this.toolBar.Location = new System.Drawing.Point(0, 0);
@ -363,16 +401,16 @@ namespace DockSample @@ -363,16 +401,16 @@ namespace DockSample
// toolBarButtonNew
//
this.toolBarButtonNew.ImageIndex = 0;
this.toolBarButtonNew.ToolTipText = "New";
this.toolBarButtonNew.ToolTipText = "Show Layout From XML";
//
// toolBarButtonOpen
//
this.toolBarButtonOpen.ImageIndex = 1;
this.toolBarButtonOpen.ToolTipText = "Open";
//
// toolBarButtonSeparator
// toolBarButtonSeparator1
//
this.toolBarButtonSeparator.Style = System.Windows.Forms.ToolBarButtonStyle.Separator;
this.toolBarButtonSeparator1.Style = System.Windows.Forms.ToolBarButtonStyle.Separator;
//
// toolBarButtonSolutionExplorer
//
@ -399,6 +437,19 @@ namespace DockSample @@ -399,6 +437,19 @@ namespace DockSample
this.toolBarButtonTaskList.ImageIndex = 6;
this.toolBarButtonTaskList.ToolTipText = "Task List";
//
// toolBarButtonSeparator2
//
this.toolBarButtonSeparator2.Style = System.Windows.Forms.ToolBarButtonStyle.Separator;
//
// toolBarButtonLayoutByCode
//
this.toolBarButtonLayoutByCode.ImageIndex = 7;
this.toolBarButtonLayoutByCode.ToolTipText = "Show Layout By Code";
//
// toolBarButtonLayoutByXml
//
this.toolBarButtonLayoutByXml.ImageIndex = 8;
//
// MainForm
//
this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
@ -476,6 +527,12 @@ namespace DockSample @@ -476,6 +527,12 @@ namespace DockSample
}
private void menuItemNew_Click(object sender, System.EventArgs e)
{
DummyDoc dummyDoc = CreateNewDocument();
dummyDoc.Show(dockPanel);
}
private DummyDoc CreateNewDocument()
{
DummyDoc dummyDoc = new DummyDoc();
@ -487,7 +544,14 @@ namespace DockSample @@ -487,7 +544,14 @@ namespace DockSample
text = "Document" + count.ToString();
}
dummyDoc.Text = text;
dummyDoc.Show(dockPanel);
return dummyDoc;
}
private DummyDoc CreateNewDocument(string text)
{
DummyDoc dummyDoc = new DummyDoc();
dummyDoc.Text = text;
return dummyDoc;
}
private void menuItemOpen_Click(object sender, System.EventArgs e)
@ -539,6 +603,11 @@ namespace DockSample @@ -539,6 +603,11 @@ namespace DockSample
}
private void menuItemCloseAll_Click(object sender, System.EventArgs e)
{
CloseAllDocuments();
}
private void CloseAllDocuments()
{
foreach (DockContent content in dockPanel.Documents)
content.Close();
@ -619,7 +688,7 @@ namespace DockSample @@ -619,7 +688,7 @@ namespace DockSample
string configFile = Path.Combine(Path.GetDirectoryName(Application.ExecutablePath), "DockPanel.config");
if (File.Exists(configFile))
dockPanel.LoadFromXml(configFile, new DeserializeDockContent(GetContentFromPersistString));
dockPanel.LoadFromXml(configFile, m_deserializeDockContent);
}
private void MainForm_Closing(object sender, System.ComponentModel.CancelEventArgs e)
@ -654,6 +723,10 @@ namespace DockSample @@ -654,6 +723,10 @@ namespace DockSample
menuItemOutputWindow_Click(null, null);
else if (e.Button == toolBarButtonTaskList)
menuItemTaskList_Click(null, null);
else if (e.Button == toolBarButtonLayoutByCode)
menuItemLayoutByCode_Click(null, null);
else if (e.Button == toolBarButtonLayoutByXml)
menuItemLayoutByXml_Click(null, null);
}
private void menuItemNewWindow_Click(object sender, System.EventArgs e)
@ -671,7 +744,49 @@ namespace DockSample @@ -671,7 +744,49 @@ namespace DockSample
private void menuItemLockLayout_Click(object sender, System.EventArgs e)
{
dockPanel.AllowRedocking = !dockPanel.AllowRedocking;
}
private void menuItemLayoutByCode_Click(object sender, System.EventArgs e)
{
m_solutionExplorer.Show(dockPanel, DockState.DockRight);
m_propertyWindow.Show(m_solutionExplorer.Pane, m_solutionExplorer);
m_toolbox.Show(dockPanel, new Rectangle(98, 133, 200, 383));
m_outputWindow.Show(m_solutionExplorer.Pane, DockAlignment.Bottom, 0.35);
m_taskList.Show(m_toolbox.Pane, DockAlignment.Left, 0.4);
CloseAllDocuments();
DummyDoc doc1 = CreateNewDocument("Document1");
DummyDoc doc2 = CreateNewDocument("Document2");
DummyDoc doc3 = CreateNewDocument("Document3");
DummyDoc doc4 = CreateNewDocument("Document4");
doc1.Show(dockPanel, DockState.Document);
doc2.Show(doc1.Pane, null);
doc3.Show(doc1.Pane, DockAlignment.Bottom, 0.5);
doc4.Show(doc3.Pane, DockAlignment.Right, 0.5);
}
private void menuItemLayoutByXml_Click(object sender, System.EventArgs e)
{
// In order to load layout from XML, we need to close all the DockContents
CloseAllContents();
Assembly assembly = Assembly.GetAssembly(typeof(MainForm));
Stream xmlStream = assembly.GetManifestResourceStream("DockSample.Resources.DockPanel.xml");
dockPanel.LoadFromXml(xmlStream, m_deserializeDockContent);
xmlStream.Close();
}
private void CloseAllContents()
{
// we don't want to create another instance of tool window, set DockPanel to null
m_solutionExplorer.DockPanel = null;
m_propertyWindow.DockPanel = null;
m_toolbox.DockPanel = null;
m_outputWindow.DockPanel = null;
m_taskList.DockPanel = null;
// Close all other document windows
CloseAllDocuments();
}
}
}

98
src/Libraries/DockPanel_Src/DockSample/MainForm.resx

@ -202,6 +202,24 @@ @@ -202,6 +202,24 @@
<data name="menuItemStatusBar.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Private</value>
</data>
<data name="menuItem2.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Private</value>
</data>
<data name="menuItem2.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Private</value>
</data>
<data name="menuItemLayoutByCode.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Private</value>
</data>
<data name="menuItemLayoutByCode.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Private</value>
</data>
<data name="menuItemLayoutByXml.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Private</value>
</data>
<data name="menuItemLayoutByXml.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Private</value>
</data>
<data name="menuItemTools.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Private</value>
</data>
@ -276,8 +294,8 @@ @@ -276,8 +294,8 @@
AAEAAAD/////AQAAAAAAAAAMAgAAAFpTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0xLjAuNTAw
MC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZT
eXN0ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMA
AAAgCwAAAk1TRnQBSQFMAgEBBwEAAQkBAAEEAQABEAEAARABAAT/AQkBEAj/AUIBTQE2AQQGAAE2AQQC
AAEoAwABQAMAATADAAEBAQABCAYAAQwYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB
AADeDAAAAk1TRnQBSQFMAgEBCQEAAQ4BAAEEAQABEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQC
AAEoAwABQAMAAUADAAEBAQABCAYAARAYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB
3AHAAQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IB
AAM5AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8B
MwMAAWYDAAGZAwABzAIAATMDAAIzAgABMwFmAgABMwGZAgABMwHMAgABMwH/AgABZgMAAWYBMwIAAmYC
@ -304,26 +322,34 @@ @@ -304,26 +322,34 @@
/wGZAcwBAAH/AZkB/wEAAf8BzAIAAf8BzAEzAQAB/wHMAWYBAAH/AcwBmQEAAf8CzAEAAf8BzAH/AQAC
/wEzAQABzAH/AWYBAAL/AZkBAAL/AcwBAAJmAf8BAAFmAf8BZgEAAWYC/wEAAf8CZgEAAf8BZgH/AQAC
/wFmAQABIQEAAaUBAANfAQADdwEAA4YBAAOWAQADywEAA7IBAAPXAQAD3QEAA+MBAAPqAQAD8QEAA/gB
AAHwAfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD//8A/wD/AP8AhwAB
AQcAAQcXAAHsCv8WAAEBBQABBwkACv8FAAHsA/8CBwX/FwABAQMAAQcKAAH/B+wC/wUAAewD/wEBAgcE
/xgAAQEBAAEHCwAK/wUAAewC/wMBAgcD/xkAAQcMAAH/COwB/wUAAewB/wIBAf8CAQEHA/8YAAEHAQAB
AQsACv8FAAHsBf8BAQHsAQcC/xcAAQcDAAEBBAABAwUAAf8HAAL/BQAB7Ab/AQECBwH/HAABAQMAAgME
AAr/BQAB7Af/AQEBBwH/HgACAwYAAf8I7AH/BQAB7Aj/AQEB/x0AAwMGAAr/BQAB7Ar/HQADAwUADAQE
AAHsAv8GAAL/GwACAwgADAQFAALsAQAB/wMHAQAC7DkABOy8AAEEBAABAzkAAQQB/AL5AQABAwL7BAAK
/wgACf8GAAkDCQAB7AH8AQAD+QEAAvsBAAH6AgAB/wIAAf8FAAH/CAAJ/wUAAfsBAAkDBQAE/wEAAv8D
+QIAAf8B+gIACv8IAAn/BQAB/wH7AQAJAwQABP8B+gEAAf8BBwP5AQAC/wIAAf8CAAH/BQAB/wgACf8F
AAH7Af8B+wEACQMDAAT/AvoB/wH7AQcD+QEAAfwCAAr/CAAJ/wUAAf8B+wH/AfsMAAX/AfoB/wH7AQcB
/wL5AQAB/AIAAv8CAAP/AQAC/wgACf8FAAH7Af8B+wH/AfsB/wH7Af8B+wcABv8CAwP/AQEEAAL/AwAB
/wMAAf8EAAEEAwAJ/wUAAf8B+wH/AfsB/wH7Af8B+wH/BwAM/wEHAwAD/woAAgQDAAn/BQAB+wH/AfsN
AAz/AQcQAAIEAwAG/xgADP8BBxAAAgQDAAb/AQAB/xYADP8BBxAAAgQDAAb/GAANBBAAAgQhAA0EEAAC
BEAAAUIBTQE+BwABPgMAASgDAAFAAwABMAMAAQEBAAEBBQABgAEBFgAD/4EABv8CAAGfAc8C/wHgAQcC
AAKPAcABAwHAAQMCAAHHAR8BwAEDAcABAwIAAeIBPwHAAQMBwAEDAgAB8AF/AcABAwHAAQMCAAH4Af8B
wAEDAcABAwIAAfABewHAAQMBwAEDAgABAgExAcABAwHAAQMCAAEHAQABwAEDAcABAwIAAWcBgQHAAQMB
wAEDAgAB5wGDAcABAwHAAQMCAAHHAQMBwAEDAcABAwIAAfwBBwHAAQMB4AEHAgAB/gEfAv8B/AE/AgAG
/wIADP8B/AFjAQABDwHAAQcBAAEfAfgBAQEAAQ8BwAEHAQABDwGAAgABDwHAAQcBAAEHAYACAAEPAcAB
BwEAAQMBgAIAAQ8BwAEHAQABAQGAAgABDwHAAQcCAAGAAQEBAAEPAcABBwEAAR8BgAEDAQgBjgHAAQcB
AAEfAYABAwEFAUQBwAEHAQABHwGAAQMBAgG4AcABBwGPAfEBgAEDAf0BfAHAAQ8B/wH5AYABAwH+AfwB
wAEfAf8BdQGAAQMB/wEAAcABPwH/AY8BgAEDAf8B/Aj/FgAL
AAHwAfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD//8A/wD/AP8ARgAB
7AwHMwAB7Av/AQczAAHsA/8GAgL/AQczAAHsC/8BBzMAAewD/wYCAv8BBzMAAewL/wEHMwAB7AH/AQcB
AAL/AgAC/wEAAgczAAHsAQcBAAL/AQQBAgEEAQAC/wEAAewzAAHsAf8BBwEAAf8BAgH+AQIBAAH/AQAC
BzMAAewC/wEHAv8BAgEEBP8BBzMAAewJ/zYAAewJ/wHsAQAB7DMAAewJ/wLsNAAL7OYAAewLBwQAAQEH
AAEHFwAB7Ar/BQAB7Ar/AQcFAAEBBQABBwkACv8FAAHsA/8CBwX/BQAB7AT/BQcB/wEHBgABAQMAAQcK
AAH/B+wC/wUAAewD/wEBAgcE/wUAAewK/wEHBwABAQEAAQcLAAr/BQAB7AL/AwECBwP/BQAB7AT/BQcB
/wEHCAABBwwAAf8I7AH/BQAB7AH/AgEB/wIBAQcD/wUAAewC/wECB/8BBwcAAQcBAAEBCwAK/wUAAewF
/wEBAewBBwL/BQAB7AH/AgIB/wECBAcB/wEHBgABBwMAAQEEAAEDBQAB/wcAAv8FAAHsBv8BAQIHAf8F
AAHsAv8DAgX/AQcLAAEBAwACAwQACv8FAAHsB/8BAQEHAf8FAAHsAf8CAgH/AgIE/wEHDQACAwYAAf8I
7AH/BQAB7Aj/AQEB/wUAAewC/wMCBP8CBwwAAwMGAAr/BQAB7Ar/BQAB7AL/AQIB/wICAv8PAAMDBQAM
BAQAAewC/wYAAv8FAAHsBP8BAgP/AewBAAHsCgACAwgADAQFAALsAQAB/wMHAQAC7AUAAewI/wLsKQAE
7AgACuyqAAEEBAABAzkAAQQB/AL5AQABAwL7BAAK/wgACf8GAAkDCQAB7AH8AQAD+QEAAvsBAAH6AgAB
/wIAAf8FAAH/CAAJ/wUAAfsBAAkDBQAE/wEAAv8D+QIAAf8B+gIACv8IAAn/BQAB/wH7AQAJAwQABP8B
+gEAAf8BBwP5AQAC/wIAAf8CAAH/BQAB/wgACf8FAAH7Af8B+wEACQMDAAT/AvoB/wH7AQcD+QEAAfwC
AAr/CAAJ/wUAAf8B+wH/AfsMAAX/AfoB/wH7AQcB/wL5AQAB/AIAAv8CAAP/AQAC/wgACf8FAAH7Af8B
+wH/AfsB/wH7Af8B+wcABv8CAwP/AQEEAAL/AwAB/wMAAf8EAAEEAwAJ/wUAAf8B+wH/AfsB/wH7Af8B
+wH/BwAM/wEHAwAD/woAAgQDAAn/BQAB+wH/AfsNAAz/AQcQAAIEAwAG/xgADP8BBxAAAgQDAAb/AQAB
/xYADP8BBxAAAgQDAAb/GAANBBAAAgQhAA0EEAACBEAAAUIBTQE+BwABPgMAASgDAAFAAwABQAMAAQEB
AAEBBgABAhYAA/+BAAGAAQEGAAGAAQEGAAGAAQEGAAGAAQEGAAGAAQEGAAGAAQEGAAGAAQEGAAGAAQEG
AAGAAQEGAAGAAQEGAAGAAQEGAAGAAQEGAAGAAQsGAAGAAQcGAAGAAQ8GAAL/BgAG/wHAAQEBnwHPAv8B
4AEHAcABAQKPAcABAwHAAQMBwAEBAccBHwHAAQMBwAEDAcABAQHiAT8BwAEDAcABAwHAAQEB8AF/AcAB
AwHAAQMBwAEBAfgB/wHAAQMBwAEDAcABAQHwAXsBwAEDAcABAwHAAQEBAgExAcABAwHAAQMBwAEBAQcB
AAHAAQMBwAEDAcABAQFnAYEBwAEDAcABAwHAAQEB5wGDAcABAwHAAQMBwAEBAccBAwHAAQMBwAEDAcAB
CwH8AQcBwAEDAeABBwHAAQcB/gEfAv8B/AE/AcABDxT/AfwBYwEAAQ8BwAEHAQABHwH4AQEBAAEPAcAB
BwEAAQ8BgAIAAQ8BwAEHAQABBwGAAgABDwHAAQcBAAEDAYACAAEPAcABBwEAAQEBgAIAAQ8BwAEHAgAB
gAEBAQABDwHAAQcBAAEfAYABAwEIAY4BwAEHAQABHwGAAQMBBQFEAcABBwEAAR8BgAEDAQIBuAHAAQcB
jwHxAYABAwH9AXwBwAEPAf8B+QGAAQMB/gH8AcABHwH/AXUBgAEDAf8BAAHAAT8B/wGPAYABAwH/AfwI
/ws=
</value>
</data>
<data name="toolBar.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
@ -347,10 +373,10 @@ @@ -347,10 +373,10 @@
<data name="toolBarButtonOpen.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Private</value>
</data>
<data name="toolBarButtonSeparator.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<data name="toolBarButtonSeparator1.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Private</value>
</data>
<data name="toolBarButtonSeparator.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<data name="toolBarButtonSeparator1.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Private</value>
</data>
<data name="toolBarButtonSolutionExplorer.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
@ -383,6 +409,24 @@ @@ -383,6 +409,24 @@
<data name="toolBarButtonTaskList.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Private</value>
</data>
<data name="toolBarButtonSeparator2.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Private</value>
</data>
<data name="toolBarButtonSeparator2.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Private</value>
</data>
<data name="toolBarButtonLayoutByCode.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Private</value>
</data>
<data name="toolBarButtonLayoutByCode.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Private</value>
</data>
<data name="toolBarButtonLayoutByXml.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Private</value>
</data>
<data name="toolBarButtonLayoutByXml.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Private</value>
</data>
<data name="$this.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</data>
@ -398,15 +442,15 @@ @@ -398,15 +442,15 @@
<data name="$this.GridSize" type="System.Drawing.Size, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>8, 8</value>
</data>
<data name="$this.Name">
<value>MainForm</value>
</data>
<data name="$this.DrawGrid" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</data>
<data name="$this.TrayHeight" type="System.Int32, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>80</value>
</data>
<data name="$this.Name">
<value>MainForm</value>
</data>
<data name="$this.SnapToGrid" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</data>

BIN
src/Libraries/DockPanel_Src/DockSample/Resources/DockPanel.xml

Binary file not shown.

39
src/Libraries/DockPanel_Src/WinFormsUI.ndoc

@ -0,0 +1,39 @@ @@ -0,0 +1,39 @@
<project SchemaVersion="1.3">
<assemblies>
<assembly location=".\WinFormsUI\bin\Debug\WeifenLuo.WinFormsUI.Docking.dll" documentation=".\WinFormsUI\bin\Debug\CodeDoc.xml" />
</assemblies>
<documenters>
<documenter name="JavaDoc">
<property name="OutputDirectory" value=".\doc\" />
</documenter>
<documenter name="LaTeX">
<property name="OutputDirectory" value=".\doc\" />
<property name="TextFileFullName" value="Documentation.tex" />
<property name="TexFileBaseName" value="Documentation" />
<property name="LatexCompiler" value="latex" />
<property name="TexFileFullPath" value=".\doc\Documentation.tex" />
</documenter>
<documenter name="LinearHtml">
<property name="OutputDirectory" value=".\doc\" />
<property name="Title" value="An NDoc Documented Class Library" />
</documenter>
<documenter name="MSDN">
<property name="OutputDirectory" value="..\doc\" />
<property name="HtmlHelpName" value="DockPanel" />
<property name="Title" value="DockPanel Class Library" />
<property name="OutputTarget" value="HtmlHelp" />
<property name="CopyrightText" value="Copyright Weifen Luo, All Rights Reserved." />
<property name="FeedbackEmailAddress" value="weifenluo@yahoo.com" />
<property name="Preliminary" value="True" />
<property name="CleanIntermediates" value="True" />
</documenter>
<documenter name="VS.NET 2003">
<property name="OutputDirectory" value=".\doc\" />
<property name="HtmlHelpName" value="Documentation" />
<property name="Title" value="An NDoc documented library" />
</documenter>
<documenter name="XML">
<property name="OutputFile" value=".\doc\doc.xml" />
</documenter>
</documenters>
</project>

BIN
src/Libraries/DockPanel_Src/WinFormsUI.suo

Binary file not shown.

4
src/Libraries/DockPanel_Src/WinFormsUI/AssemblyInfo.cs

@ -26,7 +26,7 @@ using System.Runtime.CompilerServices; @@ -26,7 +26,7 @@ using System.Runtime.CompilerServices;
// You can specify all the values or you can default the Revision and Build Numbers
// by using the '*' as shown below:
[assembly: AssemblyVersion("0.9.3.0")]
[assembly: AssemblyVersion("0.98.0.2")]
// In order to sign your assembly you must specify a key to use. Refer to the
// Microsoft .NET Framework documentation for more information on assembly signing.
@ -53,3 +53,5 @@ using System.Runtime.CompilerServices; @@ -53,3 +53,5 @@ using System.Runtime.CompilerServices;
// documentation for more information on this.
//
[assembly: AssemblyDelaySign(false)]
[assembly: AssemblyKeyFile("")]
[assembly: AssemblyKeyName("")]

75
src/Libraries/DockPanel_Src/WinFormsUI/Controls/CodeDoc/InertButton.xml

@ -0,0 +1,75 @@ @@ -0,0 +1,75 @@
<?xml version="1.0" encoding="utf-8" ?>
<CodeDoc>
<Class name="InertButton">
<ClassDef>
<summary>Image button with flat appearance, border visible only when activated by mouse.</summary>
</ClassDef>
<Constructor name="Overloads">
<overloads>
<summary>Initializes a new instance of the <see cref="WeifenLuo.WinFormsUI.InertButton" /> class.</summary>
</overloads>
</Constructor>
<Constructor name="()">
<summary>Initializes a new instance of the <see cref="WeifenLuo.WinFormsUI.InertButton" /> class, with default settings.</summary>
</Constructor>
<Constructor name="(Image)">
<summary>Initializes a new instance of the <see cref="WeifenLuo.WinFormsUI.InertButton" /> class, with specified image for enabled button.</summary>
<param name="imageEnabled">
The <see cref="System.Drawing.Image" /> object to show when the button is enabled. The disabled image will be draw based on this image.
</param>
</Constructor>
<Constructor name="(Image, Image)">
<summary>Initializes a new instance of the <see cref="WeifenLuo.WinFormsUI.InertButton" /> class, with specified images for enabled and disabled button.</summary>
<param name="imageEnabled">
The <see cref="System.Drawing.Image" /> object to show when the button is enabled.
</param>
<param name="imageDisabled">
The <see cref="System.Drawing.Image" /> object to show when the button is disabled.
</param>
</Constructor>
<Property name="BorderColor">
<summary>Gets or sets the border color for the control.</summary>
<value>A <see cref="System.Drawing.Color" /> object that represents the border color of the control.</value>
</Property>
<Property name="BorderWidth">
<summary>Gets or sets the border width for the control.</summary>
<value>A integer that represents the border width for the control, in pixel. The default is <b>1</b>.</value>
</Property>
<Property name="ImageDisabled">
<summary>Gets or sets the image to display for the control when disabled.</summary>
<value>A <see cref="System.Drawing.Image" /> object to display for the control when disabled.</value>
</Property>
<Property name="ImageEnabled">
<summary>Gets or sets the image to display for the control when enabled.</summary>
<value>A <see cref="System.Drawing.Image" /> object to display for the control when enabled.</value>
</Property>
<Property name="ImageIndexDisabled">
<summary>Gets or sets the index of the image to display for the control when disabled.</summary>
<value>The zero-base index of the image in the <see cref="System.Windows.Forms.ImageList" /> to display for the control when disabled.</value>
</Property>
<Property name="ImageIndexEnabled">
<summary>Gets or sets the index of the image to display for the control when enabled.</summary>
<value>The zero-base index of the image in the <see cref="System.Windows.Forms.ImageList" /> to display for the control when enabled.</value>
</Property>
<Property name="ImageList">
<summary>Gets or sets the <see cref="System.Windows.Forms.ImageList" /> that contains the images to display.</summary>
<value>The <see cref="System.Windows.Forms.ImageList" /> that contains the images to display.</value>
</Property>
<Property name="IsPopup">
<summary>Determines if the buttons is displayed as popup when activated.</summary>
<value><b>True</b> if the button is displayed as popup when activated; otherwise <b>false</b>. The default value is <b>true</b>.</value>
</Property>
<Property name="Monochrome">
<summary>Determines if the button is displayed as black and white.</summary>
<value><b>True</b> if the button is displayed as as black and white; otherwise <b>false</b>. The default value is <b>false</b>.</value>
</Property>
<Property name="TextAlign">
<summary>Gets or sets the alignment of the text in the button.</summary>
<value>One of the <see cref="System.Drawing.ContentAlignment" /> values. The default is <b>MiddleCenter</b>.</value>
</Property>
<Property name="ToolTipText">
<summary>Gets or sets the ToolTip text for this button.</summary>
<value>The ToolTip text for this button.</value>
</Property>
</Class>
</CodeDoc>

24
src/Libraries/DockPanel_Src/WinFormsUI/InertButton.cs → src/Libraries/DockPanel_Src/WinFormsUI/Controls/InertButton.cs

@ -16,6 +16,7 @@ using System.ComponentModel; @@ -16,6 +16,7 @@ using System.ComponentModel;
namespace WeifenLuo.WinFormsUI
{
/// <include file='CodeDoc\InertButton.xml' path='//CodeDoc/Class[@name="InertButton"]/ClassDef/*'/>
public class InertButton : Control
{
private IContainer components = new Container();
@ -34,16 +35,20 @@ namespace WeifenLuo.WinFormsUI @@ -34,16 +35,20 @@ namespace WeifenLuo.WinFormsUI
private string m_toolTipText = "";
private Color m_borderColor = Color.Empty;
/// <include file='CodeDoc\InertButton.xml' path='//CodeDoc/Class[@name="InertButton"]/Constructor[@name="Overloads"]/*'/>
/// <include file='CodeDoc\InertButton.xml' path='//CodeDoc/Class[@name="InertButton"]/Constructor[@name="()"]/*'/>
public InertButton()
{
InternalConstruct(null, null);
}
/// <include file='CodeDoc\InertButton.xml' path='//CodeDoc/Class[@name="InertButton"]/Constructor[@name="(Image)"]/*'/>
public InertButton(Image imageEnabled)
{
InternalConstruct(imageEnabled, null);
}
/// <include file='CodeDoc\InertButton.xml' path='//CodeDoc/Class[@name="InertButton"]/Constructor[@name="(Image, Image)"]/*'/>
public InertButton(Image imageEnabled, Image imageDisabled)
{
InternalConstruct(imageEnabled, imageDisabled);
@ -70,6 +75,7 @@ namespace WeifenLuo.WinFormsUI @@ -70,6 +75,7 @@ namespace WeifenLuo.WinFormsUI
SetStyle(ControlStyles.Selectable, false);
}
/// <exclude/>
protected override void Dispose(bool disposing)
{
if (disposing)
@ -80,6 +86,7 @@ namespace WeifenLuo.WinFormsUI @@ -80,6 +86,7 @@ namespace WeifenLuo.WinFormsUI
base.Dispose(disposing);
}
/// <include file='CodeDoc\InertButton.xml' path='//CodeDoc/Class[@name="InertButton"]/Property[@name="BorderColor"]/*'/>
[Category("Appearance")]
[LocalizedDescription("InertButton.BorderColor.Description")]
public Color BorderColor
@ -100,6 +107,7 @@ namespace WeifenLuo.WinFormsUI @@ -100,6 +107,7 @@ namespace WeifenLuo.WinFormsUI
return (m_borderColor != Color.Empty);
}
/// <include file='CodeDoc\InertButton.xml' path='//CodeDoc/Class[@name="InertButton"]/Property[@name="BorderWidth"]/*'/>
[Category("Appearance")]
[LocalizedDescription("InertButton.BorderWidth.Description")]
[DefaultValue(1)]
@ -119,6 +127,7 @@ namespace WeifenLuo.WinFormsUI @@ -119,6 +127,7 @@ namespace WeifenLuo.WinFormsUI
}
}
/// <include file='CodeDoc\InertButton.xml' path='//CodeDoc/Class[@name="InertButton"]/Property[@name="ImageEnabled"]/*'/>
[Category("Appearance")]
[LocalizedDescription("InertButton.ImageEnabled.Description")]
[DefaultValue(null)]
@ -157,6 +166,7 @@ namespace WeifenLuo.WinFormsUI @@ -157,6 +166,7 @@ namespace WeifenLuo.WinFormsUI
return (m_imageEnabled != null);
}
/// <include file='CodeDoc\InertButton.xml' path='//CodeDoc/Class[@name="InertButton"]/Property[@name="ImageDisabled"]/*'/>
[Category("Appearance")]
[LocalizedDescription("InertButton.ImageDisabled.Description")]
[DefaultValue(null)]
@ -195,6 +205,7 @@ namespace WeifenLuo.WinFormsUI @@ -195,6 +205,7 @@ namespace WeifenLuo.WinFormsUI
return (m_imageDisabled != null);
}
/// <include file='CodeDoc\InertButton.xml' path='//CodeDoc/Class[@name="InertButton"]/Property[@name="ImageList"]/*'/>
[Category("Appearance")]
[LocalizedDescription("InertButton.ImageList.Description")]
[DefaultValue(null)]
@ -212,6 +223,7 @@ namespace WeifenLuo.WinFormsUI @@ -212,6 +223,7 @@ namespace WeifenLuo.WinFormsUI
}
}
/// <include file='CodeDoc\InertButton.xml' path='//CodeDoc/Class[@name="InertButton"]/Property[@name="ImageIndexEnabled"]/*'/>
[Category("Appearance")]
[LocalizedDescription("InertButton.ImageIndexEnabled.Description")]
[DefaultValue(-1)]
@ -231,6 +243,7 @@ namespace WeifenLuo.WinFormsUI @@ -231,6 +243,7 @@ namespace WeifenLuo.WinFormsUI
}
}
/// <include file='CodeDoc\InertButton.xml' path='//CodeDoc/Class[@name="InertButton"]/Property[@name="ImageIndexDisabled"]/*'/>
[Category("Appearance")]
[LocalizedDescription("InertButton.ImageIndexDisabled.Description")]
[DefaultValue(-1)]
@ -250,6 +263,7 @@ namespace WeifenLuo.WinFormsUI @@ -250,6 +263,7 @@ namespace WeifenLuo.WinFormsUI
}
}
/// <include file='CodeDoc\InertButton.xml' path='//CodeDoc/Class[@name="InertButton"]/Property[@name="IsPopup"]/*'/>
[Category("Appearance")]
[LocalizedDescription("InertButton.IsPopup.Description")]
[DefaultValue(false)]
@ -267,6 +281,7 @@ namespace WeifenLuo.WinFormsUI @@ -267,6 +281,7 @@ namespace WeifenLuo.WinFormsUI
}
}
/// <include file='CodeDoc\InertButton.xml' path='//CodeDoc/Class[@name="InertButton"]/Property[@name="Monochrome"]/*'/>
[Category("Appearance")]
[LocalizedDescription("InertButton.Monochrom.Description")]
[DefaultValue(true)]
@ -283,6 +298,7 @@ namespace WeifenLuo.WinFormsUI @@ -283,6 +298,7 @@ namespace WeifenLuo.WinFormsUI
}
}
/// <include file='CodeDoc\InertButton.xml' path='//CodeDoc/Class[@name="InertButton"]/Property[@name="TextAlign"]/*'/>
[Category("Appearance")]
[LocalizedDescription("InertButton.TextAlign.Description")]
[DefaultValue(ContentAlignment.MiddleCenter)]
@ -299,6 +315,7 @@ namespace WeifenLuo.WinFormsUI @@ -299,6 +315,7 @@ namespace WeifenLuo.WinFormsUI
}
}
/// <include file='CodeDoc\InertButton.xml' path='//CodeDoc/Class[@name="InertButton"]/Property[@name="ToolTipText"]/*'/>
[Category("Appearance")]
[LocalizedDescription("InertButton.ToolTipText.Description")]
[DefaultValue("")]
@ -317,6 +334,7 @@ namespace WeifenLuo.WinFormsUI @@ -317,6 +334,7 @@ namespace WeifenLuo.WinFormsUI
}
}
/// <exclude/>
protected override void OnMouseDown(MouseEventArgs e)
{
base.OnMouseDown(e);
@ -334,6 +352,7 @@ namespace WeifenLuo.WinFormsUI @@ -334,6 +352,7 @@ namespace WeifenLuo.WinFormsUI
}
}
/// <exclude/>
protected override void OnMouseUp(MouseEventArgs e)
{
base.OnMouseUp(e);
@ -353,6 +372,7 @@ namespace WeifenLuo.WinFormsUI @@ -353,6 +372,7 @@ namespace WeifenLuo.WinFormsUI
base.OnMouseUp(e);
}
/// <exclude/>
protected override void OnMouseMove(MouseEventArgs e)
{
base.OnMouseMove(e);
@ -371,6 +391,7 @@ namespace WeifenLuo.WinFormsUI @@ -371,6 +391,7 @@ namespace WeifenLuo.WinFormsUI
}
}
/// <exclude/>
protected override void OnMouseEnter(EventArgs e)
{
// Update state to reflect mouse over the button area
@ -385,6 +406,7 @@ namespace WeifenLuo.WinFormsUI @@ -385,6 +406,7 @@ namespace WeifenLuo.WinFormsUI
base.OnMouseEnter(e);
}
/// <exclude/>
protected override void OnMouseLeave(EventArgs e)
{
// Update state to reflect mouse not over the button area
@ -399,6 +421,7 @@ namespace WeifenLuo.WinFormsUI @@ -399,6 +421,7 @@ namespace WeifenLuo.WinFormsUI
base.OnMouseLeave(e);
}
/// <exclude/>
protected override void OnPaint(PaintEventArgs e)
{
base.OnPaint(e);
@ -571,6 +594,7 @@ namespace WeifenLuo.WinFormsUI @@ -571,6 +594,7 @@ namespace WeifenLuo.WinFormsUI
colorRightBottom, m_borderWidth, bs);
}
/// <exclude/>
protected override void OnEnabledChanged(EventArgs e)
{
base.OnEnabledChanged(e);

1
src/Libraries/DockPanel_Src/WinFormsUI/AutoHideWindow.cs → src/Libraries/DockPanel_Src/WinFormsUI/Docking/AutoHideWindow.cs

@ -95,6 +95,7 @@ namespace WeifenLuo.WinFormsUI @@ -95,6 +95,7 @@ namespace WeifenLuo.WinFormsUI
AnimateWindow(true);
DockPanel.ResumeLayout();
DockPanel.Invalidate();
SetTimerMouseTrack();
}

0
src/Libraries/DockPanel_Src/WinFormsUI/AutoHideWindowSplitter.cs → src/Libraries/DockPanel_Src/WinFormsUI/Docking/AutoHideWindowSplitter.cs

73
src/Libraries/DockPanel_Src/WinFormsUI/Docking/CodeDoc/DisplayingDockList.xml

@ -0,0 +1,73 @@ @@ -0,0 +1,73 @@
<?xml version="1.0" encoding="utf-8" ?>
<CodeDoc>
<Class name='DisplayingDockList'>
<ClassDef>
<summary>Maintains a list of visible nested docking <see cref="WeifenLuo.WinFormsUI.DockPane" /> objects.</summary>
<remarks>
<include file='Interfaces.xml' path='//Interface[@name="IDockListContainer"]/InterfaceDef/remarks/*' />
</remarks>
<seealso cref="WeifenLuo.WinFormsUI.DockPane">DockPane Class</seealso>
</ClassDef>
<Property name="DockList">
<summary>Gets the associated <b>DockList</b> object.</summary>
<value>A <see cref="WeifenLuo.WinFormsUI.DockList" /> object which associates with this <B>DisplayingDockList</B> object.</value>
</Property>
<Property name="Container">
<summary>Gets the container which owns the associated <see cref="WeifenLuo.WinFormsUI.DockList" /> object.</summary>
<value>A <see cref="WeifenLuo.WinFormsUI.IDockListContainer" /> which contains the associated
<see cref="WeifenLuo.WinFormsUI.DockList" /> object.</value>
<seealso cref='WeifenLuo.WinFormsUI.DockList'>DockList Class</seealso>
</Property>
<Property name="DockState">
<summary>Gets the docking state from the <see cref="WeifenLuo.WinFormsUI.DisplayingDockList.Container" />.</summary>
<include file='Interfaces.xml' path='//Interface[@name="IDockListContainer"]/Property[@name="DockState"]/value' />
</Property>
<Property name="IsFloat">
<summary>Determines whether the the <see cref="WeifenLuo.WinFormsUI.DisplayingDockList.Container" /> is floating.</summary>
<include file='Interfaces.xml' path='//Interface[@name="IDockListContainer"]/Property[@name="IsFloat"]/value' />
</Property>
<Property name="Item">
<summary>
<para>Gets a <see cref="WeifenLuo.WinFormsUI.DockPane"/> at the specified index.</para>
<para>In C#, this property is the indexer for the <see cref="WeifenLuo.WinFormsUI.DisplayingDockList"/> class.</para>
</summary>
<param name="index">
The zero-based <see cref="WeifenLuo.WinFormsUI.DockPane"/> to get.
</param>
<value>
The <see cref="WeifenLuo.WinFormsUI.DockPane" /> at the specified index.
</value>
</Property>
<Method name="Contains(DockPane)">
<summary>
Determines whether a <see cref="WeifenLuo.WinFormsUI.DockPane" /> is in the
<see cref="WeifenLuo.WinFormsUI.DisplayingDockList" />.
</summary>
<param name="pane">
The <see cref="WeifenLuo.WinFormsUI.DockPane" /> to locate in
<see cref="WeifenLuo.WinFormsUI.DisplayingDockList" />.
</param>
<returns>
<b>true</b> if <paramref name="pane" /> is found in the
<see cref="WeifenLuo.WinFormsUI.DisplayingDockList" />;
otherwise, <b>false</b>.
</returns>
</Method>
<Method name="IndexOf(DockPane)">
<summary>
Searches for the specified <see cref="WeifenLuo.WinFormsUI.DockPane" />
and returns the zero-based index within the entire
<see cref="WeifenLuo.WinFormsUI.DisplayingDockList" />.
</summary>
<param name="pane">
The <see cref="WeifenLuo.WinFormsUI.DockPane" />
to locate in the <see cref="WeifenLuo.WinFormsUI.DisplayingDockList" />
</param>
<returns>
The zero-based index of <paramref name="pane" /> within the entire
<see cref="WeifenLuo.WinFormsUI.DisplayingDockList" />, if found;
otherwise, -1.
</returns>
</Method>
</Class>
</CodeDoc>

203
src/Libraries/DockPanel_Src/WinFormsUI/Docking/CodeDoc/DockContent.xml

@ -0,0 +1,203 @@ @@ -0,0 +1,203 @@
<?xml version="1.0" encoding="utf-8" ?>
<CodeDoc>
<Class name="DockContent">
<ClassDef>
<summary>The smallest dockable unit within the docking framework.</summary>
<remarks>
<para>
<see cref="DockContent" /> derives from <see cref="Form" /> class.
To use the DockPanel library, derive your form from <see cref="DockContent" /> class,
and implement your user interface in this class. There are several overloaded
<see cref="DockContent.Show" /> methods to show <see cref="DockContent" /> as specified docking state.
If <see cref="WeifenLuo.WinFormsUI.DockPanel.MdiIntegration" /> property is set to <b>true</b> and <see cref="DockContent.DockState" />
is <see cref="WeifenLuo.WinFormsUI.DockState.Document" />, the menu of the form will be merged into to the main form automatically.
</para>
</remarks>
</ClassDef>
<Constructor name="()">
<summary>Initialize a new DockContent instance.</summary>
</Constructor>
<Property name="AllowRedocking">
<summary>Gets or sets to specify whether drag and drop re-docking is allowed.</summary>
<value><b>True</b> if drag and drop re-docking is allowed, otherwise, <b>false</b>.</value>
</Property>
<Property name="AutoHidePortion">
<summary>Gets or sets to specify the portion of the screen size when showing in auto-hide mode.</summary>
<value>A value between 0 and 1 to specify the portion of the DockPanel to determine the size of the window when
displaying in auto-hide mode. The default value is 0.25 (25%).</value>
<exception cref="ArgumentOutOfRangeException">Thrown when value is not between 0 and 1.</exception>
</Property>
<Property name="CloseButton">
<summary>Gets or sets to enalbe/disable the close button for this DockContent in the DockPane.</summary>
<value><b>True</b> to enable the close button; <b>false</b> to disable.</value>
</Property>
<Property name="DockableAreas">
<summary>Gets or sets to specify the areas this DockContent can be displayed.</summary>
<value>
Combination of <see cref="DockAreas" /> values.
If <see cref="DockContent.DockState" /> conflicts with this value, a exception will be thrown.
</value>
</Property>
<Property name="DockPanel">
<summary>Gets or sets to attach/detach the DockContent to DockPanel.</summary>
<value><see cref="WeifenLuo.WinFormsUI.DockPanel" /> object to attach. <b>Null</b> to detach this DockContent to any DockPanel.</value>
</Property>
<Property name="DockState">
<summary>Gets or sets the docking state of <see cref="WeifenLuo.WinFormsUI.DockContent" />.</summary>
<value>
One of the <see cref="WeifenLuo.WinFormsUI.DockState" /> values:
<list type="table">
<listheader>
<term>Value</term>
<term>Description</term>
</listheader>
<item>
<description>
<see cref="WeifenLuo.WinFormsUI.DockState.Unknown" />
</description>
<description>Valid only when the <see cref="WeifenLuo.WinFormsUI.DockContent" /> is newly
initialized or detached from <see cref="WeifenLuo.WinFormsUI.DockPanel" />. Can not
be explicitly set.</description>
</item>
<item>
<description>
<see cref="WeifenLuo.WinFormsUI.DockState.Hidden" />
</description>
<description>Synchronized with the <see cref="WeifenLuo.WinFormsUI.DockContent.IsHidden" /> property.</description>
</item>
<item>
<description>
<b>Others</b>
</description>
<description>Synchronized with the docking state of
<see cref="WeifenLuo.WinFormsUI.DockContent.Pane" />.</description>
</item>
</list>
</value>
<include file='DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Property[@name="Pane"]/remarks' />
</Property>
<Property name="FloatPane">
<summary>Gets or sets the containing <see cref="WeifenLuo.WinFormsUI.DockPane" /> object when floating.</summary>
<value>The containing <see cref="WeifenLuo.WinFormsUI.DockPane" /> object when floating.</value>
<include file='DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Property[@name="Pane"]/remarks' />
</Property>
<Property name="HideOnClose">
<summary>Gets or sets to determine when clicking the close button, the DockContent form should be closed or hidden.</summary>
<value><b>True</b> to hide the form when clicking the close button; otherwise, <b>false</b>. The default value is <b>false</b>.</value>
</Property>
<Property name="IsActivated">
<summary>Gets to specified the DockContent object is currently activated.</summary>
<value><b>True</b> if the DockContent object is currently activated, otherwise, <b>false</b>.</value>
</Property>
<Property name="IsFloat">
<summary>Gets or sets whether the DockContent object is floating.</summary>
<value><b>True</b> if the DockContent object is floating; otherwise, false.</value>
</Property>
<Property name="IsHidden">
<summary>Gets or sets whether the DockContent object is hidden.</summary>
<value><b>True</b> if the DockContent object is hidden; otherwise, false.</value>
</Property>
<Property name="Pane">
<summary>Gets or sets the displayed containing <see cref="WeifenLuo.WinFormsUI.DockPane" /> object.</summary>
<value>The currently displayed containing <see cref="WeifenLuo.WinFormsUI.DockPane" /> object.</value>
<remarks>
A <see cref="WeifenLuo.WinFormsUI.DockContent" /> object can have two containing
<see cref="WeifenLuo.WinFormsUI.DockPane" /> objects: <see cref="WeifenLuo.WinFormsUI.DockContent.PanelPane" /> and
<see cref="WeifenLuo.WinFormsUI.DockContent.FloatPane" />. The <see cref="WeifenLuo.WinFormsUI.DockContent.Pane" />
property returns currently displaying containing <see cref="WeifenLuo.WinFormsUI.DockPane" />. The docking state of a
<see cref="WeifenLuo.WinFormsUI.DockContent" /> object is always synchronized with its displaying containing
<see cref="WeifenLuo.WinFormsUI.DockPane" />.
</remarks>
</Property>
<Property name="PanelPane">
<summary>Gets or sets the containing <see cref="WeifenLuo.WinFormsUI.DockPane" /> object when docked.</summary>
<value>The containing <see cref="WeifenLuo.WinFormsUI.DockPane" /> object when docked.</value>
<include file='DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Property[@name="Pane"]/remarks' />
</Property>
<Property name="ShowHint">
<summary>Gets or sets the desired docking state for this DockContent object.</summary>
<value>One of the valid <see cref="WeifenLuo.WinFormsUI.DockState" /> values. This value should not
conflicts with <see cref="WeifenLuo.WinFormsUI.DockContent.DockableAreas" /> property.</value>
</Property>
<Property name="TabPageContextMenu">
<summary>Gets or sets the context menu for the DockPane tab page.</summary>
<value>The <see cref="System.Windows.Forms.ContextMenu" /> for the DockPane tab page.</value>
</Property>
<Property name="TabText">
<summary>Gets or sets the text to display for the DockPane tab strip.</summary>
<value>The text to display for the DockPane tab strip.</value>
<remarks>If this value is not set, the value of <see cref="Control.Text" /> will be used.</remarks>
</Property>
<Property name="ToolTipText">
<summary>Gets or sets the tooltip text for this form.</summary>
<value>The tooltip text for this form.</value>
</Property>
<Property name="VisibleState">
<summary>Gets or sets the visible docking state for this form.</summary>
<value>One of the <see cref="WeifenLuo.WinFormsUI.DockState" /> values for visible docking state of this form.</value>
</Property>
<Method name="Activate()">
<summary>Activates the DockContent form and gives it focus.</summary>
<remarks>Activating the DockContent form makes it the <see cref="WeifenLuo.WinFormsUI.DockPane.ActiveContent" /> of its
containing <see cref="WeifenLuo.WinFormsUI.DockPane" />. To determine the active DockContent in an application,
use <see cref="WeifenLuo.WinFormsUI.DockPanel.ActiveContent" /> property. To determine the active document
content, use <see cref="WeifenLuo.WinFormsUI.DockPanel.ActiveDocument" /> property.</remarks>
</Method>
<Method name="GetPersistString()">
<summary>Gets the string to persist this DockContent object.</summary>
<returns>The string to persist this DockContent object.</returns>
<include file='DockPanel.xml' path='//CodeDoc/Delegate[@name="DeserializeDockContent"]/remarks' />
</Method>
<Method name="IsDockStateValid(DockState)">
<summary>Test with <see cref="WeifenLuo.WinFormsUI.DockContent.DockableAreas" /> to see whether the specified
<see cref="WeifenLuo.WinFormsUI.DockState" /> is valid.</summary>
<param name="dockState">The specified <see cref="WeifenLuo.WinFormsUI.DockState" /> value to test.</param>
</Method>
<Method name="OnDockStateChanged(EventArgs)">
<summary>Raises the <see cref="WeifenLuo.WinFormsUI.DockContent.DockStateChanged" /> event.</summary>
<param name="e">An <see cref="System.EventArgs" /> that contains the event data.</param>
</Method>
<Method name="Show">
<overloads>
<summary>Displays the form. Overloaded.</summary>
</overloads>
</Method>
<Method name="Show()">
<summary>Displays the form, with default settings.</summary>
<remarks>If <see cref="WeifenLuo.WinFormsUI.DockContent.DockPanel"/> property is set, the form
will be displayed as <see cref="WeifenLuo.WinFormsUI.DockContent.ShowHint"/> docking state;
otherwise it will be displayed as normal form.</remarks>
</Method>
<Method name="Show(DockPane, DockAlignment, double)">
<summary>Displays the form, as specified nested docking.</summary>
<param name="prevPane">The target <see cref="WeifenLuo.WinFormsUI.DockPane"/> to dock.</param>
<param name="alignment">The edge of the target <see cref="WeifenLuo.WinFormsUI.DockPane"/> to dock.</param>
<param name="proportion">The proportion size of the source <see cref="WeifenLuo.WinFormsUI.DockPane"/> to take
inside the target <see cref="WeifenLuo.WinFormsUI.DockPane"/>.</param>
</Method>
<Method name="Show(DockPane, DockContent)">
<summary>Displays the form, at the specified tab location of DockPane</summary>
<param name="pane">The target <see cref="WeifenLuo.WinFormsUI.DockPane"/> to contain this DockContent.</param>
<param name="beforeContent">The position to show in the tab strip of the <see cref="WeifenLuo.WinFormsUI.DockPane"/>.
<b>Null</b> to show at the last position in the tab strip.
</param>
</Method>
<Method name="Show(DockPanel)">
<summary>Displays the form, attaching to specified DockPanel.</summary>
<param name="dockPanel">The <see cref="WeifenLuo.WinFormsUI.DockPanel"/> object to attach.</param>
</Method>
<Method name="Show(DockPanel, Rectangle)">
<summary>Displays the form, as floating window at the specified location and size.</summary>
<param name="dockPanel">The <see cref="WeifenLuo.WinFormsUI.DockPanel"/> object to attach.</param>
<param name="floatWindowBounds">The bounds of the floating window.</param>
</Method>
<Method name="Show(DockPanel, DockState)">
<summary>Displays the form, with specified docking state.</summary>
<param name="dockPanel">The <see cref="WeifenLuo.WinFormsUI.DockPanel"/> object to attach.</param>
<param name="dockState">The docking state to display.</param>
</Method>
<Event name="DockStateChanged">
<summary>Occurs when the <see cref="WeifenLuo.WinFormsUI.DockContent.DockState"/> property changed.</summary>
</Event>
</Class>
</CodeDoc>

46
src/Libraries/DockPanel_Src/WinFormsUI/Docking/CodeDoc/DockContentCollection.xml

@ -0,0 +1,46 @@ @@ -0,0 +1,46 @@
<?xml version="1.0" encoding="utf-8" ?>
<CodeDoc>
<Class name="DockContentCollection">
<ClassDef>
<summary>Provides methods to manage a collection of <see cref="WeifenLuo.WinFormsUI.DockContent" /> objects.</summary>
</ClassDef>
<Property name="Item">
<summary>
<para>Gets a <see cref="WeifenLuo.WinFormsUI.DockContent" /> at the specified index.</para>
<para>In C#, this property is the indexer for the <see cref="WeifenLuo.WinFormsUI.DockContentCollection" /> class.</para>
</summary>
</Property>
<Method name="Contains(DockContent)">
<summary>
Determines whether a <see cref="WeifenLuo.WinFormsUI.DockContent" /> is in the
<see cref="WeifenLuo.WinFormsUI.DockContentCollection" />.
</summary>
<param name="content">
The <see cref="WeifenLuo.WinFormsUI.DockContent" /> to locate in
<see cref="WeifenLuo.WinFormsUI.DockContentCollection" />.
</param>
<returns>
<b>true</b> if <paramref name="content" /> is found in the
<see cref="WeifenLuo.WinFormsUI.DockContentCollection" />;
otherwise, <b>false</b>.
</returns>
</Method>
<Method name="IndexOf(DockContent)">
<summary>
Searches for the specified <see cref="WeifenLuo.WinFormsUI.DockContent" />
and returns the zero-based index within the entire
<see cref="WeifenLuo.WinFormsUI.DockContentCollection" />.
</summary>
<param name="content">
The <see cref="WeifenLuo.WinFormsUI.DockContent" />
to locate in the <see cref="WeifenLuo.WinFormsUI.DockContentCollection" />
</param>
<returns>
The zero-based index of <paramref name="content" /> within the entire
<see cref="WeifenLuo.WinFormsUI.DockContentCollection" />, if found;
otherwise, -1.
</returns>
</Method>
<Method name="Select(DockState)"></Method>
</Class>
</CodeDoc>

86
src/Libraries/DockPanel_Src/WinFormsUI/Docking/CodeDoc/DockList.xml

@ -0,0 +1,86 @@ @@ -0,0 +1,86 @@
<?xml version="1.0" encoding="utf-8" ?>
<CodeDoc>
<Class name='DockList'>
<ClassDef>
<summary>Maintains a list of nested docking <see cref="WeifenLuo.WinFormsUI.DockPane" /> objects.</summary>
<remarks>
<include file='Interfaces.xml' path='//Interface[@name="IDockListContainer"]/InterfaceDef/remarks/*' />
</remarks>
<seealso cref="WeifenLuo.WinFormsUI.DockPane">DockPane Class</seealso>
</ClassDef>
<Property name="DisplayingList">
<summary>Gets the associated <b>DisplayingDockList</b> object.</summary>
<value>A <see cref="WeifenLuo.WinFormsUI.DisplayingDockList" /> object which associates with this <B>DockList</B> object.</value>
</Property>
<Property name="Container">
<summary>Gets the container which owns this <see cref='WeifenLuo.WinFormsUI.DockList' /> object.</summary>
<value>A <see cref='WeifenLuo.WinFormsUI.IDockListContainer' /> which contains this <see cref='WeifenLuo.WinFormsUI.DockList' /> object.</value>
<seealso cref='WeifenLuo.WinFormsUI.DisplayingDockList'>DisplayingDockList Class</seealso>
</Property>
<Property name="DockState">
<summary>Gets the docking state from the <see cref="WeifenLuo.WinFormsUI.DisplayingDockList.Container" />.</summary>
<include file='Interfaces.xml' path='//Interface[@name="IDockListContainer"]/Property[@name="DockState"]/value' />
</Property>
<Property name="IsFloat">
<summary>Determines whether the the <see cref="WeifenLuo.WinFormsUI.DisplayingDockList.Container" /> is floating.</summary>
<include file='Interfaces.xml' path='//Interface[@name="IDockListContainer"]/Property[@name="IsFloat"]/value' />
</Property>
<Property name="Item">
<summary>
<para>Gets a <see cref="WeifenLuo.WinFormsUI.DockPane" /> at the specified index.</para>
<para>In C#, this property is the indexer for the <see cref="WeifenLuo.WinFormsUI.DockList" /> class.</para>
</summary>
<param name="index">
The zero-based <see cref="WeifenLuo.WinFormsUI.DockPane" /> to get.
</param>
<value>
The <see cref="WeifenLuo.WinFormsUI.DockPane" /> at the specified index.
</value>
</Property>
<Method name="Contains(DockPane)">
<summary>
Determines whether a <see cref="WeifenLuo.WinFormsUI.DockPane" /> is in the
<see cref="WeifenLuo.WinFormsUI.DockList" />.
</summary>
<param name="pane">
The <see cref="WeifenLuo.WinFormsUI.DockPane" /> to locate in
<see cref="WeifenLuo.WinFormsUI.DockList" />.
</param>
<returns>
<b>true</b> if <paramref name="pane" /> is found in the
<see cref="WeifenLuo.WinFormsUI.DockList" />;
otherwise, <b>false</b>.
</returns>
</Method>
<Method name="IndexOf(DockPane)">
<summary>
Searches for the specified <see cref="WeifenLuo.WinFormsUI.DockPane" />
and returns the zero-based index within the entire
<see cref="WeifenLuo.WinFormsUI.DockList" />.
</summary>
<param name="pane">
The <see cref="WeifenLuo.WinFormsUI.DockPane" />
to locate in the <see cref="WeifenLuo.WinFormsUI.DockList" />
</param>
<returns>
The zero-based index of <paramref name="pane" /> within the entire
<see cref="WeifenLuo.WinFormsUI.DockList" />, if found;
otherwise, -1.
</returns>
</Method>
<Method name="GetDefaultPrevPane(DockPane)">
<summary>
Gets the default <see cref="WeifenLuo.WinFormsUI.DockPane" />
in this <see cref="WeifenLuo.WinFormsUI.DockList" /> to dock inside.
</summary>
<param name="pane">
The <see cref="WeifenLuo.WinFormsUI.DockPane" />
to add to this <see cref="WeifenLuo.WinFormsUI.DockList" />.
</param>
<returns>
The default <see cref="WeifenLuo.WinFormsUI.DockPane" /> for <paramref name="pane" /> to dock inside,
<b>null</b> if this <see cref="WeifenLuo.WinFormsUI.DockList" /> is empty.
</returns>
</Method>
</Class>
</CodeDoc>

276
src/Libraries/DockPanel_Src/WinFormsUI/Docking/CodeDoc/DockPane.xml

@ -0,0 +1,276 @@ @@ -0,0 +1,276 @@
<?xml version="1.0" encoding="utf-8" ?>
<CodeDoc>
<Class name="DockPane">
<ClassDef>
<summary>The containing window for a collection of <see cref="WeifenLuo.WinFormsUI.DockContent" /> forms
displayed in a tabbed manner.</summary>
<remarks>
<include file='DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Property[@name="Contents"]/remarks/*' />
<para>
There are two types of <see cref="WeifenLuo.WinFormsUI.DockPane" /> in appearance:
<see cref="AppearanceStyle.ToolWindow" /> and <see cref="AppearanceStyle.Document" />,
determined by the docking state of the <see cref="WeifenLuo.WinFormsUI.DockPane" />.
</para>
<para>
You can derive your own class from <see cref="WeifenLuo.WinFormsUI.DockPane" /> to make
your own customizations. If so, you need to override the <see cref="WeifenLuo.WinFormsUI.DockPanel.DockPaneFactory" />
property to return the instance of your own class.
</para>
</remarks>
</ClassDef>
<Constructor name="Overloads">
<overloads>
<summary>Initializes a new instance of DockPane class.</summary>
</overloads>
</Constructor>
<Constructor name="(DockContent, DockState, bool)">
<summary>Initializes a new instance of DockPane class, with specified visible docking state.</summary>
<param name="content">The first DockContent for this DockPane.</param>
<param name="visibleState">The visible docking state for this DockPane.</param>
<param name="show"><b>True</b> to show the <paramref name="content" />, otherwise, <b>false</b>.</param>
</Constructor>
<Constructor name="(DockContent, FloatWindow, bool)">
<summary>Initializes a new instance of DockPane class, as nested docking to specified FloatWindow.</summary>
<param name="content">The first DockContent for this DockPane.</param>
<param name="floatWindow">The <see cref="WeifenLuo.WinFormsUI.FloatWindow"/> for nested docking.</param>
<param name="show"><b>True</b> to show the <paramref name="content" />, otherwise, <b>false</b>.</param>
</Constructor>
<Constructor name="(DockContent, DockPane, DockAlignment, double, bool)">
<summary>Initializes a new instance of DockPane class, as specified nested docking.</summary>
<include file='DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Constructor[@name="(DockContent, DockState, bool)"]/param[@name="content"]' />
<param name="prevPane">The target <see cref="WeifenLuo.WinFormsUI.DockPane" /> to dock.</param>
<param name="alignment">The edge of the target <see cref="WeifenLuo.WinFormsUI.DockPane" /> to dock.</param>
<param name="proportion">The proportion size of the source <see cref="WeifenLuo.WinFormsUI.DockPane" />
to take inside the target <see cref="WeifenLuo.WinFormsUI.DockPane" />.</param>
<include file='DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Constructor[@name="(DockContent, DockState, bool)"]/param[@name="show"]' />
</Constructor>
<Constructor name="(DockContent, Rectangle, bool)">
<summary>Initializes a new instance of DockPane class, as floating at the specified bounds.</summary>
<include file='DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Constructor[@name="(DockContent, DockState, bool)"]/param[@name="content"]' />
<param name="floatWindowBounds">The bounds of the floating window.</param>
<include file='DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Constructor[@name="(DockContent, DockState, bool)"]/param[@name="show"]' />
</Constructor>
<Property name="ActiveContent">
<summary>Gets or sets the currently active <see cref="WeifenLuo.WinFormsUI.DockContent" /> form.</summary>
<value>The currently active <see cref="WeifenLuo.WinFormsUI.DockContent" /> form.</value>
</Property>
<Property name="AllowRedocking">
<summary>Gets or sets to specify whether drag and drop re-docking is allowed.</summary>
<value><b>True</b> if drag and drop re-docking is allowed, otherwise, <b>false</b>.</value>
</Property>
<Property name="CaptionText">
<summary>Gets the text displayed for the caption.</summary>
<value>The text displayed for the caption.</value>
<remarks>The default implementation returns the <see cref="System.Windows.Forms.Control.Text" /> property
of current active <see cref="WeifenLuo.WinFormsUI.DockContent" /> form. You can override this
property to provide your own implementation.</remarks>
</Property>
<Property name="Contents">
<summary>Gets the collection of contained <see cref="WeifenLuo.WinFormsUI.DockContent" /> forms.</summary>
<value>The <see cref="WeifenLuo.WinFormsUI.DockContentCollection" /> which contains all the
<see cref="WeifenLuo.WinFormsUI.DockContent" /> forms for this <see cref="WeifenLuo.WinFormsUI.DockPane" />.</value>
<remarks>
<para>
A <see cref="WeifenLuo.WinFormsUI.DockContent" /> object can be added to the
<see cref="WeifenLuo.WinFormsUI.DockPane" /> by various of ways:
<list type="number">
<item>
<description>Calling one of <see cref="WeifenLuo.WinFormsUI.DockPane" /> class's constructors,
providing the <see cref="WeifenLuo.WinFormsUI.DockContent" /> object as parameter.
</description>
</item>
<item>
<description>Explicitly setting one of the
<see cref="WeifenLuo.WinFormsUI.DockContent.Pane" />,
<see cref="WeifenLuo.WinFormsUI.DockContent.PanelPane" /> or
<see cref="WeifenLuo.WinFormsUI.DockContent.FloatPane" /> properties
of <see cref="WeifenLuo.WinFormsUI.DockContent" /> class.
</description>
</item>
<item>
<description>Implicitly setting the docking state of the <see cref="WeifenLuo.WinFormsUI.DockContent" />,
for example, calling one of the <see cref="WeifenLuo.WinFormsUI.DockContent.Show" /> methods.
</description>
</item>
</list>
You can access the contained collection of
<see cref="WeifenLuo.WinFormsUI.DockContent" /> forms through the
<see cref="WeifenLuo.WinFormsUI.DockPane.Contents" /> property of class
<see cref="WeifenLuo.WinFormsUI.DockPane" />, and you can access a
<see cref="WeifenLuo.WinFormsUI.DockContent" />'s containing
<see cref="WeifenLuo.WinFormsUI.DockPane" /> through its
<see cref="WeifenLuo.WinFormsUI.DockContent.Pane" />,
<see cref="WeifenLuo.WinFormsUI.DockContent.PanelPane" /> or
<see cref="WeifenLuo.WinFormsUI.DockContent.FloatPane" /> properties.
</para>
<para>If there is no <see cref="WeifenLuo.WinFormsUI.DockContent" /> in
this <see cref="WeifenLuo.WinFormsUI.DockPane" />,
this <see cref="WeifenLuo.WinFormsUI.DockPane" /> will be disposed automatically.
</para>
</remarks>
</Property>
<Property name="CountOfVisibleContents">
<summary>Gets the count of visible <see cref="WeifenLuo.WinFormsUI.DockContent" /> objects.</summary>
<value>Gets the count of visible <see cref="WeifenLuo.WinFormsUI.DockContent" /> objects.</value>
</Property>
<Property name="DockListContainer">
<summary>Gets the <see cref="WeifenLuo.WinFormsUI.IDockListContainer" /> which contains this
<see cref="WeifenLuo.WinFormsUI.DockPane" />.</summary>
<value>The <see cref="WeifenLuo.WinFormsUI.IDockListContainer" /> which contains this
<see cref="WeifenLuo.WinFormsUI.DockPane" />.</value>
<include file='DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Property[@name="IsFloat"]/remarks' />
</Property>
<Property name="DockPanel">
<summary>Gets the <see cref="WeifenLuo.WinFormsUI.DockPanel" /> associated with this
<see cref="WeifenLuo.WinFormsUI.DockPane" />.</summary>
<value>the <see cref="WeifenLuo.WinFormsUI.DockPanel" /> associated with this
<see cref="WeifenLuo.WinFormsUI.DockPane" />.</value>
</Property>
<Property name="DockState">
<summary>Gets the docking state of this <see cref="WeifenLuo.WinFormsUI.DockPane" />.</summary>
<value>The docking state of this <see cref="WeifenLuo.WinFormsUI.DockPane" />.</value>
</Property>
<Property name="DockWindow">
<summary>Gets or sets the <see cref="WeifenLuo.WinFormsUI.DockWindow" /> contains this
<see cref="WeifenLuo.WinFormsUI.DockPane" />.</summary>
<value>Gets or sets the <see cref="WeifenLuo.WinFormsUI.DockWindow" /> contains this
<see cref="WeifenLuo.WinFormsUI.DockPane" />.</value>
<include file='DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Property[@name="IsFloat"]/remarks' />
</Property>
<Property name="FloatWindow">
<summary>Gets or sets the <see cref="WeifenLuo.WinFormsUI.FloatWindow" /> contains this
<see cref="WeifenLuo.WinFormsUI.DockPane" />.</summary>
<value>Gets or sets the <see cref="WeifenLuo.WinFormsUI.FloatWindow" /> contains this
<see cref="WeifenLuo.WinFormsUI.DockPane" />.</value>
<include file='DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Property[@name="IsFloat"]/remarks' />
</Property>
<Property name="IsActivated">
<summary>Gets whether this <see cref="WeifenLuo.WinFormsUI.DockPane" /> is activated.</summary>
<value><b>True</b> if this <see cref="WeifenLuo.WinFormsUI.DockPane" /> is activated,
otherwise, <b>false</b>.</value>
</Property>
<Property name="IsActiveDocumentPane">
<summary>Gets whether this <see cref="WeifenLuo.WinFormsUI.DockPane" /> is active document pane.</summary>
<value><b>True</b> if this <see cref="WeifenLuo.WinFormsUI.DockPane" /> is active document pan,
otherwise, <b>false</b>.</value>
</Property>
<Property name="IsAutoHide">
<summary>Gets whether the docking state is auto hide.</summary>
<value><b>True</b> if the docking state is auto hide,
otherwise, <b>false</b>.</value>
</Property>
<Property name="IsFloat">
<summary>Gets whether this <see cref="WeifenLuo.WinFormsUI.DockPane" /> is floating.</summary>
<value><b>True</b> if this <see cref="WeifenLuo.WinFormsUI.DockPane" /> is floating,
otherwise, <b>false</b>.</value>
<remarks>
The <see cref="WeifenLuo.WinFormsUI.DockPane.IsFloat" /> property is fixed during the construction
<see cref="WeifenLuo.WinFormsUI.DockPane" /> class, based on the initial docking state. If this
property returns <b>true</b>, it can only be contained by a <see cref="WeifenLuo.WinFormsUI.FloatWindow" />
as its <see cref="WeifenLuo.WinFormsUI.DockPane.DockListContainer" />; otherwise it can only be contained
by a <see cref="WeifenLuo.WinFormsUI.DockWindow" /> as its
<see cref="WeifenLuo.WinFormsUI.DockPane.DockListContainer" />.
</remarks>
</Property>
<Property name="IsHidden">
<summary>Gets whether all the contained <see cref="WeifenLuo.WinFormsUI.DockContent" /> forms
are invisible in this <see cref="WeifenLuo.WinFormsUI.DockPane" />.</summary>
<value><b>True</b> if all the contained <see cref="WeifenLuo.WinFormsUI.DockContent" /> forms
are invisible in this <see cref="WeifenLuo.WinFormsUI.DockPane" />.</value>
</Property>
<Property name="NestedDockingStatus">
<summary>Gets the nested docking status for this <see cref="WeifenLuo.WinFormsUI.NestedDockingStatus" />.</summary>
<value>A <see cref="WeifenLuo.WinFormsUI.NestedDockingStatus" /> object to represent
the nested docking status for this <see cref="WeifenLuo.WinFormsUI.DockPane" />.</value>
</Property>
<Method name="Activate()">
<summary>Activates the DockPane and gives it focus.</summary>
</Method>
<Method name="AddToDockList">
<overloads>
<summary>Nested docks this <see cref="WeifenLuo.WinFormsUI.DockPane" /> to the specified
<see cref="WeifenLuo.WinFormsUI.IDockListContainer" />.</summary>
</overloads>
</Method>
<Method name="AddToDockList(IDockListContainer)">
<summary>Nested docks this <see cref="WeifenLuo.WinFormsUI.DockPane" /> to the specified
<see cref="WeifenLuo.WinFormsUI.IDockListContainer" />, with default settings.</summary>
<param name="container">The <see cref="WeifenLuo.WinFormsUI.IDockListContainer" /> for the
nested docking.</param>
<returns>If the <see cref="WeifenLuo.WinFormsUI.DockPane.IsFloat" /> property conforms to
the container's docking state, the current <see cref="WeifenLuo.WinFormsUI.DockPane" /> object
will be returned; otherwise, a new instance of <see cref="WeifenLuo.WinFormsUI.DockPane" />
object will be created and returned.</returns>
</Method>
<Method name="AddToDockList(IDockListContainer, DockPane, DockAlignment, double)">
<summary>Nested docks this <see cref="WeifenLuo.WinFormsUI.DockPane" /> to the specified
<see cref="WeifenLuo.WinFormsUI.IDockListContainer" />, with specified settings.</summary>
<include file='DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Method[@name="AddToDockList(IDockListContainer)"]/param[@name="container"]' />
<param name="prevPane"></param>
<param name="alignment"></param>
<param name="proportion"></param>
<include file='DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Method[@name="AddToDockList(IDockListContainer)"]/returns' />
</Method>
<Method name="Float()">
<summary>Shows all contained <see cref="WeifenLuo.WinFormsUI.DockContent" /> forms as floating.</summary>
<returns>The new floating <see cref="WeifenLuo.WinFormsUI.DockPane" /> for the
<see cref="WeifenLuo.WinFormsUI.DockContent" /> forms.</returns>
</Method>
<Method name="GetVisibleContent(int)">
<summary>Gets the visible <see cref="WeifenLuo.WinFormsUI.DockContent" /> form at the specified
index.</summary>
<param name="index">The zero-based index for the visible <see cref="WeifenLuo.WinFormsUI.DockContent" /> form to
retrieve.</param>
<returns>The visible <see cref="WeifenLuo.WinFormsUI.DockContent" /> form at the specified
index.</returns>
</Method>
<Method name="IsDockStateValid(DockState)">
<summary>Tests if the giving docking state conforms to the
<see cref="WeifenLuo.WinFormsUI.DockContent.DockableAreas" /> property of all the
contained <see cref="WeifenLuo.WinFormsUI.DockContent" /> forms.</summary>
<param name="dockState"></param>
<returns><b>True</b> if the giving docking state conforms to the
<see cref="WeifenLuo.WinFormsUI.DockContent.DockableAreas" /> property of all the
contained <see cref="WeifenLuo.WinFormsUI.DockContent" /> forms; otherwise, <b>false</b>.</returns>
</Method>
<Method name="OnDockStateChanged(EventArgs)">
<summary>Raises the <see cref="WeifenLuo.WinFormsUI.DockPane.DockStateChanged" /> event.</summary>
<param name="e">An <see cref="System.EventArgs" /> that contains the event data.</param>
</Method>
<Method name="OnIsActivatedChanged(EventArgs)">
<summary>Raises the <see cref="WeifenLuo.WinFormsUI.DockPane.IsActivatedChanged" /> event.</summary>
<param name="e">An <see cref="System.EventArgs" /> that contains the event data.</param>
</Method>
<Method name="OnIsActiveDocumentPaneChanged(EventArgs)">
<summary>Raises the <see cref="WeifenLuo.WinFormsUI.DockPane.IsActiveDocumentPaneChanged" /> event.</summary>
<param name="e">An <see cref="System.EventArgs" /> that contains the event data.</param>
</Method>
<Method name="RestoreToPanel()">
<summary>Shows all contained <see cref="WeifenLuo.WinFormsUI.DockContent" /> forms as non-floating.</summary>
</Method>
<Method name="SetContentIndex(DockContent, int)">
<summary>Moves the specified <see cref="WeifenLuo.WinFormsUI.DockContent" /> form to the
specified position in the tab strip.</summary>
<param name="content">The specified <see cref="WeifenLuo.WinFormsUI.DockContent" /> form.</param>
<param name="index">The zero-based index represents the new position in the tab strip.</param>
</Method>
<Method name="SetDockState(DockState)">
<summary>Shows all contained <see cref="WeifenLuo.WinFormsUI.DockContent" /> forms as specified docking state.</summary>
<param name="value">The specified docking state to display.</param>
<returns>The <see cref="WeifenLuo.WinFormsUI.DockPane" /> for the new docking state.</returns>
</Method>
<Method name="SetNestedDockingProportion(double)">
<summary>Sets the proportion size of this DockPane for nested docking.</summary>
<param name="proportion">The proportion size to set. Value must between 0 and 1.</param>
</Method>
<Event name="DockStateChanged">
<summary>Occurs when the <see cref="WeifenLuo.WinFormsUI.DockPane.DockState"/> property changed.</summary>
</Event>
<Event name="IsActivatedChanged">
<summary>Occurs when the <see cref="WeifenLuo.WinFormsUI.DockPane.IsActivated"/> property changed.</summary>
</Event>
<Event name="IsActiveDocumentPaneChanged">
<summary>Occurs when the <see cref="WeifenLuo.WinFormsUI.DockPane.IsActiveDocumentPane"/> property changed.</summary>
</Event>
</Class>
</CodeDoc>

45
src/Libraries/DockPanel_Src/WinFormsUI/Docking/CodeDoc/DockPaneCollection.xml

@ -0,0 +1,45 @@ @@ -0,0 +1,45 @@
<?xml version="1.0" encoding="utf-8" ?>
<CodeDoc>
<Class name="DockPaneCollection">
<ClassDef>
<summary>Provides methods to manage a collection of <see cref="WeifenLuo.WinFormsUI.DockPane" /> objects.</summary>
</ClassDef>
<Property name="Item">
<summary>
<para>Gets a <see cref="WeifenLuo.WinFormsUI.DockPane" /> at the specified index.</para>
<para>In C#, this property is the indexer for the <see cref="WeifenLuo.WinFormsUI.DockPaneCollection" /> class.</para>
</summary>
</Property>
<Method name="Contains(DockPane)">
<summary>
Determines whether a <see cref="WeifenLuo.WinFormsUI.DockPane" /> is in the
<see cref="WeifenLuo.WinFormsUI.DockPaneCollection" />.
</summary>
<param name="pane">
The <see cref="WeifenLuo.WinFormsUI.DockPane" /> to locate in
<see cref="WeifenLuo.WinFormsUI.DockPaneCollection" />.
</param>
<returns>
<b>true</b> if <paramref name="pane" /> is found in the
<see cref="WeifenLuo.WinFormsUI.DockPaneCollection" />;
otherwise, <b>false</b>.
</returns>
</Method>
<Method name="IndexOf(DockPane)">
<summary>
Searches for the specified <see cref="WeifenLuo.WinFormsUI.DockPane" />
and returns the zero-based index within the entire
<see cref="WeifenLuo.WinFormsUI.DockPaneCollection" />.
</summary>
<param name="pane">
The <see cref="WeifenLuo.WinFormsUI.DockPane" />
to locate in the <see cref="WeifenLuo.WinFormsUI.DockPaneCollection" />
</param>
<returns>
The zero-based index of <paramref name="pane" /> within the entire
<see cref="WeifenLuo.WinFormsUI.DockPaneCollection" />, if found;
otherwise, -1.
</returns>
</Method>
</Class>
</CodeDoc>

238
src/Libraries/DockPanel_Src/WinFormsUI/Docking/CodeDoc/DockPanel.xml

@ -0,0 +1,238 @@ @@ -0,0 +1,238 @@
<?xml version="1.0" encoding="utf-8" ?>
<CodeDoc>
<Delegate name="DeserializeDockContent">
<summary>
Callback used by <see cref="WeifenLuo.WinFormsUI.DockPanel.LoadFromXml"/>
to get a instance of <see cref="WeifenLuo.WinFormsUI.DockContent"/> from a
serialized string.
</summary>
<param name="persistString">
The serialized string of the <see cref="WeifenLuo.WinFormsUI.DockContent"/> object.
</param>
<returns>
The <see cref="WeifenLuo.WinFormsUI.DockContent"/> object.
</returns>
<remarks>
<para>
The layout of <see cref="WeifenLuo.WinFormsUI.DockPanel"/>
can be saved to and loaded from XML data by calling
<see cref="WeifenLuo.WinFormsUI.DockPanel.SaveAsXml"/> and
<see cref="WeifenLuo.WinFormsUI.DockPanel.LoadFromXml"/>.
When saving, the system will persist the <see cref="WeifenLuo.WinFormsUI.DockContent"/>
object to a string by calling its
<see cref="WeifenLuo.WinFormsUI.DockContent.GetPersistString"/> method;
when loading, the system will call the <see cref="WeifenLuo.WinFormsUI.DeserializeDockContent"/>
call back to get the instance of <see cref="WeifenLuo.WinFormsUI.DockContent"/> object.
</para>
<para>
The default implementation of <see cref="WeifenLuo.WinFormsUI.DockContent.GetPersistString"/>
returns the type name of the <see cref="WeifenLuo.WinFormsUI.DockContent"/> class. You can overwrite
this method for your own implementation.
</para>
<para>
You always need to provide a <see cref="WeifenLuo.WinFormsUI.DeserializeDockContent"/>
callback when loading the layout.
</para>
</remarks>
</Delegate>
<Delegate name="DockContentEventHandler">
<summary>Represents the method that will handle the <see cref="WeifenLuo.WinFormsUI.DockPanel.ContentAdded"/> or
<see cref="WeifenLuo.WinFormsUI.DockPanel.ContentRemoved"/> event of <see cref="WeifenLuo.WinFormsUI.DockPanel" />.</summary>
<param name="sender">The source of the event.</param>
<param name="e">A <see cref="WeifenLuo.WinFormsUI.DockContentEventArgs" /> that contains the event data.</param>
</Delegate>
<Class name="DockPanel">
<ClassDef>
<summary>Represents a control that acts as container for the docking windows.</summary>
<remarks>The <see cref="WeifenLuo.WinFormsUI.DockPanel"/> contains 5 <see cref="WeifenLuo.WinFormsUI.DockWindow"/>:
top, bottom, left, right and document. It also displays tab strip for auto-hide window(s) if there is any.</remarks>
</ClassDef>
<Constructor name="()">
<summary>Initializes a new instance of <see cref="WeifenLuo.WinFormsUI.DockPanel"/> class.</summary>
</Constructor>
<Property name="ActiveAutoHideContent">
<summary>Gets or sets the active auto-hide <see cref="WeifenLuo.WinFormsUI.DockContent"/>.</summary>
<value>The auto-hide <see cref="WeifenLuo.WinFormsUI.DockContent"/> is currently active.</value>
</Property>
<Property name="ActiveContent">
<summary>Gets the active <see cref="WeifenLuo.WinFormsUI.DockContent"/>.</summary>
<value>The <see cref="WeifenLuo.WinFormsUI.DockContent"/> is currently active.</value>
</Property>
<Property name="ActiveDocument">
<summary>Gets the active document <see cref="WeifenLuo.WinFormsUI.DockContent"/>.</summary>
<value>The document <see cref="WeifenLuo.WinFormsUI.DockContent"/> is currently active.</value>
</Property>
<Property name="ActiveDocumentPane">
<summary>Gets the active document <see cref="WeifenLuo.WinFormsUI.DockPane"/>.</summary>
<value>The document <see cref="WeifenLuo.WinFormsUI.DockPane"/> is currently active.</value>
</Property>
<Property name="ActivePane">
<summary>Gets the active <see cref="WeifenLuo.WinFormsUI.DockPane"/>.</summary>
<value>The <see cref="WeifenLuo.WinFormsUI.DockPane"/> is currently active.</value>
</Property>
<Property name="AllowRedocking">
<summary>Sets or gets a value indicating whether drag and drop redocking is allowed.</summary>
<value><b>True</b>, if drag and drop redocking is allowed, otherwise, <b>false</b>.</value>
</Property>
<Property name="Contents">
<summary>Gets the collection of contained <see cref="WeifenLuo.WinFormsUI.DockContent" /> forms.</summary>
<value>The <see cref="WeifenLuo.WinFormsUI.DockContentCollection" /> which contains all the
<see cref="WeifenLuo.WinFormsUI.DockContent" /> forms for this <see cref="WeifenLuo.WinFormsUI.DockPanel" />.</value>
<remarks>A <see cref="WeifenLuo.WinFormsUI.DockContent" /> object is added to <see cref="WeifenLuo.WinFormsUI.DockPanel.Contents" />
collection by setting the value of its <see cref="WeifenLuo.WinFormsUI.DockContent.DockPanel" /> property.</remarks>
</Property>
<Property name="DockBottomPortion">
<summary>Gets or sets the size of the bottom side <see cref="WeifenLuo.WinFormsUI.DockWindow"/>.</summary>
<value>A value between 0 and 1 to determine the size of the bottom side <see cref="WeifenLuo.WinFormsUI.DockWindow"/>.</value>
</Property>
<Property name="DockLeftPortion">
<summary>Gets or sets the size of the left side <see cref="WeifenLuo.WinFormsUI.DockWindow"/>.</summary>
<value>A value between 0 and 1 to determine the size of the left side <see cref="WeifenLuo.WinFormsUI.DockWindow"/>.</value>
</Property>
<Property name="DockRightPortion">
<summary>Gets or sets the size of the right side <see cref="WeifenLuo.WinFormsUI.DockWindow"/>.</summary>
<value>A value between 0 and 1 to determine the size of the right side <see cref="WeifenLuo.WinFormsUI.DockWindow"/>.</value>
</Property>
<Property name="DockTopPortion">
<summary>Gets or sets the size of the top side <see cref="WeifenLuo.WinFormsUI.DockWindow"/>.</summary>
<value>A value between 0 and 1 to determine the size of the top side <see cref="WeifenLuo.WinFormsUI.DockWindow"/>.</value>
</Property>
<Property name="DockPaneFactory">
<summary>Provides class factory to initialize <see cref="WeifenLuo.WinFormsUI.DockPane"/> objects.</summary>
<value>An object implements <see cref="WeifenLuo.WinFormsUI.IDockPaneFactory"/> to initialize <see cref="WeifenLuo.WinFormsUI.DockPane"/> objects.</value>
<remarks>Override this property can implement your own class derived from <see cref="WeifenLuo.WinFormsUI.DockPane"/>.</remarks>
</Property>
<Property name="FloatWindowFactory">
<summary>Provides class factory to initialize <see cref="WeifenLuo.WinFormsUI.FloatWindow"/> objects.</summary>
<value>An object implements <see cref="WeifenLuo.WinFormsUI.IFloatWindowFactory"/> to initialize <see cref="WeifenLuo.WinFormsUI.FloatWindow"/> objects.</value>
<remarks>Override this property can implement your own class derived from <see cref="WeifenLuo.WinFormsUI.FloatWindow"/>.</remarks>
</Property>
<Property name="DockWindows">
<summary>Gets the collection of contained <see cref="WeifenLuo.WinFormsUI.DockWindow" /> controls.</summary>
<value>The <see cref="WeifenLuo.WinFormsUI.DockWindowCollection" /> which contains all the
<see cref="WeifenLuo.WinFormsUI.DockWindow" /> controls for this <see cref="WeifenLuo.WinFormsUI.DockPanel" />.</value>
</Property>
<Property name="FloatWindows">
<summary>Gets the collection of contained <see cref="WeifenLuo.WinFormsUI.FloatWindow" /> forms.</summary>
<value>The <see cref="WeifenLuo.WinFormsUI.FloatWindowCollection" /> which contains all the
<see cref="WeifenLuo.WinFormsUI.FloatWindow" /> forms for this <see cref="WeifenLuo.WinFormsUI.DockPanel" />.</value>
</Property>
<Property name="Panes">
<summary>Gets the collection of contained <see cref="WeifenLuo.WinFormsUI.DockPane" /> windows.</summary>
<value>The <see cref="WeifenLuo.WinFormsUI.DockPaneCollection" /> which contains all the
<see cref="WeifenLuo.WinFormsUI.DockPane" /> windows for this <see cref="WeifenLuo.WinFormsUI.DockPanel" />.</value>
</Property>
<Property name="Documents">
<summary>Gets the document <see cref="WeifenLuo.WinFormsUI.DockContent"/> forms.</summary>
<value>An array of the document <see cref="WeifenLuo.WinFormsUI.DockContent"/> forms.</value>
</Property>
<Property name="MdiIntegration">
<summary>Gets or sets a value indicating whether all the document <see cref="WeifenLuo.WinFormsUI.DockContent"/> forms are treated as MDI forms.</summary>
<value><b>True</b>, if all the document <see cref="WeifenLuo.WinFormsUI.DockContent"/> forms are treated as MDI forms, otherwise, <b>false</b>.</value>
</Property>
<Property name="SdiDocument">
<summary>Gets or sets a value indicating whether the tab strip of document <see cref="WeifenLuo.WinFormsUI.DockPane"/> will be displayed when there is only one document <see cref="WeifenLuo.WinFormsUI.DockContent"/> form.</summary>
<value><b>False</b>, if the tab strip of document <see cref="WeifenLuo.WinFormsUI.DockPane"/> will be displayed when there is only one document <see cref="WeifenLuo.WinFormsUI.DockContent"/> form, otherwise, <b>true</b>.</value>
</Property>
<Method name="OnActiveContentChanged(EventArgs)">
<summary>Raises the <see cref="WeifenLuo.WinFormsUI.DockPanel.ActiveContentChanged" /> event.</summary>
<param name="e">An <see cref="System.EventArgs" /> that contains the event data.</param>
</Method>
<Method name="OnActiveDocumentChanged(EventArgs)">
<summary>Raises the <see cref="WeifenLuo.WinFormsUI.DockPanel.ActiveDocumentChanged" /> event.</summary>
<param name="e">An <see cref="System.EventArgs" /> that contains the event data.</param>
</Method>
<Method name="OnActivePaneChanged(EventArgs)">
<summary>Raises the <see cref="WeifenLuo.WinFormsUI.DockPanel.ActivePaneChanged" /> event.</summary>
<param name="e">An <see cref="System.EventArgs" /> that contains the event data.</param>
</Method>
<Method name="OnContentAdded(DockContentEventArgs)">
<summary>Raises the <see cref="WeifenLuo.WinFormsUI.DockPanel.ContentAdded" /> event.</summary>
<param name="e">An <see cref="WeifenLuo.WinFormsUI.DockContentEventArgs" /> that contains the event data.</param>
</Method>
<Method name="OnContentRemoved(DockContentEventArgs)">
<summary>Raises the <see cref="WeifenLuo.WinFormsUI.DockPanel.ContentRemoved" /> event.</summary>
<param name="e">An <see cref="WeifenLuo.WinFormsUI.DockContentEventArgs" /> that contains the event data.</param>
</Method>
<Method name="SaveAsXml">
<overloads>
<summary>Save the layout to XML data. Overloaded.</summary>
<remarks>
<include file='DockPanel.xml' path='//CodeDoc/Delegate[@name="DeserializeDockContent"]/remarks/*'/>
</remarks>
</overloads>
</Method>
<Method name="SaveAsXml(string)">
<summary>Save the layout to XML data, using the specified file.</summary>
<param name="filename">The file name to write to. If the file exsists, it will truncate it and
overwrite it with new content.</param>
<remarks>
<include file='DockPanel.xml' path='//CodeDoc/Delegate[@name="DeserializeDockContent"]/remarks/*'/>
</remarks>
</Method>
<Method name="SaveAsXml(string, Encoding)">
<summary>Save the layout to XML data, using the specified file and encoding.</summary>
<param name="filename">The file name to write to. If the file exsists, it will truncate it and
overwrite it with new content.</param>
<param name="encoding">The encoding to generate.</param>
<remarks>
<include file='DockPanel.xml' path='//CodeDoc/Delegate[@name="DeserializeDockContent"]/remarks/*'/>
</remarks>
</Method>
<Method name="SaveAsXml(Stream, Encoding)">
<summary>Save the layout to XML data, using the specified stream and encoding.</summary>
<param name="stream">The stream to which you want to write.</param>
<param name="encoding">The encoding to generate.</param>
<remarks>
<include file='DockPanel.xml' path='//CodeDoc/Delegate[@name="DeserializeDockContent"]/remarks/*'/>
</remarks>
</Method>
<Method name="LoadFromXml">
<overloads>
<summary>Load the layout from XML data. Overloaded</summary>
<remarks>
<include file='DockPanel.xml' path='//CodeDoc/Delegate[@name="DeserializeDockContent"]/remarks/*'/>
</remarks>
</overloads>
</Method>
<Method name="LoadFromXml(string, DeserializeDockContent)">
<summary>Load the layout from XML file.</summary>
<param name="filename">The file name to read XML data from.</param>
<param name="deserializeContent">The callback function to get the
<see cref="WeifenLuo.WinFormsUI.DockContent"/> instance from the persistent string.</param>
<remarks>
<include file='DockPanel.xml' path='//CodeDoc/Delegate[@name="DeserializeDockContent"]/remarks/*'/>
</remarks>
</Method>
<Method name="LoadFromXml(Stream, DeserializeDockContent)">
<summary>Load the layout from XML stream.</summary>
<param name="stream">The stream to read XML data from.</param>
<param name="deserializeContent">The callback function to get the
<see cref="WeifenLuo.WinFormsUI.DockContent"/> instance from the persistent string.</param>
<remarks>
<include file='DockPanel.xml' path='//CodeDoc/Delegate[@name="DeserializeDockContent"]/remarks/*'/>
</remarks>
</Method>
<Method name="SetPaneIndex(DockPane, int)">
<summary>Moves the specified <see cref="WeifenLuo.WinFormsUI.DockPane" /> window to the
specified position in the auto-hide tab strip.</summary>
<param name="pane">The specified <see cref="WeifenLuo.WinFormsUI.DockPane" /> window.</param>
<param name="index">The zero-based index represents the new position in the auto-hide tab strip.</param>
</Method>
<Event name="ActiveContentChanged">
<summary>Occurs when the <see cref="WeifenLuo.WinFormsUI.DockPanel.ActiveContent"/> property changed.</summary>
</Event>
<Event name="ActiveDocumentChanged">
<summary>Occurs when the <see cref="WeifenLuo.WinFormsUI.DockPanel.ActiveDocument"/> property changed.</summary>
</Event>
<Event name="ActivePaneChanged">
<summary>Occurs when the <see cref="WeifenLuo.WinFormsUI.DockPanel.ActivePane"/> property changed.</summary>
</Event>
<Event name="ContentAdded">
<summary>Occurs when a <see cref="WeifenLuo.WinFormsUI.DockContent"/> form added to <see cref="WeifenLuo.WinFormsUI.DockPanel.Contents"/> collection.</summary>
</Event>
<Event name="ContentRemoved">
<summary>Occurs when a <see cref="WeifenLuo.WinFormsUI.DockContent"/> form removed from <see cref="WeifenLuo.WinFormsUI.DockPanel.Contents"/> collection.</summary>
</Event>
</Class>
</CodeDoc>

48
src/Libraries/DockPanel_Src/WinFormsUI/Docking/CodeDoc/DockWindow.xml

@ -0,0 +1,48 @@ @@ -0,0 +1,48 @@
<?xml version="1.0" encoding="utf-8" ?>
<CodeDoc>
<Class name="DockWindow">
<ClassDef>
<summary>Represents the docking zone of the <see cref="WeifenLuo.WinFormsUI.DockPanel" />.</summary>
<remarks>
<para>The <see cref="WeifenLuo.WinFormsUI.DockPanel" /> is divided into 5
<see cref="WeifenLuo.WinFormsUI.DockWindow" />s: Top, Bottom, Left, Right and Document.
The document <see cref="WeifenLuo.WinFormsUI.DockWindow" /> is always positioned in the central of the
<see cref="WeifenLuo.WinFormsUI.DockPanel" />. Other 4 <see cref="WeifenLuo.WinFormsUI.DockWindow" />s’ positions
are determined by the Z-order. The last displayed <see cref="WeifenLuo.WinFormsUI.DockWindow" /> will be sent to the back of the
Z-order.</para>
<para>The <see cref="WeifenLuo.WinFormsUI.DockWindow" /> implements <see cref="WeifenLuo.WinFormsUI.IDockListContainer" />,
it can contain a list of nested <see cref="WeifenLuo.WinFormsUI.DockPane" /> objects.</para>
</remarks>
</ClassDef>
<Property name="DisplayingList">
<summary>Gets the <see cref="WeifenLuo.WinFormsUI.DisplayingDockList" /> which contains
a list of visible nested docking <see cref="WeifenLuo.WinFormsUI.DockPane" /> objects.</summary>
<value>The <see cref="WeifenLuo.WinFormsUI.DisplayingDockList" /> which contains
a list of visible nested docking <see cref="WeifenLuo.WinFormsUI.DockPane" /> objects.</value>
</Property>
<Property name="DisplayingRectangle">
<summary>Gets the rectangle represents the displaying area for nested docking DockPane objects.</summary>
<value>A <see cref="System.Drawing.Rectangle" /> represents the displaying area for nested docking DockPane objects.</value>
</Property>
<Property name="DockList">
<summary>Gets the <see cref="WeifenLuo.WinFormsUI.DockList" /> which contains
a list of nested docking <see cref="WeifenLuo.WinFormsUI.DockPane" /> objects.</summary>
<value>The <see cref="WeifenLuo.WinFormsUI.DockList" /> which contains
a list of nested docking <see cref="WeifenLuo.WinFormsUI.DockPane" /> objects.</value>
</Property>
<Property name="DockPanel">
<summary>Gets the <see cref="WeifenLuo.WinFormsUI.DockPanel"/> which contains this
<see cref="WeifenLuo.WinFormsUI.DockWindow"/>.</summary>
<value>The <see cref="WeifenLuo.WinFormsUI.DockPanel"/> which contains this
<see cref="WeifenLuo.WinFormsUI.DockWindow"/>.</value>
</Property>
<Property name="DockState">
<summary>Gets the docking state of this <see cref="WeifenLuo.WinFormsUI.DockWindow"/>.</summary>
<value>The docking state of this <see cref="WeifenLuo.WinFormsUI.DockWindow"/>.</value>
</Property>
<Property name="IsFloat">
<summary>Gets to determine if this <see cref="WeifenLuo.WinFormsUI.DockWindow"/> is floating.</summary>
<value>The value of this property is always <b>false</b>.</value>
</Property>
</Class>
</CodeDoc>

14
src/Libraries/DockPanel_Src/WinFormsUI/Docking/CodeDoc/DockWindowCollection.xml

@ -0,0 +1,14 @@ @@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8" ?>
<CodeDoc>
<Class name="DockWindowCollection">
<ClassDef>
<summary>Provides methods to manage a collection of <see cref="WeifenLuo.WinFormsUI.DockWindow" /> objects.</summary>
</ClassDef>
<Property name="Item">
<summary>
<para>Gets a <see cref="WeifenLuo.WinFormsUI.DockWindow" /> at the specified docking state.</para>
<para>In C#, this property is the indexer for the <see cref="WeifenLuo.WinFormsUI.DockWindowCollection" /> class.</para>
</summary>
</Property>
</Class>
</CodeDoc>

88
src/Libraries/DockPanel_Src/WinFormsUI/Docking/CodeDoc/Enums.xml

@ -0,0 +1,88 @@ @@ -0,0 +1,88 @@
<?xml version="1.0" encoding="utf-8" ?>
<CodeDoc>
<Enum name="DockAlignment">
<EnumDef>
<summary>Specifies the edge for nested docking.</summary>
</EnumDef>
<Member name="Left">
<summary>The <see cref="WeifenLuo.WinFormsUI.DockPane" />'s left edge is docked to its
containing <see cref="WeifenLuo.WinFormsUI.DockPane" />'s left edge.</summary>
</Member>
<Member name="Right">
<summary>The <see cref="WeifenLuo.WinFormsUI.DockPane" />'s right edge is docked to its
containing <see cref="WeifenLuo.WinFormsUI.DockPane" />'s right edge.</summary>
</Member>
<Member name="Top">
<summary>The <see cref="WeifenLuo.WinFormsUI.DockPane" />'s top edge is docked to its
containing <see cref="WeifenLuo.WinFormsUI.DockPane" />'s top edge.</summary>
</Member>
<Member name="Bottom">
<summary>The <see cref="WeifenLuo.WinFormsUI.DockPane" />'s bottom edge is docked to its
containing <see cref="WeifenLuo.WinFormsUI.DockPane" />'s bottom edge.</summary>
</Member>
</Enum>
<Enum name="DockAreas">
<EnumDef>
<summary>Specifies all the available docking areas.</summary>
</EnumDef>
<Member name="Float">
<summary>The floating window docking area.</summary>
</Member>
<Member name="DockTop">
<summary>The top docking area of the <see cref="WeifenLuo.WinFormsUI.DockPanel" /></summary>
</Member>
<Member name="DockLeft">
<summary>The left docking area of the <see cref="WeifenLuo.WinFormsUI.DockPanel" />.</summary>
</Member>
<Member name="DockRight">
<summary>The right docking area of the <see cref="WeifenLuo.WinFormsUI.DockPanel" />.</summary>
</Member>
<Member name="DockBottom">
<summary>The bottom docking area of the <see cref="WeifenLuo.WinFormsUI.DockPanel" />.</summary>
</Member>
<Member name="Document">
<summary>The document area of the <see cref="WeifenLuo.WinFormsUI.DockPanel" />.</summary>
</Member>
</Enum>
<Enum name="DockState">
<EnumDef>
<summary>Specifies the docking state for docking windows.</summary>
</EnumDef>
<Member name="Unknown">
<summary>Unknown docking state.</summary>
</Member>
<Member name="Float">
<summary>Displayed inside float window.</summary>
</Member>
<Member name="DockTopAutoHide">
<summary>Displayed as auto-hide window, on the top edge.</summary>
</Member>
<Member name="DockLeftAutoHide">
<summary>Displayed as auto-hide window, on the left edge.</summary>
</Member>
<Member name="DockBottomAutoHide">
<summary>Displayed as auto-hide window, on the bottom edge.</summary>
</Member>
<Member name="DockRightAutoHide">
<summary>Displayed as auto-hide window, on the right edge.</summary>
</Member>
<Member name="Document">
<summary>Displayed as document window.</summary>
</Member>
<Member name="DockTop">
<summary>Docked to the top edge.</summary>
</Member>
<Member name="DockLeft">
<summary>Docked to the left edge.</summary>
</Member>
<Member name="DockRight">
<summary>Docked to the right edge.</summary>
</Member>
<Member name="DockBottom">
<summary>Docked to the bottom edge.</summary>
</Member>
<Member name="Hidden">
<summary>The window is hidden.</summary>
</Member>
</Enum>
</CodeDoc>

18
src/Libraries/DockPanel_Src/WinFormsUI/Docking/CodeDoc/EventArgs.xml

@ -0,0 +1,18 @@ @@ -0,0 +1,18 @@
<?xml version="1.0" encoding="utf-8" ?>
<CodeDoc>
<Class name="DockContentEventArgs">
<ClassDef>
<summary>Provides data for <see cref="WeifenLuo.WinFormsUI.DockPanel.ContentAdded"/> and
<see cref="WeifenLuo.WinFormsUI.DockPanel.ContentRemoved"/> events.</summary>
</ClassDef>
<Constructor name="(DockContent)">
<summary>Initializes a new instance of <see cref="WeifenLuo.WinFormsUI.DockContentEventArgs"/> class.</summary>
<param name="content">The <see cref="WeifenLuo.WinFormsUI.DockContent"/> object.</param>
</Constructor>
<Property name="Content">
<summary>Gets the <see cref="WeifenLuo.WinFormsUI.DockContent"/> object.</summary>
<value>The <see cref="WeifenLuo.WinFormsUI.DockContent"/> object.</value>
</Property>
</Class>
</CodeDoc>

66
src/Libraries/DockPanel_Src/WinFormsUI/Docking/CodeDoc/FloatWindow.xml

@ -0,0 +1,66 @@ @@ -0,0 +1,66 @@
<?xml version="1.0" encoding="utf-8" ?>
<CodeDoc>
<Class name="FloatWindow">
<ClassDef>
<summary>Represents the floating window to contain the nested docking DockPane.</summary>
<remarks>
The <see cref="WeifenLuo.WinFormsUI.FloatWindow" /> implements <see cref="WeifenLuo.WinFormsUI.IDockListContainer" />,
it can contain a list of nested <see cref="WeifenLuo.WinFormsUI.DockPane" /> objects.
</remarks>
</ClassDef>
<Constructor name="Overloads">
<overloads>
<summary>Initializes a new instance of <see cref="WeifenLuo.WinFormsUI.FloatWindow" />.</summary>
</overloads>
</Constructor>
<Constructor name="(DockPanel, DockPane)">
<summary>Initializes a new instance of <see cref="WeifenLuo.WinFormsUI.FloatWindow" />,
with default size and location.</summary>
<param name="dockPanel">The <see cref="WeifenLuo.WinFormsUI.DockPanel" /> which owns this
<see cref="WeifenLuo.WinFormsUI.FloatWindow" />.</param>
<param name="pane">The first <see cref="WeifenLuo.WinFormsUI.DockPane" /> in this
<see cref="WeifenLuo.WinFormsUI.FloatWindow" />.</param>
</Constructor>
<Constructor name="(DockPanel, DockPane, Rectangle)">
<summary>Initializes a new instance of <see cref="WeifenLuo.WinFormsUI.FloatWindow" />,
with specified size and location.</summary>
<include file='FloatWindow.xml' path='//CodeDoc/Class[@name="FloatWindow"]/Constructor[@name="(DockPanel, DockPane)"]/param[@name="dockPanel"]' />
<include file='FloatWindow.xml' path='//CodeDoc/Class[@name="FloatWindow"]/Constructor[@name="(DockPanel, DockPane)"]/param[@name="pane"]' />
<param name="bounds">A <see cref="System.Drawing.Rectangle" /> for the location and size of the window.</param>
</Constructor>
<Property name="AllowRedocking">
<summary>Gets or sets if the drag and drop re-docking is allowed.</summary>
<value><b>True</b> if drag and drop re-docking is allowed; otherwise, <b>false</b>.</value>
</Property>
<Property name="DisplayingList">
<summary>Gets the <see cref="WeifenLuo.WinFormsUI.DisplayingDockList" /> which contains
a list of visible nested docking <see cref="WeifenLuo.WinFormsUI.DockPane" /> objects.</summary>
<value>The <see cref="WeifenLuo.WinFormsUI.DisplayingDockList" /> which contains
a list of visible nested docking <see cref="WeifenLuo.WinFormsUI.DockPane" /> objects.</value>
</Property>
<Property name="DisplayingRectangle">
<summary>Gets the rectangle represents the displaying area for nested docking DockPane objects.</summary>
<value>A <see cref="System.Drawing.Rectangle" /> represents the displaying area for nested docking DockPane objects.</value>
</Property>
<Property name="DockList">
<summary>Gets the <see cref="WeifenLuo.WinFormsUI.DockList" /> which contains
a list of nested docking <see cref="WeifenLuo.WinFormsUI.DockPane" /> objects.</summary>
<value>The <see cref="WeifenLuo.WinFormsUI.DockList" /> which contains
a list of nested docking <see cref="WeifenLuo.WinFormsUI.DockPane" /> objects.</value>
</Property>
<Property name="DockPanel">
<summary>Gets the <see cref="WeifenLuo.WinFormsUI.DockPanel" /> which contains this
<see cref="WeifenLuo.WinFormsUI.FloatWindow" />.</summary>
<value>The <see cref="WeifenLuo.WinFormsUI.DockPanel" /> which contains this
<see cref="WeifenLuo.WinFormsUI.FloatWindow" />.</value>
</Property>
<Property name="DockState">
<summary>Gets the docking state of this <see cref="WeifenLuo.WinFormsUI.FloatWindow" />.</summary>
<value>The value of this property is always <see cref="WeifenLuo.WinFormsUI.DockState.Float" />.</value>
</Property>
<Property name="IsFloat">
<summary>Gets to determine if this <see cref="WeifenLuo.WinFormsUI.FloatWindow" /> is floating.</summary>
<value>The value of this property is always <b>true</b>.</value>
</Property>
</Class>
</CodeDoc>

45
src/Libraries/DockPanel_Src/WinFormsUI/Docking/CodeDoc/FloatWindowCollection.xml

@ -0,0 +1,45 @@ @@ -0,0 +1,45 @@
<?xml version="1.0" encoding="utf-8" ?>
<CodeDoc>
<Class name="FloatWindowCollection">
<ClassDef>
<summary>Provides methods to manage a collection of <see cref="WeifenLuo.WinFormsUI.FloatWindow" /> objects.</summary>
</ClassDef>
<Property name="Item">
<summary>
<para>Gets a <see cref="WeifenLuo.WinFormsUI.FloatWindow" /> at the specified index.</para>
<para>In C#, this property is the indexer for the <see cref="WeifenLuo.WinFormsUI.FloatWindowCollection" /> class.</para>
</summary>
</Property>
<Method name="Contains(FloatWindow)">
<summary>
Determines whether a <see cref="WeifenLuo.WinFormsUI.FloatWindow" /> is in the
<see cref="WeifenLuo.WinFormsUI.FloatWindowCollection" />.
</summary>
<param name="fw">
The <see cref="WeifenLuo.WinFormsUI.FloatWindow" /> to locate in
<see cref="WeifenLuo.WinFormsUI.FloatWindowCollection" />.
</param>
<returns>
<b>true</b> if <paramref name="fw" /> is found in the
<see cref="WeifenLuo.WinFormsUI.FloatWindowCollection" />;
otherwise, <b>false</b>.
</returns>
</Method>
<Method name="IndexOf(FloatWindow)">
<summary>
Searches for the specified <see cref="WeifenLuo.WinFormsUI.FloatWindow" />
and returns the zero-based index within the entire
<see cref="WeifenLuo.WinFormsUI.FloatWindowCollection" />.
</summary>
<param name="fw">
The <see cref="WeifenLuo.WinFormsUI.FloatWindow" />
to locate in the <see cref="WeifenLuo.WinFormsUI.FloatWindowCollection" />
</param>
<returns>
The zero-based index of <paramref name="fw" /> within the entire
<see cref="WeifenLuo.WinFormsUI.FloatWindowCollection" />, if found;
otherwise, -1.
</returns>
</Method>
</Class>
</CodeDoc>

89
src/Libraries/DockPanel_Src/WinFormsUI/Docking/CodeDoc/Interfaces.xml

@ -0,0 +1,89 @@ @@ -0,0 +1,89 @@
<?xml version="1.0" encoding="utf-8" ?>
<CodeDoc>
<Interface name="IDockListContainer">
<InterfaceDef>
<summary>Container for nested docking <see cref='WeifenLuo.WinFormsUI.DockPane' /> objects.</summary>
<remarks>
<para>
<b>IDockListContainer</b> contains a list of <b>DockPane</b> objects
for nested docking. It maintans two lists: <see cref='WeifenLuo.WinFormsUI.DockList' />
and <see cref='WeifenLuo.WinFormsUI.DisplayingDockList' />. <b>DockList</b>
contains all <b>DockPane</b> objects, no matter it's visible or not; <b>DisplayingDockList</b> contains only
visible <b>DockPane</b> objects for this container.
</para>
<para>
Internally, <b>IDockListContainer</b> creates <b>DockList</b>, this <b>DockList</b> then creates <b>DisplayingDockList</b>,
and these two lists are always synchronized.
</para>
</remarks>
</InterfaceDef>
<Property name="DisplayingList">
<summary>Gets the <see cref="WeifenLuo.WinFormsUI.DisplayingDockList" /> which contains
a list of visible nested docking <see cref="WeifenLuo.WinFormsUI.DockPane" /> objects.</summary>
<value>The <see cref="WeifenLuo.WinFormsUI.DisplayingDockList" /> which contains
a list of visible nested docking <see cref="WeifenLuo.WinFormsUI.DockPane" /> objects.</value>
</Property>
<Property name="DisplayingRectangle">
<summary>Gets the rectangle represents the displaying area for nested docking DockPane objects.</summary>
<value>A <see cref="System.Drawing.Rectangle" /> represents the displaying area for nested docking DockPane objects.</value>
</Property>
<Property name="DockList">
<summary>Gets the <see cref="WeifenLuo.WinFormsUI.DockList" /> which contains
a list of nested docking <see cref="WeifenLuo.WinFormsUI.DockPane" /> objects.</summary>
<value>The <see cref="WeifenLuo.WinFormsUI.DockList" /> which contains
a list of nested docking <see cref="WeifenLuo.WinFormsUI.DockPane" /> objects.</value>
</Property>
<Property name="DockState">
<summary>Gets the docking state of this container.</summary>
<value>One of the <see cref='WeifenLuo.WinFormsUI.DockState' /> values.</value>
</Property>
<Property name="IsDisposed">
<summary>Gets a value indicates the control has been disposed of.</summary>
<value><b>True</b> if the control has been disposed of, otherwise, <b>false</b>.</value>
</Property>
<Property name="IsFloat">
<summary>Determines if this container window is floating.</summary>
<value><b>True</b> if is floating; otherwise, <b>false</b>.</value>
</Property>
</Interface>
<Interface name="IDockPaneFactory">
<InterfaceDef>
<summary>Provides methods to initialize a instance of <see cref="WeifenLuo.WinFormsUI.DockPane"/>.</summary>
<remarks>You can derive your own class from <see cref="WeifenLuo.WinFormsUI.DockPane"/>, and
override the <see cref="WeifenLuo.WinFormsUI.DockPanel.DockPaneFactory"/> property to create instance
of the derived class.</remarks>
</InterfaceDef>
<Method name="CreateDockPane">
<include file='DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Constructor[@name="Overloads"]/*' />
</Method>
<Method name="CreateDockPane(DockContent, DockState, bool)">
<include file='DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Constructor[@name="(DockContent, DockState, bool)"]/*' />
</Method>
<Method name="CreateDockPane(DockContent, FloatWindow, bool)">
<include file='DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Constructor[@name="(DockContent, FloatWindow, bool)"]/*' />
</Method>
<Method name="CreateDockPane(DockContent, DockPane, DockAlignment, double, bool)">
<include file='DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Constructor[@name="(DockContent, DockPane, DockAlignment, double, bool)"]/*' />
</Method>
<Method name="CreateDockPane(DockContent, Rectangle, bool)">
<include file='DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Constructor[@name="(DockContent, Rectangle, bool)"]/*' />
</Method>
</Interface>
<Interface name="IFloatWindowFactory">
<InterfaceDef>
<summary>Provides methods to initialize a instance of <see cref="WeifenLuo.WinFormsUI.FloatWindow"/>.</summary>
<remarks>You can derive your own class from <see cref="WeifenLuo.WinFormsUI.FloatWindow"/>, and
override the <see cref="WeifenLuo.WinFormsUI.DockPanel.FloatWindowFactory"/> property to create instance
of the derived class.</remarks>
</InterfaceDef>
<Method name="CreateFloatWindow">
<include file='FloatWindow.xml' path='//CodeDoc/Class[@name="FloatWindow"]/Constructor[@name="Overloads"]/*' />
</Method>
<Method name="CreateFloatWindow(DockPanel, DockPane)">
<include file='FloatWindow.xml' path='//CodeDoc/Class[@name="FloatWindow"]/Constructor[@name="(DockPanel, DockPane)"]/*' />
</Method>
<Method name="CreateFloatWindow(DockPanel, DockPane, Rectangle)">
<include file='FloatWindow.xml' path='//CodeDoc/Class[@name="FloatWindow"]/Constructor[@name="(DockPanel, DockPane, Rectangle)"]/*' />
</Method>
</Interface>
</CodeDoc>

60
src/Libraries/DockPanel_Src/WinFormsUI/Docking/CodeDoc/NestedDockingStatus.xml

@ -0,0 +1,60 @@ @@ -0,0 +1,60 @@
<?xml version="1.0" encoding="utf-8" ?>
<CodeDoc>
<Class name="NestedDockingStatus">
<ClassDef>
<summary>Provides nested docking information for a <see cref="WeifenLuo.WinFormsUI.DockPane"/>.</summary>
</ClassDef>
<Property name="Alignment">
<summary>Gets the edge of the target <see cref="WeifenLuo.WinFormsUI.DockPane"/> to dock.</summary>
<value>One of the <see cref="WeifenLuo.WinFormsUI.DockAlignment"/> values.</value>
</Property>
<Property name="DisplayingAlignment">
<summary>Gets the edge of the target <see cref="WeifenLuo.WinFormsUI.DockPane"/> to dock, when displaying.</summary>
<value>One of the <see cref="WeifenLuo.WinFormsUI.DockAlignment"/> values.</value>
</Property>
<Property name="DisplayingPrevPane">
<summary>Gets the target <see cref="WeifenLuo.WinFormsUI.DockPane"/> to dock, when displaying.</summary>
<value>A <see cref="WeifenLuo.WinFormsUI.DockPane"/> object that represents the target <see cref="WeifenLuo.WinFormsUI.DockPane"/> to dock, when displaying.</value>
</Property>
<Property name="DisplayingProportion">
<summary>Gets the size for the nested docking, when displaying.</summary>
<value>A value between 0 and 1 to indicate the size for the nested docking.</value>
</Property>
<Property name="DockList">
<summary>Gets the containing <see cref="WeifenLuo.WinFormsUI.DockList"/>.</summary>
<value>The containing <see cref="WeifenLuo.WinFormsUI.DockList"/>.</value>
</Property>
<Property name="DockPane">
<summary>Gets the containing <see cref="WeifenLuo.WinFormsUI.DockPane" />.</summary>
<value>The containing <see cref="WeifenLuo.WinFormsUI.DockPane" />.</value>
</Property>
<Property name="IsDisplaying">
<summary>Gets the value to indicate if current <see cref="WeifenLuo.WinFormsUI.DockPane"/> is being displayed.</summary>
<value><b>true</b> if current <see cref="WeifenLuo.WinFormsUI.DockPane"/> is being displayed, otherwise, <b>false</b>.</value>
</Property>
<Property name="LogicalBounds">
<summary>Gets the logical location and size of the <see cref="WeifenLuo.WinFormsUI.DockPane"/>.</summary>
<value>The <see cref="System.Drawing.Rectangle"/> to represent the logical location and size of the
<see cref="WeifenLuo.WinFormsUI.DockPane"/>.</value>
</Property>
<Property name="PaneBounds">
<summary>Gets the actual location and size of the <see cref="WeifenLuo.WinFormsUI.DockPane"/>.</summary>
<value>The <see cref="System.Drawing.Rectangle"/> to represent the actual location and size of the
<see cref="WeifenLuo.WinFormsUI.DockPane"/>.</value>
</Property>
<Property name="PrevPane">
<summary>Gets the target Gets the target <see cref="WeifenLuo.WinFormsUI.DockPane"/> to dock.</summary>
<value>A <see cref="WeifenLuo.WinFormsUI.DockPane"/> object that represents the target <see cref="WeifenLuo.WinFormsUI.DockPane"/> to dock.</value>
</Property>
<Property name="Proportion">
<summary>Gets the size for the nested docking.</summary>
<value>A value between 0 and 1 to indicate the size for the nested docking.</value>
</Property>
<Property name="SplitterBounds">
<summary>Gets the location and size of the <see cref="WeifenLuo.WinFormsUI.DockPane"/> splitter.</summary>
<value>The <see cref="System.Drawing.Rectangle"/> to represent the location and size of the
<see cref="WeifenLuo.WinFormsUI.DockPane"/> splitter.</value>
</Property>
</Class>
</CodeDoc>

36
src/Libraries/DockPanel_Src/WinFormsUI/DisplayingDockList.cs → src/Libraries/DockPanel_Src/WinFormsUI/Docking/DisplayingDockList.cs

@ -14,9 +14,7 @@ using System.Windows.Forms; @@ -14,9 +14,7 @@ using System.Windows.Forms;
namespace WeifenLuo.WinFormsUI
{
/// <summary>
/// Implements a list of visible dock panes. Created by DockList object.
/// </summary>
/// <include file='CodeDoc/DisplayingDockList.xml' path='//CodeDoc/Class[@name="DisplayingDockList"]/ClassDef/*'/>
public class DisplayingDockList : ReadOnlyCollectionBase
{
private DockList m_dockList;
@ -26,61 +24,43 @@ namespace WeifenLuo.WinFormsUI @@ -26,61 +24,43 @@ namespace WeifenLuo.WinFormsUI
m_dockList = dockList;
}
/// <summary>
/// Returns the associated DockList object.
/// </summary>
/// <include file='CodeDoc/DisplayingDockList.xml' path='//CodeDoc/Class[@name="DisplayingDockList"]/Property[@name="DockList"]/*'/>
public DockList DockList
{
get { return m_dockList; }
}
/// <summary>
/// Returns the container which owns the associated DockList object.
/// </summary>
/// <include file='CodeDoc\DisplayingDockList.xml' path='//CodeDoc/Class[@name="DisplayingDockList"]/Property[@name="Container"]/*'/>
public IDockListContainer Container
{
get { return DockList.Container; }
}
/// <summary>
/// Returns the docking state of the dock panes.
/// </summary>
/// <include file='CodeDoc\DisplayingDockList.xml' path='//CodeDoc/Class[@name="DisplayingDockList"]/Property[@name="DockState"]/*'/>
public DockState DockState
{
get { return DockList.DockState; }
}
/// <summary>
/// Determines if the docking state of the dock panes is floating.
/// </summary>
/// <include file='CodeDoc\DisplayingDockList.xml' path='//CodeDoc/Class[@name="DisplayingDockList"]/Property[@name="IsFloat"]/*'/>
public bool IsFloat
{
get { return DockList.IsFloat; }
}
/// <summary>
/// Determines if the specified dock pane is contained in the list.
/// </summary>
/// <param name="pane">Specified dock pane.</param>
/// <returns>True or False.</returns>
/// <include file='CodeDoc\DisplayingDockList.xml' path='//CodeDoc/Class[@name="DisplayingDockList"]/Method[@name="Contains(DockPane)"]/*'/>
public bool Contains(DockPane pane)
{
return InnerList.Contains(pane);
}
/// <summary>
/// Returns the index of the specified dock pane in the list.
/// </summary>
/// <param name="pane">Specified dock pane.</param>
/// <returns>True of False.</returns>
/// <include file='CodeDoc\DisplayingDockList.xml' path='//CodeDoc/Class[@name="DisplayingDockList"]/Method[@name="IndexOf(DockPane)"]/*'/>
public int IndexOf(DockPane pane)
{
return InnerList.IndexOf(pane);
}
/// <summary>
/// Indexer of the list. Returns DockPane object.
/// </summary>
/// <include file='CodeDoc\DisplayingDockList.xml' path='//CodeDoc/Class[@name="DisplayingDockList"]/Property[@name="Item"]/*'/>
public DockPane this[int index]
{
get { return InnerList[index] as DockPane; }

0
src/Libraries/DockPanel_Src/WinFormsUI/DockAreasEditor.cs → src/Libraries/DockPanel_Src/WinFormsUI/Docking/DockAreasEditor.cs

157
src/Libraries/DockPanel_Src/WinFormsUI/DockContent.cs → src/Libraries/DockPanel_Src/WinFormsUI/Docking/DockContent.cs

@ -16,23 +16,20 @@ using System.Runtime.InteropServices; @@ -16,23 +16,20 @@ using System.Runtime.InteropServices;
namespace WeifenLuo.WinFormsUI
{
/// <summary>
/// Each DockContent instance represents a single dockable unit within the docking window framework.
/// </summary>
/// <include file='CodeDoc\DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/ClassDef/*'/>
public class DockContent : Form
{
// Tab width and X position used by DockPane and DockPanel class
internal int TabWidth = 0;
internal int TabX = 0;
/// <summary>
/// Initialize a new DockContent instance.
/// </summary>
/// <include file='CodeDoc\DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Constructor[@name="()"]/*'/>
public DockContent()
{
RefreshMdiIntegration();
}
/// <exclude/>
protected override void Dispose(bool disposing)
{
if (disposing)
@ -50,9 +47,7 @@ namespace WeifenLuo.WinFormsUI @@ -50,9 +47,7 @@ namespace WeifenLuo.WinFormsUI
}
private bool m_allowRedocking = true;
/// <summary>
/// This property determines if drag and drop re-docking is allowed.
/// </summary>
/// <include file='CodeDoc\DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Property[@name="AllowRedocking"]/*'/>
[LocalizedCategory("Category.Docking")]
[LocalizedDescription("DockContent.AllowRedocking.Description")]
[DefaultValue(true)]
@ -63,9 +58,7 @@ namespace WeifenLuo.WinFormsUI @@ -63,9 +58,7 @@ namespace WeifenLuo.WinFormsUI
}
private DockAreas m_allowedAreas = DockAreas.DockLeft | DockAreas.DockRight | DockAreas.DockTop | DockAreas.DockBottom | DockAreas.Document | DockAreas.Float;
/// <summary>
/// This property determines the areas this DockContent can be displayed.
/// </summary>
/// <include file='CodeDoc\DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Property[@name="DockableAreas"]/*'/>
[LocalizedCategory("Category.Docking")]
[LocalizedDescription("DockContent.DockableAreas.Description")]
[DefaultValue(DockAreas.DockLeft|DockAreas.DockRight|DockAreas.DockTop|DockAreas.DockBottom|DockAreas.Document|DockAreas.Float)]
@ -88,9 +81,7 @@ namespace WeifenLuo.WinFormsUI @@ -88,9 +81,7 @@ namespace WeifenLuo.WinFormsUI
}
private double m_autoHidePortion = 0.25;
/// <summary>
/// This property determines the portion of the screen size when showing in auto-hide mode.
/// </summary>
/// <include file='CodeDoc\DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Property[@name="AutoHidePortion"]/*'/>
[LocalizedCategory("Category.Docking")]
[LocalizedDescription("DockContent.AutoHidePortion.Description")]
[DefaultValue(0.25)]
@ -116,9 +107,7 @@ namespace WeifenLuo.WinFormsUI @@ -116,9 +107,7 @@ namespace WeifenLuo.WinFormsUI
}
private string m_tabText = null;
/// <summary>
/// This property determines the tab text displayed for the dock pane caption. By setting value to this property can display different text for dock pane tab and caption.
/// </summary>
/// <include file='CodeDoc\DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Property[@name="TabText"]/*'/>
[LocalizedCategory("Category.Docking")]
[LocalizedDescription("DockContent.TabText.Description")]
[DefaultValue(null)]
@ -141,9 +130,7 @@ namespace WeifenLuo.WinFormsUI @@ -141,9 +130,7 @@ namespace WeifenLuo.WinFormsUI
}
private bool m_closeButton = true;
/// <summary>
/// This property determines whether this DockContent can be closed by clicking the close button of its dock pane.
/// </summary>
/// <include file='CodeDoc\DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Property[@name="CloseButton"]/*'/>
[LocalizedCategory("Category.Docking")]
[LocalizedDescription("DockContent.CloseButton.Description")]
[DefaultValue(true)]
@ -163,9 +150,7 @@ namespace WeifenLuo.WinFormsUI @@ -163,9 +150,7 @@ namespace WeifenLuo.WinFormsUI
}
private DockPanel m_dockPanel = null;
/// <summary>
/// This property determines the dock panel which this dock content attached to.
/// </summary>
/// <include file='CodeDoc\DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Property[@name="DockPanel"]/*'/>
[Browsable(false)]
public DockPanel DockPanel
{
@ -242,10 +227,8 @@ namespace WeifenLuo.WinFormsUI @@ -242,10 +227,8 @@ namespace WeifenLuo.WinFormsUI
}
}
/// <summary>
/// This property retrieves this content’s docking state. This value is identical to Pane.DockState property
/// </summary>
private DockState m_dockState = DockState.Unknown;
/// <include file='CodeDoc\DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Property[@name="DockState"]/*'/>
[Browsable(false)]
public DockState DockState
{
@ -262,10 +245,7 @@ namespace WeifenLuo.WinFormsUI @@ -262,10 +245,7 @@ namespace WeifenLuo.WinFormsUI
}
}
/// <summary>
/// This property determines the DockPane which contains this DockContent.
/// </summary>
[Browsable(false)]
/// <include file='CodeDoc\DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Property[@name="Pane"]/*'/>
public DockPane Pane
{
get { return IsFloat ? FloatPane : PanelPane; }
@ -284,6 +264,7 @@ namespace WeifenLuo.WinFormsUI @@ -284,6 +264,7 @@ namespace WeifenLuo.WinFormsUI
}
private bool m_isHidden = false;
/// <include file='CodeDoc\DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Property[@name="IsHidden"]/*'/>
[Browsable(false)]
public bool IsHidden
{
@ -298,6 +279,7 @@ namespace WeifenLuo.WinFormsUI @@ -298,6 +279,7 @@ namespace WeifenLuo.WinFormsUI
}
private DockState m_visibleState = DockState.Unknown;
/// <include file='CodeDoc\DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Property[@name="VisibleState"]/*'/>
[Browsable(false)]
public DockState VisibleState
{
@ -312,6 +294,7 @@ namespace WeifenLuo.WinFormsUI @@ -312,6 +294,7 @@ namespace WeifenLuo.WinFormsUI
}
private bool m_isFloat = false;
/// <include file='CodeDoc\DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Property[@name="IsFloat"]/*'/>
[Browsable(false)]
public bool IsFloat
{
@ -342,6 +325,7 @@ namespace WeifenLuo.WinFormsUI @@ -342,6 +325,7 @@ namespace WeifenLuo.WinFormsUI
}
private DockPane m_panelPane = null;
/// <include file='CodeDoc\DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Property[@name="PanelPane"]/*'/>
[Browsable(false)]
public DockPane PanelPane
{
@ -374,6 +358,7 @@ namespace WeifenLuo.WinFormsUI @@ -374,6 +358,7 @@ namespace WeifenLuo.WinFormsUI
}
private DockPane m_floatPane = null;
/// <include file='CodeDoc\DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Property[@name="FloatPane"]/*'/>
[Browsable(false)]
public DockPane FloatPane
{
@ -497,6 +482,7 @@ namespace WeifenLuo.WinFormsUI @@ -497,6 +482,7 @@ namespace WeifenLuo.WinFormsUI
{
get { return GetPersistString(); }
}
/// <include file='CodeDoc\DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Method[@name="GetPersistString()"]/*'/>
protected virtual string GetPersistString()
{
return GetType().ToString();
@ -509,9 +495,7 @@ namespace WeifenLuo.WinFormsUI @@ -509,9 +495,7 @@ namespace WeifenLuo.WinFormsUI
}
private bool m_hideOnClose = false;
/// <summary>
/// HideOnClose Property
/// </summary>
/// <include file='CodeDoc\DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Property[@name="HideOnClose"]/*'/>
[LocalizedCategory("Category.Docking")]
[LocalizedDescription("DockContent.HideOnClose.Description")]
[DefaultValue(false)]
@ -521,6 +505,7 @@ namespace WeifenLuo.WinFormsUI @@ -521,6 +505,7 @@ namespace WeifenLuo.WinFormsUI
set { m_hideOnClose = value; }
}
/// <exclude/>
public new MainMenu Menu
{
get { return HiddenMdiChild == null ? base.Menu : HiddenMdiChild.Menu; }
@ -533,10 +518,8 @@ namespace WeifenLuo.WinFormsUI @@ -533,10 +518,8 @@ namespace WeifenLuo.WinFormsUI
}
}
/// <summary>
/// ShowHint Property
/// </summary>
private DockState m_showHint = DockState.Unknown;
/// <include file='CodeDoc\DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Property[@name="ShowHint"]/*'/>
[LocalizedCategory("Category.Docking")]
[LocalizedDescription("DockContent.ShowHint.Description")]
[DefaultValue(DockState.Unknown)]
@ -556,6 +539,7 @@ namespace WeifenLuo.WinFormsUI @@ -556,6 +539,7 @@ namespace WeifenLuo.WinFormsUI
}
private bool m_isActivated = false;
/// <include file='CodeDoc\DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Property[@name="IsActivated"]/*'/>
[Browsable(false)]
public bool IsActivated
{
@ -569,12 +553,14 @@ namespace WeifenLuo.WinFormsUI @@ -569,12 +553,14 @@ namespace WeifenLuo.WinFormsUI
m_isActivated = value;
}
/// <include file='CodeDoc\DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Method[@name="IsDockStateValid(DockState)"]/*'/>
public bool IsDockStateValid(DockState dockState)
{
return DockHelper.IsDockStateValid(dockState, DockableAreas);
}
private ContextMenu m_tabPageContextMenu = null;
/// <include file='CodeDoc\DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Property[@name="TabPageContextMenu"]/*'/>
[LocalizedCategory("Category.Docking")]
[LocalizedDescription("DockContent.TabPageContextMenu.Description")]
[DefaultValue(null)]
@ -585,6 +571,7 @@ namespace WeifenLuo.WinFormsUI @@ -585,6 +571,7 @@ namespace WeifenLuo.WinFormsUI
}
private string m_toolTipText = null;
/// <include file='CodeDoc\DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Property[@name="ToolTipText"]/*'/>
[Category("Appearance")]
[LocalizedDescription("DockContent.ToolTipText.Description")]
[DefaultValue(null)]
@ -594,6 +581,7 @@ namespace WeifenLuo.WinFormsUI @@ -594,6 +581,7 @@ namespace WeifenLuo.WinFormsUI
set { m_toolTipText = value; }
}
/// <include file='CodeDoc\DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Method[@name="Activate()"]/*'/>
public new void Activate()
{
if (DockPanel == null)
@ -608,6 +596,7 @@ namespace WeifenLuo.WinFormsUI @@ -608,6 +596,7 @@ namespace WeifenLuo.WinFormsUI
}
}
/// <exclude/>
public new void Hide()
{
IsHidden = true;
@ -620,17 +609,26 @@ namespace WeifenLuo.WinFormsUI @@ -620,17 +609,26 @@ namespace WeifenLuo.WinFormsUI
Control oldParent = Parent;
///!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
/// Workaround for .Net Framework bug: removing control from Form may cause form
/// unclosable. Set focus to another dummy control.
///!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Form form = FindForm();
//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
// Workaround for .Net Framework bug: removing control from Form may cause form
// unclosable. Set focus to another dummy control.
//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Form form = null;
if (Parent is DockPane)
form = ((DockPane)Parent).FindForm();
if (ContainsFocus)
{
if (form is FloatWindow)
{
((FloatWindow)form).DummyControl.Focus();
form.ActiveControl = ((FloatWindow)form).DummyControl;
}
else if (DockPanel != null)
{
DockPanel.DummyControl.Focus();
if (form != null)
form.ActiveControl = DockPanel.DummyControl;
}
}
//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
@ -638,6 +636,8 @@ namespace WeifenLuo.WinFormsUI @@ -638,6 +636,8 @@ namespace WeifenLuo.WinFormsUI
Parent = value;
}
/// <include file='CodeDoc\DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Method[@name="Show"]/*'/>
/// <include file='CodeDoc\DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Method[@name="Show()"]/*'/>
public new void Show()
{
if (DockPanel == null)
@ -646,6 +646,7 @@ namespace WeifenLuo.WinFormsUI @@ -646,6 +646,7 @@ namespace WeifenLuo.WinFormsUI
Show(DockPanel);
}
/// <include file='CodeDoc\DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Method[@name="Show(DockPanel)"]/*'/>
public void Show(DockPanel dockPanel)
{
if (dockPanel == null)
@ -657,6 +658,7 @@ namespace WeifenLuo.WinFormsUI @@ -657,6 +658,7 @@ namespace WeifenLuo.WinFormsUI
Activate();
}
/// <include file='CodeDoc\DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Method[@name="Show(DockPanel, DockState)"]/*'/>
public void Show(DockPanel dockPanel, DockState dockState)
{
if (dockPanel == null)
@ -667,7 +669,9 @@ namespace WeifenLuo.WinFormsUI @@ -667,7 +669,9 @@ namespace WeifenLuo.WinFormsUI
DockPanel = dockPanel;
if (Pane == null)
if (dockState == DockState.Float && FloatPane == null)
Pane = DockPanel.DockPaneFactory.CreateDockPane(this, DockState.Float, true);
else if (PanelPane == null)
{
DockPane paneExisting = null;
foreach (DockPane pane in DockPanel.Panes)
@ -677,15 +681,78 @@ namespace WeifenLuo.WinFormsUI @@ -677,15 +681,78 @@ namespace WeifenLuo.WinFormsUI
break;
}
if (paneExisting == null || dockState == DockState.Float)
if (paneExisting == null)
Pane = DockPanel.DockPaneFactory.CreateDockPane(this, dockState, true);
else
Pane = paneExisting;
}
DockState = dockState;
Activate();
}
/// <include file='CodeDoc\DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Method[@name="Show(DockPanel, Rectangle)"]/*'/>
public void Show(DockPanel dockPanel, Rectangle floatWindowBounds)
{
if (dockPanel == null)
throw(new ArgumentNullException(ResourceHelper.GetString("DockContent.Show.NullDockPanel")));
DockPanel = dockPanel;
if (FloatPane == null)
{
IsHidden = true; // to reduce the screen flicker
FloatPane = DockPanel.DockPaneFactory.CreateDockPane(this, DockState.Float, false);
FloatPane.FloatWindow.StartPosition = FormStartPosition.Manual;
}
FloatPane.FloatWindow.Bounds = floatWindowBounds;
Show(dockPanel, DockState.Float);
Activate();
}
/// <include file='CodeDoc\DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Method[@name="Show(DockPane, DockContent)"]/*'/>
public void Show(DockPane pane, DockContent beforeContent)
{
if (pane == null)
throw(new ArgumentNullException(ResourceHelper.GetString("DockContent.Show.NullPane")));
if (beforeContent != null && pane.Contents.IndexOf(beforeContent) == -1)
throw(new ArgumentException(ResourceHelper.GetString("DockContent.Show.InvalidBeforeContent")));
DockPanel = pane.DockPanel;
Pane = pane;
pane.SetContentIndex(this, pane.Contents.IndexOf(beforeContent));
Show();
}
/// <include file='CodeDoc\DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Method[@name="Show(DockPane, DockAlignment, double)"]/*'/>
public void Show(DockPane prevPane, DockAlignment alignment, double proportion)
{
if (prevPane == null)
throw(new ArgumentException(ResourceHelper.GetString("DockContent.Show.InvalidPrevPane")));
if (DockHelper.IsDockStateAutoHide(prevPane.DockState))
throw(new ArgumentException(ResourceHelper.GetString("DockContent.Show.InvalidPrevPane")));
DockPanel = prevPane.DockPanel;
DockPanel.DockPaneFactory.CreateDockPane(this, prevPane, alignment, proportion, true);
Show();
}
/// <exclude/>
public new void Close()
{
if (DockPanel != null)
{
DockPanel = null;
Dispose();
}
else
base.Close();
}
/// <exclude/>
protected override void OnTextChanged(EventArgs e)
{
if (m_hiddenMdiChild != null)
@ -748,6 +815,7 @@ namespace WeifenLuo.WinFormsUI @@ -748,6 +815,7 @@ namespace WeifenLuo.WinFormsUI
#region Events
private static readonly object DockStateChangedEvent = new object();
/// <include file='CodeDoc\DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Event[@name="DockStateChanged"]/*'/>
[LocalizedCategory("Category.PropertyChanged")]
[LocalizedDescription("Pane.DockStateChanged.Description")]
public event EventHandler DockStateChanged
@ -755,6 +823,7 @@ namespace WeifenLuo.WinFormsUI @@ -755,6 +823,7 @@ namespace WeifenLuo.WinFormsUI
add { Events.AddHandler(DockStateChangedEvent, value); }
remove { Events.RemoveHandler(DockStateChangedEvent, value); }
}
/// <include file='CodeDoc\DockContent.xml' path='//CodeDoc/Class[@name="DockContent"]/Method[@name="OnDockStateChanged(EventArgs)"]/*'/>
protected virtual void OnDockStateChanged(EventArgs e)
{
EventHandler handler = (EventHandler)Events[DockStateChangedEvent];

6
src/Libraries/DockPanel_Src/WinFormsUI/DockContentCollection.cs → src/Libraries/DockPanel_Src/WinFormsUI/Docking/DockContentCollection.cs

@ -13,12 +13,14 @@ using System.Collections; @@ -13,12 +13,14 @@ using System.Collections;
namespace WeifenLuo.WinFormsUI
{
/// <include file='CodeDoc\DockContentCollection.xml' path='//CodeDoc/Class[@name="DockContentCollection"]/ClassDef/*'/>>
public class DockContentCollection : ReadOnlyCollectionBase
{
internal DockContentCollection()
{
}
/// <include file='CodeDoc\DockContentCollection.xml' path='//CodeDoc/Class[@name="DockContentCollection"]/Property[@name="Item"]/*'/>>
public DockContent this[int index]
{
get { return InnerList[index] as DockContent; }
@ -59,11 +61,13 @@ namespace WeifenLuo.WinFormsUI @@ -59,11 +61,13 @@ namespace WeifenLuo.WinFormsUI
InnerList.Clear();
}
/// <include file='CodeDoc\DockContentCollection.xml' path='//CodeDoc/Class[@name="DockContentCollection"]/Method[@name="Contains(DockContent)"]/*'/>
public bool Contains(DockContent content)
{
return InnerList.Contains(content);
}
/// <include file='CodeDoc\DockContentCollection.xml' path='//CodeDoc/Class[@name="DockContentCollection"]/Method[@name="IndexOf(DockContent)"]/*'/>
public int IndexOf(DockContent content)
{
if (!Contains(content))
@ -80,7 +84,7 @@ namespace WeifenLuo.WinFormsUI @@ -80,7 +84,7 @@ namespace WeifenLuo.WinFormsUI
InnerList.Remove(content);
}
public DockContent[] Select(DockAreas stateFilter)
internal DockContent[] Select(DockAreas stateFilter)
{
int count = 0;
foreach (DockContent c in this)

3
src/Libraries/DockPanel_Src/WinFormsUI/DockHelper.cs → src/Libraries/DockPanel_Src/WinFormsUI/Docking/DockHelper.cs

@ -12,9 +12,6 @@ using System; @@ -12,9 +12,6 @@ using System;
namespace WeifenLuo.WinFormsUI
{
/// <summary>
/// Summary description for DockHelper.
/// </summary>
internal class DockHelper
{
public static bool IsDockStateAutoHide(DockState dockState)

11
src/Libraries/DockPanel_Src/WinFormsUI/DockList.cs → src/Libraries/DockPanel_Src/WinFormsUI/Docking/DockList.cs

@ -13,6 +13,7 @@ using System.Drawing; @@ -13,6 +13,7 @@ using System.Drawing;
namespace WeifenLuo.WinFormsUI
{
/// <include file='CodeDoc/DockList.xml' path='//CodeDoc/Class[@name="DockList"]/ClassDef/*'/>
public class DockList : ReadOnlyCollectionBase
{
private IDockListContainer m_container;
@ -24,36 +25,43 @@ namespace WeifenLuo.WinFormsUI @@ -24,36 +25,43 @@ namespace WeifenLuo.WinFormsUI
m_displayingList = new DisplayingDockList(this);
}
/// <include file='CodeDoc\DockList.xml' path='//CodeDoc/Class[@name="DockList"]/Property[@name="Container"]/*'/>
public IDockListContainer Container
{
get { return m_container; }
}
internal DisplayingDockList DisplayingList
/// <include file='CodeDoc\DockList.xml' path='//CodeDoc/Class[@name="DockList"]/Property[@name="DisplayingList"]/*'/>
public DisplayingDockList DisplayingList
{
get { return m_displayingList; }
}
/// <include file='CodeDoc\DockList.xml' path='//CodeDoc/Class[@name="DockList"]/Property[@name="DockState"]/*'/>
public DockState DockState
{
get { return Container.DockState; }
}
/// <include file='CodeDoc\DockList.xml' path='//CodeDoc/Class[@name="DockList"]/Property[@name="IsFloat"]/*'/>
public bool IsFloat
{
get { return DockState == DockState.Float; }
}
/// <include file='CodeDoc\DockList.xml' path='//CodeDoc/Class[@name="DockList"]/Method[@name="Contains(DockPane)"]/*'/>
public bool Contains(DockPane pane)
{
return InnerList.Contains(pane);
}
/// <include file='CodeDoc\DockList.xml' path='//CodeDoc/Class[@name="DockList"]/Method[@name="IndexOf(DockPane)"]/*'/>
public int IndexOf(DockPane pane)
{
return InnerList.IndexOf(pane);
}
/// <include file='CodeDoc\DockList.xml' path='//CodeDoc/Class[@name="DockList"]/Property[@name="Item"]/*'/>
public DockPane this[int index]
{
get { return InnerList[index] as DockPane; }
@ -126,6 +134,7 @@ namespace WeifenLuo.WinFormsUI @@ -126,6 +134,7 @@ namespace WeifenLuo.WinFormsUI
statusPane.SetDisplayingBounds(Rectangle.Empty, Rectangle.Empty, Rectangle.Empty);
}
/// <include file='CodeDoc\DockList.xml' path='//CodeDoc/Class[@name="DockList"]/Method[@name="GetDefaultPrevPane(DockPane)"]/*'/>
public DockPane GetDefaultPrevPane(DockPane pane)
{
for (int i=Count-1; i>=0; i--)

162
src/Libraries/DockPanel_Src/WinFormsUI/DockPane.cs → src/Libraries/DockPanel_Src/WinFormsUI/Docking/DockPane.cs

@ -17,15 +17,16 @@ using System.Runtime.InteropServices; @@ -17,15 +17,16 @@ using System.Runtime.InteropServices;
namespace WeifenLuo.WinFormsUI
{
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/ClassDef/*'/>
public class DockPane : UserControl
{
protected enum DockPaneAppearance
private enum AppearanceStyle
{
ToolWindow,
Document
}
protected enum HitTestArea
private enum HitTestArea
{
Caption,
TabStrip,
@ -33,7 +34,7 @@ namespace WeifenLuo.WinFormsUI @@ -33,7 +34,7 @@ namespace WeifenLuo.WinFormsUI
None
}
protected struct HitTestResult
private struct HitTestResult
{
public HitTestArea HitArea;
public int Index;
@ -115,22 +116,34 @@ namespace WeifenLuo.WinFormsUI @@ -115,22 +116,34 @@ namespace WeifenLuo.WinFormsUI
private int m_offset = 0;
private ToolTip m_toolTip;
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Constructor[@name="Overloads"]/*'/>
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Constructor[@name="(DockContent, DockState, bool)"]/*'/>
public DockPane(DockContent content, DockState visibleState, bool show)
{
InternalConstruct(content, visibleState, null, false, Rectangle.Empty, show);
InternalConstruct(content, visibleState, false, Rectangle.Empty, null, DockAlignment.Right, 0.5, show);
}
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Constructor[@name="(DockContent, FloatWindow, bool)"]/*'/>
public DockPane(DockContent content, FloatWindow floatWindow, bool show)
{
InternalConstruct(content, DockState.Float, floatWindow, false, Rectangle.Empty, show);
InternalConstruct(content, DockState.Float, false, Rectangle.Empty, floatWindow.DockList.GetDefaultPrevPane(this), DockAlignment.Right, 0.5, show);
}
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Constructor[@name="(DockContent, DockPane, DockAlignment, double, bool)"]/*'/>
public DockPane(DockContent content, DockPane prevPane, DockAlignment alignment, double proportion, bool show)
{
if (prevPane == null)
throw(new ArgumentNullException());
InternalConstruct(content, prevPane.DockState, false, Rectangle.Empty, prevPane, alignment, proportion, show);
}
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Constructor[@name="(DockContent, Rectangle, bool)"]/*'/>
public DockPane(DockContent content, Rectangle floatWindowBounds, bool show)
{
InternalConstruct(content, DockState.Float, null, true, floatWindowBounds, show);
InternalConstruct(content, DockState.Float, true, floatWindowBounds, null, DockAlignment.Right, 0.5, show);
}
private void InternalConstruct(DockContent content, DockState dockState, FloatWindow floatWindow, bool flagBounds, Rectangle floatWindowBounds, bool show)
private void InternalConstruct(DockContent content, DockState dockState, bool flagBounds, Rectangle floatWindowBounds, DockPane prevPane, DockAlignment alignment, double proportion, bool show)
{
if (dockState == DockState.Hidden || dockState == DockState.Unknown)
throw new ArgumentException(ResourceHelper.GetString("DockPane.DockState.InvalidState"));
@ -196,10 +209,10 @@ namespace WeifenLuo.WinFormsUI @@ -196,10 +209,10 @@ namespace WeifenLuo.WinFormsUI
Font = SystemInformation.MenuFont;
m_isFloat = (dockState == DockState.Float);
if (floatWindow != null)
FloatWindow = floatWindow;
else if (flagBounds)
if (flagBounds)
FloatWindow = DockPanel.FloatWindowFactory.CreateFloatWindow(DockPanel, this, floatWindowBounds);
else if (prevPane != null)
AddToDockList(prevPane.DockListContainer, prevPane, alignment, proportion);
SetDockState(dockState);
if (show)
@ -214,10 +227,11 @@ namespace WeifenLuo.WinFormsUI @@ -214,10 +227,11 @@ namespace WeifenLuo.WinFormsUI
private void Close_Click(object sender, EventArgs e)
{
CloseActiveContent();
if (ActiveContent != null)
if (!DockHelper.IsDockStateAutoHide(DockState) && ActiveContent != null)
ActiveContent.Activate();
}
/// <exclude/>
protected override void Dispose(bool disposing)
{
if (disposing)
@ -241,6 +255,7 @@ namespace WeifenLuo.WinFormsUI @@ -241,6 +255,7 @@ namespace WeifenLuo.WinFormsUI
}
private DockContent m_activeContent = null;
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Property[@name="ActiveContent"]/*'/>
public virtual DockContent ActiveContent
{
get { return m_activeContent; }
@ -279,15 +294,16 @@ namespace WeifenLuo.WinFormsUI @@ -279,15 +294,16 @@ namespace WeifenLuo.WinFormsUI
}
private bool m_allowRedocking = true;
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Property[@name="AllowRedocking"]/*'/>
public virtual bool AllowRedocking
{
get { return m_allowRedocking; }
set { m_allowRedocking = value; }
}
protected virtual Rectangle CaptionRectangle
private Rectangle CaptionRectangle
{
get { return Appearance == DockPaneAppearance.ToolWindow ? CaptionRectangle_ToolWindow : Rectangle.Empty; }
get { return Appearance == AppearanceStyle.ToolWindow ? CaptionRectangle_ToolWindow : Rectangle.Empty; }
}
private Rectangle CaptionRectangle_ToolWindow
@ -312,18 +328,20 @@ namespace WeifenLuo.WinFormsUI @@ -312,18 +328,20 @@ namespace WeifenLuo.WinFormsUI
}
}
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Property[@name="CaptionText"]/*'/>
public virtual string CaptionText
{
get { return ActiveContent == null ? string.Empty : ActiveContent.Text; }
}
private IContainer m_components;
/// <exclude/>
protected IContainer Components
{
get { return m_components; }
}
protected virtual Rectangle ContentRectangle
private Rectangle ContentRectangle
{
get
{
@ -342,11 +360,13 @@ namespace WeifenLuo.WinFormsUI @@ -342,11 +360,13 @@ namespace WeifenLuo.WinFormsUI
}
private DockContentCollection m_contents;
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Property[@name="Contents"]/*'/>
public DockContentCollection Contents
{
get { return m_contents; }
}
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Property[@name="CountOfVisibleContents"]/*'/>
public int CountOfVisibleContents
{
get
@ -361,18 +381,20 @@ namespace WeifenLuo.WinFormsUI @@ -361,18 +381,20 @@ namespace WeifenLuo.WinFormsUI
}
}
/// <exclude/>
protected override Size DefaultSize
{
get { return Size.Empty; }
}
private DockPanel m_dockPanel;
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Property[@name="DockPanel"]/*'/>
public DockPanel DockPanel
{
get { return m_dockPanel; }
}
protected bool HasCaption
private bool HasCaption
{
get
{
@ -387,6 +409,7 @@ namespace WeifenLuo.WinFormsUI @@ -387,6 +409,7 @@ namespace WeifenLuo.WinFormsUI
}
private bool m_isActivated = false;
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Property[@name="IsActivated"]/*'/>
public bool IsActivated
{
get { return m_isActivated; }
@ -403,6 +426,7 @@ namespace WeifenLuo.WinFormsUI @@ -403,6 +426,7 @@ namespace WeifenLuo.WinFormsUI
}
private bool m_isActiveDocumentPane = false;
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Property[@name="IsActiveDocumentPane"]/*'/>
public bool IsActiveDocumentPane
{
get { return m_isActiveDocumentPane; }
@ -418,6 +442,7 @@ namespace WeifenLuo.WinFormsUI @@ -418,6 +442,7 @@ namespace WeifenLuo.WinFormsUI
OnIsActiveDocumentPaneChanged(EventArgs.Empty);
}
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Method[@name="IsDockStateValid(DockState)"]/*'/>
public bool IsDockStateValid(DockState dockState)
{
foreach (DockContent content in Contents)
@ -427,6 +452,7 @@ namespace WeifenLuo.WinFormsUI @@ -427,6 +452,7 @@ namespace WeifenLuo.WinFormsUI
return true;
}
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Property[@name="IsActiveDocumentPane"]/*'/>
public bool IsAutoHide
{
get { return DockHelper.IsDockStateAutoHide(DockState); }
@ -438,9 +464,9 @@ namespace WeifenLuo.WinFormsUI @@ -438,9 +464,9 @@ namespace WeifenLuo.WinFormsUI
get { return m_splitter; }
}
protected DockPaneAppearance Appearance
private AppearanceStyle Appearance
{
get { return (DockState == DockState.Document) ? DockPaneAppearance.Document : DockPaneAppearance.ToolWindow; }
get { return (DockState == DockState.Document) ? AppearanceStyle.Document : AppearanceStyle.ToolWindow; }
}
private Rectangle TabStripRectangle
@ -448,14 +474,15 @@ namespace WeifenLuo.WinFormsUI @@ -448,14 +474,15 @@ namespace WeifenLuo.WinFormsUI
get { return GetTabStripRectangle(); }
}
protected virtual Rectangle DisplayingRectangle
private Rectangle DisplayingRectangle
{
get { return ClientRectangle; }
}
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Method[@name="Activate()"]/*'/>
public void Activate()
{
if (DockHelper.IsDockStateAutoHide(DockState) && DockPanel.ActiveContent != ActiveContent)
if (DockHelper.IsDockStateAutoHide(DockState) && DockPanel.ActiveAutoHideContent != ActiveContent)
DockPanel.ActiveAutoHideContent = ActiveContent;
if (!IsActivated)
@ -479,7 +506,7 @@ namespace WeifenLuo.WinFormsUI @@ -479,7 +506,7 @@ namespace WeifenLuo.WinFormsUI
private void CalculateTabs()
{
if (Appearance == DockPaneAppearance.ToolWindow)
if (Appearance == AppearanceStyle.ToolWindow)
CalculateTabs_ToolWindow();
else
CalculateTabs_Document();
@ -492,9 +519,7 @@ namespace WeifenLuo.WinFormsUI @@ -492,9 +519,7 @@ namespace WeifenLuo.WinFormsUI
Rectangle rectTabStrip = GetTabStripRectangle();
//////////////////////////////////////////////////////////////////////////////
/// Calculate tab widths
/// //////////////////////////////////////////////////////////////////////////
// Calculate tab widths
int countOfVisibleContents = CountOfVisibleContents;
int[] maxWidths = new int[countOfVisibleContents];
bool[] flags = new bool[countOfVisibleContents];
@ -555,9 +580,7 @@ namespace WeifenLuo.WinFormsUI @@ -555,9 +580,7 @@ namespace WeifenLuo.WinFormsUI
}
}
//////////////////////////////////////////////////////////////////////////////
/// Set the X position of the tabs
/////////////////////////////////////////////////////////////////////////////
// Set the X position of the tabs
int x = rectTabStrip.X + MeasureToolWindowTab.StripGapLeft;
for (int i=0; i<countOfVisibleContents; ++i)
{
@ -592,12 +615,12 @@ namespace WeifenLuo.WinFormsUI @@ -592,12 +615,12 @@ namespace WeifenLuo.WinFormsUI
}
}
public virtual void Close()
internal void Close()
{
Dispose();
}
protected virtual void CloseActiveContent()
private void CloseActiveContent()
{
DockContent content = ActiveContent;
@ -608,10 +631,10 @@ namespace WeifenLuo.WinFormsUI @@ -608,10 +631,10 @@ namespace WeifenLuo.WinFormsUI
content.Hide();
else
{
///!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
/// Workaround for .Net Framework bug: removing control from Form may cause form
/// unclosable.
///!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
// Workaround for .Net Framework bug: removing control from Form may cause form
// unclosable.
//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Form form = FindForm();
if (ContainsFocus)
{
@ -633,9 +656,9 @@ namespace WeifenLuo.WinFormsUI @@ -633,9 +656,9 @@ namespace WeifenLuo.WinFormsUI
}
}
protected virtual void DrawCaption(Graphics g)
private void DrawCaption(Graphics g)
{
if (Appearance == DockPaneAppearance.Document)
if (Appearance == AppearanceStyle.Document)
return;
Rectangle rectCaption = CaptionRectangle;
@ -674,9 +697,9 @@ namespace WeifenLuo.WinFormsUI @@ -674,9 +697,9 @@ namespace WeifenLuo.WinFormsUI
g.DrawString(CaptionText, Font, brush, rectCaptionText, StringFormatDockWindowCaption);
}
protected virtual void DrawTab(Graphics g, DockContent content, Rectangle rect)
private void DrawTab(Graphics g, DockContent content, Rectangle rect)
{
if (Appearance == DockPaneAppearance.ToolWindow)
if (Appearance == AppearanceStyle.ToolWindow)
DrawTab_ToolWindow(g, content, rect);
else
DrawTab_Document(g, content, rect);
@ -747,9 +770,9 @@ namespace WeifenLuo.WinFormsUI @@ -747,9 +770,9 @@ namespace WeifenLuo.WinFormsUI
}
}
protected virtual void DrawTabStrip(Graphics g)
private void DrawTabStrip(Graphics g)
{
if (Appearance == DockPaneAppearance.ToolWindow)
if (Appearance == AppearanceStyle.ToolWindow)
DrawTabStrip_ToolWindow(g);
else
DrawTabStrip_Document(g);
@ -806,7 +829,7 @@ namespace WeifenLuo.WinFormsUI @@ -806,7 +829,7 @@ namespace WeifenLuo.WinFormsUI
private void EnsureTabVisible(DockContent content)
{
if (Appearance != DockPaneAppearance.Document)
if (Appearance != AppearanceStyle.Document)
return;
CalculateTabs();
@ -831,7 +854,7 @@ namespace WeifenLuo.WinFormsUI @@ -831,7 +854,7 @@ namespace WeifenLuo.WinFormsUI
return GetHitTest(Control.MousePosition);
}
protected HitTestResult GetHitTest(Point ptMouse)
private HitTestResult GetHitTest(Point ptMouse)
{
HitTestResult hitTestResult = new HitTestResult(HitTestArea.None, -1);
@ -883,7 +906,7 @@ namespace WeifenLuo.WinFormsUI @@ -883,7 +906,7 @@ namespace WeifenLuo.WinFormsUI
private int GetTabOriginalWidth(int index)
{
if (Appearance == DockPaneAppearance.ToolWindow)
if (Appearance == AppearanceStyle.ToolWindow)
return GetTabOriginalWidth_ToolWindow(index);
else
return GetTabOriginalWidth_Document(index);
@ -923,7 +946,7 @@ namespace WeifenLuo.WinFormsUI @@ -923,7 +946,7 @@ namespace WeifenLuo.WinFormsUI
private Rectangle GetTabRectangle(int index)
{
if (Appearance == DockPaneAppearance.ToolWindow)
if (Appearance == AppearanceStyle.ToolWindow)
return GetTabRectangle_ToolWindow(index);
else
return GetTabRectangle_Document(index);
@ -953,13 +976,13 @@ namespace WeifenLuo.WinFormsUI @@ -953,13 +976,13 @@ namespace WeifenLuo.WinFormsUI
private Rectangle GetTabStripRectangle(bool tabOnly)
{
if (Appearance == DockPaneAppearance.ToolWindow)
if (Appearance == AppearanceStyle.ToolWindow)
return GetTabStripRectangle_ToolWindow(tabOnly);
else
return GetTabStripRectangle_Document(tabOnly);
}
protected Rectangle GetTabStripRectangle_ToolWindow(bool tabOnly)
private Rectangle GetTabStripRectangle_ToolWindow(bool tabOnly)
{
if (CountOfVisibleContents <= 1 || IsAutoHide)
return Rectangle.Empty;
@ -979,7 +1002,7 @@ namespace WeifenLuo.WinFormsUI @@ -979,7 +1002,7 @@ namespace WeifenLuo.WinFormsUI
return new Rectangle(x, y, width, height);
}
protected Rectangle GetTabStripRectangle_Document(bool tabOnly)
private Rectangle GetTabStripRectangle_Document(bool tabOnly)
{
if (CountOfVisibleContents == 0)
return Rectangle.Empty;
@ -1011,7 +1034,7 @@ namespace WeifenLuo.WinFormsUI @@ -1011,7 +1034,7 @@ namespace WeifenLuo.WinFormsUI
private Region GetTestDropOutline(DockStyle dockStyle, int contentIndex)
{
if (Appearance == DockPaneAppearance.ToolWindow)
if (Appearance == AppearanceStyle.ToolWindow)
return GetTestDropOutline_ToolWindow(dockStyle, contentIndex);
else
return GetTestDropOutline_Document(dockStyle, contentIndex);
@ -1097,6 +1120,7 @@ namespace WeifenLuo.WinFormsUI @@ -1097,6 +1120,7 @@ namespace WeifenLuo.WinFormsUI
return DrawHelper.CreateDragOutline(rects, dragSize);
}
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Method[@name="GetVisibleContent(int)"]/*'/>
public DockContent GetVisibleContent(int index)
{
int currentIndex = -1;
@ -1112,6 +1136,7 @@ namespace WeifenLuo.WinFormsUI @@ -1112,6 +1136,7 @@ namespace WeifenLuo.WinFormsUI
}
private bool m_isHidden = true;
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Property[@name="IsHidden"]/*'/>
public bool IsHidden
{
get { return m_isHidden; }
@ -1122,10 +1147,16 @@ namespace WeifenLuo.WinFormsUI @@ -1122,10 +1147,16 @@ namespace WeifenLuo.WinFormsUI
return;
m_isHidden = value;
if (DockListContainer != null)
if (DockHelper.IsDockStateAutoHide(DockState))
{
DockPanel.Invalidate();
DockPanel.PerformLayout();
}
else if (DockListContainer != null)
((Control)DockListContainer).PerformLayout();
}
/// <exclude/>
protected override void OnLayout(LayoutEventArgs e)
{
SetIsHidden(CountOfVisibleContents == 0);
@ -1137,7 +1168,7 @@ namespace WeifenLuo.WinFormsUI @@ -1137,7 +1168,7 @@ namespace WeifenLuo.WinFormsUI
foreach (DockContent content in Contents)
{
if (content.DockState == DockState)
if (content.Pane == this)
{
content.Bounds = (content == ActiveContent) ? rectContent : Rectangle.Empty;
content.Visible = (content == ActiveContent);
@ -1148,6 +1179,7 @@ namespace WeifenLuo.WinFormsUI @@ -1148,6 +1179,7 @@ namespace WeifenLuo.WinFormsUI
base.OnLayout(e);
}
/// <exclude/>
protected override void OnMouseMove(MouseEventArgs e)
{
HitTestResult hitTestResult = GetHitTest();
@ -1174,6 +1206,7 @@ namespace WeifenLuo.WinFormsUI @@ -1174,6 +1206,7 @@ namespace WeifenLuo.WinFormsUI
}
}
/// <exclude/>
protected override void OnPaint(PaintEventArgs e)
{
if (ActiveContent != null)
@ -1187,6 +1220,7 @@ namespace WeifenLuo.WinFormsUI @@ -1187,6 +1220,7 @@ namespace WeifenLuo.WinFormsUI
base.OnPaint(e);
}
/// <exclude/>
public override void Refresh()
{
base.Refresh();
@ -1270,7 +1304,7 @@ namespace WeifenLuo.WinFormsUI @@ -1270,7 +1304,7 @@ namespace WeifenLuo.WinFormsUI
m_buttonScrollLeft.Visible = m_buttonScrollRight.Visible = m_buttonDocumentWindowClose.Visible = false;
}
if (Appearance == DockPaneAppearance.ToolWindow)
if (Appearance == AppearanceStyle.ToolWindow)
SetInertButtons_ToolWindow();
else
SetInertButtons_DocumentWindow();
@ -1332,6 +1366,7 @@ namespace WeifenLuo.WinFormsUI @@ -1332,6 +1366,7 @@ namespace WeifenLuo.WinFormsUI
m_buttonDocumentWindowClose.BorderColor = m_buttonScrollRight.BorderColor = m_buttonScrollLeft.BorderColor = SystemColors.ControlDarkDark;
}
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Method[@name="SetContentIndex(DockContent, int)"]/*'/>
public void SetContentIndex(DockContent content, int index)
{
int oldIndex = Contents.IndexOf(content);
@ -1389,10 +1424,10 @@ namespace WeifenLuo.WinFormsUI @@ -1389,10 +1424,10 @@ namespace WeifenLuo.WinFormsUI
Control oldParent = Parent;
///!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
/// Workaround for .Net Framework bug: removing control from Form may cause form
/// unclosable. Set focus to another dummy control.
///!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
// Workaround for .Net Framework bug: removing control from Form may cause form
// unclosable. Set focus to another dummy control.
//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Form form = FindForm();
if (ContainsFocus)
{
@ -1414,6 +1449,7 @@ namespace WeifenLuo.WinFormsUI @@ -1414,6 +1449,7 @@ namespace WeifenLuo.WinFormsUI
m_splitter.Parent = value;
}
/// <exclude/>
public new void Show()
{
Activate();
@ -1520,6 +1556,7 @@ namespace WeifenLuo.WinFormsUI @@ -1520,6 +1556,7 @@ namespace WeifenLuo.WinFormsUI
ActiveContent = null;
}
/// <exclude/>
protected override void WndProc(ref Message m)
{
if (m.Msg == (int)Win32.Msgs.WM_MOUSEACTIVATE)
@ -1611,11 +1648,13 @@ namespace WeifenLuo.WinFormsUI @@ -1611,11 +1648,13 @@ namespace WeifenLuo.WinFormsUI
}
private static readonly object DockStateChangedEvent = new object();
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Event[@name="DockStateChanged"]/*'/>
public event EventHandler DockStateChanged
{
add { Events.AddHandler(DockStateChangedEvent, value); }
remove { Events.RemoveHandler(DockStateChangedEvent, value); }
}
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Method[@name="OnDockStateChanged(EventArgs)"]/*'/>
protected virtual void OnDockStateChanged(EventArgs e)
{
EventHandler handler = (EventHandler)Events[DockStateChangedEvent];
@ -1624,11 +1663,13 @@ namespace WeifenLuo.WinFormsUI @@ -1624,11 +1663,13 @@ namespace WeifenLuo.WinFormsUI
}
private static readonly object IsActivatedChangedEvent = new object();
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Event[@name="IsActivatedChanged"]/*'/>
public event EventHandler IsActivatedChanged
{
add { Events.AddHandler(IsActivatedChangedEvent, value); }
remove { Events.RemoveHandler(IsActivatedChangedEvent, value); }
}
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Method[@name="OnIsActivatedChanged(EventArgs)"]/*'/>
protected virtual void OnIsActivatedChanged(EventArgs e)
{
EventHandler handler = (EventHandler)Events[IsActivatedChangedEvent];
@ -1637,11 +1678,13 @@ namespace WeifenLuo.WinFormsUI @@ -1637,11 +1678,13 @@ namespace WeifenLuo.WinFormsUI
}
private static readonly object IsActiveDocumentPaneChangedEvent = new object();
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Event[@name="IsActiveDocumentPaneChanged"]/*'/>
public event EventHandler IsActiveDocumentPaneChanged
{
add { Events.AddHandler(IsActiveDocumentPaneChangedEvent, value); }
remove { Events.RemoveHandler(IsActiveDocumentPaneChangedEvent, value); }
}
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Method[@name="OnIsActiveDocumentPaneChanged(EventArgs)"]/*'/>
protected virtual void OnIsActiveDocumentPaneChanged(EventArgs e)
{
EventHandler handler = (EventHandler)Events[IsActiveDocumentPaneChangedEvent];
@ -1649,6 +1692,7 @@ namespace WeifenLuo.WinFormsUI @@ -1649,6 +1692,7 @@ namespace WeifenLuo.WinFormsUI
handler(this, e);
}
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Property[@name="DockWindow"]/*'/>
public DockWindow DockWindow
{
get { return (m_nestedDockingStatus.DockList == null) ? null : m_nestedDockingStatus.DockList.Container as DockWindow; }
@ -1662,6 +1706,7 @@ namespace WeifenLuo.WinFormsUI @@ -1662,6 +1706,7 @@ namespace WeifenLuo.WinFormsUI
}
}
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Property[@name="FloatWindow"]/*'/>
public FloatWindow FloatWindow
{
get { return (m_nestedDockingStatus.DockList == null) ? null : m_nestedDockingStatus.DockList.Container as FloatWindow; }
@ -1676,17 +1721,20 @@ namespace WeifenLuo.WinFormsUI @@ -1676,17 +1721,20 @@ namespace WeifenLuo.WinFormsUI
}
private NestedDockingStatus m_nestedDockingStatus;
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Property[@name="NestedDockingStatus"]/*'/>
public NestedDockingStatus NestedDockingStatus
{
get { return m_nestedDockingStatus; }
}
private bool m_isFloat;
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Property[@name="IsFloat"]/*'/>
public bool IsFloat
{
get { return m_isFloat; }
}
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Property[@name="DockListContainer"]/*'/>
public IDockListContainer DockListContainer
{
get
@ -1699,6 +1747,7 @@ namespace WeifenLuo.WinFormsUI @@ -1699,6 +1747,7 @@ namespace WeifenLuo.WinFormsUI
}
private DockState m_dockState = DockState.Unknown;
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Property[@name="DockState"]/*'/>
public DockState DockState
{
get { return m_dockState; }
@ -1708,6 +1757,7 @@ namespace WeifenLuo.WinFormsUI @@ -1708,6 +1757,7 @@ namespace WeifenLuo.WinFormsUI
}
}
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Method[@name="SetDockState(DockState)"]/*'/>
public DockPane SetDockState(DockState value)
{
if (value == DockState.Unknown || value == DockState.Hidden)
@ -1826,6 +1876,8 @@ namespace WeifenLuo.WinFormsUI @@ -1826,6 +1876,8 @@ namespace WeifenLuo.WinFormsUI
ResumeRefreshStateChange();
}
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Method[@name="AddToDockList"]/*'/>
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Method[@name="AddToDockList(IDockListContainer)"]/*'/>
public DockPane AddToDockList(IDockListContainer container)
{
if (container == null)
@ -1840,6 +1892,7 @@ namespace WeifenLuo.WinFormsUI @@ -1840,6 +1892,7 @@ namespace WeifenLuo.WinFormsUI
return AddToDockList(container, container.DockList.GetDefaultPrevPane(this), alignment, 0.5);
}
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Method[@name="AddToDockList(IDockListContainer, DockPane, DockAlignment, double)"]/*'/>
public DockPane AddToDockList(IDockListContainer container, DockPane prevPane, DockAlignment alignment, double proportion)
{
if (container == null)
@ -1918,6 +1971,7 @@ namespace WeifenLuo.WinFormsUI @@ -1918,6 +1971,7 @@ namespace WeifenLuo.WinFormsUI
RefreshStateChange(oldContainer, oldDockState);
}
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Method[@name="SetNestedDockingProportion(double)"]/*'/>
public void SetNestedDockingProportion(double proportion)
{
NestedDockingStatus.SetStatus(NestedDockingStatus.DockList, NestedDockingStatus.PrevPane, NestedDockingStatus.Alignment, proportion);
@ -1925,6 +1979,7 @@ namespace WeifenLuo.WinFormsUI @@ -1925,6 +1979,7 @@ namespace WeifenLuo.WinFormsUI
((Control)DockListContainer).PerformLayout();
}
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Method[@name="Float()"]/*'/>
public DockPane Float()
{
DockContent activeContent = ActiveContent;
@ -1972,6 +2027,7 @@ namespace WeifenLuo.WinFormsUI @@ -1972,6 +2027,7 @@ namespace WeifenLuo.WinFormsUI
return null;
}
/// <include file='CodeDoc\DockPane.xml' path='//CodeDoc/Class[@name="DockPane"]/Method[@name="RestoreToPanel()"]/*'/>
public void RestoreToPanel()
{
DockContent activeContent = DockPanel.ActiveContent;

4
src/Libraries/DockPanel_Src/WinFormsUI/DockPaneCollection.cs → src/Libraries/DockPanel_Src/WinFormsUI/Docking/DockPaneCollection.cs

@ -15,12 +15,14 @@ using System.Windows.Forms; @@ -15,12 +15,14 @@ using System.Windows.Forms;
namespace WeifenLuo.WinFormsUI
{
/// <include file='CodeDoc\DockPaneCollection.xml' path='//CodeDoc/Class[@name="DockPaneCollection"]/ClassDef/*'/>>
public class DockPaneCollection : ReadOnlyCollectionBase
{
internal DockPaneCollection()
{
}
/// <include file='CodeDoc\DockPaneCollection.xml' path='//CodeDoc/Class[@name="DockPaneCollection"]/Property[@name="Item"]/*'/>>
public DockPane this[int index]
{
get { return InnerList[index] as DockPane; }
@ -58,6 +60,7 @@ namespace WeifenLuo.WinFormsUI @@ -58,6 +60,7 @@ namespace WeifenLuo.WinFormsUI
InnerList.Insert(IndexOf(paneBefore), pane);
}
/// <include file='CodeDoc\DockPaneCollection.xml' path='//CodeDoc/Class[@name="DockPaneCollection"]/Method[@name="Contains(DockPane)"]/*'/>>
public bool Contains(DockPane pane)
{
return InnerList.Contains(pane);
@ -69,6 +72,7 @@ namespace WeifenLuo.WinFormsUI @@ -69,6 +72,7 @@ namespace WeifenLuo.WinFormsUI
this[i].Close();
}
/// <include file='CodeDoc\DockPaneCollection.xml' path='//CodeDoc/Class[@name="DockPaneCollection"]/Method[@name="IndexOf(DockPane)"]/*'/>>
public int IndexOf(DockPane pane)
{
return InnerList.IndexOf(pane);

0
src/Libraries/DockPanel_Src/WinFormsUI/DockPaneSplitter.cs → src/Libraries/DockPanel_Src/WinFormsUI/Docking/DockPaneSplitter.cs

74
src/Libraries/DockPanel_Src/WinFormsUI/DockPanel.cs → src/Libraries/DockPanel_Src/WinFormsUI/Docking/DockPanel.cs

@ -19,8 +19,10 @@ using System.Text; @@ -19,8 +19,10 @@ using System.Text;
namespace WeifenLuo.WinFormsUI
{
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Delegate[@name="DeserializeDockContent"]/*'/>
public delegate DockContent DeserializeDockContent(string persistString);
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/ClassDef/*'/>
[Designer(typeof(System.Windows.Forms.Design.ControlDesigner))]
public class DockPanel : Panel
{
@ -59,6 +61,7 @@ namespace WeifenLuo.WinFormsUI @@ -59,6 +61,7 @@ namespace WeifenLuo.WinFormsUI
AutoHideDockStates[3] = DockState.DockBottomAutoHide;
}
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Constructor[@name="()"]/*'/>
public DockPanel()
{
m_dragHandler = new DragHandler(this);
@ -115,6 +118,7 @@ namespace WeifenLuo.WinFormsUI @@ -115,6 +118,7 @@ namespace WeifenLuo.WinFormsUI
}
private bool m_disposed = false;
/// <exclude/>
protected override void Dispose(bool disposing)
{
if (!m_disposed)
@ -137,6 +141,7 @@ namespace WeifenLuo.WinFormsUI @@ -137,6 +141,7 @@ namespace WeifenLuo.WinFormsUI
}
}
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Property[@name="ActiveAutoHideContent"]/*' />
[Browsable(false)]
public DockContent ActiveAutoHideContent
{
@ -145,6 +150,7 @@ namespace WeifenLuo.WinFormsUI @@ -145,6 +150,7 @@ namespace WeifenLuo.WinFormsUI
}
private DockContent m_activeContent = null;
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Property[@name="ActiveContent"]/*' />
[Browsable(false)]
public DockContent ActiveContent
{
@ -169,6 +175,7 @@ namespace WeifenLuo.WinFormsUI @@ -169,6 +175,7 @@ namespace WeifenLuo.WinFormsUI
}
private DockPane m_activePane = null;
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Property[@name="ActivePane"]/*' />
[Browsable(false)]
public DockPane ActivePane
{
@ -195,19 +202,15 @@ namespace WeifenLuo.WinFormsUI @@ -195,19 +202,15 @@ namespace WeifenLuo.WinFormsUI
for (; control != null; control = control.Parent)
{
pane = control as DockPane;
if (pane != null)
if (pane != null && pane.DockPanel == this)
break;
}
if (pane == null)
return null;
else if (pane.DockPanel != this)
return null;
else
return pane;
}
private DockContent m_activeDocument = null;
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Property[@name="ActiveDocument"]/*' />
[Browsable(false)]
public DockContent ActiveDocument
{
@ -229,6 +232,7 @@ namespace WeifenLuo.WinFormsUI @@ -229,6 +232,7 @@ namespace WeifenLuo.WinFormsUI
}
private DockPane m_activeDocumentPane = null;
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Property[@name="ActiveDocumentPane"]/*' />
[Browsable(false)]
public DockPane ActiveDocumentPane
{
@ -264,6 +268,7 @@ namespace WeifenLuo.WinFormsUI @@ -264,6 +268,7 @@ namespace WeifenLuo.WinFormsUI
}
private bool m_allowRedocking = true;
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Property[@name="AllowRedocking"]/*' />
[LocalizedCategory("Category.Docking")]
[LocalizedDescription("DockPanel.AllowRedocking.Description")]
[DefaultValue(true)]
@ -280,12 +285,14 @@ namespace WeifenLuo.WinFormsUI @@ -280,12 +285,14 @@ namespace WeifenLuo.WinFormsUI
}
private DockContentCollection m_contents = new DockContentCollection();
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Property[@name="Contents"]/*' />
[Browsable(false)]
public DockContentCollection Contents
{
get { return m_contents; }
}
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Property[@name="DockPaneFactory"]/*' />
protected internal virtual IDockPaneFactory DockPaneFactory
{
get { return DefaultDockPaneFactory; }
@ -298,6 +305,7 @@ namespace WeifenLuo.WinFormsUI @@ -298,6 +305,7 @@ namespace WeifenLuo.WinFormsUI
}
private DockPaneCollection m_panes;
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Property[@name="Panes"]/*' />
[Browsable(false)]
public DockPaneCollection Panes
{
@ -315,6 +323,7 @@ namespace WeifenLuo.WinFormsUI @@ -315,6 +323,7 @@ namespace WeifenLuo.WinFormsUI
}
private double m_dockBottomPortion = 0.25;
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Property[@name="DockBottomPortion"]/*' />
[LocalizedCategory("Category.Docking")]
[LocalizedDescription("DockPanel.DockBottomPortion.Description")]
[DefaultValue(0.25)]
@ -339,6 +348,7 @@ namespace WeifenLuo.WinFormsUI @@ -339,6 +348,7 @@ namespace WeifenLuo.WinFormsUI
}
private double m_dockLeftPortion = 0.25;
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Property[@name="DockLeftPortion"]/*' />
[LocalizedCategory("Category.Docking")]
[LocalizedDescription("DockPanel.DockLeftPortion.Description")]
[DefaultValue(0.25)]
@ -363,6 +373,7 @@ namespace WeifenLuo.WinFormsUI @@ -363,6 +373,7 @@ namespace WeifenLuo.WinFormsUI
}
private double m_dockRightPortion = 0.25;
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Property[@name="DockRightPortion"]/*' />
[LocalizedCategory("Category.Docking")]
[LocalizedDescription("DockPanel.DockRightPortion.Description")]
[DefaultValue(0.25)]
@ -387,6 +398,7 @@ namespace WeifenLuo.WinFormsUI @@ -387,6 +398,7 @@ namespace WeifenLuo.WinFormsUI
}
private double m_dockTopPortion = 0.25;
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Property[@name="DockTopPortion"]/*' />
[LocalizedCategory("Category.Docking")]
[LocalizedDescription("DockPanel.DockTopPortion.Description")]
[DefaultValue(0.25)]
@ -411,12 +423,14 @@ namespace WeifenLuo.WinFormsUI @@ -411,12 +423,14 @@ namespace WeifenLuo.WinFormsUI
}
private DockWindowCollection m_dockWindows;
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Property[@name="DockWindows"]/*' />
[Browsable(false)]
public DockWindowCollection DockWindows
{
get { return m_dockWindows; }
}
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Property[@name="Documents"]/*' />
[Browsable(false)]
public DockContent[] Documents
{
@ -459,12 +473,14 @@ namespace WeifenLuo.WinFormsUI @@ -459,12 +473,14 @@ namespace WeifenLuo.WinFormsUI
get { return m_dummyControl; }
}
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Property[@name="FloatWindowFactory"]/*' />
protected internal virtual IFloatWindowFactory FloatWindowFactory
{
get { return DefaultFloatWindowFactory; }
}
private FloatWindowCollection m_floatWindows;
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Property[@name="FloatWindows"]/*' />
[Browsable(false)]
public FloatWindowCollection FloatWindows
{
@ -472,6 +488,7 @@ namespace WeifenLuo.WinFormsUI @@ -472,6 +488,7 @@ namespace WeifenLuo.WinFormsUI
}
private bool m_mdiIntegration = true;
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Property[@name="MdiIntegration"]/*' />
[LocalizedCategory("Category.Docking")]
[LocalizedDescription("DockPanel.MdiIntegration.Description")]
[DefaultValue(true)]
@ -489,6 +506,7 @@ namespace WeifenLuo.WinFormsUI @@ -489,6 +506,7 @@ namespace WeifenLuo.WinFormsUI
}
private bool m_sdiDocument = false;
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Property[@name="SdiDocument"]/*' />
[LocalizedCategory("Category.Docking")]
[LocalizedDescription("DockPanel.SdiDocument.Description")]
[DefaultValue(false)]
@ -505,6 +523,7 @@ namespace WeifenLuo.WinFormsUI @@ -505,6 +523,7 @@ namespace WeifenLuo.WinFormsUI
}
}
/// <exclude/>
protected override void OnLayout(LayoutEventArgs levent)
{
CalculateDockPadding();
@ -538,6 +557,7 @@ namespace WeifenLuo.WinFormsUI @@ -538,6 +557,7 @@ namespace WeifenLuo.WinFormsUI
base.OnLayout(levent);
}
/// <exclude/>
protected override void OnMouseDown(MouseEventArgs e)
{
base.OnMouseDown(e);
@ -556,16 +576,14 @@ namespace WeifenLuo.WinFormsUI @@ -556,16 +576,14 @@ namespace WeifenLuo.WinFormsUI
content.Pane.Activate();
}
/// <exclude/>
protected override void OnMouseHover(EventArgs e)
{
base.OnMouseHover(e);
DockContent content = GetHitTest();
if (content != null && ActiveAutoHideContent != content)
{
ActiveAutoHideContent = content;
Invalidate();
}
// requires further tracking of mouse hover behavior,
// call TrackMouseEvent
@ -573,6 +591,7 @@ namespace WeifenLuo.WinFormsUI @@ -573,6 +591,7 @@ namespace WeifenLuo.WinFormsUI
User32.TrackMouseEvent(ref tme);
}
/// <exclude/>
protected override void OnPaint(PaintEventArgs e)
{
base.OnPaint(e);
@ -674,12 +693,15 @@ namespace WeifenLuo.WinFormsUI @@ -674,12 +693,15 @@ namespace WeifenLuo.WinFormsUI
int x = MeasureAutoHideTab.TabGapLeft + rectTabStrip.X;
foreach (DockPane pane in Panes)
{
if (pane.DockState != dockState)
if (pane.DockState != dockState || pane.IsHidden)
continue;
int maxWidth = 0;
foreach (DockContent content in pane.Contents)
{
if (content.DockState != pane.DockState)
continue;
int width = imageWidth + MeasureAutoHideTab.ImageGapLeft +
MeasureAutoHideTab.ImageGapRight +
(int)g.MeasureString(content.TabText, Font).Width + 1 +
@ -690,7 +712,7 @@ namespace WeifenLuo.WinFormsUI @@ -690,7 +712,7 @@ namespace WeifenLuo.WinFormsUI
foreach (DockContent content in pane.Contents)
{
if (content.IsHidden)
if (content.DockState != pane.DockState)
continue;
content.TabX = x;
@ -780,7 +802,7 @@ namespace WeifenLuo.WinFormsUI @@ -780,7 +802,7 @@ namespace WeifenLuo.WinFormsUI
foreach (DockContent content in pane.Contents)
{
if (!content.IsHidden)
if (content.DockState == pane.DockState)
DrawTab(g, dockState, pane, content);
}
}
@ -840,7 +862,7 @@ namespace WeifenLuo.WinFormsUI @@ -840,7 +862,7 @@ namespace WeifenLuo.WinFormsUI
foreach (DockPane pane in Panes)
{
if (pane.DockState == dockState)
if (pane.DockState == dockState && !pane.IsHidden)
result ++;
}
@ -859,12 +881,12 @@ namespace WeifenLuo.WinFormsUI @@ -859,12 +881,12 @@ namespace WeifenLuo.WinFormsUI
foreach(DockPane pane in Panes)
{
if (pane.DockState != state)
if (pane.DockState != state || pane.IsHidden)
continue;
foreach(DockContent content in pane.Contents)
{
if (content.IsHidden)
if (content.DockState != pane.DockState)
continue;
Rectangle rectTab = GetTabRectangle(state, content, true);
@ -1004,7 +1026,7 @@ namespace WeifenLuo.WinFormsUI @@ -1004,7 +1026,7 @@ namespace WeifenLuo.WinFormsUI
AutoHideWindow.RefreshActivePane();
}
public void RefreshMdiIntegration()
private void RefreshMdiIntegration()
{
foreach (DockPane pane in Panes)
{
@ -1044,6 +1066,7 @@ namespace WeifenLuo.WinFormsUI @@ -1044,6 +1066,7 @@ namespace WeifenLuo.WinFormsUI
FloatWindows.Remove(floatWindow);
}
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Method[@name="SetPaneIndex(DockPane, int)"]/*'/>
public void SetPaneIndex(DockPane pane, int index)
{
int oldIndex = Panes.IndexOf(pane);
@ -1136,6 +1159,7 @@ namespace WeifenLuo.WinFormsUI @@ -1136,6 +1159,7 @@ namespace WeifenLuo.WinFormsUI
dragHandler.DragOutline = DrawHelper.CreateDragOutline(rect, dragSize);
}
/// <exclude/>
protected override void WndProc(ref Message m)
{
if (m.Msg == WM_REFRESHACTIVEWINDOW)
@ -1145,6 +1169,7 @@ namespace WeifenLuo.WinFormsUI @@ -1145,6 +1169,7 @@ namespace WeifenLuo.WinFormsUI
}
private static readonly object ActiveDocumentChangedEvent = new object();
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Event[@name="ActiveDocumentChanged"]/*' />
[LocalizedCategory("Category.PropertyChanged")]
[LocalizedDescription("DockPanel.ActiveDocumentChanged.Description")]
public event EventHandler ActiveDocumentChanged
@ -1152,6 +1177,7 @@ namespace WeifenLuo.WinFormsUI @@ -1152,6 +1177,7 @@ namespace WeifenLuo.WinFormsUI
add { Events.AddHandler(ActiveDocumentChangedEvent, value); }
remove { Events.RemoveHandler(ActiveDocumentChangedEvent, value); }
}
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Method[@name="OnActiveDocumentChanged(EventArgs)"]/*' />
protected virtual void OnActiveDocumentChanged(EventArgs e)
{
EventHandler handler = (EventHandler)Events[ActiveDocumentChangedEvent];
@ -1160,6 +1186,7 @@ namespace WeifenLuo.WinFormsUI @@ -1160,6 +1186,7 @@ namespace WeifenLuo.WinFormsUI
}
private static readonly object ActiveContentChangedEvent = new object();
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Event[@name="ActiveContentChanged"]/*' />
[LocalizedCategory("Category.PropertyChanged")]
[LocalizedDescription("DockPanel.ActiveContentChanged.Description")]
public event EventHandler ActiveContentChanged
@ -1167,6 +1194,7 @@ namespace WeifenLuo.WinFormsUI @@ -1167,6 +1194,7 @@ namespace WeifenLuo.WinFormsUI
add { Events.AddHandler(ActiveContentChangedEvent, value); }
remove { Events.RemoveHandler(ActiveContentChangedEvent, value); }
}
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Method[@name="OnActiveContentChanged(EventArgs)"]/*' />
protected virtual void OnActiveContentChanged(EventArgs e)
{
EventHandler handler = (EventHandler)Events[ActiveContentChangedEvent];
@ -1175,6 +1203,7 @@ namespace WeifenLuo.WinFormsUI @@ -1175,6 +1203,7 @@ namespace WeifenLuo.WinFormsUI
}
private static readonly object ActivePaneChangedEvent = new object();
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Event[@name="ActivePaneChanged"]/*' />
[LocalizedCategory("Category.PropertyChanged")]
[LocalizedDescription("DockPanel.ActivePaneChanged.Description")]
public event EventHandler ActivePaneChanged
@ -1182,6 +1211,7 @@ namespace WeifenLuo.WinFormsUI @@ -1182,6 +1211,7 @@ namespace WeifenLuo.WinFormsUI
add { Events.AddHandler(ActivePaneChangedEvent, value); }
remove { Events.RemoveHandler(ActivePaneChangedEvent, value); }
}
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Method[@name="OnActivePaneChanged(EventArgs)"]/*' />
protected virtual void OnActivePaneChanged(EventArgs e)
{
EventHandler handler = (EventHandler)Events[ActivePaneChangedEvent];
@ -1189,8 +1219,10 @@ namespace WeifenLuo.WinFormsUI @@ -1189,8 +1219,10 @@ namespace WeifenLuo.WinFormsUI
handler(this, e);
}
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Delegate[@name="DockContentEventHandler"]/*'/>
public delegate void DockContentEventHandler(object sender, DockContentEventArgs e);
private static readonly object ContentAddedEvent = new object();
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Event[@name="ContentAdded"]/*' />
[LocalizedCategory("Category.DockingNotification")]
[LocalizedDescription("DockPanel.ContentAdded.Description")]
public event DockContentEventHandler ContentAdded
@ -1198,6 +1230,7 @@ namespace WeifenLuo.WinFormsUI @@ -1198,6 +1230,7 @@ namespace WeifenLuo.WinFormsUI
add { Events.AddHandler(ContentAddedEvent, value); }
remove { Events.RemoveHandler(ContentAddedEvent, value); }
}
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Method[@name="OnContentAdded(DockContentEventArgs)"]/*' />
protected virtual void OnContentAdded(DockContentEventArgs e)
{
DockContentEventHandler handler = (DockContentEventHandler)Events[ContentAddedEvent];
@ -1206,6 +1239,7 @@ namespace WeifenLuo.WinFormsUI @@ -1206,6 +1239,7 @@ namespace WeifenLuo.WinFormsUI
}
private static readonly object ContentRemovedEvent = new object();
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Event[@name="ContentRemoved"]/*' />
[LocalizedCategory("Category.DockingNotification")]
[LocalizedDescription("DockPanel.ContentRemoved.Description")]
public event DockContentEventHandler ContentRemoved
@ -1213,6 +1247,7 @@ namespace WeifenLuo.WinFormsUI @@ -1213,6 +1247,7 @@ namespace WeifenLuo.WinFormsUI
add { Events.AddHandler(ContentRemovedEvent, value); }
remove { Events.RemoveHandler(ContentRemovedEvent, value); }
}
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Method[@name="OnContentRemoved(DockContentEventArgs)"]/*' />
protected virtual void OnContentRemoved(DockContentEventArgs e)
{
DockContentEventHandler handler = (DockContentEventHandler)Events[ContentRemovedEvent];
@ -1220,26 +1255,33 @@ namespace WeifenLuo.WinFormsUI @@ -1220,26 +1255,33 @@ namespace WeifenLuo.WinFormsUI
handler(this, e);
}
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Method[@name="SaveAsXml"]/*'/>
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Method[@name="SaveAsXml(string)"]/*'/>
public void SaveAsXml(string filename)
{
DockPanelPersist.SaveAsXml(this, filename);
}
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Method[@name="SaveAsXml(string, Encoding)"]/*'/>
public void SaveAsXml(string filename, Encoding encoding)
{
DockPanelPersist.SaveAsXml(this, filename, encoding);
}
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Method[@name="SaveAsXml(Stream, Encoding)"]/*'/>
public void SaveAsXml(Stream stream, Encoding encoding)
{
DockPanelPersist.SaveAsXml(this, stream, encoding);
}
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Method[@name="LoadFromXml"]/*'/>
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Method[@name="LoadFromXml(string, DeserializeDockContent)"]/*'/>
public void LoadFromXml(string filename, DeserializeDockContent deserializeContent)
{
DockPanelPersist.LoadFromXml(this, filename, deserializeContent);
}
/// <include file='CodeDoc\DockPanel.xml' path='//CodeDoc/Class[@name="DockPanel"]/Method[@name="LoadFromXml(Stream, DeserializeDockContent)"]/*'/>
public void LoadFromXml(Stream stream, DeserializeDockContent deserializeContent)
{
DockPanelPersist.LoadFromXml(this, stream, deserializeContent);

0
src/Libraries/DockPanel_Src/WinFormsUI/DockPanelPersist.cs → src/Libraries/DockPanel_Src/WinFormsUI/Docking/DockPanelPersist.cs

10
src/Libraries/DockPanel_Src/WinFormsUI/DockWindow.cs → src/Libraries/DockPanel_Src/WinFormsUI/Docking/DockWindow.cs

@ -14,6 +14,7 @@ using System.Drawing; @@ -14,6 +14,7 @@ using System.Drawing;
namespace WeifenLuo.WinFormsUI
{
/// <include file='CodeDoc\DockWindow.xml' path='//CodeDoc/Class[@name="DockWindow"]/ClassDef/*'/>
public class DockWindow : Panel, IDockListContainer
{
private DockPanel m_dockPanel;
@ -63,32 +64,38 @@ namespace WeifenLuo.WinFormsUI @@ -63,32 +64,38 @@ namespace WeifenLuo.WinFormsUI
ResumeLayout();
}
/// <exclude/>
protected override Size DefaultSize
{
// Set the default size to empty to reduce the screen flicker
get { return Size.Empty; }
}
/// <include file='CodeDoc\DockWindow.xml' path='//CodeDoc/Class[@name="DockWindow"]/Property[@name="DisplayingList"]/*'/>
public DisplayingDockList DisplayingList
{
get { return DockList.DisplayingList; }
}
/// <include file='CodeDoc\DockWindow.xml' path='//CodeDoc/Class[@name="DockWindow"]/Property[@name="DockList"]/*'/>
public DockList DockList
{
get { return m_dockList; }
}
/// <include file='CodeDoc\DockWindow.xml' path='//CodeDoc/Class[@name="DockWindow"]/Property[@name="DockPanel"]/*'/>
public DockPanel DockPanel
{
get { return m_dockPanel; }
}
/// <include file='CodeDoc\DockWindow.xml' path='//CodeDoc/Class[@name="DockWindow"]/Property[@name="DockState"]/*'/>
public DockState DockState
{
get { return m_dockState; }
}
/// <include file='CodeDoc\DockWindow.xml' path='//CodeDoc/Class[@name="DockWindow"]/Property[@name="IsFloat"]/*'/>
public bool IsFloat
{
get { return DockState == DockState.Float; }
@ -99,6 +106,7 @@ namespace WeifenLuo.WinFormsUI @@ -99,6 +106,7 @@ namespace WeifenLuo.WinFormsUI
get { return DisplayingList.Count == 0 ? null : DisplayingList[0]; }
}
/// <include file='CodeDoc\DockWindow.xml' path='//CodeDoc/Class[@name="DockWindow"]/Property[@name="DisplayingRectangle"]/*'/>
public virtual Rectangle DisplayingRectangle
{
get
@ -132,6 +140,7 @@ namespace WeifenLuo.WinFormsUI @@ -132,6 +140,7 @@ namespace WeifenLuo.WinFormsUI
}
}
/// <exclude/>
protected override void OnPaint(PaintEventArgs e)
{
// if DockWindow is document, draw the border
@ -141,6 +150,7 @@ namespace WeifenLuo.WinFormsUI @@ -141,6 +150,7 @@ namespace WeifenLuo.WinFormsUI
base.OnPaint(e);
}
/// <exclude/>
protected override void OnLayout(LayoutEventArgs levent)
{
DisplayingList.Refresh();

2
src/Libraries/DockPanel_Src/WinFormsUI/DockWindowCollection.cs → src/Libraries/DockPanel_Src/WinFormsUI/Docking/DockWindowCollection.cs

@ -13,6 +13,7 @@ using System.Collections; @@ -13,6 +13,7 @@ using System.Collections;
namespace WeifenLuo.WinFormsUI
{
/// <include file='CodeDoc\DockWindowCollection.xml' path='//CodeDoc/Class[@name="DockWindowCollection"]/ClassDef/*'/>>
public class DockWindowCollection : ReadOnlyCollectionBase
{
internal DockWindowCollection(DockPanel dockPanel)
@ -24,6 +25,7 @@ namespace WeifenLuo.WinFormsUI @@ -24,6 +25,7 @@ namespace WeifenLuo.WinFormsUI
InnerList.Add(new DockWindow(dockPanel, DockState.DockBottom));
}
/// <include file='CodeDoc\DockWindowCollection.xml' path='//CodeDoc/Class[@name="DockWindowCollection"]/Property[@name="Item"]/*'/>>
public DockWindow this [DockState dockState]
{
get

0
src/Libraries/DockPanel_Src/WinFormsUI/DockWindowSplitter.cs → src/Libraries/DockPanel_Src/WinFormsUI/Docking/DockWindowSplitter.cs

0
src/Libraries/DockPanel_Src/WinFormsUI/DragHandler.cs → src/Libraries/DockPanel_Src/WinFormsUI/Docking/DragHandler.cs

0
src/Libraries/DockPanel_Src/WinFormsUI/DragHandlerBase.cs → src/Libraries/DockPanel_Src/WinFormsUI/Docking/DragHandlerBase.cs

0
src/Libraries/DockPanel_Src/WinFormsUI/DummyControl.cs → src/Libraries/DockPanel_Src/WinFormsUI/Docking/DummyControl.cs

78
src/Libraries/DockPanel_Src/WinFormsUI/Docking/Enums.cs

@ -0,0 +1,78 @@ @@ -0,0 +1,78 @@
// *****************************************************************************
//
// Copyright 2004, Weifen Luo
// All rights reserved. The software and associated documentation
// supplied hereunder are the proprietary information of Weifen Luo
// and are supplied subject to licence terms.
//
// WinFormsUI Library Version 1.0
// *****************************************************************************
using System;
using System.ComponentModel;
using System.Windows.Forms;
namespace WeifenLuo.WinFormsUI
{
/// <include file='CodeDoc\Enums.xml' path='//CodeDoc/Enum[@name="DockAreas"]/EnumDef/*'/>
[Flags]
[Serializable]
[Editor(typeof(DockAreasEditor), typeof(System.Drawing.Design.UITypeEditor))]
public enum DockAreas
{
/// <include file='CodeDoc\Enums.xml' path='//CodeDoc/Enum[@name="DockAreas"]/Member[@name="Float"]/*'/>
Float = 1,
/// <include file='CodeDoc\Enums.xml' path='//CodeDoc/Enum[@name="DockAreas"]/Member[@name="DockLeft"]/*'/>
DockLeft = 2,
/// <include file='CodeDoc\Enums.xml' path='//CodeDoc/Enum[@name="DockAreas"]/Member[@name="DockRight"]/*'/>
DockRight = 4,
/// <include file='CodeDoc\Enums.xml' path='//CodeDoc/Enum[@name="DockAreas"]/Member[@name="DockTop"]/*'/>
DockTop = 8,
/// <include file='CodeDoc\Enums.xml' path='//CodeDoc/Enum[@name="DockAreas"]/Member[@name="DockBottom"]/*'/>
DockBottom = 16,
/// <include file='CodeDoc\Enums.xml' path='//CodeDoc/Enum[@name="DockAreas"]/Member[@name="Document"]/*'/>
Document = 32
}
/// <include file='CodeDoc\Enums.xml' path='//CodeDoc/Enum[@name="DockState"]/EnumDef/*'/>
public enum DockState
{
/// <include file='CodeDoc\Enums.xml' path='//CodeDoc/Enum[@name="DockState"]/Member[@name="Unknown"]/*'/>
Unknown = 0,
/// <include file='CodeDoc\Enums.xml' path='//CodeDoc/Enum[@name="DockState"]/Member[@name="Float"]/*'/>
Float = 1,
/// <include file='CodeDoc\Enums.xml' path='//CodeDoc/Enum[@name="DockState"]/Member[@name="DockTopAutoHide"]/*'/>
DockTopAutoHide = 2,
/// <include file='CodeDoc\Enums.xml' path='//CodeDoc/Enum[@name="DockState"]/Member[@name="DockLeftAutoHide"]/*'/>
DockLeftAutoHide = 3,
/// <include file='CodeDoc\Enums.xml' path='//CodeDoc/Enum[@name="DockState"]/Member[@name="DockBottomAutoHide"]/*'/>
DockBottomAutoHide = 4,
/// <include file='CodeDoc\Enums.xml' path='//CodeDoc/Enum[@name="DockState"]/Member[@name="DockRightAutoHide"]/*'/>
DockRightAutoHide = 5,
/// <include file='CodeDoc\Enums.xml' path='//CodeDoc/Enum[@name="DockState"]/Member[@name="Document"]/*'/>
Document = 6,
/// <include file='CodeDoc\Enums.xml' path='//CodeDoc/Enum[@name="DockState"]/Member[@name="DockTop"]/*'/>
DockTop = 7,
/// <include file='CodeDoc\Enums.xml' path='//CodeDoc/Enum[@name="DockState"]/Member[@name="DockLeft"]/*'/>
DockLeft = 8,
/// <include file='CodeDoc\Enums.xml' path='//CodeDoc/Enum[@name="DockState"]/Member[@name="DockBottom"]/*'/>
DockBottom = 9,
/// <include file='CodeDoc\Enums.xml' path='//CodeDoc/Enum[@name="DockState"]/Member[@name="DockRight"]/*'/>
DockRight = 10,
/// <include file='CodeDoc\Enums.xml' path='//CodeDoc/Enum[@name="DockState"]/Member[@name="Hidden"]/*'/>
Hidden = 11
}
/// <include file='CodeDoc\Enums.xml' path='//CodeDoc/Enum[@name="DockAlignment"]/EnumDef/*'/>
public enum DockAlignment
{
/// <include file='CodeDoc\Enums.xml' path='//CodeDoc/Enum[@name="DockAlignment"]/Member[@name="Left"]/*'/>
Left,
/// <include file='CodeDoc\Enums.xml' path='//CodeDoc/Enum[@name="DockAlignment"]/Member[@name="Right"]/*'/>
Right,
/// <include file='CodeDoc\Enums.xml' path='//CodeDoc/Enum[@name="DockAlignment"]/Member[@name="Top"]/*'/>
Top,
/// <include file='CodeDoc\Enums.xml' path='//CodeDoc/Enum[@name="DockAlignment"]/Member[@name="Bottom"]/*'/>
Bottom
}
}

5
src/Libraries/DockPanel_Src/WinFormsUI/EventArgs.cs → src/Libraries/DockPanel_Src/WinFormsUI/Docking/EventArgs.cs

@ -11,15 +11,18 @@ using System; @@ -11,15 +11,18 @@ using System;
namespace WeifenLuo.WinFormsUI
{
/// <include file='CodeDoc\EventArgs.xml' path='//CodeDoc/Class[@name="DockContentEventArgs"]/ClassDef/*'/>
public class DockContentEventArgs : EventArgs
{
public DockContent m_content;
private DockContent m_content;
/// <include file='CodeDoc\EventArgs.xml' path='//CodeDoc/Class[@name="DockContentEventArgs"]/Constructor[@name="(DockContent)"]/*'/>
public DockContentEventArgs(DockContent content)
{
m_content = content;
}
/// <include file='CodeDoc\EventArgs.xml' path='//CodeDoc/Class[@name="DockContentEventArgs"]/Property[@name="Content"]/*'/>
public DockContent Content
{
get { return m_content; }

21
src/Libraries/DockPanel_Src/WinFormsUI/FloatWindow.cs → src/Libraries/DockPanel_Src/WinFormsUI/Docking/FloatWindow.cs

@ -15,20 +15,21 @@ using System.Windows.Forms; @@ -15,20 +15,21 @@ using System.Windows.Forms;
namespace WeifenLuo.WinFormsUI
{
/// <summary>
/// Descripiton of class FloatWindow
/// </summary>
/// <include file='CodeDoc\FloatWindow.xml' path='//CodeDoc/Class[@name="FloatWindow"]/ClassDef/*'/>
public class FloatWindow : Form, IDockListContainer
{
private DockList m_dockList;
internal static Size DefaultWindowSize = new Size(300, 300);
internal const int WM_CHECKDISPOSE = (int)(Win32.Msgs.WM_USER + 1);
/// <include file='CodeDoc\FloatWindow.xml' path='//CodeDoc/Class[@name="FloatWindow"]/Constructor[@name="Overloads"]/*'/>
/// <include file='CodeDoc\FloatWindow.xml' path='//CodeDoc/Class[@name="FloatWindow"]/Constructor[@name="(DockPanel, DockPane)"]/*'/>
public FloatWindow(DockPanel dockPanel, DockPane pane)
{
InternalConstruct(dockPanel, pane, false, Rectangle.Empty);
}
/// <include file='CodeDoc\FloatWindow.xml' path='//CodeDoc/Class[@name="FloatWindow"]/Constructor[@name="(DockPanel, DockPane, Rectangle)"]/*'/>
public FloatWindow(DockPanel dockPanel, DockPane pane, Rectangle bounds)
{
InternalConstruct(dockPanel, pane, true, bounds);
@ -66,6 +67,7 @@ namespace WeifenLuo.WinFormsUI @@ -66,6 +67,7 @@ namespace WeifenLuo.WinFormsUI
ResumeLayout();
}
/// <exclude/>
protected override void Dispose(bool disposing)
{
if (disposing)
@ -78,38 +80,45 @@ namespace WeifenLuo.WinFormsUI @@ -78,38 +80,45 @@ namespace WeifenLuo.WinFormsUI
}
private bool m_allowRedocking = true;
/// <include file='CodeDoc\FloatWindow.xml' path='//CodeDoc/Class[@name="FloatWindow"]/Property[@name="AllowRedocking"]/*'/>
public bool AllowRedocking
{
get { return m_allowRedocking; }
set { m_allowRedocking = value; }
}
/// <exclude />
protected override Size DefaultSize
{
get { return FloatWindow.DefaultWindowSize; }
}
/// <include file='CodeDoc\FloatWindow.xml' path='//CodeDoc/Class[@name="FloatWindow"]/Property[@name="DockList"]/*'/>
public DockList DockList
{
get { return m_dockList; }
}
/// <include file='CodeDoc\FloatWindow.xml' path='//CodeDoc/Class[@name="FloatWindow"]/Property[@name="DisplayingList"]/*'/>
public DisplayingDockList DisplayingList
{
get { return DockList.DisplayingList; }
}
private DockPanel m_dockPanel;
/// <include file='CodeDoc\FloatWindow.xml' path='//CodeDoc/Class[@name="FloatWindow"]/Property[@name="DockPanel"]/*'/>
public DockPanel DockPanel
{
get { return m_dockPanel; }
}
/// <include file='CodeDoc\FloatWindow.xml' path='//CodeDoc/Class[@name="FloatWindow"]/Property[@name="DockState"]/*'/>
public DockState DockState
{
get { return DockState.Float; }
}
/// <include file='CodeDoc\FloatWindow.xml' path='//CodeDoc/Class[@name="FloatWindow"]/Property[@name="IsFloat"]/*'/>
public bool IsFloat
{
get { return DockState == DockState.Float; }
@ -121,7 +130,7 @@ namespace WeifenLuo.WinFormsUI @@ -121,7 +130,7 @@ namespace WeifenLuo.WinFormsUI
get { return m_dummyControl; }
}
public bool IsDockStateValid(DockState dockState)
internal bool IsDockStateValid(DockState dockState)
{
foreach (DockPane pane in DockList)
foreach (DockContent content in pane.Contents)
@ -131,12 +140,14 @@ namespace WeifenLuo.WinFormsUI @@ -131,12 +140,14 @@ namespace WeifenLuo.WinFormsUI
return true;
}
/// <exclude/>
protected override void OnActivated(EventArgs e)
{
DockPanel.FloatWindows.BringWindowToFront(this);
base.OnActivated (e);
}
/// <exclude/>
protected override void OnLayout(LayoutEventArgs levent)
{
DisplayingList.Refresh();
@ -158,6 +169,7 @@ namespace WeifenLuo.WinFormsUI @@ -158,6 +169,7 @@ namespace WeifenLuo.WinFormsUI
Text = theOnlyPane.ActiveContent.Text;
}
/// <exclude/>
protected override void WndProc(ref Message m)
{
if (m.Msg == (int)Win32.Msgs.WM_NCLBUTTONDOWN)
@ -235,6 +247,7 @@ namespace WeifenLuo.WinFormsUI @@ -235,6 +247,7 @@ namespace WeifenLuo.WinFormsUI
base.WndProc(ref m);
}
/// <include file='CodeDoc\FloatWindow.xml' path='//CodeDoc/Class[@name="FloatWindow"]/Property[@name="DisplayingRectangle"]/*'/>
public virtual Rectangle DisplayingRectangle
{
get { return ClientRectangle; }

7
src/Libraries/DockPanel_Src/WinFormsUI/FloatWindowCollection.cs → src/Libraries/DockPanel_Src/WinFormsUI/Docking/FloatWindowCollection.cs

@ -15,15 +15,14 @@ using System.Windows.Forms; @@ -15,15 +15,14 @@ using System.Windows.Forms;
namespace WeifenLuo.WinFormsUI
{
/// <summary>
/// Summary description for FloatWindowCollection.
/// </summary>
/// <include file='CodeDoc\FloatWindowCollection.xml' path='//CodeDoc/Class[@name="FloatWindowCollection"]/ClassDef/*'/>>
public class FloatWindowCollection : ReadOnlyCollectionBase
{
internal FloatWindowCollection()
{
}
/// <include file='CodeDoc\FloatWindowCollection.xml' path='//CodeDoc/Class[@name="FloatWindowCollection"]/Property[@name="Item"]/*'/>>
public FloatWindow this[int index]
{
get { return InnerList[index] as FloatWindow; }
@ -37,6 +36,7 @@ namespace WeifenLuo.WinFormsUI @@ -37,6 +36,7 @@ namespace WeifenLuo.WinFormsUI
return InnerList.Add(fw);
}
/// <include file='CodeDoc\FloatWindowCollection.xml' path='//CodeDoc/Class[@name="FloatWindowCollection"]/Method[@name="Contains(FloatWindow)"]/*'/>>
public bool Contains(FloatWindow fw)
{
return InnerList.Contains(fw);
@ -48,6 +48,7 @@ namespace WeifenLuo.WinFormsUI @@ -48,6 +48,7 @@ namespace WeifenLuo.WinFormsUI
this[i].Close();
}
/// <include file='CodeDoc\FloatWindowCollection.xml' path='//CodeDoc/Class[@name="FloatWindowCollection"]/Method[@name="IndexOf(FloatWindow)"]/*'/>>
public int IndexOf(FloatWindow fw)
{
return InnerList.IndexOf(fw);

3
src/Libraries/DockPanel_Src/WinFormsUI/HiddenMdiChild.cs → src/Libraries/DockPanel_Src/WinFormsUI/Docking/HiddenMdiChild.cs

@ -14,9 +14,6 @@ using System.Windows.Forms; @@ -14,9 +14,6 @@ using System.Windows.Forms;
namespace WeifenLuo.WinFormsUI
{
/// <summary>
/// Summary description for HiddenMdiChild.
/// </summary>
internal class HiddenMdiChild : Form
{
private DockContent m_content = null;

92
src/Libraries/DockPanel_Src/WinFormsUI/Docking/Interfaces.cs

@ -0,0 +1,92 @@ @@ -0,0 +1,92 @@
// *****************************************************************************
//
// Copyright 2004, Weifen Luo
// All rights reserved. The software and associated documentation
// supplied hereunder are the proprietary information of Weifen Luo
// and are supplied subject to licence terms.
//
// WinFormsUI Library Version 1.0
// *****************************************************************************
using System;
using System.Drawing;
namespace WeifenLuo.WinFormsUI
{
/// <include file='CodeDoc\Interfaces.xml' path='//CodeDoc/Interface[@name="IDockListContainer"]/InterfaceDef/*'/>
public interface IDockListContainer
{
/// <include file='CodeDoc\Interfaces.xml' path='//CodeDoc/Interface[@name="IDockListContainer"]/Property[@name="DockState"]/*'/>
DockState DockState { get; }
/// <include file='CodeDoc\Interfaces.xml' path='//CodeDoc/Interface[@name="IDockListContainer"]/Property[@name="DisplayingRectangle"]/*'/>
Rectangle DisplayingRectangle { get; }
/// <include file='CodeDoc\Interfaces.xml' path='//CodeDoc/Interface[@name="IDockListContainer"]/Property[@name="DockList"]/*'/>
DockList DockList { get; }
/// <include file='CodeDoc\Interfaces.xml' path='//CodeDoc/Interface[@name="IDockListContainer"]/Property[@name="DisplayingList"]/*'/>
DisplayingDockList DisplayingList { get; }
/// <include file='CodeDoc\Interfaces.xml' path='//CodeDoc/Interface[@name="IDockListContainer"]/Property[@name="IsDisposed"]/*'/>
bool IsDisposed { get; }
/// <include file='CodeDoc\Interfaces.xml' path='//CodeDoc/Interface[@name="IDockListContainer"]/Property[@name="IsFloat"]/*'/>
bool IsFloat { get; }
}
/// <include file='CodeDoc\Interfaces.xml' path='//CodeDoc/Interface[@name="IDockPaneFactory"]/InterfaceDef/*'/>
public interface IDockPaneFactory
{
/// <include file='CodeDoc\Interfaces.xml' path='//CodeDoc/Interface[@name="IDockPaneFactory"]/Method[@name="CreateDockPane"]/*'/>
/// <include file='CodeDoc\Interfaces.xml' path='//CodeDoc/Interface[@name="IDockPaneFactory"]/Method[@name="CreateDockPane(DockContent, DockState, bool)"]/*'/>
DockPane CreateDockPane(DockContent content, DockState visibleState, bool show);
/// <include file='CodeDoc\Interfaces.xml' path='//CodeDoc/Interface[@name="IDockPaneFactory"]/Method[@name="CreateDockPane(DockContent, FloatWindow, bool)"]/*'/>
DockPane CreateDockPane(DockContent content, FloatWindow floatWindow, bool show);
/// <include file='CodeDoc\Interfaces.xml' path='//CodeDoc/Interface[@name="IDockPaneFactory"]/Method[@name="CreateDockPane(DockContent, DockPane, DockAlignment, double, bool)"]/*'/>
DockPane CreateDockPane(DockContent content, DockPane prevPane, DockAlignment alignment, double proportion, bool show);
/// <include file='CodeDoc\Interfaces.xml' path='//CodeDoc/Interface[@name="IDockPaneFactory"]/Method[@name="CreateDockPane(DockContent, Rectangle, bool)"]/*'/>
DockPane CreateDockPane(DockContent content, Rectangle floatWindowBounds, bool show);
}
internal class DefaultDockPaneFactory : IDockPaneFactory
{
public DockPane CreateDockPane(DockContent content, DockState visibleState, bool show)
{
return new DockPane(content, visibleState, show);
}
public DockPane CreateDockPane(DockContent content, FloatWindow floatWindow, bool show)
{
return new DockPane(content, floatWindow, show);
}
public DockPane CreateDockPane(DockContent content, DockPane prevPane, DockAlignment alignment, double proportion, bool show)
{
return new DockPane(content, prevPane, alignment, proportion, show);
}
public DockPane CreateDockPane(DockContent content, Rectangle floatWindowBounds, bool show)
{
return new DockPane(content, floatWindowBounds, show);
}
}
/// <include file='CodeDoc\Interfaces.xml' path='//CodeDoc/Interface[@name="IFloatWindowFactory"]/InterfaceDef/*'/>
public interface IFloatWindowFactory
{
/// <include file='CodeDoc\Interfaces.xml' path='//CodeDoc/Interface[@name="IFloatWindowFactory"]/Method[@name="CreateFloatWindow"]/*'/>
/// <include file='CodeDoc\Interfaces.xml' path='//CodeDoc/Interface[@name="IFloatWindowFactory"]/Method[@name="CreateFloatWindow(DockPanel, DockPane)"]/*'/>
FloatWindow CreateFloatWindow(DockPanel dockPanel, DockPane pane);
/// <include file='CodeDoc\Interfaces.xml' path='//CodeDoc/Interface[@name="IFloatWindowFactory"]/Method[@name="CreateFloatWindow(DockPanel, DockPane, Rectangle)"]/*'/>
FloatWindow CreateFloatWindow(DockPanel dockPanel, DockPane pane, Rectangle bounds);
}
internal class DefaultFloatWindowFactory : IFloatWindowFactory
{
public FloatWindow CreateFloatWindow(DockPanel dockPanel, DockPane pane)
{
return new FloatWindow(dockPanel, pane);
}
public FloatWindow CreateFloatWindow(DockPanel dockPanel, DockPane pane, Rectangle bounds)
{
return new FloatWindow(dockPanel, pane, bounds);
}
}
}

0
src/Libraries/DockPanel_Src/WinFormsUI/Measures.cs → src/Libraries/DockPanel_Src/WinFormsUI/Docking/Measures.cs

13
src/Libraries/DockPanel_Src/WinFormsUI/NestedDockingStatus.cs → src/Libraries/DockPanel_Src/WinFormsUI/Docking/NestedDockingStatus.cs

@ -13,6 +13,7 @@ using System.Drawing; @@ -13,6 +13,7 @@ using System.Drawing;
namespace WeifenLuo.WinFormsUI
{
/// <include file='CodeDoc\NestedDockingStatus.xml' path='//CodeDoc/Class[@name="NestedDockingStatus"]/ClassDef/*'/>
public class NestedDockingStatus
{
internal NestedDockingStatus(DockPane pane)
@ -21,72 +22,84 @@ namespace WeifenLuo.WinFormsUI @@ -21,72 +22,84 @@ namespace WeifenLuo.WinFormsUI
}
private DockPane m_dockPane = null;
/// <include file='CodeDoc\NestedDockingStatus.xml' path='//CodeDoc/Class[@name="NestedDockingStatus"]/Property[@name="DockPane"]/*'/>
public DockPane DockPane
{
get { return m_dockPane; }
}
private DockList m_dockList = null;
/// <include file='CodeDoc\NestedDockingStatus.xml' path='//CodeDoc/Class[@name="NestedDockingStatus"]/Property[@name="DockList"]/*'/>
public DockList DockList
{
get { return m_dockList; }
}
private DockPane m_prevPane = null;
/// <include file='CodeDoc\NestedDockingStatus.xml' path='//CodeDoc/Class[@name="NestedDockingStatus"]/Property[@name="PrevPane"]/*'/>
public DockPane PrevPane
{
get { return m_prevPane; }
}
private DockAlignment m_alignment = DockAlignment.Left;
/// <include file='CodeDoc\NestedDockingStatus.xml' path='//CodeDoc/Class[@name="NestedDockingStatus"]/Property[@name="Alignment"]/*'/>
public DockAlignment Alignment
{
get { return m_alignment; }
}
private double m_proportion = 0.5;
/// <include file='CodeDoc\NestedDockingStatus.xml' path='//CodeDoc/Class[@name="NestedDockingStatus"]/Property[@name="Proportion"]/*'/>
public double Proportion
{
get { return m_proportion; }
}
private bool m_isDisplaying = false;
/// <include file='CodeDoc\NestedDockingStatus.xml' path='//CodeDoc/Class[@name="NestedDockingStatus"]/Property[@name="IsDisplaying"]/*'/>
public bool IsDisplaying
{
get { return m_isDisplaying; }
}
private DockPane m_displayingPrevPane = null;
/// <include file='CodeDoc\NestedDockingStatus.xml' path='//CodeDoc/Class[@name="NestedDockingStatus"]/Property[@name="DisplayingPrevPane"]/*'/>
public DockPane DisplayingPrevPane
{
get { return m_displayingPrevPane; }
}
private DockAlignment m_displayingAlignment = DockAlignment.Left;
/// <include file='CodeDoc\NestedDockingStatus.xml' path='//CodeDoc/Class[@name="NestedDockingStatus"]/Property[@name="DisplayingAlignment"]/*'/>
public DockAlignment DisplayingAlignment
{
get { return m_displayingAlignment; }
}
private double m_displayingProportion = 0.5;
/// <include file='CodeDoc\NestedDockingStatus.xml' path='//CodeDoc/Class[@name="NestedDockingStatus"]/Property[@name="DisplayingProportion"]/*'/>
public double DisplayingProportion
{
get { return m_displayingProportion; }
}
private Rectangle m_logicalBounds = Rectangle.Empty;
/// <include file='CodeDoc\NestedDockingStatus.xml' path='//CodeDoc/Class[@name="NestedDockingStatus"]/Property[@name="LogicalBounds"]/*'/>
public Rectangle LogicalBounds
{
get { return m_logicalBounds; }
}
private Rectangle m_paneBounds = Rectangle.Empty;
/// <include file='CodeDoc\NestedDockingStatus.xml' path='//CodeDoc/Class[@name="NestedDockingStatus"]/Property[@name="PaneBounds"]/*'/>
public Rectangle PaneBounds
{
get { return m_paneBounds; }
}
private Rectangle m_splitterBounds = Rectangle.Empty;
/// <include file='CodeDoc\NestedDockingStatus.xml' path='//CodeDoc/Class[@name="NestedDockingStatus"]/Property[@name="SplitterBounds"]/*'/>
public Rectangle SplitterBounds
{
get { return m_splitterBounds; }

0
src/Libraries/DockPanel_Src/WinFormsUI/SplitterBase.cs → src/Libraries/DockPanel_Src/WinFormsUI/Docking/SplitterBase.cs

60
src/Libraries/DockPanel_Src/WinFormsUI/Enums.cs

@ -1,60 +0,0 @@ @@ -1,60 +0,0 @@
// *****************************************************************************
//
// Copyright 2004, Weifen Luo
// All rights reserved. The software and associated documentation
// supplied hereunder are the proprietary information of Weifen Luo
// and are supplied subject to licence terms.
//
// WinFormsUI Library Version 1.0
// *****************************************************************************
using System;
using System.ComponentModel;
using System.Windows.Forms;
namespace WeifenLuo.WinFormsUI
{
[Flags]
[Serializable]
[Editor(typeof(DockAreasEditor), typeof(System.Drawing.Design.UITypeEditor))]
public enum DockAreas
{
Float = 1,
DockLeft = 2,
DockRight = 4,
DockTop = 8,
DockBottom = 16,
Document = 32
}
public enum DockState
{
Unknown = 0,
Float = 1,
DockTopAutoHide = 2,
DockLeftAutoHide = 3,
DockBottomAutoHide = 4,
DockRightAutoHide = 5,
Document = 6,
DockTop = 7,
DockLeft = 8,
DockBottom = 9,
DockRight = 10,
Hidden = 11
}
public enum DockPaneType
{
AutoHide,
Dock,
Float
}
public enum DockAlignment
{
Left,
Right,
Top,
Bottom
}
}

3
src/Libraries/DockPanel_Src/WinFormsUI/DrawHelper.cs → src/Libraries/DockPanel_Src/WinFormsUI/Helpers/DrawHelper.cs

@ -15,9 +15,6 @@ using System.Windows.Forms; @@ -15,9 +15,6 @@ using System.Windows.Forms;
namespace WeifenLuo.WinFormsUI
{
/// <summary>
/// Summary description for DrawHelper.
/// </summary>
internal class DrawHelper
{
private static IntPtr m_halfToneBrush = IntPtr.Zero;

0
src/Libraries/DockPanel_Src/WinFormsUI/LocalWindowsHook.cs → src/Libraries/DockPanel_Src/WinFormsUI/Helpers/LocalWindowsHook.cs

0
src/Libraries/DockPanel_Src/WinFormsUI/Localization.cs → src/Libraries/DockPanel_Src/WinFormsUI/Helpers/Localization.cs

4
src/Libraries/DockPanel_Src/WinFormsUI/ResourceHelper.cs → src/Libraries/DockPanel_Src/WinFormsUI/Helpers/ResourceHelper.cs

@ -12,14 +12,10 @@ using System; @@ -12,14 +12,10 @@ using System;
using System.Drawing;
using System.Reflection;
using System.Resources;
using System.Windows.Forms;
namespace WeifenLuo.WinFormsUI
{
/// <summary>
/// Summary description for ResourceHelper.
/// </summary>
internal class ResourceHelper
{
private static ResourceManager m_resourceManager;

69
src/Libraries/DockPanel_Src/WinFormsUI/Interfaces.cs

@ -1,69 +0,0 @@ @@ -1,69 +0,0 @@
// *****************************************************************************
//
// Copyright 2004, Weifen Luo
// All rights reserved. The software and associated documentation
// supplied hereunder are the proprietary information of Weifen Luo
// and are supplied subject to licence terms.
//
// WinFormsUI Library Version 1.0
// *****************************************************************************
using System;
using System.Drawing;
namespace WeifenLuo.WinFormsUI
{
public interface IDockListContainer
{
DockState DockState { get; }
Rectangle DisplayingRectangle { get; }
DockList DockList { get; }
DisplayingDockList DisplayingList { get; }
bool IsDisposed { get; }
bool IsFloat { get; }
}
public interface IDockPaneFactory
{
DockPane CreateDockPane(DockContent content, DockState visibleState, bool show);
DockPane CreateDockPane(DockContent content, FloatWindow floatWindow, bool show);
DockPane CreateDockPane(DockContent content, Rectangle floatWindowBounds, bool show);
}
internal class DefaultDockPaneFactory : IDockPaneFactory
{
public DockPane CreateDockPane(DockContent content, DockState visibleState, bool show)
{
return new DockPane(content, visibleState, show);
}
public DockPane CreateDockPane(DockContent content, FloatWindow floatWindow, bool show)
{
return new DockPane(content, floatWindow, show);
}
public DockPane CreateDockPane(DockContent content, Rectangle floatWindowBounds, bool show)
{
return new DockPane(content, floatWindowBounds, show);
}
}
public interface IFloatWindowFactory
{
FloatWindow CreateFloatWindow(DockPanel dockPanel, DockPane pane);
FloatWindow CreateFloatWindow(DockPanel dockPanel, DockPane pane, Rectangle bounds);
}
internal class DefaultFloatWindowFactory : IFloatWindowFactory
{
public FloatWindow CreateFloatWindow(DockPanel dockPanel, DockPane pane)
{
return new FloatWindow(dockPanel, pane);
}
public FloatWindow CreateFloatWindow(DockPanel dockPanel, DockPane pane, Rectangle bounds)
{
return new FloatWindow(dockPanel, pane, bounds);
}
}
}

9
src/Libraries/DockPanel_Src/WinFormsUI/Strings.ResX

@ -313,4 +313,13 @@ @@ -313,4 +313,13 @@
<data name="DockPanel.MdiIntegration.Description">
<value>Determines if the documents are integrated as MDI child forms.</value>
</data>
<data name="DockContent.Show.NullPane">
<value>The Pane can not be null.</value>
</data>
<data name="DockContent.Show.InvalidBeforeContent">
<value>Invalid beforeContent, it must be contained by the pane.</value>
</data>
<data name="DockContent.Show.InvalidPrevPane">
<value>The prevPane is invalid. It can not be null, and its docking state must not be auto-hide.</value>
</data>
</root>

1
src/Libraries/DockPanel_Src/WinFormsUI/Win32/User32.cs

@ -15,7 +15,6 @@ using WeifenLuo.WinFormsUI.Win32; @@ -15,7 +15,6 @@ using WeifenLuo.WinFormsUI.Win32;
namespace WeifenLuo.WinFormsUI
{
internal class User32
{
[DllImport("User32.dll", CharSet=CharSet.Auto)]

147
src/Libraries/DockPanel_Src/WinFormsUI/WinFormsUI.csproj

@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectType>Local</ProjectType>
<ProductVersion>8.0.41115</ProductVersion>
@ -6,7 +6,11 @@ @@ -6,7 +6,11 @@
<ProjectGuid>{D3C782BA-178E-4235-A3BA-8C11DEBB6BEE}</ProjectGuid>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<AssemblyName>WeifenLuo.WinFormsUI</AssemblyName>
<ApplicationIcon>
</ApplicationIcon>
<AssemblyKeyContainerName>
</AssemblyKeyContainerName>
<AssemblyName>WeifenLuo.WinFormsUI.Docking</AssemblyName>
<AssemblyOriginatorKeyFile>..\..\..\Main\Core\Project\Resources\ICSharpCode.Core.snk</AssemblyOriginatorKeyFile>
<DefaultClientScript>JScript</DefaultClientScript>
<DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout>
@ -15,6 +19,10 @@ @@ -15,6 +19,10 @@
<OutputType>Library</OutputType>
<RootNamespace>WeifenLuo.WinFormsUI</RootNamespace>
<RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>
<StartupObject>
</StartupObject>
<FileUpgradeFlags>
</FileUpgradeFlags>
<SignAssembly>true</SignAssembly>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
@ -22,10 +30,15 @@ @@ -22,10 +30,15 @@
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<DocumentationFile>bin\Debug\CodeDoc.xml</DocumentationFile>
<DebugSymbols>true</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<NoStdLib>false</NoStdLib>
<NoWarn>
</NoWarn>
<Optimize>false</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
@ -37,10 +50,16 @@ @@ -37,10 +50,16 @@
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>TRACE</DefineConstants>
<DocumentationFile>
</DocumentationFile>
<DebugSymbols>false</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<NoStdLib>false</NoStdLib>
<NoWarn>
</NoWarn>
<Optimize>true</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
@ -48,97 +67,119 @@ @@ -48,97 +67,119 @@
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Design" />
<Reference Include="System.Drawing" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.XML" />
<Reference Include="System">
<Name>System</Name>
</Reference>
<Reference Include="System.Data">
<Name>System.Data</Name>
</Reference>
<Reference Include="System.Design">
<Name>System.Design</Name>
</Reference>
<Reference Include="System.Drawing">
<Name>System.Drawing</Name>
</Reference>
<Reference Include="System.Windows.Forms">
<Name>System.Windows.Forms</Name>
</Reference>
<Reference Include="System.Xml">
<Name>System.XML</Name>
</Reference>
</ItemGroup>
<ItemGroup>
<Compile Include="AssemblyInfo.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="AutoHideWindow.cs" />
<Compile Include="AutoHideWindowSplitter.cs" />
<Compile Include="DisplayingDockList.cs">
<Compile Include="Controls\InertButton.cs">
</Compile>
<Compile Include="Docking\AutoHideWindow.cs">
</Compile>
<Compile Include="Docking\AutoHideWindowSplitter.cs">
</Compile>
<Compile Include="Docking\DisplayingDockList.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="DockAreasEditor.cs">
<Compile Include="Docking\DockAreasEditor.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="DockContent.cs">
<Compile Include="Docking\DockContent.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="DockContentCollection.cs">
<Compile Include="Docking\DockContentCollection.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="DockHelper.cs">
<Compile Include="Docking\DockHelper.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="DockList.cs">
<Compile Include="Docking\DockList.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="DockPane.cs">
<Compile Include="Docking\DockPane.cs">
<SubType>UserControl</SubType>
</Compile>
<Compile Include="DockPaneCollection.cs">
<Compile Include="Docking\DockPaneCollection.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="DockPanel.cs" />
<Compile Include="DockPanelPersist.cs">
<SubType>Code</SubType>
<Compile Include="Docking\DockPanel.cs">
</Compile>
<Compile Include="DockPaneSplitter.cs" />
<Compile Include="DockWindow.cs" />
<Compile Include="DockWindowCollection.cs">
<Compile Include="Docking\DockPanelPersist.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="DockWindowSplitter.cs" />
<Compile Include="DragHandler.cs">
<Compile Include="Docking\DockPaneSplitter.cs">
</Compile>
<Compile Include="Docking\DockWindow.cs">
</Compile>
<Compile Include="Docking\DockWindowCollection.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="DragHandlerBase.cs">
<Compile Include="Docking\DockWindowSplitter.cs">
</Compile>
<Compile Include="Docking\DragHandler.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="DrawHelper.cs">
<Compile Include="Docking\DragHandlerBase.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="DummyControl.cs" />
<Compile Include="Enums.cs">
<Compile Include="Docking\DummyControl.cs">
</Compile>
<Compile Include="Docking\Enums.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="EventArgs.cs">
<Compile Include="Docking\EventArgs.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="FloatWindow.cs">
<Compile Include="Docking\FloatWindow.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="FloatWindowCollection.cs">
<Compile Include="Docking\FloatWindowCollection.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="HiddenMdiChild.cs">
<Compile Include="Docking\HiddenMdiChild.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="InertButton.cs" />
<Compile Include="Interfaces.cs">
<Compile Include="Docking\Interfaces.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="Localization.cs">
<Compile Include="Docking\Measures.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="LocalWindowsHook.cs">
<Compile Include="Docking\NestedDockingStatus.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="Measures.cs">
<Compile Include="Docking\SplitterBase.cs">
</Compile>
<Compile Include="Helpers\DrawHelper.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="Helpers\Localization.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="NestedDockingStatus.cs">
<Compile Include="Helpers\LocalWindowsHook.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="ResourceHelper.cs">
<Compile Include="Helpers\ResourceHelper.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="SplitterBase.cs" />
<Compile Include="Win32\Enums.cs">
<SubType>Code</SubType>
</Compile>
@ -162,6 +203,24 @@ @@ -162,6 +203,24 @@
<EmbeddedResource Include="Resources\DockPane.ToolWindowCloseDisabled.bmp" />
<EmbeddedResource Include="Resources\DockPane.ToolWindowCloseEnabled.bmp" />
<EmbeddedResource Include="Strings.resX" />
<Content Include="Controls\CodeDoc\InertButton.xml" />
<Content Include="Docking\CodeDoc\DisplayingDockList.xml" />
<Content Include="Docking\CodeDoc\DockContent.xml" />
<Content Include="Docking\CodeDoc\DockContentCollection.xml" />
<Content Include="Docking\CodeDoc\DockList.xml" />
<Content Include="Docking\CodeDoc\DockPane.xml" />
<Content Include="Docking\CodeDoc\DockPaneCollection.xml" />
<Content Include="Docking\CodeDoc\DockPanel.xml" />
<Content Include="Docking\CodeDoc\DockWindow.xml" />
<Content Include="Docking\CodeDoc\DockWindowCollection.xml" />
<Content Include="Docking\CodeDoc\Enums.xml" />
<Content Include="Docking\CodeDoc\EventArgs.xml" />
<Content Include="Docking\CodeDoc\FloatWindow.xml" />
<Content Include="Docking\CodeDoc\FloatWindowCollection.xml" />
<Content Include="Docking\CodeDoc\Interfaces.xml" />
<Content Include="Docking\CodeDoc\NestedDockingStatus.xml" />
</ItemGroup>
<ItemGroup>
<None Include="..\..\..\Main\Core\Project\Resources\ICSharpCode.Core.snk">
<Link>ICSharpCode.Core.snk</Link>
</None>
@ -170,4 +229,10 @@ @@ -170,4 +229,10 @@
<Folder Include="Configuration\" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSHARP.Targets" />
<PropertyGroup>
<PreBuildEvent>
</PreBuildEvent>
<PostBuildEvent>
</PostBuildEvent>
</PropertyGroup>
</Project>

32
src/Libraries/DockPanel_Src/WinFormsUI/WinFormsUI.csproj.user

@ -1,8 +1,14 @@ @@ -1,8 +1,14 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<LastOpenVersion>8.0.41115</LastOpenVersion>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ReferencePath>
</ReferencePath>
<CopyProjectDestinationFolder>
</CopyProjectDestinationFolder>
<CopyProjectUncPath>
</CopyProjectUncPath>
<CopyProjectOption>0</CopyProjectOption>
<ProjectView>ProjectFiles</ProjectView>
<ProjectTrust>0</ProjectTrust>
@ -13,7 +19,19 @@ @@ -13,7 +19,19 @@
<EnableUnmanagedDebugging>false</EnableUnmanagedDebugging>
<EnableSQLServerDebugging>false</EnableSQLServerDebugging>
<RemoteDebugEnabled>false</RemoteDebugEnabled>
<RemoteDebugMachine>
</RemoteDebugMachine>
<StartAction>Project</StartAction>
<StartArguments>
</StartArguments>
<StartPage>
</StartPage>
<StartProgram>
</StartProgram>
<StartURL>
</StartURL>
<StartWorkingDirectory>
</StartWorkingDirectory>
<StartWithIE>true</StartWithIE>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
@ -22,7 +40,19 @@ @@ -22,7 +40,19 @@
<EnableUnmanagedDebugging>false</EnableUnmanagedDebugging>
<EnableSQLServerDebugging>false</EnableSQLServerDebugging>
<RemoteDebugEnabled>false</RemoteDebugEnabled>
<RemoteDebugMachine>
</RemoteDebugMachine>
<StartAction>Project</StartAction>
<StartArguments>
</StartArguments>
<StartPage>
</StartPage>
<StartProgram>
</StartProgram>
<StartURL>
</StartURL>
<StartWorkingDirectory>
</StartWorkingDirectory>
<StartWithIE>false</StartWithIE>
</PropertyGroup>
</Project>

4
src/Libraries/ICSharpCode.TextEditor/Project/Src/Actions/BookmarkActions.cs

@ -1,7 +1,7 @@ @@ -1,7 +1,7 @@
// <file>
// <file>
// <copyright see="prj:///doc/copyright.txt"/>
// <license see="prj:///doc/license.txt"/>
// <owner name="Mike Krüger" email="mike@icsharpcode.net"/>
// <owner name="Mike Krueger" email="mike@icsharpcode.net"/>
// <version value="$version"/>
// </file>

4
src/Libraries/ICSharpCode.TextEditor/Project/Src/Actions/MiscActions.cs

@ -1,7 +1,7 @@ @@ -1,7 +1,7 @@
// <file>
// <file>
// <copyright see="prj:///doc/copyright.txt"/>
// <license see="prj:///doc/license.txt"/>
// <owner name="Mike Krüger" email="mike@icsharpcode.net"/>
// <owner name="Mike Krueger" email="mike@icsharpcode.net"/>
// <version value="$version"/>
// </file>

Loading…
Cancel
Save