diff --git a/code/framework/Licensee.h b/code/framework/Licensee.h index 421b2c21..2eaac129 100644 --- a/code/framework/Licensee.h +++ b/code/framework/Licensee.h @@ -92,7 +92,7 @@ If you have questions concerning this license or the applicable additional terms // editor info #define EDITOR_DEFAULT_PROJECT "doom.qe4" #define EDITOR_REGISTRY_KEY "DOOMRadiant" -#define EDITOR_WINDOWTEXT "iceStudio" +#define EDITOR_WINDOWTEXT "iceStudio64" // win32 info #define WIN32_CONSOLE_CLASS "DOOM 3 WinConsole" diff --git a/code/tools/radiant.net/Editor.cs b/code/tools/radiant.net/Editor.cs index 58188ad3..894d56ed 100644 --- a/code/tools/radiant.net/Editor.cs +++ b/code/tools/radiant.net/Editor.cs @@ -47,6 +47,12 @@ public static void InitRadiant(IntPtr ParentWindow) // inspectorDialog.Show(nativeWindow); } + [DllExport(CallingConvention = CallingConvention.Cdecl)] + public unsafe static void SetMapName(string mapName) + { + xyWndDialog.SetMapName(mapName); + } + [DllExport(CallingConvention = CallingConvention.Cdecl)] public unsafe static IntPtr GetTexWndHandle() { diff --git a/code/tools/radiant.net/Forms/XYWndDialog.Designer.cs b/code/tools/radiant.net/Forms/XYWndDialog.Designer.cs index 3973697c..664ee590 100644 --- a/code/tools/radiant.net/Forms/XYWndDialog.Designer.cs +++ b/code/tools/radiant.net/Forms/XYWndDialog.Designer.cs @@ -28,93 +28,63 @@ protected override void Dispose(bool disposing) /// private void InitializeComponent() { - this.menuStrip1 = new System.Windows.Forms.MenuStrip(); - this.viewToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); - this.topToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); - this.sideToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.RenderPanel = new System.Windows.Forms.Panel(); - this.tabControl1 = new System.Windows.Forms.TabControl(); + this.tabControl = new System.Windows.Forms.TabControl(); this.xyWndTab = new System.Windows.Forms.TabPage(); this.texturesTab = new System.Windows.Forms.TabPage(); this.texWndPanel = new System.Windows.Forms.Panel(); - this.menuStrip1.SuspendLayout(); - this.tabControl1.SuspendLayout(); + this.menuStrip1 = new System.Windows.Forms.MenuStrip(); + this.viewToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.topToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.sideToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.RenderPanel.SuspendLayout(); + this.tabControl.SuspendLayout(); this.xyWndTab.SuspendLayout(); this.texturesTab.SuspendLayout(); + this.menuStrip1.SuspendLayout(); this.SuspendLayout(); // - // menuStrip1 - // - this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.viewToolStripMenuItem}); - this.menuStrip1.Location = new System.Drawing.Point(0, 0); - this.menuStrip1.Name = "menuStrip1"; - this.menuStrip1.Size = new System.Drawing.Size(800, 24); - this.menuStrip1.TabIndex = 0; - this.menuStrip1.Text = "menuStrip1"; - // - // viewToolStripMenuItem - // - this.viewToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.topToolStripMenuItem, - this.sideToolStripMenuItem}); - this.viewToolStripMenuItem.Name = "viewToolStripMenuItem"; - this.viewToolStripMenuItem.Size = new System.Drawing.Size(44, 20); - this.viewToolStripMenuItem.Text = "&View"; - // - // topToolStripMenuItem - // - this.topToolStripMenuItem.Name = "topToolStripMenuItem"; - this.topToolStripMenuItem.Size = new System.Drawing.Size(96, 22); - this.topToolStripMenuItem.Text = "&Top"; - // - // sideToolStripMenuItem - // - this.sideToolStripMenuItem.Name = "sideToolStripMenuItem"; - this.sideToolStripMenuItem.Size = new System.Drawing.Size(96, 22); - this.sideToolStripMenuItem.Text = "&Side"; - // // RenderPanel // this.RenderPanel.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.RenderPanel.Controls.Add(this.menuStrip1); this.RenderPanel.Dock = System.Windows.Forms.DockStyle.Fill; this.RenderPanel.Location = new System.Drawing.Point(3, 3); this.RenderPanel.Name = "RenderPanel"; - this.RenderPanel.Size = new System.Drawing.Size(786, 388); + this.RenderPanel.Size = new System.Drawing.Size(786, 412); this.RenderPanel.TabIndex = 1; // - // tabControl1 + // tabControl // - this.tabControl1.Alignment = System.Windows.Forms.TabAlignment.Bottom; - this.tabControl1.Controls.Add(this.xyWndTab); - this.tabControl1.Controls.Add(this.texturesTab); - this.tabControl1.Dock = System.Windows.Forms.DockStyle.Fill; - this.tabControl1.Location = new System.Drawing.Point(0, 24); - this.tabControl1.Name = "tabControl1"; - this.tabControl1.Padding = new System.Drawing.Point(6, 6); - this.tabControl1.SelectedIndex = 0; - this.tabControl1.Size = new System.Drawing.Size(800, 426); - this.tabControl1.SizeMode = System.Windows.Forms.TabSizeMode.Fixed; - this.tabControl1.TabIndex = 2; + this.tabControl.Controls.Add(this.xyWndTab); + this.tabControl.Controls.Add(this.texturesTab); + this.tabControl.Dock = System.Windows.Forms.DockStyle.Fill; + this.tabControl.Location = new System.Drawing.Point(0, 0); + this.tabControl.Name = "tabControl"; + this.tabControl.Padding = new System.Drawing.Point(6, 6); + this.tabControl.SelectedIndex = 0; + this.tabControl.Size = new System.Drawing.Size(800, 450); + this.tabControl.SizeMode = System.Windows.Forms.TabSizeMode.FillToRight; + this.tabControl.TabIndex = 2; // // xyWndTab // this.xyWndTab.Controls.Add(this.RenderPanel); - this.xyWndTab.Location = new System.Drawing.Point(4, 4); + this.xyWndTab.Location = new System.Drawing.Point(4, 28); this.xyWndTab.Name = "xyWndTab"; this.xyWndTab.Padding = new System.Windows.Forms.Padding(3); - this.xyWndTab.Size = new System.Drawing.Size(792, 394); + this.xyWndTab.Size = new System.Drawing.Size(792, 418); this.xyWndTab.TabIndex = 0; - this.xyWndTab.Text = "XY Window"; + this.xyWndTab.Text = "World Edit: "; this.xyWndTab.UseVisualStyleBackColor = true; // // texturesTab // this.texturesTab.Controls.Add(this.texWndPanel); - this.texturesTab.Location = new System.Drawing.Point(4, 4); + this.texturesTab.Location = new System.Drawing.Point(4, 28); this.texturesTab.Name = "texturesTab"; this.texturesTab.Padding = new System.Windows.Forms.Padding(3); - this.texturesTab.Size = new System.Drawing.Size(792, 394); + this.texturesTab.Size = new System.Drawing.Size(792, 418); this.texturesTab.TabIndex = 1; this.texturesTab.Text = "Textures"; this.texturesTab.UseVisualStyleBackColor = true; @@ -124,43 +94,72 @@ private void InitializeComponent() this.texWndPanel.Dock = System.Windows.Forms.DockStyle.Fill; this.texWndPanel.Location = new System.Drawing.Point(3, 3); this.texWndPanel.Name = "texWndPanel"; - this.texWndPanel.Size = new System.Drawing.Size(786, 388); + this.texWndPanel.Size = new System.Drawing.Size(786, 412); this.texWndPanel.TabIndex = 0; // + // menuStrip1 + // + this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.viewToolStripMenuItem}); + this.menuStrip1.Location = new System.Drawing.Point(0, 0); + this.menuStrip1.Name = "menuStrip1"; + this.menuStrip1.Size = new System.Drawing.Size(784, 24); + this.menuStrip1.TabIndex = 0; + this.menuStrip1.Text = "menuStrip1"; + // + // viewToolStripMenuItem + // + this.viewToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.topToolStripMenuItem, + this.sideToolStripMenuItem}); + this.viewToolStripMenuItem.Name = "viewToolStripMenuItem"; + this.viewToolStripMenuItem.Size = new System.Drawing.Size(44, 20); + this.viewToolStripMenuItem.Text = "&View"; + // + // topToolStripMenuItem + // + this.topToolStripMenuItem.Name = "topToolStripMenuItem"; + this.topToolStripMenuItem.Size = new System.Drawing.Size(180, 22); + this.topToolStripMenuItem.Text = "&Top"; + // + // sideToolStripMenuItem + // + this.sideToolStripMenuItem.Name = "sideToolStripMenuItem"; + this.sideToolStripMenuItem.Size = new System.Drawing.Size(180, 22); + this.sideToolStripMenuItem.Text = "Side"; + // // XYWndDialog // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.ClientSize = new System.Drawing.Size(800, 450); - this.Controls.Add(this.tabControl1); - this.Controls.Add(this.menuStrip1); - this.MainMenuStrip = this.menuStrip1; + this.Controls.Add(this.tabControl); this.MaximizeBox = false; this.MinimizeBox = false; this.Name = "XYWndDialog"; this.ShowIcon = false; this.ShowInTaskbar = false; this.Text = "XY Window"; - this.menuStrip1.ResumeLayout(false); - this.menuStrip1.PerformLayout(); - this.tabControl1.ResumeLayout(false); + this.RenderPanel.ResumeLayout(false); + this.RenderPanel.PerformLayout(); + this.tabControl.ResumeLayout(false); this.xyWndTab.ResumeLayout(false); this.texturesTab.ResumeLayout(false); + this.menuStrip1.ResumeLayout(false); + this.menuStrip1.PerformLayout(); this.ResumeLayout(false); - this.PerformLayout(); } #endregion - - private System.Windows.Forms.MenuStrip menuStrip1; - private System.Windows.Forms.ToolStripMenuItem viewToolStripMenuItem; - private System.Windows.Forms.ToolStripMenuItem topToolStripMenuItem; - private System.Windows.Forms.ToolStripMenuItem sideToolStripMenuItem; private System.Windows.Forms.Panel RenderPanel; - private System.Windows.Forms.TabControl tabControl1; + private System.Windows.Forms.TabControl tabControl; private System.Windows.Forms.TabPage xyWndTab; private System.Windows.Forms.TabPage texturesTab; private System.Windows.Forms.Panel texWndPanel; + private System.Windows.Forms.MenuStrip menuStrip1; + private System.Windows.Forms.ToolStripMenuItem viewToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem topToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem sideToolStripMenuItem; } } \ No newline at end of file diff --git a/code/tools/radiant.net/Forms/XYWndDialog.cs b/code/tools/radiant.net/Forms/XYWndDialog.cs index a39ccd59..6b5590f4 100644 --- a/code/tools/radiant.net/Forms/XYWndDialog.cs +++ b/code/tools/radiant.net/Forms/XYWndDialog.cs @@ -119,5 +119,15 @@ public IntPtr GetTexWndHWND() { return texWndPanel.Handle; } + + private void fileToolStripMenuItem_Click(object sender, EventArgs e) + { + + } + + public void SetMapName(string mapName) + { + xyWndTab.Text = "World Edit: " + mapName; + } } } diff --git a/code/tools/radiant.net/Forms/XYWndDialog.resx b/code/tools/radiant.net/Forms/XYWndDialog.resx index d5494e30..b77504be 100644 --- a/code/tools/radiant.net/Forms/XYWndDialog.resx +++ b/code/tools/radiant.net/Forms/XYWndDialog.resx @@ -120,4 +120,7 @@ 17, 17 + + 17, 17 + \ No newline at end of file diff --git a/code/tools/radiant.net/Radiant.Net.csproj b/code/tools/radiant.net/Radiant.Net.csproj index 6f1b8848..7ef40217 100644 --- a/code/tools/radiant.net/Radiant.Net.csproj +++ b/code/tools/radiant.net/Radiant.Net.csproj @@ -42,13 +42,14 @@ true - bin\x64\Release\ + ..\..\..\ TRACE true pdbonly x64 prompt MinimumRecommendedRules.ruleset + true true diff --git a/code/tools/radiant.net/obj/Release/Radiant.Net.csprojAssemblyReference.cache b/code/tools/radiant.net/obj/Release/Radiant.Net.csprojAssemblyReference.cache index 99cf210e..a776d48c 100644 Binary files a/code/tools/radiant.net/obj/Release/Radiant.Net.csprojAssemblyReference.cache and b/code/tools/radiant.net/obj/Release/Radiant.Net.csprojAssemblyReference.cache differ diff --git a/code/tools/radiant/QE3.H b/code/tools/radiant/QE3.H index 6f2fe116..6e3c5f55 100644 --- a/code/tools/radiant/QE3.H +++ b/code/tools/radiant/QE3.H @@ -80,6 +80,8 @@ const float HUGE_DISTANCE = 100000; struct RadiantNetInterface_t { void(__cdecl *InitRadiant)(void *hwnd); void(__cdecl *ShowEntitySelection)(const char *list); + void(__cdecl* SetMapName)(const char* list); + void(__cdecl *ToggleProgressDialog)(bool showDialog, const char *mapName, const char * workString, float completedPercent); bool(__cdecl *ProgressBarUserCancaled)(void); void(__cdecl *RedrawCameraWindow)(); @@ -90,6 +92,8 @@ struct RadiantNetInterface_t { HWND(__cdecl *GetXYDialogHandle)(); HDC(__cdecl *GetTexWndHandle)(); + + }; extern RadiantNetInterface_t radiantNetInterface; diff --git a/code/tools/radiant/Radiant.cpp b/code/tools/radiant/Radiant.cpp index 2fc9d469..0f100816 100644 --- a/code/tools/radiant/Radiant.cpp +++ b/code/tools/radiant/Radiant.cpp @@ -347,6 +347,7 @@ void RadiantDotNetInit(void) { radiantNetInterface.GetXYDialogHandle = (HWND(__cdecl *)(void))sys->DLL_GetProcAddress(g_radiant_net_dll, "GetXYDialogHandle"); radiantNetInterface.GetTexWndHandle = (HDC(__cdecl *)(void))sys->DLL_GetProcAddress(g_radiant_net_dll, "GetTexWndHandle"); + radiantNetInterface.SetMapName = (void(__cdecl*)(const char *))sys->DLL_GetProcAddress(g_radiant_net_dll, "SetMapName"); HWND hwnd = g_pParentWnd->GetSafeHwnd(); radiantNetInterface.InitRadiant((void *)hwnd); diff --git a/code/tools/radiant/WIN_QE3.CPP b/code/tools/radiant/WIN_QE3.CPP index 41656278..af59dd76 100644 --- a/code/tools/radiant/WIN_QE3.CPP +++ b/code/tools/radiant/WIN_QE3.CPP @@ -61,7 +61,16 @@ void Sys_MarkMapModified(void) { ======================================================================================================================= */ void Sys_SetTitle(const char *text) { - g_pParentWnd->SetWindowText(va("%s: %s", EDITOR_WINDOWTEXT, text)); + idStr mapName = text; + + g_pParentWnd->SetWindowText(EDITOR_WINDOWTEXT); + + if(mapName == "unnamed.map") { + radiantNetInterface.SetMapName("unnamed.map"); + } + else { + radiantNetInterface.SetMapName(fileSystem->OSPathToRelativePath(text)); + } } /* diff --git a/radiant.net.dll b/radiant.net.dll index 0f290f0e..ac444d31 100644 Binary files a/radiant.net.dll and b/radiant.net.dll differ