diff --git a/Source/Core/Builder.csproj b/Source/Core/Builder.csproj index 1c792955..3a61c0ed 100644 --- a/Source/Core/Builder.csproj +++ b/Source/Core/Builder.csproj @@ -1044,6 +1044,7 @@ + diff --git a/Source/Core/Controls/ResourceListEditor.Designer.cs b/Source/Core/Controls/ResourceListEditor.Designer.cs index 7a18ca56..4cb217ee 100644 --- a/Source/Core/Controls/ResourceListEditor.Designer.cs +++ b/Source/Core/Controls/ResourceListEditor.Designer.cs @@ -32,9 +32,9 @@ namespace CodeImp.DoomBuilder.Controls System.Windows.Forms.SplitContainer buttonsbar2; System.Windows.Forms.SplitContainer buttonsbar1; System.Windows.Forms.ListViewItem listViewItem1 = new System.Windows.Forms.ListViewItem(new string[] { - "C:\\Windows\\Doom\\Doom2.wad"}, 3, System.Drawing.SystemColors.GrayText, System.Drawing.SystemColors.Window, null); + "C:\\Windows\\Doom\\Doom2.wad"}, 3, System.Drawing.SystemColors.GrayText, System.Drawing.SystemColors.Window, null); System.Windows.Forms.ListViewItem listViewItem2 = new System.Windows.Forms.ListViewItem(new string[] { - "C:\\My\\Little\\Textures\\"}, 2, System.Drawing.SystemColors.GrayText, System.Drawing.SystemColors.Window, null); + "C:\\My\\Little\\Textures\\"}, 2, System.Drawing.SystemColors.GrayText, System.Drawing.SystemColors.Window, null); System.Windows.Forms.ListViewItem listViewItem3 = new System.Windows.Forms.ListViewItem("C:\\My\\Little\\Pony.wad", 1); System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ResourceListEditor)); this.editresource = new System.Windows.Forms.Button(); @@ -43,6 +43,14 @@ namespace CodeImp.DoomBuilder.Controls this.splitContainer1 = new System.Windows.Forms.SplitContainer(); this.resourceitems = new CodeImp.DoomBuilder.Controls.ResourceListView(); this.column = new System.Windows.Forms.ColumnHeader(); + this.copypastemenu = new System.Windows.Forms.ContextMenuStrip(this.components); + this.copyresources = new System.Windows.Forms.ToolStripMenuItem(); + this.cutresources = new System.Windows.Forms.ToolStripMenuItem(); + this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator(); + this.pasteresources = new System.Windows.Forms.ToolStripMenuItem(); + this.replaceresources = new System.Windows.Forms.ToolStripMenuItem(); + this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator(); + this.removeresources = new System.Windows.Forms.ToolStripMenuItem(); this.images = new System.Windows.Forms.ImageList(this.components); buttonsbar2 = new System.Windows.Forms.SplitContainer(); buttonsbar1 = new System.Windows.Forms.SplitContainer(); @@ -55,6 +63,7 @@ namespace CodeImp.DoomBuilder.Controls this.splitContainer1.Panel1.SuspendLayout(); this.splitContainer1.Panel2.SuspendLayout(); this.splitContainer1.SuspendLayout(); + this.copypastemenu.SuspendLayout(); this.SuspendLayout(); // // buttonsbar2 @@ -153,17 +162,17 @@ namespace CodeImp.DoomBuilder.Controls // this.resourceitems.AllowDrop = true; this.resourceitems.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] { - this.column}); + this.column}); + this.resourceitems.ContextMenuStrip = this.copypastemenu; this.resourceitems.Dock = System.Windows.Forms.DockStyle.Fill; this.resourceitems.FullRowSelect = true; this.resourceitems.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.None; this.resourceitems.HideSelection = false; this.resourceitems.Items.AddRange(new System.Windows.Forms.ListViewItem[] { - listViewItem1, - listViewItem2, - listViewItem3}); + listViewItem1, + listViewItem2, + listViewItem3}); this.resourceitems.Location = new System.Drawing.Point(0, 0); - this.resourceitems.MultiSelect = false; this.resourceitems.Name = "resourceitems"; this.resourceitems.ShowGroups = false; this.resourceitems.ShowItemToolTips = true; @@ -177,6 +186,7 @@ namespace CodeImp.DoomBuilder.Controls this.resourceitems.DoubleClick += new System.EventHandler(this.resourceitems_DoubleClick); this.resourceitems.DragDrop += new System.Windows.Forms.DragEventHandler(this.resourceitems_DragDrop); this.resourceitems.ItemSelectionChanged += new System.Windows.Forms.ListViewItemSelectionChangedEventHandler(this.resourceitems_ItemSelectionChanged); + this.resourceitems.KeyUp += new System.Windows.Forms.KeyEventHandler(this.resourceitems_KeyUp); this.resourceitems.DragOver += new System.Windows.Forms.DragEventHandler(this.resourceitems_DragOver); // // column @@ -184,6 +194,70 @@ namespace CodeImp.DoomBuilder.Controls this.column.Text = "Resource location"; this.column.Width = 200; // + // copypastemenu + // + this.copypastemenu.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.copyresources, + this.cutresources, + this.toolStripSeparator1, + this.pasteresources, + this.replaceresources, + this.toolStripSeparator2, + this.removeresources}); + this.copypastemenu.Name = "copypastemenu"; + this.copypastemenu.Size = new System.Drawing.Size(153, 148); + this.copypastemenu.Opening += new System.ComponentModel.CancelEventHandler(this.copypastemenu_Opening); + // + // copyresources + // + this.copyresources.Image = global::CodeImp.DoomBuilder.Properties.Resources.Copy; + this.copyresources.Name = "copyresources"; + this.copyresources.Size = new System.Drawing.Size(152, 22); + this.copyresources.Text = "Copy"; + this.copyresources.Click += new System.EventHandler(this.copyresources_Click); + // + // cutresources + // + this.cutresources.Image = global::CodeImp.DoomBuilder.Properties.Resources.Cut; + this.cutresources.Name = "cutresources"; + this.cutresources.Size = new System.Drawing.Size(152, 22); + this.cutresources.Text = "Cut"; + this.cutresources.Click += new System.EventHandler(this.cutresources_Click); + // + // toolStripSeparator1 + // + this.toolStripSeparator1.Name = "toolStripSeparator1"; + this.toolStripSeparator1.Size = new System.Drawing.Size(149, 6); + // + // pasteresources + // + this.pasteresources.Image = global::CodeImp.DoomBuilder.Properties.Resources.Paste; + this.pasteresources.Name = "pasteresources"; + this.pasteresources.Size = new System.Drawing.Size(152, 22); + this.pasteresources.Text = "Paste"; + this.pasteresources.Click += new System.EventHandler(this.pasteresources_Click); + // + // replaceresources + // + this.replaceresources.Image = global::CodeImp.DoomBuilder.Properties.Resources.Replace; + this.replaceresources.Name = "replaceresources"; + this.replaceresources.Size = new System.Drawing.Size(152, 22); + this.replaceresources.Text = "Replace"; + this.replaceresources.Click += new System.EventHandler(this.replaceresources_Click); + // + // toolStripSeparator2 + // + this.toolStripSeparator2.Name = "toolStripSeparator2"; + this.toolStripSeparator2.Size = new System.Drawing.Size(149, 6); + // + // removeresources + // + this.removeresources.Image = global::CodeImp.DoomBuilder.Properties.Resources.SearchClear; + this.removeresources.Name = "removeresources"; + this.removeresources.Size = new System.Drawing.Size(152, 22); + this.removeresources.Text = "Remove"; + this.removeresources.Click += new System.EventHandler(this.removeresources_Click); + // // images // this.images.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("images.ImageStream"))); @@ -213,6 +287,7 @@ namespace CodeImp.DoomBuilder.Controls this.splitContainer1.Panel1.ResumeLayout(false); this.splitContainer1.Panel2.ResumeLayout(false); this.splitContainer1.ResumeLayout(false); + this.copypastemenu.ResumeLayout(false); this.ResumeLayout(false); } @@ -226,5 +301,13 @@ namespace CodeImp.DoomBuilder.Controls private System.Windows.Forms.ColumnHeader column; private System.Windows.Forms.SplitContainer splitContainer1; private System.Windows.Forms.ImageList images; + private System.Windows.Forms.ContextMenuStrip copypastemenu; + private System.Windows.Forms.ToolStripMenuItem copyresources; + private System.Windows.Forms.ToolStripSeparator toolStripSeparator1; + private System.Windows.Forms.ToolStripMenuItem pasteresources; + private System.Windows.Forms.ToolStripMenuItem replaceresources; + private System.Windows.Forms.ToolStripSeparator toolStripSeparator2; + private System.Windows.Forms.ToolStripMenuItem removeresources; + private System.Windows.Forms.ToolStripMenuItem cutresources; } } diff --git a/Source/Core/Controls/ResourceListEditor.cs b/Source/Core/Controls/ResourceListEditor.cs index b501edd0..fb7f9196 100644 --- a/Source/Core/Controls/ResourceListEditor.cs +++ b/Source/Core/Controls/ResourceListEditor.cs @@ -17,6 +17,7 @@ #region ================== Namespaces using System; +using System.Collections.Generic; using System.Drawing; using System.IO; using System.Windows.Forms; @@ -42,6 +43,12 @@ namespace CodeImp.DoomBuilder.Controls #region ================== Variables private Point dialogoffset = new Point(40, 20); + private DataLocationList copiedresources; //mxd + private int copyactionkey; + private int cutactionkey; + private int pasteactionkey; + private int pastespecialactionkey; + private int deleteactionkey; #endregion @@ -59,9 +66,27 @@ namespace CodeImp.DoomBuilder.Controls // Initialize InitializeComponent(); ResizeColumnHeader(); + + if (General.Actions != null) + { + // Get key shortcuts (mxd) + copyactionkey = General.Actions.GetActionByName("builder_copyselection").ShortcutKey; + cutactionkey = General.Actions.GetActionByName("builder_cutselection").ShortcutKey; + pasteactionkey = General.Actions.GetActionByName("builder_pasteselection").ShortcutKey; + pastespecialactionkey = General.Actions.GetActionByName("builder_pasteselectionspecial").ShortcutKey; + deleteactionkey = General.Actions.GetActionByName("builder_deleteitem").ShortcutKey; + + // Set displayed shortcuts (mxd) + copyresources.ShortcutKeyDisplayString = Actions.Action.GetShortcutKeyDesc(copyactionkey); + cutresources.ShortcutKeyDisplayString = Actions.Action.GetShortcutKeyDesc(cutactionkey); + pasteresources.ShortcutKeyDisplayString = Actions.Action.GetShortcutKeyDesc(pasteactionkey); + replaceresources.ShortcutKeyDisplayString = Actions.Action.GetShortcutKeyDesc(pastespecialactionkey); + removeresources.ShortcutKeyDisplayString = Actions.Action.GetShortcutKeyDesc(deleteactionkey); + } // Start with a clear list resourceitems.Items.Clear(); + copiedresources = new DataLocationList(); //mxd } #endregion @@ -158,14 +183,14 @@ namespace CodeImp.DoomBuilder.Controls } // This adds a normal item - public void AddResourceLocation(DataLocation rl) + /*public void AddResourceLocation(DataLocation rl) { // Add it AddItem(rl); // Raise content changed event if(OnContentChanged != null) OnContentChanged(); - } + }*/ // This adds a normal item private void AddItem(DataLocation rl) @@ -187,7 +212,7 @@ namespace CodeImp.DoomBuilder.Controls } //mxd - internal void DropItem(IDataObject data) + private void DropItem(IDataObject data) { if(!data.GetDataPresent(DataFormats.FileDrop)) return; @@ -258,7 +283,7 @@ namespace CodeImp.DoomBuilder.Controls private void editresource_Click(object sender, EventArgs e) { // Anything selected? - if(resourceitems.SelectedItems.Count > 0) + if(resourceitems.SelectedItems.Count == 1) { // Get selected item ListViewItem selecteditem = resourceitems.SelectedItems[0]; @@ -297,16 +322,7 @@ namespace CodeImp.DoomBuilder.Controls // Remove resource private void deleteresource_Click(object sender, EventArgs e) { - // Anything selected? - if(resourceitems.SelectedItems.Count > 0) - { - // Remove it - resourceitems.Items.Remove(resourceitems.SelectedItems[0]); - ResizeColumnHeader(); - - // Raise content changed event - if(OnContentChanged != null) OnContentChanged(); - } + DeleteSelectedResources(); //mxd } // Item selected @@ -328,7 +344,7 @@ namespace CodeImp.DoomBuilder.Controls if(resourceitems.SelectedItems.Count > 0) { // Enable buttons - editresource.Enabled = true; + editresource.Enabled = (resourceitems.SelectedItems.Count == 1); deleteresource.Enabled = true; } else @@ -390,5 +406,182 @@ namespace CodeImp.DoomBuilder.Controls } #endregion + + #region ================== Copy / Paste (mxd) + + private void CopySelectedResources() + { + // Don't do stupid things + if(resourceitems.SelectedItems.Count == 0) return; + + copiedresources.Clear(); + foreach(ListViewItem item in resourceitems.SelectedItems) + { + if(item.Tag is DataLocation) copiedresources.Add((DataLocation)item.Tag); + } + + // Display notification + General.Interface.DisplayStatus(StatusType.Info, copiedresources.Count + " Resource" + (copiedresources.Count > 1 ? "s" : "") + " Copied to Clipboard"); + } + + private void PasteResources() + { + // Don't do stupid things + if(copiedresources.Count == 0) return; + + Dictionary curlocations = GetLocationNames(); + int pastedcount = 0; + foreach(DataLocation dl in copiedresources) + { + if(curlocations.ContainsKey(dl.location)) continue; + AddItem(dl); + pastedcount++; + } + + if(pastedcount > 0) + { + ResizeColumnHeader(); + + // Display notification + General.Interface.DisplayStatus(StatusType.Info, pastedcount + " Resource" + (pastedcount > 1 ? "s" : "") + " Pasted"); + + // Raise content changed event + if(OnContentChanged != null) OnContentChanged(); + } + } + + private void ReplaceResources() + { + // Don't do stupid things + if(copiedresources.Count == 0) return; + + int pastedcount = 0; + + // Delete non-fixed resources + for(int i = resourceitems.Items.Count - 1; i > -1; i--) + { + if(resourceitems.Items[i].ForeColor != SystemColors.WindowText) break; + resourceitems.Items.Remove(resourceitems.Items[i]); + pastedcount++; + } + + // Paste new resources + Dictionary curlocations = GetLocationNames(); + foreach(DataLocation dl in copiedresources) + { + if(curlocations.ContainsKey(dl.location)) continue; + AddItem(dl); + pastedcount++; + } + + if(pastedcount > 0) + { + ResizeColumnHeader(); + + // Display notification + General.Interface.DisplayStatus(StatusType.Info, pastedcount + " Resource" + (pastedcount > 1 ? "s" : "") + " Replaced"); + + // Raise content changed event + if(OnContentChanged != null) OnContentChanged(); + } + } + + private void DeleteSelectedResources() + { + // Don't do stupid things + if(resourceitems.SelectedItems.Count == 0) return; + + // Remove them (mxd) + foreach(ListViewItem item in resourceitems.SelectedItems) + { + // Remove item unless fixed + if(item.ForeColor == SystemColors.WindowText) resourceitems.Items.Remove(item); + } + + ResizeColumnHeader(); + + // Raise content changed event + if(OnContentChanged != null) OnContentChanged(); + } + + private Dictionary GetLocationNames() + { + Dictionary dict = new Dictionary(resourceitems.Items.Count); + foreach(ListViewItem item in resourceitems.Items) + { + if(!(item.Tag is DataLocation)) continue; + DataLocation dl = (DataLocation)item.Tag; + dict.Add(dl.location, item); + } + + return dict; + } + + #endregion + + #region ================== Copy / Paste Events (mxd) + + private void copyresources_Click(object sender, EventArgs e) + { + CopySelectedResources(); + } + + private void cutresources_Click(object sender, EventArgs e) + { + CopySelectedResources(); + DeleteSelectedResources(); + } + + private void pasteresources_Click(object sender, EventArgs e) + { + PasteResources(); + } + + private void replaceresources_Click(object sender, EventArgs e) + { + ReplaceResources(); + } + + private void removeresources_Click(object sender, EventArgs e) + { + DeleteSelectedResources(); + } + + // Update menu buttons + private void copypastemenu_Opening(object sender, System.ComponentModel.CancelEventArgs e) + { + pasteresources.Enabled = copiedresources.Count > 0; + replaceresources.Enabled = copiedresources.Count > 0; + + // Can we copy current resource(s)? + for(int i = resourceitems.SelectedItems.Count - 1; i >= 0; i--) + { + // This item is not fixed + if(resourceitems.SelectedItems[i].ForeColor == SystemColors.WindowText) + { + copyresources.Enabled = true; + return; + } + } + + copyresources.Enabled = false; + } + + private void resourceitems_KeyUp(object sender, KeyEventArgs e) + { + if(sender != resourceitems) return; + + if((int)e.KeyData == copyactionkey) CopySelectedResources(); + else if((int)e.KeyData == pasteactionkey) PasteResources(); + else if((int)e.KeyData == pastespecialactionkey) ReplaceResources(); + else if((int)e.KeyData == deleteactionkey) DeleteSelectedResources(); + else if((int)e.KeyData == cutactionkey) + { + CopySelectedResources(); + DeleteSelectedResources(); + } + } + + #endregion } } diff --git a/Source/Core/Controls/ResourceListEditor.resx b/Source/Core/Controls/ResourceListEditor.resx index 7bf46223..1ce27d86 100644 --- a/Source/Core/Controls/ResourceListEditor.resx +++ b/Source/Core/Controls/ResourceListEditor.resx @@ -141,6 +141,9 @@ True + + 195, 17 + 17, 17 @@ -148,24 +151,24 @@ AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 - ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAACm - FgAAAk1TRnQBSQFMAgEBBgEAATQBAAE0AQABEAEAARABAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAFA - AwABIAMAAQEBAAEgBgABIDcAApYB/wEAApYB/wEAAk0B/wEAAk0B/wEAAk0B/wEAAk0B/y0AApYB/wEA - ApYB/wEAAk0B/wEAAk0B/wEAAk0B/wEAAk0B/5QAA4UB/wOFAf8DhQH/A4UB/wEAArkB/wEAApYB/wEA - ApYB/wEAAoEB/wEAAoEB/wEAAk0B/xAAA4AB/wOBAf8DgAH/A4AB/wOBAf8DgQH/A4AB/wEAArkB/wEA - ApYB/wEAApYB/wEAAoEB/wEAAoEB/wEAAk0B/5AAA4UB/wOFAf8DxgH/A8kB/wPGAf8BAAK5Af8DoAH/ - A3cB/wN3Af8BAAKBAf8BAAJNAf8MAAOAAf8DYQH/A4AB/wOVAf8DyQH/A9oB/wPaAf8DvAH/AQACuQH/ - A6gB/wOBAf8DgQH/AQACgQH/AQACTQH/jAADhQH/A8EB/wOFAf8D5QH/A+EB/wPlAf8BAAK5Af8BAAP/ - AQAD/wEAA/8BAAKBAf8BAAJNAf8IAAOAAf8DgQH/A4EB/wOAAf8DgQH/A4AB/wOBAf8DgAH/A4EB/wEA - ArkB/wEAA/8BAAP/AQAD/wEAAoEB/wEAAk0B/4gAA4UB/wPBAf8D0QH/A4UB/wPhAf8D4QH/A+UB/wEA - ArkB/wEAApYB/wEAApYB/wEAAoEB/wEAAoEB/wEAAnAB/xAAA48B/wOAAf8DgQH/A4AB/wOBAf8DgAH/ - A4EB/wEAArkB/wEAApYB/wEAApYB/wEAAoEB/wEAAoEB/wEAAnAB/4gAA4UB/wOFAf8DhQH/A8EB/wPe - Af8D3gH/A+EB/wEAArkB/wEAAk0B/wOxAf8DFwH/AQACgQH/AQACTQH/DAADjwH/A+MB/wOPAf8D1QH/ - A9oB/wPeAf8D4wH/A4AB/wEAArkB/wEAAk0B/wOxAf8DgQH/AQACgQH/AQACTQH/iAADhQH/A+EB/wPR - Af8D1QH/A9kB/wPeAf8D4QH/AQACuQH/AQACTQH/AwAB/wMXAf8BAAKWAf8BAAJNAf8MAAOPAf8DjwH/ - A48B/wPRAf8D2gH/A94B/wPeAf8DgAH/AQACuQH/AQACTQH/AwAB/wEcARQBFQH/AQAClgH/AQACTQH/ - iAADhQH/A94B/wPNAf8D0QH/A9UB/wPZAf8D2QH/A94B/wEAArkB/wEAArkB/wEAApYB/wEAAk0B/xAA - A48B/wPeAf8D0QH/A9EB/wPVAf8D2gH/A9oB/wOAAf8FAAK5Af8BAAK5Af8BAAKWAf8BAAJNAf+MAAOF + ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAAk + FgAAAk1TRnQBSQFMAgEBBgEAAYwBAAGMAQABEAEAARABAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAFA + AwABIAMAAQEBAAEgBgABIDcAApYB/wEAApYB/wEAAkIB/wEAAkIB/wEAAkIB/wEAAkIB/y0AApYB/wEA + ApYB/wEAAkIB/wEAAkIB/wEAAkIB/wEAAkIB/5QAA4UB/wOFAf8DhQH/A4UB/wEAArkB/wEAApYB/wEA + ApYB/wEAAoEB/wEAAoEB/wEAAkIB/xAAA4AB/wOBAf8DgAH/A4AB/wOBAf8DgQH/A4AB/wEAArkB/wEA + ApYB/wEAApYB/wEAAoEB/wEAAoEB/wEAAkIB/5AAA4UB/wOFAf8DxgH/A8kB/wPGAf8BAAK5Af8DoAH/ + A2wB/wNsAf8BAAKBAf8BAAJCAf8MAAOAAf8DVgH/A4AB/wOVAf8DyQH/A9oB/wPaAf8DvAH/AQACuQH/ + A6gB/wOBAf8DgQH/AQACgQH/AQACQgH/jAADhQH/A8EB/wOFAf8D5QH/A+EB/wPlAf8BAAK5Af8BAAP/ + AQAD/wEAA/8BAAKBAf8BAAJCAf8IAAOAAf8DgQH/A4EB/wOAAf8DgQH/A4AB/wOBAf8DgAH/A4EB/wEA + ArkB/wEAA/8BAAP/AQAD/wEAAoEB/wEAAkIB/4gAA4UB/wPBAf8D0QH/A4UB/wPhAf8D4QH/A+UB/wEA + ArkB/wEAApYB/wEAApYB/wEAAoEB/wEAAoEB/wEAAmUB/xAAA48B/wOAAf8DgQH/A4AB/wOBAf8DgAH/ + A4EB/wEAArkB/wEAApYB/wEAApYB/wEAAoEB/wEAAoEB/wEAAmUB/4gAA4UB/wOFAf8DhQH/A8EB/wPe + Af8D3gH/A+EB/wEAArkB/wEAAkIB/wOxAf8DDAH/AQACgQH/AQACQgH/DAADjwH/A+MB/wOPAf8D1QH/ + A9oB/wPeAf8D4wH/A4AB/wEAArkB/wEAAkIB/wOxAf8DgQH/AQACgQH/AQACQgH/iAADhQH/A+EB/wPR + Af8D1QH/A9kB/wPeAf8D4QH/AQACuQH/AQACQgH/AwAB/wMMAf8BAAKWAf8BAAJCAf8MAAOPAf8DjwH/ + A48B/wPRAf8D2gH/A94B/wPeAf8DgAH/AQACuQH/AQACQgH/AwAB/wERAQkBCgH/AQAClgH/AQACQgH/ + iAADhQH/A94B/wPNAf8D0QH/A9UB/wPZAf8D2QH/A94B/wEAArkB/wEAArkB/wEAApYB/wEAAkIB/xAA + A48B/wPeAf8D0QH/A9EB/wPVAf8D2gH/A9oB/wOAAf8FAAK5Af8BAAK5Af8BAAKWAf8BAAJCAf+MAAOF Af8D3gH/A80B/wPNAf8D0QH/A9UB/wPZAf8D2QH/A94B/wPZAf8DhQH/FAADjwH/A94B/wPNAf8DzQH/ A9EB/wPVAf8D2gH/A4AB/wQAA48B/wOPAf8DgQH/kAADhQH/A94B/wPJAf8DyQH/A80B/wPRAf8D1QH/ A9UB/wPZAf8D1QH/A4UB/xQAA48B/wPeAf8DyQH/A8kB/wPNAf8D0QH/A9UB/wOAAf8EAAOBAf8D0QH/ @@ -175,77 +178,75 @@ A4AB/wPRAf8DpAH/kAADhQH/A9kB/wPBAf8DxgH/A8YB/wPJAf8DzQH/A80B/wPRAf8D0QH/A4UB/xQA A48B/wOPAf8DjwH/A48B/wOPAf8DjwH/A48B/wOPAf8EAAOAAf8DoAH/A4EB/5AAA4UB/wP1Af8D4QH/ A94B/wPeAf8D2QH/A9kB/wPZAf8D1QH/A9UB/wOFAf8QAAOAAf8DgAH/A4EB/wOAAf8DgQH/A4EB/wOB - Af8DgQH/A4EB/wOAAf8DmgH/A58B/wNeAf8DgAH/jAADhQH/A4UB/wOFAf8DhQH/A4UB/wOFAf8DhQH/ - A4UB/wOFAf8DhQH/A4UB/xQAA4EB/wNnAf8DlQH/A8kB/wPaAf8D2gH/A9oB/wPaAf8D2gH/A7wB/wOA + Af8DgQH/A4EB/wOAAf8DmgH/A58B/wNTAf8DgAH/jAADhQH/A4UB/wOFAf8DhQH/A4UB/wOFAf8DhQH/ + A4UB/wOFAf8DhQH/A4UB/xQAA4EB/wNcAf8DlQH/A8kB/wPaAf8D2gH/A9oB/wPaAf8D2gH/A7wB/wOA Af8DgAH/A4AB/9AAA4AB/wOAAf8DgAH/A4AB/wOAAf8DgAH/A4AB/wOAAf8DgAH/A4AB/wOAAf//ADQA - Af8DAAH/AwAB/wMAAf8tAAKWAf8BAAKWAf8BAAJNAf8BAAJNAf8BAAJNAf8BAAJNAf9YAAMcAf8DHAH/ - AxwB/wMcAf8DHAH/AxwB/wMcAf8DHAH/GAABDwEFAQkB/wEPAQUBCQH/AQ8BBQEJAf8BDwEFAQkB/wEP - AQUBCQH/AQ8BBQEJAf8BDwEFAQkB/wEqASABHAH/AXEBbQFjAf8BXgFZASwB/wEbARYBCAH/AQ8BBQEJ - Af8pAAK5Af8BAAKWAf8BAAKWAf8BAAKBAf8BAAKBAf8BAAJNAf8EAAGBAYgBkAH/AW4BgQGQAf8BbgKB - Af8BXgKBAf8BXgFuAYEB/wFOAWYBbgH/AU4BVgFeAf8BPgFGAU4B/wEuAj4B/wIuAT4B/wEeASYBLgH/ - Ax4B/wIeAS4B/xwAAxwB/wMOAf8DsAH/A7EB/wOwAf8DrQH/A6sB/wOgAf8DHAH/FAABGgEMAQgB/wE+ - ASwBDQH/AWIBVAEuAf8BnwGCATUB/wHbAccBkAH/AeYB1wG0Af8B5gHXAbQB/wG0Aa4BjwH/AXQBagFH - Af8BeAFqAUYB/wFXAUsBJAH/AR4BEgEHAf8BDwEFAQkB/wQAA5cB/wORAf8DiQH/A4QB/wOBAf8DbgH/ - A2cB/wNaAf8DTQH/AQACuQH/A6AB/wN3Af8DdwH/AQACgQH/AQACTQH/BAABgQGIAZAB/wGQAagBsAH/ - AZABqAGwAf8BDgGQAdAB/wEOAZAB0AH/AQ4BkAHQAf8BDgGQAcAB/wEeAYgBwAH/AR4BgQGwAf8BHgGB - AbAB/wEuAYEBoAH/AS4BgQGQAf8BLgFWAW4B/wOSAf8UAAMcAf8DqgH/Aw4B/wPXAf8D2QH/A9wB/wPf - Af8D4QH/A88B/wMcAf8QAAEHAQIBBAH/AQcBAgEEAf8BBwECAQQB/wEHAQIBBAH/AQcBAgEEAf8BBwEC - AQQB/wEHAQIBBAH/AQcBAgEEAf8BBwECAQQB/wEbARQBEAH/AWsBYgFOAf8BcQFgATMB/wEpARoBBwH/ - AQ8BBQEJAf8EAAOXAf8DsQH/A7EB/wOEAf8DhAH/A4QB/wOBAf8DhAH/A4EB/wEAArkB/wEAA/8BAAP/ - AQAD/wEAAoEB/wEAAk0B/wQAAYEBiAGQAf8BbgHYAv8BkAGoAbAB/wGBAeAC/wFuAdAC/wFeAcgC/wFe - AcgC/wFOAcAB8AH/AT4BsAHwAf8BPgGoAfAB/wEuAaAB4AH/AR4BkAHQAf8BLgF2AYEB/wFnAW8BdQH/ - EAADHAH/A6oB/wPBAf8DDgH/A9UB/wPZAf8D3QH/A+EB/wPlAf8D0gH/AxwB/xgAA2EB/wMAAf8DAAH/ - AwAB/wMAAf8DAAH/AwAB/wQAATUBLQEnAf8BbQFnAV0B/wEYAQ4BEQH/CAADngH/A74B/wOxAf8DywH/ - A74B/wO4Af8DuAH/A6sB/wOkAf8BAAK5Af8BAAKWAf8BAAKWAf8BAAKBAf8BAAKBAf8BAAJwAf8EAAGB - AZABoAH/AW4B2AL/AZABqAGwAf8BkAHAAdAB/wGBAdgC/wFuAdAC/wFuAdAC/wFeAcgC/wFeAcAC/wFO - AbgB8AH/AT4BsAHwAf8BPgGoAfAB/wEeAYgB0AH/AS4BVgFuAf8DkgH/DAADHAH/Aw4B/wMOAf8DqgH/ - A84B/wPTAf8D2AH/A9wB/wPgAf8D0QH/AxwB/xQAA2EB/wPYAf8DYQH/A8AB/wPOAf8D0wH/A9gB/wMA - Af8EAAEvASUBJAH/A8AB/wOBAf8IAAOkAf8DvgH/A7EB/wO+Af8DxAH/A74B/wO+Af8DuAH/A7gB/wEA - ArkB/wEAAk0B/wOxAf8DFwH/AQACgQH/AQACTQH/BAABgQGQAaAB/wGBAdgB8AH/AW4B2AL/AZABqAGw - Af8BgQHgAv8BgQHQAv8BbgHYAv8BbgHQAv8BbgHQAv8BXgHIAv8BTgHAAfAB/wFOAbgB8AH/AT4BsAHw - Af8BLgF2AYEB/wOBAf8MAAMcAf8D1QH/A8EB/wPEAf8DyQH/A88B/wPTAf8D1wH/A9sB/wPNAf8DHAH/ - FAADYQH/A2EB/wNhAf8DwAH/A8kB/wPPAf8D0wH/AwAB/wQAA2EB/wNhAf8BGwESARQB/wgAA6QB/wPE - Af8DvgH/A7EB/wPLAf8DxAH/A74B/wO+Af8DvgH/AQACuQH/AQACTQH/AwAB/wMXAf8BAAKWAf8BAAJN - Af8EAAGBAZgBoAH/AZAB4AHwAf8BbgHYAv8BkAGoAbAB/wGQAbgBwAH/AYEB2AL/AW4B2AL/AW4B2AL/ - AW4B2AL/AW4B0AL/AV4B0AL/AV4ByAL/AU4BuAHwAf8BPgGgAeAB/wFXAXUBgQH/A5IB/wgAAxwB/wPT - Af8DvAH/A8AB/wPFAf8DyQH/A80B/wPRAf8D1QH/A8wB/wMcAf8UAANhAf8D0wH/A7wB/wPAAf8DxQH/ - A8kB/wPNAf8DAAH/BAABKQEfASAB/wPAAf8DgQH/CAADpAH/A8sB/wO+Af8DsQH/A7gB/wPEAf8DvgH/ - A74B/wO+Af8DvgH/AQACuQH/AQACuQH/AQAClgH/AQACTQH/AUYBZAF0Af8DpAH/AYEBmAGgAf8BkAHg - AfAB/wGgAegC/wFuAdgC/wGQAagBsAH/AYEB4AL/AYEB4AL/AYEB4AL/AYEB4AL/AYEB4AL/AYEB4AL/ - AYEB4AL/AYEB2AL/AYEB2AL/AV4BqAHQAf8DgQH/CAADHAH/A9EB/wO3Af8DuwH/A8AB/wPEAf8DyAH/ - A8wB/wPRAf8DyQH/AxwB/xQAA2EB/wPRAf8DtwH/A7sB/wPAAf8DxAH/A8gB/wMAAf8EAANhAf8DYQH/ - ARQBDQEOAf8IAAOkAf8DywH/A9gB/wO+Af8DsQH/A8sB/wPLAf8DywH/A8sB/wPLAf8DywH/A8sB/wPE - Af8DxAH/A6QB/wOJAf8BkAKgAf8BoAHoAfAB/wGgAegC/wGgAegC/wGQAagBsAH/AZABqAGwAf8BkAGo - AbAB/wGQAagBsAH/AYEBoAGwAf8BgQGgAbAB/wGBAZgBoAH/AYEBmAGgAf8BgQGQAaAB/wGBAZABoAH/ - AYEBiAGQAf8BgQGIAZAB/wgAAxwB/wPRAf8DswH/A7UB/wO5Af8DvwH/A8MB/wPHAf8DywH/A8YB/wMc - Af8UAANhAf8D0QH/A7MB/wO1Af8DuQH/A78B/wPDAf8DAAH/BAABKQEfASAB/wPAAf8DgQH/CAADqwH/ - A9IB/wPYAf8D2AH/A7EB/wOxAf8DsQH/A7EB/wOrAf8DqwH/A6QB/wOkAf8DpAH/A6QB/wOeAf8DlwH/ - AZABoAGwAf8BoAHoAfAB/wGgAfAC/wGgAegC/wGgAegC/wGBAdgC/wFuAdgC/wFuAdgC/wFuAdgC/wFu - AdgC/wFuAdgC/wFuAdgC/wGBAYgBkAH/FAADHAH/A9EB/wOtAf8DsQH/A7QB/wO5Af8DvAH/A8EB/wPF - Af8DxAH/AxwB/xQAA2EB/wPRAf8DrQH/A7EB/wO0Af8DuQH/A7wB/wMAAf8EAANhAf8DYQH/ARQBDQEO - Af8IAAOxAf8D0gH/A9gB/wPYAf8D2AH/A8sB/wO+Af8DvgH/A74B/wO+Af8DvgH/A74B/wOXAf8MAAGQ - AaABsAH/AaAC8AH/AbAC8AH/AaAB8AL/AaAB6AL/AaAB6AL/AYEB2AL/AZACoAH/AYEBmAGgAf8BgQGY - AaAB/wGBAZABoAH/AYECkAH/AYEBiAGQAf8UAAMcAf8DygH/A6gB/wOsAf8DsAH/A7QB/wO4Af8DvAH/ - A8AB/wPBAf8DHAH/FAADYQH/A8oB/wOoAf8DrAH/A7AB/wO0Af8DuAH/AwAB/wQAASkBHwEgAf8DwAH/ - A4EB/wgAA7EB/wPSAf8D2AH/A9gB/wPYAf8D2AH/A8QB/wOrAf8DpAH/A6QB/wOkAf8DngH/A5cB/wwA - AZABqAGwAf8BoAHQAeAB/wGwAvAB/wGwAvAB/wGgAfAC/wGgAegC/wGQAaABsAH/A5IB/ygAAxwB/wPL - Af8DqQH/A6wB/wOwAf8DtAH/A7cB/wO7Af8DvQH/A8AB/wMcAf8UAANhAf8DYQH/A2EB/wNhAf8DYQH/ - A2EB/wNhAf8DYQH/BAABHgEWARcB/wGFAYMBbwH/ASABFwEWAf8IAAOxAf8DywH/A9gB/wPYAf8D2AH/ - A9gB/wOxAf8DpAH/JAABkAGoAbAB/wGQAagBsAH/AZABqAGwAf8BkAGoAbAB/wGQAagBsAH/A5IB/ywA - AxwB/wPyAf8D1QH/A9IB/wPRAf8DzgH/A8sB/wPKAf8DxwH/A8YB/wMcAf8QAAEHAQIBBAH/AQ8BBQEJ - Af8BDwEFAQkB/wEPAQUBCQH/AQ8BBQEJAf8BDwEFAQkB/wEPAQUBCQH/AQ8BBQEJAf8BDwEFAQkB/wEP - AQUBCQH/AYEBdQFmAf8BnQGRAVUB/wE6ASoBCAH/AwAB/wgAA7EB/wOxAf8DsQH/A7EB/wOxAf8DpAH/ - bAADHAH/AxwB/wMcAf8DHAH/AxwB/wMcAf8DHAH/AxwB/wMcAf8DHAH/AxwB/xQAARIBCAEGAf8BUgE2 - AQgB/wGfAYIBNQH/AdsBxwGQAf8B5gHXAbQB/wHmAdcBtAH/AeYB1wG0Af8B5gHXAbQB/wHgAdUBsQH/ - AbQBrgGPAf8BXwFTATAB/wEiARUBBwH/AQ8BBQEJAf/QAAEJAQMBBQH/AQcBAgEEAf8BBwECAQQB/wEH - AQIBBAH/AQcBAgEEAf8BBwECAQQB/wEHAQIBBAH/AQcBAgEEAf8BBwECAQQB/wEJAQMBBQH/AQ8BBQEJ - Af9IAAFCAU0BPgcAAT4DAAEoAwABQAMAASADAAEBAQABAQYAAQEWAAP/AQAB/wGBAf8BwAQAAfgBAQHg - BQAB8AEBAcAFAAHgAQEBgAUAAcABAQHgBQABwAEBAcAFAAHAAQEBwAUAAcABAwHAASEEAAHAAQcBwAEj - BAABwAEHAcABIwQAAcABBwHAASMEAAHAAQcBwAEjBAABwAEHAcABIwQAAcABBwGAAQEEAAHAAQcBwAEB - BAAC/wHgAQMEAAX/AcMB/wGBAv8B+AEHAeABAQH/AYEBAAEHAfABBwHAAQEBAAEBAQABAwHgAQcBgAEB - AQABAQEAAQMBwAEHAeABIwEAAQEBAAEBAcABBwHAASMBAAEBAQABAQHAAQcBwAEjAQABAQIAAcABBwHA - ASMEAAHAAQcBwAEjBAABwAEHAcABIwMAAQcBwAEHAcABIwEAAQcBAAEHAcABBwHAASMBAAEHAQAB/wHA - AQcBwAEjAQAB/wGBAf8BwAEHAYABAQGBA/8BwAEHAcABAQb/AeABAwL/Cw== + Af8DAAH/AwAB/wMAAf8tAAKWAf8BAAKWAf8BAAJCAf8BAAJCAf8BAAJCAf8BAAJCAf9YAAMRAf8DEQH/ + AxEB/wMRAf8DEQH/AxEB/wMRAf8DEQH/GAABBAIAAf8BBAIAAf8BBAIAAf8BBAIAAf8BBAIAAf8BBAIA + Af8BBAIAAf8BHwEVAREB/wFmAWIBWAH/AVMBTgEhAf8BEAELAQAB/wEEAgAB/ykAArkB/wEAApYB/wEA + ApYB/wEAAoEB/wEAAoEB/wEAAkIB/wQAAYEBiAGQAf8BYwGBAZAB/wFjAoEB/wFTAoEB/wFTAWMBgQH/ + AUMBWwFjAf8BQwFLAVMB/wEzATsBQwH/ASMCMwH/AiMBMwH/ARMBGwEjAf8DEwH/AhMBIwH/HAADEQH/ + AwMB/wOwAf8DsQH/A7AB/wOtAf8DqwH/A6AB/wMRAf8UAAEPAQEBAAH/ATMBIQECAf8BVwFJASMB/wGf + AYIBKgH/AdsBxwGQAf8B5gHXAbQB/wHmAdcBtAH/AbQBrgGPAf8BaQFfATwB/wFtAV8BOwH/AUwBQAEZ + Af8BEwEHAQAB/wEEAgAB/wQAA5cB/wORAf8DiQH/A4QB/wOBAf8DYwH/A1wB/wNPAf8DQgH/AQACuQH/ + A6AB/wNsAf8DbAH/AQACgQH/AQACQgH/BAABgQGIAZAB/wGQAagBsAH/AZABqAGwAf8BAwGQAdAB/wED + AZAB0AH/AQMBkAHQAf8BAwGQAcAB/wETAYgBwAH/ARMBgQGwAf8BEwGBAbAB/wEjAYEBoAH/ASMBgQGQ + Af8BIwFLAWMB/wOSAf8UAAMRAf8DqgH/AwMB/wPXAf8D2QH/A9wB/wPfAf8D4QH/A88B/wMRAf8TAAH/ + AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8BEAEJAQUB/wFgAVcBQwH/AWYBVQEoAf8BHgEP + AQAB/wEEAgAB/wQAA5cB/wOxAf8DsQH/A4QB/wOEAf8DhAH/A4EB/wOEAf8DgQH/AQACuQH/AQAD/wEA + A/8BAAP/AQACgQH/AQACQgH/BAABgQGIAZAB/wFjAdgC/wGQAagBsAH/AYEB4AL/AWMB0AL/AVMByAL/ + AVMByAL/AUMBwAHwAf8BMwGwAfAB/wEzAagB8AH/ASMBoAHgAf8BEwGQAdAB/wEjAWsBgQH/AVwBZAFq + Af8QAAMRAf8DqgH/A8EB/wMDAf8D1QH/A9kB/wPdAf8D4QH/A+UB/wPSAf8DEQH/GAADVgH/AwAB/wMA + Af8DAAH/AwAB/wMAAf8DAAH/BAABKgEiARwB/wFiAVwBUgH/AQ0BAwEGAf8IAAOeAf8DvgH/A7EB/wPL + Af8DvgH/A7gB/wO4Af8DqwH/A6QB/wEAArkB/wEAApYB/wEAApYB/wEAAoEB/wEAAoEB/wEAAmUB/wQA + AYEBkAGgAf8BYwHYAv8BkAGoAbAB/wGQAcAB0AH/AYEB2AL/AWMB0AL/AWMB0AL/AVMByAL/AVMBwAL/ + AUMBuAHwAf8BMwGwAfAB/wEzAagB8AH/ARMBiAHQAf8BIwFLAWMB/wOSAf8MAAMRAf8DAwH/AwMB/wOq + Af8DzgH/A9MB/wPYAf8D3AH/A+AB/wPRAf8DEQH/FAADVgH/A9gB/wNWAf8DwAH/A84B/wPTAf8D2AH/ + AwAB/wQAASQBGgEZAf8DwAH/A4EB/wgAA6QB/wO+Af8DsQH/A74B/wPEAf8DvgH/A74B/wO4Af8DuAH/ + AQACuQH/AQACQgH/A7EB/wMMAf8BAAKBAf8BAAJCAf8EAAGBAZABoAH/AYEB2AHwAf8BYwHYAv8BkAGo + AbAB/wGBAeAC/wGBAdAC/wFjAdgC/wFjAdAC/wFjAdAC/wFTAcgC/wFDAcAB8AH/AUMBuAHwAf8BMwGw + AfAB/wEjAWsBgQH/A4EB/wwAAxEB/wPVAf8DwQH/A8QB/wPJAf8DzwH/A9MB/wPXAf8D2wH/A80B/wMR + Af8UAANWAf8DVgH/A1YB/wPAAf8DyQH/A88B/wPTAf8DAAH/BAADVgH/A1YB/wEQAQcBCQH/CAADpAH/ + A8QB/wO+Af8DsQH/A8sB/wPEAf8DvgH/A74B/wO+Af8BAAK5Af8BAAJCAf8DAAH/AwwB/wEAApYB/wEA + AkIB/wQAAYEBmAGgAf8BkAHgAfAB/wFjAdgC/wGQAagBsAH/AZABuAHAAf8BgQHYAv8BYwHYAv8BYwHY + Av8BYwHYAv8BYwHQAv8BUwHQAv8BUwHIAv8BQwG4AfAB/wEzAaAB4AH/AUwBagGBAf8DkgH/CAADEQH/ + A9MB/wO8Af8DwAH/A8UB/wPJAf8DzQH/A9EB/wPVAf8DzAH/AxEB/xQAA1YB/wPTAf8DvAH/A8AB/wPF + Af8DyQH/A80B/wMAAf8EAAEeARQBFQH/A8AB/wOBAf8IAAOkAf8DywH/A74B/wOxAf8DuAH/A8QB/wO+ + Af8DvgH/A74B/wO+Af8BAAK5Af8BAAK5Af8BAAKWAf8BAAJCAf8BOwFZAWkB/wOkAf8BgQGYAaAB/wGQ + AeAB8AH/AaAB6AL/AWMB2AL/AZABqAGwAf8BgQHgAv8BgQHgAv8BgQHgAv8BgQHgAv8BgQHgAv8BgQHg + Av8BgQHgAv8BgQHYAv8BgQHYAv8BUwGoAdAB/wOBAf8IAAMRAf8D0QH/A7cB/wO7Af8DwAH/A8QB/wPI + Af8DzAH/A9EB/wPJAf8DEQH/FAADVgH/A9EB/wO3Af8DuwH/A8AB/wPEAf8DyAH/AwAB/wQAA1YB/wNW + Af8BCQECAQMB/wgAA6QB/wPLAf8D2AH/A74B/wOxAf8DywH/A8sB/wPLAf8DywH/A8sB/wPLAf8DywH/ + A8QB/wPEAf8DpAH/A4kB/wGQAqAB/wGgAegB8AH/AaAB6AL/AaAB6AL/AZABqAGwAf8BkAGoAbAB/wGQ + AagBsAH/AZABqAGwAf8BgQGgAbAB/wGBAaABsAH/AYEBmAGgAf8BgQGYAaAB/wGBAZABoAH/AYEBkAGg + Af8BgQGIAZAB/wGBAYgBkAH/CAADEQH/A9EB/wOzAf8DtQH/A7kB/wO/Af8DwwH/A8cB/wPLAf8DxgH/ + AxEB/xQAA1YB/wPRAf8DswH/A7UB/wO5Af8DvwH/A8MB/wMAAf8EAAEeARQBFQH/A8AB/wOBAf8IAAOr + Af8D0gH/A9gB/wPYAf8DsQH/A7EB/wOxAf8DsQH/A6sB/wOrAf8DpAH/A6QB/wOkAf8DpAH/A54B/wOX + Af8BkAGgAbAB/wGgAegB8AH/AaAB8AL/AaAB6AL/AaAB6AL/AYEB2AL/AWMB2AL/AWMB2AL/AWMB2AL/ + AWMB2AL/AWMB2AL/AWMB2AL/AYEBiAGQAf8UAAMRAf8D0QH/A60B/wOxAf8DtAH/A7kB/wO8Af8DwQH/ + A8UB/wPEAf8DEQH/FAADVgH/A9EB/wOtAf8DsQH/A7QB/wO5Af8DvAH/AwAB/wQAA1YB/wNWAf8BCQEC + AQMB/wgAA7EB/wPSAf8D2AH/A9gB/wPYAf8DywH/A74B/wO+Af8DvgH/A74B/wO+Af8DvgH/A5cB/wwA + AZABoAGwAf8BoALwAf8BsALwAf8BoAHwAv8BoAHoAv8BoAHoAv8BgQHYAv8BkAKgAf8BgQGYAaAB/wGB + AZgBoAH/AYEBkAGgAf8BgQKQAf8BgQGIAZAB/xQAAxEB/wPKAf8DqAH/A6wB/wOwAf8DtAH/A7gB/wO8 + Af8DwAH/A8EB/wMRAf8UAANWAf8DygH/A6gB/wOsAf8DsAH/A7QB/wO4Af8DAAH/BAABHgEUARUB/wPA + Af8DgQH/CAADsQH/A9IB/wPYAf8D2AH/A9gB/wPYAf8DxAH/A6sB/wOkAf8DpAH/A6QB/wOeAf8DlwH/ + DAABkAGoAbAB/wGgAdAB4AH/AbAC8AH/AbAC8AH/AaAB8AL/AaAB6AL/AZABoAGwAf8DkgH/KAADEQH/ + A8sB/wOpAf8DrAH/A7AB/wO0Af8DtwH/A7sB/wO9Af8DwAH/AxEB/xQAA1YB/wNWAf8DVgH/A1YB/wNW + Af8DVgH/A1YB/wNWAf8EAAETAQsBDAH/AYUBgwFkAf8BFQEMAQsB/wgAA7EB/wPLAf8D2AH/A9gB/wPY + Af8D2AH/A7EB/wOkAf8kAAGQAagBsAH/AZABqAGwAf8BkAGoAbAB/wGQAagBsAH/AZABqAGwAf8DkgH/ + LAADEQH/A/IB/wPVAf8D0gH/A9EB/wPOAf8DywH/A8oB/wPHAf8DxgH/AxEB/xMAAf8BBAIAAf8BBAIA + Af8BBAIAAf8BBAIAAf8BBAIAAf8BBAIAAf8BBAIAAf8BBAIAAf8BBAIAAf8BgQFqAVsB/wGdAZEBSgH/ + AS8BHwEAAf8DAAH/CAADsQH/A7EB/wOxAf8DsQH/A7EB/wOkAf9sAAMRAf8DEQH/AxEB/wMRAf8DEQH/ + AxEB/wMRAf8DEQH/AxEB/wMRAf8DEQH/FAABBwIAAf8BRwErAQAB/wGfAYIBKgH/AdsBxwGQAf8B5gHX + AbQB/wHmAdcBtAH/AeYB1wG0Af8B5gHXAbQB/wHgAdUBsQH/AbQBrgGPAf8BVAFIASUB/wEXAQoBAAH/ + AQQCAAH/0wAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wEEAgAB/0gAAUIBTQE+ + BwABPgMAASgDAAFAAwABIAMAAQEBAAEBBgABARYAA/8BAAH/AYEB/wHABAAB+AEBAeAFAAHwAQEBwAUA + AeABAQGABQABwAEBAeAFAAHAAQEBwAUAAcABAQHABQABwAEDAcABIQQAAcABBwHAASMEAAHAAQcBwAEj + BAABwAEHAcABIwQAAcABBwHAASMEAAHAAQcBwAEjBAABwAEHAYABAQQAAcABBwHAAQEEAAL/AeABAwQA + Bf8BwwH/AYEC/wH4AQcB4AEBAf8BgQEAAQcB8AEHAcABAQEAAQEBAAEDAeABBwGAAQEBAAEBAQABAwHA + AQcB4AEjAQABAQEAAQEBwAEHAcABIwEAAQEBAAEBAcABBwHAASMBAAEBAgABwAEHAcABIwQAAcABBwHA + ASMEAAHAAQcBwAEjAwABBwHAAQcBwAEjAQABBwEAAQcBwAEHAcABIwEAAQcBAAH/AcABBwHAASMBAAH/ + AYEB/wHAAQcBgAEBAYED/wHAAQcBwAEBBv8B4AEDAv8L diff --git a/Source/Core/General/General.cs b/Source/Core/General/General.cs index 67ac90ef..853b3d23 100644 --- a/Source/Core/General/General.cs +++ b/Source/Core/General/General.cs @@ -737,7 +737,7 @@ namespace CodeImp.DoomBuilder private static Assembly CurrentDomain_AssemblyResolve(object sender, ResolveEventArgs args) { // Check if SlimDX failed loading - if(args.Name.Contains("SlimDX")) AskDownloadDirectX(); + if(args.Name.Contains("SlimDX")) AskDownloadSlimDX(); // Return null return null; @@ -752,13 +752,33 @@ namespace CodeImp.DoomBuilder CancelAutoMapLoad(); // Ask the user to download DirectX - if(MessageBox.Show("This application requires the latest version of Microsoft DirectX installed on your computer." + Environment.NewLine + - "Do you want to install and/or update Microsoft DirectX now?", "DirectX Error", System.Windows.Forms.MessageBoxButtons.YesNo, + if(MessageBox.Show("This application requires the latest version of Microsoft DirectX 9.0 installed on your computer." + Environment.NewLine + + "Do you want to install and/or update Microsoft DirectX now?", "DirectX Error", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation) == DialogResult.Yes) { - // Open DX web setup - //System.Diagnostics.Process.Start("http://www.microsoft.com/downloads/details.aspx?FamilyId=2DA43D38-DB71-4C1B-BC6A-9B6652CD92A3").WaitForExit(1000); - Process.Start(Path.Combine(setuppath, "dxwebsetup.exe")).WaitForExit(1000); + // Go to DirectX End-User Runtime Web Installer page (mxd) + OpenWebsite("http://www.microsoft.com/en-us/download/details.aspx?id=35"); + } + + // End program here + Terminate(false); + } + + // This asks the user to download SlimDX (mxd) + private static void AskDownloadSlimDX() + { + // Cancel loading map from command-line parameters, if any. + // This causes problems, because when the window is shown, the map will + // be loaded and SlimDX is initialized (which we seem to be missing) + CancelAutoMapLoad(); + + // Ask the user to download SlimDX + if(MessageBox.Show("This application requires the latest version of SlimDX for .NET 2.0 installed on your computer." + Environment.NewLine + + "Do you want to install SlimDX now?", "SlimDX Error", MessageBoxButtons.YesNo, + MessageBoxIcon.Exclamation) == DialogResult.Yes) + { + // Go to SlimDX download page + OpenWebsite("http://slimdx.org/download.php"); } // End program here diff --git a/Source/Core/Properties/Resources.Designer.cs b/Source/Core/Properties/Resources.Designer.cs index dda51f2b..5d60ae6e 100644 --- a/Source/Core/Properties/Resources.Designer.cs +++ b/Source/Core/Properties/Resources.Designer.cs @@ -536,6 +536,13 @@ namespace CodeImp.DoomBuilder.Properties { } } + internal static System.Drawing.Bitmap Replace { + get { + object obj = ResourceManager.GetObject("Replace", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + internal static System.Drawing.Bitmap Reset { get { object obj = ResourceManager.GetObject("Reset", resourceCulture); diff --git a/Source/Core/Properties/Resources.resx b/Source/Core/Properties/Resources.resx index 765e6e61..e2a65f4b 100644 --- a/Source/Core/Properties/Resources.resx +++ b/Source/Core/Properties/Resources.resx @@ -118,9 +118,6 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - ..\Resources\Zoom.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - ..\Resources\Clear.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -130,6 +127,9 @@ ..\Resources\ArrowUp.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\ClearTextures.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + ..\Resources\Keyboard.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -181,6 +181,12 @@ ..\Resources\Splash3_small.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\TagStatistics.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\Model.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + ..\Resources\Screenshot.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -190,8 +196,8 @@ ..\Resources\ScriptHelp.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\KnownTextureSet.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\Light_animate.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\Splash3_trans.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -205,24 +211,18 @@ ..\Resources\Expand.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\Redo.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\Unpin.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\Grid2.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\ViewBrightness.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\Status0.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\Model.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\Zoom.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\mergegeometry.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\ScriptSnippet.xpm;System.Byte[], mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - ..\Resources\List_Images.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -268,9 +268,6 @@ ..\Resources\Cursor.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\Grid2_arrowup.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - ..\Resources\Reset.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -280,9 +277,6 @@ ..\Resources\treeview.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\Status1.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - ..\Resources\ArrowDown.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -319,9 +313,6 @@ ..\Resources\ErrorLarge.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\Lightbulb.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - ..\Resources\MCrash.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -337,6 +328,9 @@ ..\Resources\PuzzlePiece.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\SearchPrev.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + ..\Resources\Model_selected.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -355,14 +349,17 @@ ..\Resources\Status10.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\Properties.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\Status0.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\ScreenshotActiveWindow.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\Script2.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\ClearTextures.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\Redo.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\Prefab.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -391,14 +388,20 @@ ..\Resources\Status2.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\Add.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + ..\Resources\Link.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\TagStatistics.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\Light.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\Add.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\ScriptSnippet.xpm;System.Byte[], mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + ..\Resources\Properties.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\Test.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -406,8 +409,11 @@ ..\Resources\Undo.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\Unpin.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\SlimDX_small.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\KnownTextureSet.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\Angle.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -415,8 +421,8 @@ ..\Resources\ViewTextureFloor.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\Light_animate.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\Grid2_arrowup.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\Pin.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -427,20 +433,17 @@ ..\Resources\ScriptKeyword.xpm;System.Byte[], mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - ..\Resources\MissingThing.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - ..\Resources\Monster3.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\Copy.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\ViewBrightness.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\Grid2.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\Light.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\Lightbulb.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\Help.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -448,14 +451,14 @@ ..\Resources\OpenScript.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\SlimDX_small.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\MissingThing.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\Status11.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\ScreenshotActiveWindow.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\Status1.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\WarningLarge.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -469,7 +472,7 @@ ..\Resources\Check.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\SearchPrev.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\Replace.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a \ No newline at end of file diff --git a/Source/Core/Resources/Replace.png b/Source/Core/Resources/Replace.png new file mode 100644 index 00000000..a223647b Binary files /dev/null and b/Source/Core/Resources/Replace.png differ diff --git a/Source/Core/Windows/ConfigForm.Designer.cs b/Source/Core/Windows/ConfigForm.Designer.cs index de75cb48..1842a09e 100644 --- a/Source/Core/Windows/ConfigForm.Designer.cs +++ b/Source/Core/Windows/ConfigForm.Designer.cs @@ -120,10 +120,10 @@ namespace CodeImp.DoomBuilder.Windows label5.AutoSize = true; label5.Location = new System.Drawing.Point(12, 272); label5.Name = "label5"; - label5.Size = new System.Drawing.Size(312, 28); + label5.Size = new System.Drawing.Size(312, 42); label5.TabIndex = 19; label5.Text = "Drag && drop resources to add them.\r\nDrag items to change order (lower items over" + - "ride higher items)."; + "ride higher items).\r\nUse the context menu to cut, copy, paste or remove items."; // // label6 // @@ -135,7 +135,7 @@ namespace CodeImp.DoomBuilder.Windows label6.Size = new System.Drawing.Size(457, 37); label6.TabIndex = 21; label6.Text = "These are the resources that will be loaded when this configuration is chosen for" + - " editing. Usually you add your IWAD (like doom.wad or doom2.wad) here."; + " editing. Usually you add your IWAD (like DOOM.WAD or DOOM2.WAD) here."; // // label3 // @@ -816,9 +816,9 @@ namespace CodeImp.DoomBuilder.Windows this.hintlabel.AutoSize = true; this.hintlabel.Location = new System.Drawing.Point(30, 384); this.hintlabel.Name = "hintlabel"; - this.hintlabel.Size = new System.Drawing.Size(265, 14); + this.hintlabel.Size = new System.Drawing.Size(283, 14); this.hintlabel.TabIndex = 6; - this.hintlabel.Text = "Use context menu to copy-paste game configurations"; + this.hintlabel.Text = "Use the context menu to copy-paste game configurations"; // // hint // @@ -859,6 +859,7 @@ namespace CodeImp.DoomBuilder.Windows this.MaximizeBox = false; this.MinimizeBox = false; this.Name = "ConfigForm"; + this.Opacity = 1; this.ShowIcon = false; this.ShowInTaskbar = false; this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent; diff --git a/Source/Core/Windows/ConfigForm.resx b/Source/Core/Windows/ConfigForm.resx index 9723d20d..2edc5848 100644 --- a/Source/Core/Windows/ConfigForm.resx +++ b/Source/Core/Windows/ConfigForm.resx @@ -212,6 +212,45 @@ True + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + 159, 17 @@ -220,7 +259,7 @@ AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAA4 - CAAAAk1TRnQBSQFMAwEBAAF0AQEBdAEBARMBAAEQAQAE/wEJAQAI/wFCAU0BNgEEBgABNgEEAgABKAMA + CAAAAk1TRnQBSQFMAwEBAAF8AQEBfAEBARMBAAEQAQAE/wEJAQAI/wFCAU0BNgEEBgABNgEEAgABKAMA AUwDAAEQAwABAQEAAQgFAAHAAQQYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5 AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA @@ -276,9 +315,6 @@ True - - True - True @@ -294,4 +330,7 @@ 17, 17 + + 416, 17 + \ No newline at end of file diff --git a/Source/Core/Windows/MapOptionsForm.Designer.cs b/Source/Core/Windows/MapOptionsForm.Designer.cs index c59a3d82..eca84413 100644 --- a/Source/Core/Windows/MapOptionsForm.Designer.cs +++ b/Source/Core/Windows/MapOptionsForm.Designer.cs @@ -33,6 +33,7 @@ namespace CodeImp.DoomBuilder.Windows System.Windows.Forms.Label label1; System.Windows.Forms.GroupBox panelsettings; System.Windows.Forms.Label label4; + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MapOptionsForm)); this.examplelabel = new System.Windows.Forms.Label(); this.scriptcompiler = new System.Windows.Forms.ComboBox(); this.scriptcompilerlabel = new System.Windows.Forms.Label(); @@ -152,13 +153,11 @@ namespace CodeImp.DoomBuilder.Windows // label4 // label4.AutoSize = true; - label4.Location = new System.Drawing.Point(15, 190); + label4.Location = new System.Drawing.Point(14, 177); label4.Name = "label4"; - label4.Size = new System.Drawing.Size(312, 42); + label4.Size = new System.Drawing.Size(312, 56); label4.TabIndex = 17; - label4.Text = "Drag && drop resources to add them.\r\nDrag items to change order (lower items over" + - "ride higher items).\r\nGrayed items are loaded according to the game configuration" + - "."; + label4.Text = resources.GetString("label4.Text"); // // apply // @@ -200,7 +199,7 @@ namespace CodeImp.DoomBuilder.Windows // strictpatches // this.strictpatches.AutoSize = true; - this.strictpatches.Location = new System.Drawing.Point(15, 27); + this.strictpatches.Location = new System.Drawing.Point(14, 21); this.strictpatches.Name = "strictpatches"; this.strictpatches.Size = new System.Drawing.Size(351, 18); this.strictpatches.TabIndex = 20; @@ -212,7 +211,7 @@ namespace CodeImp.DoomBuilder.Windows this.datalocations.AllowDrop = true; this.datalocations.DialogOffset = new System.Drawing.Point(40, 20); this.datalocations.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.datalocations.Location = new System.Drawing.Point(15, 57); + this.datalocations.Location = new System.Drawing.Point(14, 44); this.datalocations.Name = "datalocations"; this.datalocations.Size = new System.Drawing.Size(368, 130); this.datalocations.TabIndex = 0; diff --git a/Source/Core/Windows/MapOptionsForm.resx b/Source/Core/Windows/MapOptionsForm.resx index 17bdcd9f..dd3caf31 100644 --- a/Source/Core/Windows/MapOptionsForm.resx +++ b/Source/Core/Windows/MapOptionsForm.resx @@ -132,4 +132,10 @@ False + + Drag && drop resources to add them. +Drag items to change order (lower items override higher items). +Use the context menu to cut, copy, paste or remove items. +Grayed items are loaded according to the game configuration. + \ No newline at end of file diff --git a/Source/Core/Windows/OpenMapOptionsForm.Designer.cs b/Source/Core/Windows/OpenMapOptionsForm.Designer.cs index ba459a50..b9efd613 100644 --- a/Source/Core/Windows/OpenMapOptionsForm.Designer.cs +++ b/Source/Core/Windows/OpenMapOptionsForm.Designer.cs @@ -32,6 +32,7 @@ namespace CodeImp.DoomBuilder.Windows System.Windows.Forms.Label label1; System.Windows.Forms.Label label2; System.Windows.Forms.Label label3; + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(OpenMapOptionsForm)); this.panelres = new System.Windows.Forms.GroupBox(); this.strictpatches = new System.Windows.Forms.CheckBox(); this.datalocations = new CodeImp.DoomBuilder.Controls.ResourceListEditor(); @@ -73,13 +74,11 @@ namespace CodeImp.DoomBuilder.Windows // label3 // label3.AutoSize = true; - label3.Location = new System.Drawing.Point(14, 191); + label3.Location = new System.Drawing.Point(14, 177); label3.Name = "label3"; - label3.Size = new System.Drawing.Size(312, 42); + label3.Size = new System.Drawing.Size(312, 56); label3.TabIndex = 17; - label3.Text = "Drag && drop resources to add them.\r\nDrag items to change order (lower items over" + - "ride higher items).\r\nGrayed items are loaded according to the game configuration" + - "."; + label3.Text = resources.GetString("label3.Text"); // // panelres // @@ -98,7 +97,7 @@ namespace CodeImp.DoomBuilder.Windows // strictpatches // this.strictpatches.AutoSize = true; - this.strictpatches.Location = new System.Drawing.Point(14, 27); + this.strictpatches.Location = new System.Drawing.Point(14, 21); this.strictpatches.Name = "strictpatches"; this.strictpatches.Size = new System.Drawing.Size(351, 18); this.strictpatches.TabIndex = 19; @@ -110,7 +109,7 @@ namespace CodeImp.DoomBuilder.Windows this.datalocations.AllowDrop = true; this.datalocations.DialogOffset = new System.Drawing.Point(40, 20); this.datalocations.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.datalocations.Location = new System.Drawing.Point(14, 58); + this.datalocations.Location = new System.Drawing.Point(14, 44); this.datalocations.Name = "datalocations"; this.datalocations.Size = new System.Drawing.Size(368, 127); this.datalocations.TabIndex = 0; @@ -215,7 +214,6 @@ namespace CodeImp.DoomBuilder.Windows this.MaximizeBox = false; this.MinimizeBox = false; this.Name = "OpenMapOptionsForm"; - this.Opacity = 0; this.ShowIcon = false; this.ShowInTaskbar = false; this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent; diff --git a/Source/Core/Windows/OpenMapOptionsForm.resx b/Source/Core/Windows/OpenMapOptionsForm.resx index 3907cb47..cc710259 100644 --- a/Source/Core/Windows/OpenMapOptionsForm.resx +++ b/Source/Core/Windows/OpenMapOptionsForm.resx @@ -129,4 +129,10 @@ False + + Drag && drop resources to add them. +Drag items to change order (lower items override higher items). +Use the context menu to cut, copy, paste or remove items. +Grayed items are loaded according to the game configuration. + \ No newline at end of file