Changeset 4068 for trunk/sources/HeuristicLab.ExtLibs/HeuristicLab.WinFormsUI/2.3.1/WinFormsUI-2.3.1/Docking/DockPanelExtender.cs
- Timestamp:
- 07/22/10 00:44:01 (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.ExtLibs/HeuristicLab.WinFormsUI/2.3.1/WinFormsUI-2.3.1/Docking/DockPanelExtender.cs
r2645 r4068 1 1 using System; 2 using System.Diagnostics.CodeAnalysis; 2 3 using System.Drawing; 3 using System.Diagnostics.CodeAnalysis;4 4 5 namespace WeifenLuo.WinFormsUI.Docking 6 { 7 public sealed class DockPanelExtender 8 { 9 [SuppressMessage("Microsoft.Design", "CA1034:NestedTypesShouldNotBeVisible")] 10 public interface IDockPaneFactory 11 { 12 DockPane CreateDockPane(IDockContent content, DockState visibleState, bool show); 13 [SuppressMessage("Microsoft.Naming", "CA1720:AvoidTypeNamesInParameters", MessageId = "1#")] 14 DockPane CreateDockPane(IDockContent content, FloatWindow floatWindow, bool show); 15 DockPane CreateDockPane(IDockContent content, DockPane previousPane, DockAlignment alignment, double proportion, bool show); 16 [SuppressMessage("Microsoft.Naming", "CA1720:AvoidTypeNamesInParameters", MessageId = "1#")] 17 DockPane CreateDockPane(IDockContent content, Rectangle floatWindowBounds, bool show); 18 } 5 namespace WeifenLuo.WinFormsUI.Docking { 6 public sealed class DockPanelExtender { 7 [SuppressMessage("Microsoft.Design", "CA1034:NestedTypesShouldNotBeVisible")] 8 public interface IDockPaneFactory { 9 DockPane CreateDockPane(IDockContent content, DockState visibleState, bool show); 10 [SuppressMessage("Microsoft.Naming", "CA1720:AvoidTypeNamesInParameters", MessageId = "1#")] 11 DockPane CreateDockPane(IDockContent content, FloatWindow floatWindow, bool show); 12 DockPane CreateDockPane(IDockContent content, DockPane previousPane, DockAlignment alignment, double proportion, bool show); 13 [SuppressMessage("Microsoft.Naming", "CA1720:AvoidTypeNamesInParameters", MessageId = "1#")] 14 DockPane CreateDockPane(IDockContent content, Rectangle floatWindowBounds, bool show); 15 } 19 16 20 [SuppressMessage("Microsoft.Design", "CA1034:NestedTypesShouldNotBeVisible")] 21 public interface IFloatWindowFactory 22 { 23 FloatWindow CreateFloatWindow(DockPanel dockPanel, DockPane pane); 24 FloatWindow CreateFloatWindow(DockPanel dockPanel, DockPane pane, Rectangle bounds); 25 } 17 [SuppressMessage("Microsoft.Design", "CA1034:NestedTypesShouldNotBeVisible")] 18 public interface IFloatWindowFactory { 19 FloatWindow CreateFloatWindow(DockPanel dockPanel, DockPane pane); 20 FloatWindow CreateFloatWindow(DockPanel dockPanel, DockPane pane, Rectangle bounds); 21 } 26 22 27 [SuppressMessage("Microsoft.Design", "CA1034:NestedTypesShouldNotBeVisible")] 28 public interface IDockPaneCaptionFactory 29 { 30 DockPaneCaptionBase CreateDockPaneCaption(DockPane pane); 31 } 23 [SuppressMessage("Microsoft.Design", "CA1034:NestedTypesShouldNotBeVisible")] 24 public interface IDockPaneCaptionFactory { 25 DockPaneCaptionBase CreateDockPaneCaption(DockPane pane); 26 } 32 27 33 [SuppressMessage("Microsoft.Design", "CA1034:NestedTypesShouldNotBeVisible")] 34 public interface IDockPaneStripFactory 35 { 36 DockPaneStripBase CreateDockPaneStrip(DockPane pane); 37 } 28 [SuppressMessage("Microsoft.Design", "CA1034:NestedTypesShouldNotBeVisible")] 29 public interface IDockPaneStripFactory { 30 DockPaneStripBase CreateDockPaneStrip(DockPane pane); 31 } 38 32 39 [SuppressMessage("Microsoft.Design", "CA1034:NestedTypesShouldNotBeVisible")] 40 public interface IAutoHideStripFactory 41 { 42 AutoHideStripBase CreateAutoHideStrip(DockPanel panel); 43 } 33 [SuppressMessage("Microsoft.Design", "CA1034:NestedTypesShouldNotBeVisible")] 34 public interface IAutoHideStripFactory { 35 AutoHideStripBase CreateAutoHideStrip(DockPanel panel); 36 } 44 37 45 #region DefaultDockPaneFactory 46 private class DefaultDockPaneFactory : IDockPaneFactory 47 { 48 public DockPane CreateDockPane(IDockContent content, DockState visibleState, bool show) 49 { 50 return new DockPane(content, visibleState, show); 51 } 38 #region DefaultDockPaneFactory 39 private class DefaultDockPaneFactory : IDockPaneFactory { 40 public DockPane CreateDockPane(IDockContent content, DockState visibleState, bool show) { 41 return new DockPane(content, visibleState, show); 42 } 52 43 53 public DockPane CreateDockPane(IDockContent content, FloatWindow floatWindow, bool show) 54 { 55 return new DockPane(content, floatWindow, show); 56 } 44 public DockPane CreateDockPane(IDockContent content, FloatWindow floatWindow, bool show) { 45 return new DockPane(content, floatWindow, show); 46 } 57 47 58 public DockPane CreateDockPane(IDockContent content, DockPane prevPane, DockAlignment alignment, double proportion, bool show) 59 { 60 return new DockPane(content, prevPane, alignment, proportion, show); 61 } 48 public DockPane CreateDockPane(IDockContent content, DockPane prevPane, DockAlignment alignment, double proportion, bool show) { 49 return new DockPane(content, prevPane, alignment, proportion, show); 50 } 62 51 63 public DockPane CreateDockPane(IDockContent content, Rectangle floatWindowBounds, bool show) 64 { 65 return new DockPane(content, floatWindowBounds, show); 66 } 67 } 68 #endregion 52 public DockPane CreateDockPane(IDockContent content, Rectangle floatWindowBounds, bool show) { 53 return new DockPane(content, floatWindowBounds, show); 54 } 55 } 56 #endregion 69 57 70 #region DefaultFloatWindowFactory 71 private class DefaultFloatWindowFactory : IFloatWindowFactory 72 { 73 public FloatWindow CreateFloatWindow(DockPanel dockPanel, DockPane pane) 74 { 75 return new FloatWindow(dockPanel, pane); 76 } 58 #region DefaultFloatWindowFactory 59 private class DefaultFloatWindowFactory : IFloatWindowFactory { 60 public FloatWindow CreateFloatWindow(DockPanel dockPanel, DockPane pane) { 61 return new FloatWindow(dockPanel, pane); 62 } 77 63 78 public FloatWindow CreateFloatWindow(DockPanel dockPanel, DockPane pane, Rectangle bounds) 79 { 80 return new FloatWindow(dockPanel, pane, bounds); 81 } 82 } 83 #endregion 64 public FloatWindow CreateFloatWindow(DockPanel dockPanel, DockPane pane, Rectangle bounds) { 65 return new FloatWindow(dockPanel, pane, bounds); 66 } 67 } 68 #endregion 84 69 85 #region DefaultDockPaneCaptionFactory 86 private class DefaultDockPaneCaptionFactory : IDockPaneCaptionFactory 87 { 88 public DockPaneCaptionBase CreateDockPaneCaption(DockPane pane) 89 { 90 return new VS2005DockPaneCaption(pane); 91 } 92 } 93 #endregion 70 #region DefaultDockPaneCaptionFactory 71 private class DefaultDockPaneCaptionFactory : IDockPaneCaptionFactory { 72 public DockPaneCaptionBase CreateDockPaneCaption(DockPane pane) { 73 return new VS2005DockPaneCaption(pane); 74 } 75 } 76 #endregion 94 77 95 #region DefaultDockPaneTabStripFactory 96 private class DefaultDockPaneStripFactory : IDockPaneStripFactory 97 { 98 public DockPaneStripBase CreateDockPaneStrip(DockPane pane) 99 { 100 return new VS2005DockPaneStrip(pane); 101 } 102 } 103 #endregion 78 #region DefaultDockPaneTabStripFactory 79 private class DefaultDockPaneStripFactory : IDockPaneStripFactory { 80 public DockPaneStripBase CreateDockPaneStrip(DockPane pane) { 81 return new VS2005DockPaneStrip(pane); 82 } 83 } 84 #endregion 104 85 105 #region DefaultAutoHideStripFactory 106 private class DefaultAutoHideStripFactory : IAutoHideStripFactory 107 { 108 public AutoHideStripBase CreateAutoHideStrip(DockPanel panel) 109 { 110 return new VS2005AutoHideStrip(panel); 111 } 112 } 113 #endregion 86 #region DefaultAutoHideStripFactory 87 private class DefaultAutoHideStripFactory : IAutoHideStripFactory { 88 public AutoHideStripBase CreateAutoHideStrip(DockPanel panel) { 89 return new VS2005AutoHideStrip(panel); 90 } 91 } 92 #endregion 114 93 115 internal DockPanelExtender(DockPanel dockPanel) 116 { 117 m_dockPanel = dockPanel; 118 } 94 internal DockPanelExtender(DockPanel dockPanel) { 95 m_dockPanel = dockPanel; 96 } 119 97 120 private DockPanel m_dockPanel; 121 private DockPanel DockPanel 122 { 123 get { return m_dockPanel; } 124 } 98 private DockPanel m_dockPanel; 99 private DockPanel DockPanel { 100 get { return m_dockPanel; } 101 } 125 102 126 private IDockPaneFactory m_dockPaneFactory = null; 127 public IDockPaneFactory DockPaneFactory 128 { 129 get 130 { 131 if (m_dockPaneFactory == null) 132 m_dockPaneFactory = new DefaultDockPaneFactory(); 103 private IDockPaneFactory m_dockPaneFactory = null; 104 public IDockPaneFactory DockPaneFactory { 105 get { 106 if (m_dockPaneFactory == null) 107 m_dockPaneFactory = new DefaultDockPaneFactory(); 133 108 134 return m_dockPaneFactory; 135 } 136 set 137 { 138 if (DockPanel.Panes.Count > 0) 139 throw new InvalidOperationException(); 109 return m_dockPaneFactory; 110 } 111 set { 112 if (DockPanel.Panes.Count > 0) 113 throw new InvalidOperationException(); 140 114 141 142 143 115 m_dockPaneFactory = value; 116 } 117 } 144 118 145 private IFloatWindowFactory m_floatWindowFactory = null; 146 public IFloatWindowFactory FloatWindowFactory 147 { 148 get 149 { 150 if (m_floatWindowFactory == null) 151 m_floatWindowFactory = new DefaultFloatWindowFactory(); 119 private IFloatWindowFactory m_floatWindowFactory = null; 120 public IFloatWindowFactory FloatWindowFactory { 121 get { 122 if (m_floatWindowFactory == null) 123 m_floatWindowFactory = new DefaultFloatWindowFactory(); 152 124 153 return m_floatWindowFactory; 154 } 155 set 156 { 157 if (DockPanel.FloatWindows.Count > 0) 158 throw new InvalidOperationException(); 125 return m_floatWindowFactory; 126 } 127 set { 128 if (DockPanel.FloatWindows.Count > 0) 129 throw new InvalidOperationException(); 159 130 160 161 162 131 m_floatWindowFactory = value; 132 } 133 } 163 134 164 private IDockPaneCaptionFactory m_dockPaneCaptionFactory = null; 165 public IDockPaneCaptionFactory DockPaneCaptionFactory 166 { 167 get 168 { 169 if (m_dockPaneCaptionFactory == null) 170 m_dockPaneCaptionFactory = new DefaultDockPaneCaptionFactory(); 135 private IDockPaneCaptionFactory m_dockPaneCaptionFactory = null; 136 public IDockPaneCaptionFactory DockPaneCaptionFactory { 137 get { 138 if (m_dockPaneCaptionFactory == null) 139 m_dockPaneCaptionFactory = new DefaultDockPaneCaptionFactory(); 171 140 172 return m_dockPaneCaptionFactory; 173 } 174 set 175 { 176 if (DockPanel.Panes.Count > 0) 177 throw new InvalidOperationException(); 141 return m_dockPaneCaptionFactory; 142 } 143 set { 144 if (DockPanel.Panes.Count > 0) 145 throw new InvalidOperationException(); 178 146 179 180 181 147 m_dockPaneCaptionFactory = value; 148 } 149 } 182 150 183 private IDockPaneStripFactory m_dockPaneStripFactory = null; 184 public IDockPaneStripFactory DockPaneStripFactory 185 { 186 get 187 { 188 if (m_dockPaneStripFactory == null) 189 m_dockPaneStripFactory = new DefaultDockPaneStripFactory(); 151 private IDockPaneStripFactory m_dockPaneStripFactory = null; 152 public IDockPaneStripFactory DockPaneStripFactory { 153 get { 154 if (m_dockPaneStripFactory == null) 155 m_dockPaneStripFactory = new DefaultDockPaneStripFactory(); 190 156 191 return m_dockPaneStripFactory; 192 } 193 set 194 { 195 if (DockPanel.Contents.Count > 0) 196 throw new InvalidOperationException(); 157 return m_dockPaneStripFactory; 158 } 159 set { 160 if (DockPanel.Contents.Count > 0) 161 throw new InvalidOperationException(); 197 162 198 199 200 163 m_dockPaneStripFactory = value; 164 } 165 } 201 166 202 private IAutoHideStripFactory m_autoHideStripFactory = null; 203 public IAutoHideStripFactory AutoHideStripFactory 204 { 205 get 206 { 207 if (m_autoHideStripFactory == null) 208 m_autoHideStripFactory = new DefaultAutoHideStripFactory(); 167 private IAutoHideStripFactory m_autoHideStripFactory = null; 168 public IAutoHideStripFactory AutoHideStripFactory { 169 get { 170 if (m_autoHideStripFactory == null) 171 m_autoHideStripFactory = new DefaultAutoHideStripFactory(); 209 172 210 return m_autoHideStripFactory; 211 } 212 set 213 { 214 if (DockPanel.Contents.Count > 0) 215 throw new InvalidOperationException(); 173 return m_autoHideStripFactory; 174 } 175 set { 176 if (DockPanel.Contents.Count > 0) 177 throw new InvalidOperationException(); 216 178 217 218 179 if (m_autoHideStripFactory == value) 180 return; 219 181 220 221 222 223 224 182 m_autoHideStripFactory = value; 183 DockPanel.ResetAutoHideStripControl(); 184 } 185 } 186 } 225 187 }
Note: See TracChangeset
for help on using the changeset viewer.