#region License Information
/* HeuristicLab
* Copyright (C) 2002-2008 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
*
* This file is part of HeuristicLab.
*
* HeuristicLab is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* HeuristicLab is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with HeuristicLab. If not, see .
*/
#endregion
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using WeifenLuo.WinFormsUI.Docking;
namespace HeuristicLab.MainForm {
public partial class DockingMainForm : MainFormBase {
public DockingMainForm(Type userInterfaceItemType)
: base(userInterfaceItemType) {
InitializeComponent();
dockPanel = new DockPanel();
InitializeDockPanel();
this.Controls.Add(dockPanel);
}
private DockPanel dockPanel;
public override void ShowView(IView view) {
base.ShowView(view);
if (InvokeRequired) Invoke((Action)ShowView, view);
else {
DockContent content = new DockForm(view);
content.TabText = content.Text;
content.Show(dockPanel);
content.Activated += new EventHandler(DockFormActivated);
content.FormClosing += new FormClosingEventHandler(DockFormClosing);
}
}
private void DockFormClosing(object sender, FormClosingEventArgs e) {
DockForm dockForm = (DockForm)sender;
openViews.Remove(dockForm.View);
}
private void DockFormActivated(object sender, EventArgs e) {
base.activeView = ((DockForm)sender).View;
}
private void InitializeDockPanel() {
DockPanelSkin dockPanelSkin1 = new DockPanelSkin();
AutoHideStripSkin autoHideStripSkin1 = new AutoHideStripSkin();
DockPanelGradient dockPanelGradient1 = new DockPanelGradient();
TabGradient tabGradient1 = new TabGradient();
DockPaneStripSkin dockPaneStripSkin1 = new DockPaneStripSkin();
DockPaneStripGradient dockPaneStripGradient1 = new DockPaneStripGradient();
TabGradient tabGradient2 = new TabGradient();
DockPanelGradient dockPanelGradient2 = new DockPanelGradient();
TabGradient tabGradient3 = new TabGradient();
DockPaneStripToolWindowGradient dockPaneStripToolWindowGradient1 = new DockPaneStripToolWindowGradient();
TabGradient tabGradient4 = new TabGradient();
TabGradient tabGradient5 = new TabGradient();
DockPanelGradient dockPanelGradient3 = new DockPanelGradient();
TabGradient tabGradient6 = new TabGradient();
TabGradient tabGradient7 = new TabGradient();
this.dockPanel.ActiveAutoHideContent = null;
this.dockPanel.Dock = System.Windows.Forms.DockStyle.Fill;
this.dockPanel.DockBackColor = SystemColors.Control;
this.dockPanel.DockBottomPortion = 0.33;
this.dockPanel.DockLeftPortion = 0.33;
this.dockPanel.DockRightPortion = 0.33;
this.dockPanel.DockTopPortion = 0.33;
this.dockPanel.Location = new Point(0, 49);
this.dockPanel.Name = "dockPanel";
this.dockPanel.RightToLeftLayout = true;
this.dockPanel.Size = new Size(1016, 663);
dockPanelGradient1.EndColor = SystemColors.ControlLight;
dockPanelGradient1.StartColor = SystemColors.ControlLight;
autoHideStripSkin1.DockStripGradient = dockPanelGradient1;
tabGradient1.EndColor = SystemColors.Control;
tabGradient1.StartColor = SystemColors.Control;
tabGradient1.TextColor = SystemColors.ControlDarkDark;
autoHideStripSkin1.TabGradient = tabGradient1;
dockPanelSkin1.AutoHideStripSkin = autoHideStripSkin1;
tabGradient2.EndColor = SystemColors.ControlLightLight;
tabGradient2.StartColor = SystemColors.ControlLightLight;
tabGradient2.TextColor = SystemColors.ControlText;
dockPaneStripGradient1.ActiveTabGradient = tabGradient2;
dockPanelGradient2.EndColor = SystemColors.Control;
dockPanelGradient2.StartColor = SystemColors.Control;
dockPaneStripGradient1.DockStripGradient = dockPanelGradient2;
tabGradient3.EndColor = SystemColors.ControlLight;
tabGradient3.StartColor = SystemColors.ControlLight;
tabGradient3.TextColor = SystemColors.ControlText;
dockPaneStripGradient1.InactiveTabGradient = tabGradient3;
dockPaneStripSkin1.DocumentGradient = dockPaneStripGradient1;
tabGradient4.EndColor = SystemColors.ActiveCaption;
tabGradient4.LinearGradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
tabGradient4.StartColor = SystemColors.GradientActiveCaption;
tabGradient4.TextColor = SystemColors.ActiveCaptionText;
dockPaneStripToolWindowGradient1.ActiveCaptionGradient = tabGradient4;
tabGradient5.EndColor = SystemColors.Control;
tabGradient5.StartColor = SystemColors.Control;
tabGradient5.TextColor = SystemColors.ControlText;
dockPaneStripToolWindowGradient1.ActiveTabGradient = tabGradient5;
dockPanelGradient3.EndColor = SystemColors.ControlLight;
dockPanelGradient3.StartColor = SystemColors.ControlLight;
dockPaneStripToolWindowGradient1.DockStripGradient = dockPanelGradient3;
tabGradient6.EndColor = SystemColors.GradientInactiveCaption;
tabGradient6.LinearGradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
tabGradient6.StartColor = SystemColors.GradientInactiveCaption;
tabGradient6.TextColor = SystemColors.ControlText;
dockPaneStripToolWindowGradient1.InactiveCaptionGradient = tabGradient6;
tabGradient7.EndColor = Color.Transparent;
tabGradient7.StartColor = Color.Transparent;
tabGradient7.TextColor = SystemColors.ControlDarkDark;
dockPaneStripToolWindowGradient1.InactiveTabGradient = tabGradient7;
dockPaneStripSkin1.ToolWindowGradient = dockPaneStripToolWindowGradient1;
dockPanelSkin1.DockPaneStripSkin = dockPaneStripSkin1;
this.dockPanel.Skin = dockPanelSkin1;
this.dockPanel.TabIndex = 2;
}
}
}