diff --git a/CSharp/Engines/WindowsForms/Engines/UniversalEditor.UserInterface.WindowsForms.DesktopApplication/MainWindow.Designer.cs b/CSharp/Engines/WindowsForms/Engines/UniversalEditor.UserInterface.WindowsForms.DesktopApplication/MainWindow.Designer.cs
index 3051fc82..1d2d9660 100644
--- a/CSharp/Engines/WindowsForms/Engines/UniversalEditor.UserInterface.WindowsForms.DesktopApplication/MainWindow.Designer.cs
+++ b/CSharp/Engines/WindowsForms/Engines/UniversalEditor.UserInterface.WindowsForms.DesktopApplication/MainWindow.Designer.cs
@@ -110,25 +110,6 @@ namespace UniversalEditor.UserInterface.WindowsForms
this.mnuToolsSep1 = new System.Windows.Forms.ToolStripSeparator();
this.mnuToolsCustomize = new System.Windows.Forms.ToolStripMenuItem();
this.mnuToolsOptions = new System.Windows.Forms.ToolStripMenuItem();
- this.mnuWindow = new System.Windows.Forms.ToolStripMenuItem();
- this.mnuWindowNewWindow = new System.Windows.Forms.ToolStripMenuItem();
- this.mnuWindowSplit = new System.Windows.Forms.ToolStripMenuItem();
- this.mnuWindowSep1 = new System.Windows.Forms.ToolStripSeparator();
- this.mnuWindowFloat = new AwesomeControls.CommandBars.CBMenuItem();
- this.mnuWindowFloatAll = new AwesomeControls.CommandBars.CBMenuItem();
- this.mnuWindowDock = new AwesomeControls.CommandBars.CBMenuItem();
- this.mnuWindowAutoHide = new AwesomeControls.CommandBars.CBMenuItem();
- this.mnuWindowAutoHideAll = new AwesomeControls.CommandBars.CBMenuItem();
- this.mnuWindowHide = new AwesomeControls.CommandBars.CBMenuItem();
- this.mnuWindowSep2 = new System.Windows.Forms.ToolStripSeparator();
- this.mnuWindowPinTab = new System.Windows.Forms.ToolStripMenuItem();
- this.mnuWindowSep3 = new System.Windows.Forms.ToolStripSeparator();
- this.mnuWindowNewTabGroupHorizontal = new AwesomeControls.CommandBars.CBMenuItem();
- this.mnuWindowNewTabGroupVertical = new AwesomeControls.CommandBars.CBMenuItem();
- this.mnuWindowCloseAllDocuments = new AwesomeControls.CommandBars.CBMenuItem();
- this.mnuWindowResetLayout = new AwesomeControls.CommandBars.CBMenuItem();
- this.mnuWindowSep4 = new System.Windows.Forms.ToolStripSeparator();
- this.mnuWindowWindows = new System.Windows.Forms.ToolStripMenuItem();
this.mnuFileCloseFile = new System.Windows.Forms.ToolStripMenuItem();
this.mnuFileCloseProject = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripMenuItem11 = new System.Windows.Forms.ToolStripSeparator();
@@ -229,7 +210,6 @@ namespace UniversalEditor.UserInterface.WindowsForms
this.cboAddress.Name = "cboAddress";
this.cboAddress.Size = new System.Drawing.Size(800, 21);
this.cboAddress.TabIndex = 2;
- this.cboAddress.Visible = false;
this.cboAddress.KeyDown += new System.Windows.Forms.KeyEventHandler(this.cboAddress_KeyDown);
//
// mbMenuBar
@@ -241,8 +221,7 @@ namespace UniversalEditor.UserInterface.WindowsForms
this.mnuView,
this.mnuProject,
this.mnuBookmarks,
- this.mnuTools,
- this.mnuWindow});
+ this.mnuTools});
this.mbMenuBar.Location = new System.Drawing.Point(0, 0);
this.mbMenuBar.Name = "mbMenuBar";
this.mbMenuBar.Size = new System.Drawing.Size(800, 25);
@@ -811,147 +790,6 @@ namespace UniversalEditor.UserInterface.WindowsForms
this.mnuToolsOptions.Text = "&Options...";
this.mnuToolsOptions.Click += new System.EventHandler(this.ToolsOptions_Click);
//
- // mnuWindow
- //
- this.mnuWindow.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.mnuWindowNewWindow,
- this.mnuWindowSplit,
- this.mnuWindowSep1,
- this.mnuWindowFloat,
- this.mnuWindowFloatAll,
- this.mnuWindowDock,
- this.mnuWindowAutoHide,
- this.mnuWindowAutoHideAll,
- this.mnuWindowHide,
- this.mnuWindowSep2,
- this.mnuWindowPinTab,
- this.mnuWindowSep3,
- this.mnuWindowNewTabGroupHorizontal,
- this.mnuWindowNewTabGroupVertical,
- this.mnuWindowCloseAllDocuments,
- this.mnuWindowResetLayout,
- this.mnuWindowSep4,
- this.mnuWindowWindows});
- this.mnuWindow.Name = "mnuWindow";
- this.mnuWindow.Size = new System.Drawing.Size(63, 21);
- this.mnuWindow.Text = "&Window";
- //
- // mnuWindowNewWindow
- //
- this.mnuWindowNewWindow.Name = "mnuWindowNewWindow";
- this.mnuWindowNewWindow.Size = new System.Drawing.Size(215, 22);
- this.mnuWindowNewWindow.Text = "&New Window";
- this.mnuWindowNewWindow.Click += new System.EventHandler(this.mnuWindowNewWindow_Click);
- //
- // mnuWindowSplit
- //
- this.mnuWindowSplit.Name = "mnuWindowSplit";
- this.mnuWindowSplit.Size = new System.Drawing.Size(215, 22);
- this.mnuWindowSplit.Text = "S&plit";
- //
- // mnuWindowSep1
- //
- this.mnuWindowSep1.Name = "mnuWindowSep1";
- this.mnuWindowSep1.Size = new System.Drawing.Size(212, 6);
- //
- // mnuWindowFloat
- //
- this.mnuWindowFloat.Hidden = true;
- this.mnuWindowFloat.Name = "mnuWindowFloat";
- this.mnuWindowFloat.Size = new System.Drawing.Size(215, 22);
- this.mnuWindowFloat.Text = "&Float";
- //
- // mnuWindowFloatAll
- //
- this.mnuWindowFloatAll.Hidden = true;
- this.mnuWindowFloatAll.Name = "mnuWindowFloatAll";
- this.mnuWindowFloatAll.Size = new System.Drawing.Size(215, 22);
- this.mnuWindowFloatAll.Text = "Float All";
- //
- // mnuWindowDock
- //
- this.mnuWindowDock.Hidden = true;
- this.mnuWindowDock.Name = "mnuWindowDock";
- this.mnuWindowDock.Size = new System.Drawing.Size(215, 22);
- this.mnuWindowDock.Text = "Doc&k";
- //
- // mnuWindowAutoHide
- //
- this.mnuWindowAutoHide.Hidden = true;
- this.mnuWindowAutoHide.Name = "mnuWindowAutoHide";
- this.mnuWindowAutoHide.Size = new System.Drawing.Size(215, 22);
- this.mnuWindowAutoHide.Text = "&Auto Hide";
- //
- // mnuWindowAutoHideAll
- //
- this.mnuWindowAutoHideAll.Hidden = true;
- this.mnuWindowAutoHideAll.Name = "mnuWindowAutoHideAll";
- this.mnuWindowAutoHideAll.Size = new System.Drawing.Size(215, 22);
- this.mnuWindowAutoHideAll.Text = "A&uto Hide All";
- //
- // mnuWindowHide
- //
- this.mnuWindowHide.Hidden = true;
- this.mnuWindowHide.Name = "mnuWindowHide";
- this.mnuWindowHide.Size = new System.Drawing.Size(215, 22);
- this.mnuWindowHide.Text = "&Hide";
- //
- // mnuWindowSep2
- //
- this.mnuWindowSep2.Name = "mnuWindowSep2";
- this.mnuWindowSep2.Size = new System.Drawing.Size(212, 6);
- //
- // mnuWindowPinTab
- //
- this.mnuWindowPinTab.Name = "mnuWindowPinTab";
- this.mnuWindowPinTab.Size = new System.Drawing.Size(215, 22);
- this.mnuWindowPinTab.Text = "&Pin Tab";
- //
- // mnuWindowSep3
- //
- this.mnuWindowSep3.Name = "mnuWindowSep3";
- this.mnuWindowSep3.Size = new System.Drawing.Size(212, 6);
- //
- // mnuWindowNewTabGroupHorizontal
- //
- this.mnuWindowNewTabGroupHorizontal.Hidden = true;
- this.mnuWindowNewTabGroupHorizontal.Name = "mnuWindowNewTabGroupHorizontal";
- this.mnuWindowNewTabGroupHorizontal.Size = new System.Drawing.Size(215, 22);
- this.mnuWindowNewTabGroupHorizontal.Text = "New Hori&zontal Tab Group";
- //
- // mnuWindowNewTabGroupVertical
- //
- this.mnuWindowNewTabGroupVertical.Hidden = true;
- this.mnuWindowNewTabGroupVertical.Name = "mnuWindowNewTabGroupVertical";
- this.mnuWindowNewTabGroupVertical.Size = new System.Drawing.Size(215, 22);
- this.mnuWindowNewTabGroupVertical.Text = "New &Vertical Tab Group";
- //
- // mnuWindowCloseAllDocuments
- //
- this.mnuWindowCloseAllDocuments.Hidden = true;
- this.mnuWindowCloseAllDocuments.Name = "mnuWindowCloseAllDocuments";
- this.mnuWindowCloseAllDocuments.Size = new System.Drawing.Size(215, 22);
- this.mnuWindowCloseAllDocuments.Text = "C&lose All Documents";
- //
- // mnuWindowResetLayout
- //
- this.mnuWindowResetLayout.Hidden = true;
- this.mnuWindowResetLayout.Name = "mnuWindowResetLayout";
- this.mnuWindowResetLayout.Size = new System.Drawing.Size(215, 22);
- this.mnuWindowResetLayout.Text = "&Reset Window Layout";
- //
- // mnuWindowSep4
- //
- this.mnuWindowSep4.Name = "mnuWindowSep4";
- this.mnuWindowSep4.Size = new System.Drawing.Size(212, 6);
- //
- // mnuWindowWindows
- //
- this.mnuWindowWindows.Name = "mnuWindowWindows";
- this.mnuWindowWindows.Size = new System.Drawing.Size(215, 22);
- this.mnuWindowWindows.Text = "&Windows...";
- this.mnuWindowWindows.Click += new System.EventHandler(this.mnuWindowWindows_Click);
- //
// mnuFileCloseFile
//
this.mnuFileCloseFile.Name = "mnuFileCloseFile";
@@ -1087,15 +925,6 @@ namespace UniversalEditor.UserInterface.WindowsForms
private System.Windows.Forms.ToolStripMenuItem mnuFileClose;
private System.Windows.Forms.ToolStripMenuItem mnuFileCloseFile;
private System.Windows.Forms.ToolStripMenuItem mnuFileCloseProject;
- private System.Windows.Forms.ToolStripMenuItem mnuWindow;
- private System.Windows.Forms.ToolStripMenuItem mnuWindowNewWindow;
- private System.Windows.Forms.ToolStripMenuItem mnuWindowSplit;
- private System.Windows.Forms.ToolStripSeparator mnuWindowSep1;
- private System.Windows.Forms.ToolStripSeparator mnuWindowSep2;
- private System.Windows.Forms.ToolStripMenuItem mnuWindowPinTab;
- private System.Windows.Forms.ToolStripSeparator mnuWindowSep3;
- private System.Windows.Forms.ToolStripSeparator mnuWindowSep4;
- private System.Windows.Forms.ToolStripMenuItem mnuWindowWindows;
private System.Windows.Forms.ToolStripMenuItem mnuViewStartPage;
private System.Windows.Forms.ToolStripMenuItem mnuFileRecentFiles;
private System.Windows.Forms.ToolStripMenuItem mnuFileRecentProjects;
@@ -1137,16 +966,6 @@ namespace UniversalEditor.UserInterface.WindowsForms
private AwesomeControls.CommandBars.CBMenuItem mnuFileExport;
private AwesomeControls.CommandBars.CBMenuItem mnuEditInvertSelection;
private AwesomeControls.CommandBars.CBMenuItem mnuEditGoTo;
- private AwesomeControls.CommandBars.CBMenuItem mnuWindowFloat;
- private AwesomeControls.CommandBars.CBMenuItem mnuWindowFloatAll;
- private AwesomeControls.CommandBars.CBMenuItem mnuWindowDock;
- private AwesomeControls.CommandBars.CBMenuItem mnuWindowAutoHide;
- private AwesomeControls.CommandBars.CBMenuItem mnuWindowAutoHideAll;
- private AwesomeControls.CommandBars.CBMenuItem mnuWindowHide;
- private AwesomeControls.CommandBars.CBMenuItem mnuWindowNewTabGroupHorizontal;
- private AwesomeControls.CommandBars.CBMenuItem mnuWindowNewTabGroupVertical;
- private AwesomeControls.CommandBars.CBMenuItem mnuWindowCloseAllDocuments;
- private AwesomeControls.CommandBars.CBMenuItem mnuWindowResetLayout;
}
}
diff --git a/CSharp/Engines/WindowsForms/Engines/UniversalEditor.UserInterface.WindowsForms.DesktopApplication/MainWindow.cs b/CSharp/Engines/WindowsForms/Engines/UniversalEditor.UserInterface.WindowsForms.DesktopApplication/MainWindow.cs
index 480f79db..628af719 100644
--- a/CSharp/Engines/WindowsForms/Engines/UniversalEditor.UserInterface.WindowsForms.DesktopApplication/MainWindow.cs
+++ b/CSharp/Engines/WindowsForms/Engines/UniversalEditor.UserInterface.WindowsForms.DesktopApplication/MainWindow.cs
@@ -1885,9 +1885,23 @@ namespace UniversalEditor.UserInterface.WindowsForms
}
}
- private void mnuWindowWindows_Click(object sender, EventArgs e)
+ public void SetWindowListVisible(bool visible, bool modal)
{
- dcc.DisplayWindowListDialog();
+ if (modal)
+ {
+ dcc.DisplayWindowListDialog();
+ }
+ else
+ {
+ if (visible)
+ {
+ dcc.ShowWindowListPopupDialog();
+ }
+ else
+ {
+ dcc.HideWindowListPopupDialog();
+ }
+ }
}
private void ToolsCustomize_Click(object sender, EventArgs e)
@@ -1998,11 +2012,6 @@ namespace UniversalEditor.UserInterface.WindowsForms
}
}
- private void mnuWindowNewWindow_Click(object sender, EventArgs e)
- {
- Engine.CurrentEngine.OpenWindow();
- }
-
private void cboAddress_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
diff --git a/CSharp/Libraries/UniversalEditor.UserInterface/Engine.cs b/CSharp/Libraries/UniversalEditor.UserInterface/Engine.cs
index 0ef6acc9..10120226 100644
--- a/CSharp/Libraries/UniversalEditor.UserInterface/Engine.cs
+++ b/CSharp/Libraries/UniversalEditor.UserInterface/Engine.cs
@@ -238,6 +238,10 @@ namespace UniversalEditor.UserInterface
{
OpenWindow();
});
+ AttachCommandEventHandler("WindowWindows", delegate(object sender, EventArgs e)
+ {
+ LastWindow.SetWindowListVisible(true, true);
+ });
#endregion
#region Help
AttachCommandEventHandler("HelpAboutPlatform", delegate(object sender, EventArgs e)
diff --git a/CSharp/Libraries/UniversalEditor.UserInterface/IHostApplicationWindow.cs b/CSharp/Libraries/UniversalEditor.UserInterface/IHostApplicationWindow.cs
index e63426a9..23188138 100644
--- a/CSharp/Libraries/UniversalEditor.UserInterface/IHostApplicationWindow.cs
+++ b/CSharp/Libraries/UniversalEditor.UserInterface/IHostApplicationWindow.cs
@@ -58,6 +58,13 @@ namespace UniversalEditor.UserInterface
void ActivateWindow();
void ShowStartPage();
+
+ ///
+ /// Shows or hides the window list based on the given options.
+ ///
+ /// True if the window list should be shown; false if the window list should be hidden.
+ /// True if the window list should be presented as a modal dialog; false if it should be presented as a popup (for example, during a window switch action).
+ void SetWindowListVisible(bool visible, bool modal);
}
public class IHostApplicationWindowCollection
: System.Collections.ObjectModel.Collection