make it actually work, except for half the export
This commit is contained in:
263
OpenRA.TilesetBuilder/Form1.Designer.cs
generated
263
OpenRA.TilesetBuilder/Form1.Designer.cs
generated
@@ -28,34 +28,289 @@
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
private void InitializeComponent()
|
private void InitializeComponent()
|
||||||
{
|
{
|
||||||
|
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Form1));
|
||||||
|
this.toolStripContainer1 = new System.Windows.Forms.ToolStripContainer();
|
||||||
|
this.panel1 = new System.Windows.Forms.Panel();
|
||||||
this.surface1 = new OpenRA.TilesetBuilder.Surface();
|
this.surface1 = new OpenRA.TilesetBuilder.Surface();
|
||||||
|
this.toolStrip1 = new System.Windows.Forms.ToolStrip();
|
||||||
|
this.toolStripButton2 = new System.Windows.Forms.ToolStripButton();
|
||||||
|
this.toolStripButton14 = new System.Windows.Forms.ToolStripButton();
|
||||||
|
this.toolStripButton3 = new System.Windows.Forms.ToolStripButton();
|
||||||
|
this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();
|
||||||
|
this.toolStripButton4 = new System.Windows.Forms.ToolStripButton();
|
||||||
|
this.toolStripButton12 = new System.Windows.Forms.ToolStripButton();
|
||||||
|
this.toolStripButton11 = new System.Windows.Forms.ToolStripButton();
|
||||||
|
this.toolStripButton10 = new System.Windows.Forms.ToolStripButton();
|
||||||
|
this.toolStripButton9 = new System.Windows.Forms.ToolStripButton();
|
||||||
|
this.toolStripButton8 = new System.Windows.Forms.ToolStripButton();
|
||||||
|
this.toolStripButton7 = new System.Windows.Forms.ToolStripButton();
|
||||||
|
this.toolStripButton6 = new System.Windows.Forms.ToolStripButton();
|
||||||
|
this.toolStripButton5 = new System.Windows.Forms.ToolStripButton();
|
||||||
|
this.toolStripButton13 = new System.Windows.Forms.ToolStripButton();
|
||||||
|
this.toolStripButton1 = new System.Windows.Forms.ToolStripButton();
|
||||||
|
this.toolStripContainer1.ContentPanel.SuspendLayout();
|
||||||
|
this.toolStripContainer1.TopToolStripPanel.SuspendLayout();
|
||||||
|
this.toolStripContainer1.SuspendLayout();
|
||||||
|
this.panel1.SuspendLayout();
|
||||||
|
this.toolStrip1.SuspendLayout();
|
||||||
this.SuspendLayout();
|
this.SuspendLayout();
|
||||||
//
|
//
|
||||||
|
// toolStripContainer1
|
||||||
|
//
|
||||||
|
//
|
||||||
|
// toolStripContainer1.ContentPanel
|
||||||
|
//
|
||||||
|
this.toolStripContainer1.ContentPanel.Controls.Add(this.panel1);
|
||||||
|
this.toolStripContainer1.ContentPanel.Size = new System.Drawing.Size(745, 571);
|
||||||
|
this.toolStripContainer1.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||||
|
this.toolStripContainer1.Location = new System.Drawing.Point(0, 0);
|
||||||
|
this.toolStripContainer1.Name = "toolStripContainer1";
|
||||||
|
this.toolStripContainer1.Size = new System.Drawing.Size(745, 596);
|
||||||
|
this.toolStripContainer1.TabIndex = 0;
|
||||||
|
this.toolStripContainer1.Text = "toolStripContainer1";
|
||||||
|
//
|
||||||
|
// toolStripContainer1.TopToolStripPanel
|
||||||
|
//
|
||||||
|
this.toolStripContainer1.TopToolStripPanel.Controls.Add(this.toolStrip1);
|
||||||
|
//
|
||||||
|
// panel1
|
||||||
|
//
|
||||||
|
this.panel1.AutoScroll = true;
|
||||||
|
this.panel1.Controls.Add(this.surface1);
|
||||||
|
this.panel1.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||||
|
this.panel1.Location = new System.Drawing.Point(0, 0);
|
||||||
|
this.panel1.Name = "panel1";
|
||||||
|
this.panel1.Size = new System.Drawing.Size(745, 571);
|
||||||
|
this.panel1.TabIndex = 0;
|
||||||
|
//
|
||||||
// surface1
|
// surface1
|
||||||
//
|
//
|
||||||
this.surface1.BackColor = System.Drawing.Color.Black;
|
this.surface1.BackColor = System.Drawing.Color.Black;
|
||||||
this.surface1.Dock = System.Windows.Forms.DockStyle.Fill;
|
|
||||||
this.surface1.Location = new System.Drawing.Point(0, 0);
|
this.surface1.Location = new System.Drawing.Point(0, 0);
|
||||||
this.surface1.Name = "surface1";
|
this.surface1.Name = "surface1";
|
||||||
this.surface1.Size = new System.Drawing.Size(745, 596);
|
this.surface1.Size = new System.Drawing.Size(598, 372);
|
||||||
this.surface1.TabIndex = 0;
|
this.surface1.TabIndex = 2;
|
||||||
this.surface1.Text = "surface1";
|
this.surface1.Text = "surface1";
|
||||||
//
|
//
|
||||||
|
// toolStrip1
|
||||||
|
//
|
||||||
|
this.toolStrip1.Dock = System.Windows.Forms.DockStyle.None;
|
||||||
|
this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||||
|
this.toolStripButton2,
|
||||||
|
this.toolStripButton14,
|
||||||
|
this.toolStripButton3,
|
||||||
|
this.toolStripSeparator1,
|
||||||
|
this.toolStripButton4,
|
||||||
|
this.toolStripButton12,
|
||||||
|
this.toolStripButton11,
|
||||||
|
this.toolStripButton10,
|
||||||
|
this.toolStripButton9,
|
||||||
|
this.toolStripButton8,
|
||||||
|
this.toolStripButton7,
|
||||||
|
this.toolStripButton6,
|
||||||
|
this.toolStripButton5,
|
||||||
|
this.toolStripButton13,
|
||||||
|
this.toolStripButton1});
|
||||||
|
this.toolStrip1.Location = new System.Drawing.Point(3, 0);
|
||||||
|
this.toolStrip1.Name = "toolStrip1";
|
||||||
|
this.toolStrip1.Size = new System.Drawing.Size(602, 25);
|
||||||
|
this.toolStrip1.TabIndex = 0;
|
||||||
|
//
|
||||||
|
// toolStripButton2
|
||||||
|
//
|
||||||
|
this.toolStripButton2.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton2.Image")));
|
||||||
|
this.toolStripButton2.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||||
|
this.toolStripButton2.Name = "toolStripButton2";
|
||||||
|
this.toolStripButton2.Size = new System.Drawing.Size(51, 22);
|
||||||
|
this.toolStripButton2.Text = "Save";
|
||||||
|
this.toolStripButton2.Click += new System.EventHandler(this.SaveClicked);
|
||||||
|
//
|
||||||
|
// toolStripButton14
|
||||||
|
//
|
||||||
|
this.toolStripButton14.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton14.Image")));
|
||||||
|
this.toolStripButton14.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||||
|
this.toolStripButton14.Name = "toolStripButton14";
|
||||||
|
this.toolStripButton14.Size = new System.Drawing.Size(60, 22);
|
||||||
|
this.toolStripButton14.Text = "Export";
|
||||||
|
this.toolStripButton14.Click += new System.EventHandler(this.ExportClicked);
|
||||||
|
//
|
||||||
|
// toolStripButton3
|
||||||
|
//
|
||||||
|
this.toolStripButton3.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton3.Image")));
|
||||||
|
this.toolStripButton3.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||||
|
this.toolStripButton3.Name = "toolStripButton3";
|
||||||
|
this.toolStripButton3.Size = new System.Drawing.Size(104, 22);
|
||||||
|
this.toolStripButton3.Text = "Show Overlays";
|
||||||
|
this.toolStripButton3.Click += new System.EventHandler(this.ShowOverlaysClicked);
|
||||||
|
//
|
||||||
|
// toolStripSeparator1
|
||||||
|
//
|
||||||
|
this.toolStripSeparator1.Name = "toolStripSeparator1";
|
||||||
|
this.toolStripSeparator1.Size = new System.Drawing.Size(6, 25);
|
||||||
|
//
|
||||||
|
// toolStripButton4
|
||||||
|
//
|
||||||
|
this.toolStripButton4.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
|
||||||
|
this.toolStripButton4.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton4.Image")));
|
||||||
|
this.toolStripButton4.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||||
|
this.toolStripButton4.Name = "toolStripButton4";
|
||||||
|
this.toolStripButton4.Size = new System.Drawing.Size(25, 22);
|
||||||
|
this.toolStripButton4.Tag = "0";
|
||||||
|
this.toolStripButton4.Text = "tt0";
|
||||||
|
this.toolStripButton4.Click += new System.EventHandler(this.TerrainTypeSelectorClicked);
|
||||||
|
//
|
||||||
|
// toolStripButton12
|
||||||
|
//
|
||||||
|
this.toolStripButton12.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
|
||||||
|
this.toolStripButton12.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton12.Image")));
|
||||||
|
this.toolStripButton12.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||||
|
this.toolStripButton12.Name = "toolStripButton12";
|
||||||
|
this.toolStripButton12.Size = new System.Drawing.Size(25, 22);
|
||||||
|
this.toolStripButton12.Tag = "1";
|
||||||
|
this.toolStripButton12.Text = "tt1";
|
||||||
|
this.toolStripButton12.Click += new System.EventHandler(this.TerrainTypeSelectorClicked);
|
||||||
|
//
|
||||||
|
// toolStripButton11
|
||||||
|
//
|
||||||
|
this.toolStripButton11.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
|
||||||
|
this.toolStripButton11.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton11.Image")));
|
||||||
|
this.toolStripButton11.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||||
|
this.toolStripButton11.Name = "toolStripButton11";
|
||||||
|
this.toolStripButton11.Size = new System.Drawing.Size(25, 22);
|
||||||
|
this.toolStripButton11.Tag = "2";
|
||||||
|
this.toolStripButton11.Text = "tt2";
|
||||||
|
this.toolStripButton11.Click += new System.EventHandler(this.TerrainTypeSelectorClicked);
|
||||||
|
//
|
||||||
|
// toolStripButton10
|
||||||
|
//
|
||||||
|
this.toolStripButton10.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
|
||||||
|
this.toolStripButton10.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton10.Image")));
|
||||||
|
this.toolStripButton10.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||||
|
this.toolStripButton10.Name = "toolStripButton10";
|
||||||
|
this.toolStripButton10.Size = new System.Drawing.Size(25, 22);
|
||||||
|
this.toolStripButton10.Tag = "3";
|
||||||
|
this.toolStripButton10.Text = "tt3";
|
||||||
|
this.toolStripButton10.Click += new System.EventHandler(this.TerrainTypeSelectorClicked);
|
||||||
|
//
|
||||||
|
// toolStripButton9
|
||||||
|
//
|
||||||
|
this.toolStripButton9.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
|
||||||
|
this.toolStripButton9.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton9.Image")));
|
||||||
|
this.toolStripButton9.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||||
|
this.toolStripButton9.Name = "toolStripButton9";
|
||||||
|
this.toolStripButton9.Size = new System.Drawing.Size(25, 22);
|
||||||
|
this.toolStripButton9.Tag = "4";
|
||||||
|
this.toolStripButton9.Text = "tt4";
|
||||||
|
this.toolStripButton9.Click += new System.EventHandler(this.TerrainTypeSelectorClicked);
|
||||||
|
//
|
||||||
|
// toolStripButton8
|
||||||
|
//
|
||||||
|
this.toolStripButton8.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
|
||||||
|
this.toolStripButton8.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton8.Image")));
|
||||||
|
this.toolStripButton8.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||||
|
this.toolStripButton8.Name = "toolStripButton8";
|
||||||
|
this.toolStripButton8.Size = new System.Drawing.Size(25, 22);
|
||||||
|
this.toolStripButton8.Tag = "5";
|
||||||
|
this.toolStripButton8.Text = "tt5";
|
||||||
|
this.toolStripButton8.Click += new System.EventHandler(this.TerrainTypeSelectorClicked);
|
||||||
|
//
|
||||||
|
// toolStripButton7
|
||||||
|
//
|
||||||
|
this.toolStripButton7.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
|
||||||
|
this.toolStripButton7.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton7.Image")));
|
||||||
|
this.toolStripButton7.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||||
|
this.toolStripButton7.Name = "toolStripButton7";
|
||||||
|
this.toolStripButton7.Size = new System.Drawing.Size(25, 22);
|
||||||
|
this.toolStripButton7.Tag = "6";
|
||||||
|
this.toolStripButton7.Text = "tt6";
|
||||||
|
this.toolStripButton7.Click += new System.EventHandler(this.TerrainTypeSelectorClicked);
|
||||||
|
//
|
||||||
|
// toolStripButton6
|
||||||
|
//
|
||||||
|
this.toolStripButton6.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
|
||||||
|
this.toolStripButton6.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton6.Image")));
|
||||||
|
this.toolStripButton6.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||||
|
this.toolStripButton6.Name = "toolStripButton6";
|
||||||
|
this.toolStripButton6.Size = new System.Drawing.Size(25, 22);
|
||||||
|
this.toolStripButton6.Tag = "7";
|
||||||
|
this.toolStripButton6.Text = "tt7";
|
||||||
|
this.toolStripButton6.Click += new System.EventHandler(this.TerrainTypeSelectorClicked);
|
||||||
|
//
|
||||||
|
// toolStripButton5
|
||||||
|
//
|
||||||
|
this.toolStripButton5.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
|
||||||
|
this.toolStripButton5.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton5.Image")));
|
||||||
|
this.toolStripButton5.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||||
|
this.toolStripButton5.Name = "toolStripButton5";
|
||||||
|
this.toolStripButton5.Size = new System.Drawing.Size(25, 22);
|
||||||
|
this.toolStripButton5.Tag = "8";
|
||||||
|
this.toolStripButton5.Text = "tt8";
|
||||||
|
this.toolStripButton5.Click += new System.EventHandler(this.TerrainTypeSelectorClicked);
|
||||||
|
//
|
||||||
|
// toolStripButton13
|
||||||
|
//
|
||||||
|
this.toolStripButton13.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
|
||||||
|
this.toolStripButton13.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton13.Image")));
|
||||||
|
this.toolStripButton13.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||||
|
this.toolStripButton13.Name = "toolStripButton13";
|
||||||
|
this.toolStripButton13.Size = new System.Drawing.Size(25, 22);
|
||||||
|
this.toolStripButton13.Tag = "9";
|
||||||
|
this.toolStripButton13.Text = "tt9";
|
||||||
|
//
|
||||||
|
// toolStripButton1
|
||||||
|
//
|
||||||
|
this.toolStripButton1.Checked = true;
|
||||||
|
this.toolStripButton1.CheckState = System.Windows.Forms.CheckState.Checked;
|
||||||
|
this.toolStripButton1.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
|
||||||
|
this.toolStripButton1.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton1.Image")));
|
||||||
|
this.toolStripButton1.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||||
|
this.toolStripButton1.Name = "toolStripButton1";
|
||||||
|
this.toolStripButton1.Size = new System.Drawing.Size(88, 22);
|
||||||
|
this.toolStripButton1.Text = "Template Tool";
|
||||||
|
this.toolStripButton1.Click += new System.EventHandler(this.TerrainTypeSelectorClicked);
|
||||||
|
//
|
||||||
// Form1
|
// Form1
|
||||||
//
|
//
|
||||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||||
this.ClientSize = new System.Drawing.Size(745, 596);
|
this.ClientSize = new System.Drawing.Size(745, 596);
|
||||||
this.Controls.Add(this.surface1);
|
this.Controls.Add(this.toolStripContainer1);
|
||||||
this.Name = "Form1";
|
this.Name = "Form1";
|
||||||
this.Text = "Tileset Builder";
|
this.Text = "Tileset Builder";
|
||||||
|
this.toolStripContainer1.ContentPanel.ResumeLayout(false);
|
||||||
|
this.toolStripContainer1.TopToolStripPanel.ResumeLayout(false);
|
||||||
|
this.toolStripContainer1.TopToolStripPanel.PerformLayout();
|
||||||
|
this.toolStripContainer1.ResumeLayout(false);
|
||||||
|
this.toolStripContainer1.PerformLayout();
|
||||||
|
this.panel1.ResumeLayout(false);
|
||||||
|
this.toolStrip1.ResumeLayout(false);
|
||||||
|
this.toolStrip1.PerformLayout();
|
||||||
this.ResumeLayout(false);
|
this.ResumeLayout(false);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
private System.Windows.Forms.ToolStripContainer toolStripContainer1;
|
||||||
|
private System.Windows.Forms.Panel panel1;
|
||||||
private Surface surface1;
|
private Surface surface1;
|
||||||
|
private System.Windows.Forms.ToolStrip toolStrip1;
|
||||||
|
private System.Windows.Forms.ToolStripButton toolStripButton1;
|
||||||
|
private System.Windows.Forms.ToolStripButton toolStripButton2;
|
||||||
|
private System.Windows.Forms.ToolStripSeparator toolStripSeparator1;
|
||||||
|
private System.Windows.Forms.ToolStripButton toolStripButton3;
|
||||||
|
private System.Windows.Forms.ToolStripButton toolStripButton4;
|
||||||
|
private System.Windows.Forms.ToolStripButton toolStripButton12;
|
||||||
|
private System.Windows.Forms.ToolStripButton toolStripButton11;
|
||||||
|
private System.Windows.Forms.ToolStripButton toolStripButton10;
|
||||||
|
private System.Windows.Forms.ToolStripButton toolStripButton9;
|
||||||
|
private System.Windows.Forms.ToolStripButton toolStripButton8;
|
||||||
|
private System.Windows.Forms.ToolStripButton toolStripButton7;
|
||||||
|
private System.Windows.Forms.ToolStripButton toolStripButton6;
|
||||||
|
private System.Windows.Forms.ToolStripButton toolStripButton5;
|
||||||
|
private System.Windows.Forms.ToolStripButton toolStripButton13;
|
||||||
|
private System.Windows.Forms.ToolStripButton toolStripButton14;
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,21 +1,117 @@
|
|||||||
using System.Collections.Generic;
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
using System.Drawing;
|
using System.Drawing;
|
||||||
using System.Windows.Forms;
|
using System.IO;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
|
using System.Windows.Forms;
|
||||||
|
using System.Xml;
|
||||||
|
|
||||||
namespace OpenRA.TilesetBuilder
|
namespace OpenRA.TilesetBuilder
|
||||||
{
|
{
|
||||||
public partial class Form1 : Form
|
public partial class Form1 : Form
|
||||||
{
|
{
|
||||||
|
string srcfile;
|
||||||
public Form1( string src )
|
public Form1( string src )
|
||||||
{
|
{
|
||||||
|
srcfile = src;
|
||||||
|
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
|
|
||||||
surface1.Image = (Bitmap)Image.FromFile(src);
|
surface1.Image = (Bitmap)Image.FromFile(src);
|
||||||
surface1.TerrainTypes = new int[surface1.Image.Width / 24, surface1.Image.Height / 24]; /* all passable by default */
|
surface1.TerrainTypes = new int[surface1.Image.Width / 24, surface1.Image.Height / 24]; /* all passable by default */
|
||||||
surface1.Templates = new List<Template>();
|
surface1.Templates = new List<Template>();
|
||||||
|
surface1.Size = surface1.Image.Size;
|
||||||
|
|
||||||
/* todo: load stuff from previous session */
|
/* todo: load stuff from previous session */
|
||||||
|
Load();
|
||||||
|
}
|
||||||
|
|
||||||
|
public new void Load()
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
var doc = new XmlDocument();
|
||||||
|
doc.Load(Path.ChangeExtension(srcfile, "tsx"));
|
||||||
|
|
||||||
|
foreach (var e in doc.SelectNodes("//terrain").OfType<XmlElement>())
|
||||||
|
surface1.TerrainTypes[
|
||||||
|
int.Parse(e.GetAttribute("x")),
|
||||||
|
int.Parse(e.GetAttribute("y"))] = int.Parse(e.GetAttribute("t"));
|
||||||
|
|
||||||
|
foreach (var e in doc.SelectNodes("//template").OfType<XmlElement>())
|
||||||
|
surface1.Templates.Add(new Template
|
||||||
|
{
|
||||||
|
Cells = e.SelectNodes("./cell").OfType<XmlElement>()
|
||||||
|
.Select(f => new int2(int.Parse(f.GetAttribute("x")), int.Parse(f.GetAttribute("y"))))
|
||||||
|
.ToDictionary(a => a, a => true)
|
||||||
|
});
|
||||||
|
}
|
||||||
|
catch { }
|
||||||
|
}
|
||||||
|
|
||||||
|
public void Save()
|
||||||
|
{
|
||||||
|
using (var w = XmlWriter.Create(Path.ChangeExtension(srcfile, "tsx"),
|
||||||
|
new XmlWriterSettings { Indent = true, IndentChars = " " }))
|
||||||
|
{
|
||||||
|
w.WriteStartDocument();
|
||||||
|
w.WriteStartElement("tileset");
|
||||||
|
|
||||||
|
for( var i = 0; i <= surface1.TerrainTypes.GetUpperBound(0); i++ )
|
||||||
|
for( var j = 0; j <= surface1.TerrainTypes.GetUpperBound(1); j++ )
|
||||||
|
if (surface1.TerrainTypes[i, j] != 0)
|
||||||
|
{
|
||||||
|
w.WriteStartElement("terrain");
|
||||||
|
w.WriteAttributeString("x", i.ToString());
|
||||||
|
w.WriteAttributeString("y", j.ToString());
|
||||||
|
w.WriteAttributeString("t", surface1.TerrainTypes[i, j].ToString());
|
||||||
|
}
|
||||||
|
|
||||||
|
foreach (var t in surface1.Templates)
|
||||||
|
{
|
||||||
|
w.WriteStartElement("template");
|
||||||
|
|
||||||
|
foreach (var c in t.Cells.Keys)
|
||||||
|
{
|
||||||
|
w.WriteStartElement("cell");
|
||||||
|
w.WriteAttributeString("x", c.X.ToString());
|
||||||
|
w.WriteAttributeString("y", c.Y.ToString());
|
||||||
|
w.WriteEndElement();
|
||||||
|
}
|
||||||
|
|
||||||
|
w.WriteEndElement();
|
||||||
|
}
|
||||||
|
|
||||||
|
w.WriteEndElement();
|
||||||
|
w.WriteEndDocument();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void TerrainTypeSelectorClicked(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
surface1.InputMode = (sender as ToolStripButton).Tag as string;
|
||||||
|
foreach (var tsb in (sender as ToolStripButton).Owner.Items.OfType<ToolStripButton>())
|
||||||
|
tsb.Checked = false;
|
||||||
|
(sender as ToolStripButton).Checked = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
void SaveClicked(object sender, EventArgs e) { Save(); }
|
||||||
|
void ShowOverlaysClicked(object sender, EventArgs e) { surface1.ShowTerrainTypes ^= true; }
|
||||||
|
|
||||||
|
void ExportClicked(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
var dir = Path.Combine(Path.GetDirectoryName(srcfile), "output");
|
||||||
|
Directory.CreateDirectory(dir);
|
||||||
|
|
||||||
|
// export palette (use the embedded palette)
|
||||||
|
var p = surface1.Image.Palette.Entries.ToList();
|
||||||
|
while (p.Count < 256) p.Add(Color.Black); // pad the palette out with extra blacks
|
||||||
|
var paletteData = p.Take(256).SelectMany(c => new byte[] { (byte)(c.R >> 2), (byte)(c.G >> 2), (byte)(c.B >> 2) }).ToArray();
|
||||||
|
File.WriteAllBytes(Path.Combine(dir, "terrain.pal"), paletteData);
|
||||||
|
|
||||||
|
// todo: write out a TMP for each template
|
||||||
|
// todo: write out a tileset definition
|
||||||
|
// todo: write out a templates ini
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -29,6 +125,8 @@ namespace OpenRA.TilesetBuilder
|
|||||||
public Bitmap Image;
|
public Bitmap Image;
|
||||||
public int[,] TerrainTypes;
|
public int[,] TerrainTypes;
|
||||||
public List<Template> Templates = new List<Template>();
|
public List<Template> Templates = new List<Template>();
|
||||||
|
public bool ShowTerrainTypes = true;
|
||||||
|
public string InputMode;
|
||||||
|
|
||||||
Template CurrentTemplate;
|
Template CurrentTemplate;
|
||||||
|
|
||||||
@@ -51,6 +149,15 @@ namespace OpenRA.TilesetBuilder
|
|||||||
e.Graphics.DrawImageUnscaled(Image, 0, 0);
|
e.Graphics.DrawImageUnscaled(Image, 0, 0);
|
||||||
|
|
||||||
/* draw terrain type overlays */
|
/* draw terrain type overlays */
|
||||||
|
if (ShowTerrainTypes)
|
||||||
|
for (var i = 0; i <= TerrainTypes.GetUpperBound(0); i++)
|
||||||
|
for (var j = 0; j <= TerrainTypes.GetUpperBound(1); j++)
|
||||||
|
if (TerrainTypes[i, j] != 0)
|
||||||
|
{
|
||||||
|
e.Graphics.FillRectangle(Brushes.Black, 24 * i + 10, 24 * j + 10, 10, 10);
|
||||||
|
e.Graphics.DrawString(TerrainTypes[i, j].ToString(),
|
||||||
|
Font, Brushes.LimeGreen, 24 * i + 10, 24 * j + 10);
|
||||||
|
}
|
||||||
|
|
||||||
/* draw template outlines */
|
/* draw template outlines */
|
||||||
foreach (var t in Templates)
|
foreach (var t in Templates)
|
||||||
@@ -76,19 +183,27 @@ namespace OpenRA.TilesetBuilder
|
|||||||
{
|
{
|
||||||
var pos = new int2( e.X / 24, e.Y / 24 );
|
var pos = new int2( e.X / 24, e.Y / 24 );
|
||||||
|
|
||||||
if (e.Button == MouseButtons.Left)
|
if (InputMode == null)
|
||||||
{
|
{
|
||||||
CurrentTemplate = Templates.FirstOrDefault(t => t.Cells.ContainsKey(pos));
|
if (e.Button == MouseButtons.Left)
|
||||||
if (CurrentTemplate == null)
|
{
|
||||||
Templates.Add(CurrentTemplate = new Template { Cells = new Dictionary<int2, bool> { { pos, true } } });
|
CurrentTemplate = Templates.FirstOrDefault(t => t.Cells.ContainsKey(pos));
|
||||||
|
if (CurrentTemplate == null)
|
||||||
|
Templates.Add(CurrentTemplate = new Template { Cells = new Dictionary<int2, bool> { { pos, true } } });
|
||||||
|
|
||||||
Invalidate();
|
Invalidate();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (e.Button == MouseButtons.Right)
|
||||||
|
{
|
||||||
|
Templates.RemoveAll(t => t.Cells.ContainsKey(pos));
|
||||||
|
CurrentTemplate = null;
|
||||||
|
Invalidate();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
else
|
||||||
if (e.Button == MouseButtons.Right)
|
|
||||||
{
|
{
|
||||||
Templates.RemoveAll(t => t.Cells.ContainsKey(pos));
|
TerrainTypes[pos.X, pos.Y] = int.Parse(InputMode);
|
||||||
CurrentTemplate = null;
|
|
||||||
Invalidate();
|
Invalidate();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -97,12 +212,15 @@ namespace OpenRA.TilesetBuilder
|
|||||||
{
|
{
|
||||||
var pos = new int2(e.X / 24, e.Y / 24);
|
var pos = new int2(e.X / 24, e.Y / 24);
|
||||||
|
|
||||||
if (e.Button == MouseButtons.Left && CurrentTemplate != null)
|
if (InputMode == null)
|
||||||
{
|
{
|
||||||
if (!CurrentTemplate.Cells.ContainsKey(pos))
|
if (e.Button == MouseButtons.Left && CurrentTemplate != null)
|
||||||
{
|
{
|
||||||
CurrentTemplate.Cells[pos] = true;
|
if (!CurrentTemplate.Cells.ContainsKey(pos))
|
||||||
Invalidate();
|
{
|
||||||
|
CurrentTemplate.Cells[pos] = true;
|
||||||
|
Invalidate();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -117,4 +117,218 @@
|
|||||||
<resheader name="writer">
|
<resheader name="writer">
|
||||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
</resheader>
|
</resheader>
|
||||||
|
<metadata name="toolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>17, 17</value>
|
||||||
|
</metadata>
|
||||||
|
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||||
|
<data name="toolStripButton2.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||||
|
YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAgxJREFUOE+lkvtL
|
||||||
|
U2EYx+0PEbtpFwnBKPGKiJImGP0gYhIYs1E5GF5gIxkpA00JRSmMEF0ohMh+GaRWYlqabMVcNdS2QpaI
|
||||||
|
VqiDIYhk397vA6fXhCjyhYdzeM/5fp7vczkAdeL2cwho7v/wWzT1zcN+Pwhr51uY2/y41PQaF+wzKKiZ
|
||||||
|
QvaN58g0jyLd5KEUcQbg+84P/Cm2tncQjW3j68YWIqubCC3FcOJc478BAuGoZM6zvoRnakXEruEIjhc4
|
||||||
|
/g5gZop9c+voGAyLbQIfeBZxLL9BA1jzXvuGbWamuKh+GmmVbswE19A59FEBbmoAG7YbsLtm2mZmiml9
|
||||||
|
cvabNDwpz6YB7LYBoMXCumkJr7LOmnnHzBQ/9X2Bo2cOibm1GsBREbAQiYmw/8lnuCeWkVzcgnZlnw1j
|
||||||
|
3HV/wuNXK6i/9x5Hc6wawDlTXHbLJ+LZUBQPRyKwdQdxutwl1h+NLXHh5Ht1ewBHsiwawCW57HyDAfWR
|
||||||
|
dvl0uhZQ1eqX8aVc7EKLqrum651ATLf9OJx5XQM4KmY0xPzZ0hFAiQJnXB0WwME0E3IsL5B17ZlADqWb
|
||||||
|
NYDrOepdlcysmTWWOrxqbceRWtaLk0VO1XW72D5Vckd2gMBfq8zdpmUG62NJvKM4+XyziDk24xmfWoGE
|
||||||
|
s1c0gHPmbrPTpHNJKOCo2G1mZs20zcwUJ5yp1AB5+8/zEwgF5GMVDxh4AAAAAElFTkSuQmCC
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="toolStripButton14.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||||
|
YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAgxJREFUOE+lkvtL
|
||||||
|
U2EYx+0PEbtpFwnBKPGKiJImGP0gYhIYs1E5GF5gIxkpA00JRSmMEF0ohMh+GaRWYlqabMVcNdS2QpaI
|
||||||
|
VqiDIYhk397vA6fXhCjyhYdzeM/5fp7vczkAdeL2cwho7v/wWzT1zcN+Pwhr51uY2/y41PQaF+wzKKiZ
|
||||||
|
QvaN58g0jyLd5KEUcQbg+84P/Cm2tncQjW3j68YWIqubCC3FcOJc478BAuGoZM6zvoRnakXEruEIjhc4
|
||||||
|
/g5gZop9c+voGAyLbQIfeBZxLL9BA1jzXvuGbWamuKh+GmmVbswE19A59FEBbmoAG7YbsLtm2mZmiml9
|
||||||
|
cvabNDwpz6YB7LYBoMXCumkJr7LOmnnHzBQ/9X2Bo2cOibm1GsBREbAQiYmw/8lnuCeWkVzcgnZlnw1j
|
||||||
|
3HV/wuNXK6i/9x5Hc6wawDlTXHbLJ+LZUBQPRyKwdQdxutwl1h+NLXHh5Ht1ewBHsiwawCW57HyDAfWR
|
||||||
|
dvl0uhZQ1eqX8aVc7EKLqrum651ATLf9OJx5XQM4KmY0xPzZ0hFAiQJnXB0WwME0E3IsL5B17ZlADqWb
|
||||||
|
NYDrOepdlcysmTWWOrxqbceRWtaLk0VO1XW72D5Vckd2gMBfq8zdpmUG62NJvKM4+XyziDk24xmfWoGE
|
||||||
|
s1c0gHPmbrPTpHNJKOCo2G1mZs20zcwUJ5yp1AB5+8/zEwgF5GMVDxh4AAAAAElFTkSuQmCC
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="toolStripButton3.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||||
|
YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAgxJREFUOE+lkvtL
|
||||||
|
U2EYx+0PEbtpFwnBKPGKiJImGP0gYhIYs1E5GF5gIxkpA00JRSmMEF0ohMh+GaRWYlqabMVcNdS2QpaI
|
||||||
|
VqiDIYhk397vA6fXhCjyhYdzeM/5fp7vczkAdeL2cwho7v/wWzT1zcN+Pwhr51uY2/y41PQaF+wzKKiZ
|
||||||
|
QvaN58g0jyLd5KEUcQbg+84P/Cm2tncQjW3j68YWIqubCC3FcOJc478BAuGoZM6zvoRnakXEruEIjhc4
|
||||||
|
/g5gZop9c+voGAyLbQIfeBZxLL9BA1jzXvuGbWamuKh+GmmVbswE19A59FEBbmoAG7YbsLtm2mZmiml9
|
||||||
|
cvabNDwpz6YB7LYBoMXCumkJr7LOmnnHzBQ/9X2Bo2cOibm1GsBREbAQiYmw/8lnuCeWkVzcgnZlnw1j
|
||||||
|
3HV/wuNXK6i/9x5Hc6wawDlTXHbLJ+LZUBQPRyKwdQdxutwl1h+NLXHh5Ht1ewBHsiwawCW57HyDAfWR
|
||||||
|
dvl0uhZQ1eqX8aVc7EKLqrum651ATLf9OJx5XQM4KmY0xPzZ0hFAiQJnXB0WwME0E3IsL5B17ZlADqWb
|
||||||
|
NYDrOepdlcysmTWWOrxqbceRWtaLk0VO1XW72D5Vckd2gMBfq8zdpmUG62NJvKM4+XyziDk24xmfWoGE
|
||||||
|
s1c0gHPmbrPTpHNJKOCo2G1mZs20zcwUJ5yp1AB5+8/zEwgF5GMVDxh4AAAAAElFTkSuQmCC
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="toolStripButton4.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||||
|
YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAgxJREFUOE+lkvtL
|
||||||
|
U2EYx+0PEbtpFwnBKPGKiJImGP0gYhIYs1E5GF5gIxkpA00JRSmMEF0ohMh+GaRWYlqabMVcNdS2QpaI
|
||||||
|
VqiDIYhk397vA6fXhCjyhYdzeM/5fp7vczkAdeL2cwho7v/wWzT1zcN+Pwhr51uY2/y41PQaF+wzKKiZ
|
||||||
|
QvaN58g0jyLd5KEUcQbg+84P/Cm2tncQjW3j68YWIqubCC3FcOJc478BAuGoZM6zvoRnakXEruEIjhc4
|
||||||
|
/g5gZop9c+voGAyLbQIfeBZxLL9BA1jzXvuGbWamuKh+GmmVbswE19A59FEBbmoAG7YbsLtm2mZmiml9
|
||||||
|
cvabNDwpz6YB7LYBoMXCumkJr7LOmnnHzBQ/9X2Bo2cOibm1GsBREbAQiYmw/8lnuCeWkVzcgnZlnw1j
|
||||||
|
3HV/wuNXK6i/9x5Hc6wawDlTXHbLJ+LZUBQPRyKwdQdxutwl1h+NLXHh5Ht1ewBHsiwawCW57HyDAfWR
|
||||||
|
dvl0uhZQ1eqX8aVc7EKLqrum651ATLf9OJx5XQM4KmY0xPzZ0hFAiQJnXB0WwME0E3IsL5B17ZlADqWb
|
||||||
|
NYDrOepdlcysmTWWOrxqbceRWtaLk0VO1XW72D5Vckd2gMBfq8zdpmUG62NJvKM4+XyziDk24xmfWoGE
|
||||||
|
s1c0gHPmbrPTpHNJKOCo2G1mZs20zcwUJ5yp1AB5+8/zEwgF5GMVDxh4AAAAAElFTkSuQmCC
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="toolStripButton12.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||||
|
YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAgxJREFUOE+lkvtL
|
||||||
|
U2EYx+0PEbtpFwnBKPGKiJImGP0gYhIYs1E5GF5gIxkpA00JRSmMEF0ohMh+GaRWYlqabMVcNdS2QpaI
|
||||||
|
VqiDIYhk397vA6fXhCjyhYdzeM/5fp7vczkAdeL2cwho7v/wWzT1zcN+Pwhr51uY2/y41PQaF+wzKKiZ
|
||||||
|
QvaN58g0jyLd5KEUcQbg+84P/Cm2tncQjW3j68YWIqubCC3FcOJc478BAuGoZM6zvoRnakXEruEIjhc4
|
||||||
|
/g5gZop9c+voGAyLbQIfeBZxLL9BA1jzXvuGbWamuKh+GmmVbswE19A59FEBbmoAG7YbsLtm2mZmiml9
|
||||||
|
cvabNDwpz6YB7LYBoMXCumkJr7LOmnnHzBQ/9X2Bo2cOibm1GsBREbAQiYmw/8lnuCeWkVzcgnZlnw1j
|
||||||
|
3HV/wuNXK6i/9x5Hc6wawDlTXHbLJ+LZUBQPRyKwdQdxutwl1h+NLXHh5Ht1ewBHsiwawCW57HyDAfWR
|
||||||
|
dvl0uhZQ1eqX8aVc7EKLqrum651ATLf9OJx5XQM4KmY0xPzZ0hFAiQJnXB0WwME0E3IsL5B17ZlADqWb
|
||||||
|
NYDrOepdlcysmTWWOrxqbceRWtaLk0VO1XW72D5Vckd2gMBfq8zdpmUG62NJvKM4+XyziDk24xmfWoGE
|
||||||
|
s1c0gHPmbrPTpHNJKOCo2G1mZs20zcwUJ5yp1AB5+8/zEwgF5GMVDxh4AAAAAElFTkSuQmCC
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="toolStripButton11.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||||
|
YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAgxJREFUOE+lkvtL
|
||||||
|
U2EYx+0PEbtpFwnBKPGKiJImGP0gYhIYs1E5GF5gIxkpA00JRSmMEF0ohMh+GaRWYlqabMVcNdS2QpaI
|
||||||
|
VqiDIYhk397vA6fXhCjyhYdzeM/5fp7vczkAdeL2cwho7v/wWzT1zcN+Pwhr51uY2/y41PQaF+wzKKiZ
|
||||||
|
QvaN58g0jyLd5KEUcQbg+84P/Cm2tncQjW3j68YWIqubCC3FcOJc478BAuGoZM6zvoRnakXEruEIjhc4
|
||||||
|
/g5gZop9c+voGAyLbQIfeBZxLL9BA1jzXvuGbWamuKh+GmmVbswE19A59FEBbmoAG7YbsLtm2mZmiml9
|
||||||
|
cvabNDwpz6YB7LYBoMXCumkJr7LOmnnHzBQ/9X2Bo2cOibm1GsBREbAQiYmw/8lnuCeWkVzcgnZlnw1j
|
||||||
|
3HV/wuNXK6i/9x5Hc6wawDlTXHbLJ+LZUBQPRyKwdQdxutwl1h+NLXHh5Ht1ewBHsiwawCW57HyDAfWR
|
||||||
|
dvl0uhZQ1eqX8aVc7EKLqrum651ATLf9OJx5XQM4KmY0xPzZ0hFAiQJnXB0WwME0E3IsL5B17ZlADqWb
|
||||||
|
NYDrOepdlcysmTWWOrxqbceRWtaLk0VO1XW72D5Vckd2gMBfq8zdpmUG62NJvKM4+XyziDk24xmfWoGE
|
||||||
|
s1c0gHPmbrPTpHNJKOCo2G1mZs20zcwUJ5yp1AB5+8/zEwgF5GMVDxh4AAAAAElFTkSuQmCC
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="toolStripButton10.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||||
|
YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAgxJREFUOE+lkvtL
|
||||||
|
U2EYx+0PEbtpFwnBKPGKiJImGP0gYhIYs1E5GF5gIxkpA00JRSmMEF0ohMh+GaRWYlqabMVcNdS2QpaI
|
||||||
|
VqiDIYhk397vA6fXhCjyhYdzeM/5fp7vczkAdeL2cwho7v/wWzT1zcN+Pwhr51uY2/y41PQaF+wzKKiZ
|
||||||
|
QvaN58g0jyLd5KEUcQbg+84P/Cm2tncQjW3j68YWIqubCC3FcOJc478BAuGoZM6zvoRnakXEruEIjhc4
|
||||||
|
/g5gZop9c+voGAyLbQIfeBZxLL9BA1jzXvuGbWamuKh+GmmVbswE19A59FEBbmoAG7YbsLtm2mZmiml9
|
||||||
|
cvabNDwpz6YB7LYBoMXCumkJr7LOmnnHzBQ/9X2Bo2cOibm1GsBREbAQiYmw/8lnuCeWkVzcgnZlnw1j
|
||||||
|
3HV/wuNXK6i/9x5Hc6wawDlTXHbLJ+LZUBQPRyKwdQdxutwl1h+NLXHh5Ht1ewBHsiwawCW57HyDAfWR
|
||||||
|
dvl0uhZQ1eqX8aVc7EKLqrum651ATLf9OJx5XQM4KmY0xPzZ0hFAiQJnXB0WwME0E3IsL5B17ZlADqWb
|
||||||
|
NYDrOepdlcysmTWWOrxqbceRWtaLk0VO1XW72D5Vckd2gMBfq8zdpmUG62NJvKM4+XyziDk24xmfWoGE
|
||||||
|
s1c0gHPmbrPTpHNJKOCo2G1mZs20zcwUJ5yp1AB5+8/zEwgF5GMVDxh4AAAAAElFTkSuQmCC
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="toolStripButton9.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||||
|
YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAgxJREFUOE+lkvtL
|
||||||
|
U2EYx+0PEbtpFwnBKPGKiJImGP0gYhIYs1E5GF5gIxkpA00JRSmMEF0ohMh+GaRWYlqabMVcNdS2QpaI
|
||||||
|
VqiDIYhk397vA6fXhCjyhYdzeM/5fp7vczkAdeL2cwho7v/wWzT1zcN+Pwhr51uY2/y41PQaF+wzKKiZ
|
||||||
|
QvaN58g0jyLd5KEUcQbg+84P/Cm2tncQjW3j68YWIqubCC3FcOJc478BAuGoZM6zvoRnakXEruEIjhc4
|
||||||
|
/g5gZop9c+voGAyLbQIfeBZxLL9BA1jzXvuGbWamuKh+GmmVbswE19A59FEBbmoAG7YbsLtm2mZmiml9
|
||||||
|
cvabNDwpz6YB7LYBoMXCumkJr7LOmnnHzBQ/9X2Bo2cOibm1GsBREbAQiYmw/8lnuCeWkVzcgnZlnw1j
|
||||||
|
3HV/wuNXK6i/9x5Hc6wawDlTXHbLJ+LZUBQPRyKwdQdxutwl1h+NLXHh5Ht1ewBHsiwawCW57HyDAfWR
|
||||||
|
dvl0uhZQ1eqX8aVc7EKLqrum651ATLf9OJx5XQM4KmY0xPzZ0hFAiQJnXB0WwME0E3IsL5B17ZlADqWb
|
||||||
|
NYDrOepdlcysmTWWOrxqbceRWtaLk0VO1XW72D5Vckd2gMBfq8zdpmUG62NJvKM4+XyziDk24xmfWoGE
|
||||||
|
s1c0gHPmbrPTpHNJKOCo2G1mZs20zcwUJ5yp1AB5+8/zEwgF5GMVDxh4AAAAAElFTkSuQmCC
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="toolStripButton8.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||||
|
YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAgxJREFUOE+lkvtL
|
||||||
|
U2EYx+0PEbtpFwnBKPGKiJImGP0gYhIYs1E5GF5gIxkpA00JRSmMEF0ohMh+GaRWYlqabMVcNdS2QpaI
|
||||||
|
VqiDIYhk397vA6fXhCjyhYdzeM/5fp7vczkAdeL2cwho7v/wWzT1zcN+Pwhr51uY2/y41PQaF+wzKKiZ
|
||||||
|
QvaN58g0jyLd5KEUcQbg+84P/Cm2tncQjW3j68YWIqubCC3FcOJc478BAuGoZM6zvoRnakXEruEIjhc4
|
||||||
|
/g5gZop9c+voGAyLbQIfeBZxLL9BA1jzXvuGbWamuKh+GmmVbswE19A59FEBbmoAG7YbsLtm2mZmiml9
|
||||||
|
cvabNDwpz6YB7LYBoMXCumkJr7LOmnnHzBQ/9X2Bo2cOibm1GsBREbAQiYmw/8lnuCeWkVzcgnZlnw1j
|
||||||
|
3HV/wuNXK6i/9x5Hc6wawDlTXHbLJ+LZUBQPRyKwdQdxutwl1h+NLXHh5Ht1ewBHsiwawCW57HyDAfWR
|
||||||
|
dvl0uhZQ1eqX8aVc7EKLqrum651ATLf9OJx5XQM4KmY0xPzZ0hFAiQJnXB0WwME0E3IsL5B17ZlADqWb
|
||||||
|
NYDrOepdlcysmTWWOrxqbceRWtaLk0VO1XW72D5Vckd2gMBfq8zdpmUG62NJvKM4+XyziDk24xmfWoGE
|
||||||
|
s1c0gHPmbrPTpHNJKOCo2G1mZs20zcwUJ5yp1AB5+8/zEwgF5GMVDxh4AAAAAElFTkSuQmCC
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="toolStripButton7.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||||
|
YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAgxJREFUOE+lkvtL
|
||||||
|
U2EYx+0PEbtpFwnBKPGKiJImGP0gYhIYs1E5GF5gIxkpA00JRSmMEF0ohMh+GaRWYlqabMVcNdS2QpaI
|
||||||
|
VqiDIYhk397vA6fXhCjyhYdzeM/5fp7vczkAdeL2cwho7v/wWzT1zcN+Pwhr51uY2/y41PQaF+wzKKiZ
|
||||||
|
QvaN58g0jyLd5KEUcQbg+84P/Cm2tncQjW3j68YWIqubCC3FcOJc478BAuGoZM6zvoRnakXEruEIjhc4
|
||||||
|
/g5gZop9c+voGAyLbQIfeBZxLL9BA1jzXvuGbWamuKh+GmmVbswE19A59FEBbmoAG7YbsLtm2mZmiml9
|
||||||
|
cvabNDwpz6YB7LYBoMXCumkJr7LOmnnHzBQ/9X2Bo2cOibm1GsBREbAQiYmw/8lnuCeWkVzcgnZlnw1j
|
||||||
|
3HV/wuNXK6i/9x5Hc6wawDlTXHbLJ+LZUBQPRyKwdQdxutwl1h+NLXHh5Ht1ewBHsiwawCW57HyDAfWR
|
||||||
|
dvl0uhZQ1eqX8aVc7EKLqrum651ATLf9OJx5XQM4KmY0xPzZ0hFAiQJnXB0WwME0E3IsL5B17ZlADqWb
|
||||||
|
NYDrOepdlcysmTWWOrxqbceRWtaLk0VO1XW72D5Vckd2gMBfq8zdpmUG62NJvKM4+XyziDk24xmfWoGE
|
||||||
|
s1c0gHPmbrPTpHNJKOCo2G1mZs20zcwUJ5yp1AB5+8/zEwgF5GMVDxh4AAAAAElFTkSuQmCC
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="toolStripButton6.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||||
|
YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAgxJREFUOE+lkvtL
|
||||||
|
U2EYx+0PEbtpFwnBKPGKiJImGP0gYhIYs1E5GF5gIxkpA00JRSmMEF0ohMh+GaRWYlqabMVcNdS2QpaI
|
||||||
|
VqiDIYhk397vA6fXhCjyhYdzeM/5fp7vczkAdeL2cwho7v/wWzT1zcN+Pwhr51uY2/y41PQaF+wzKKiZ
|
||||||
|
QvaN58g0jyLd5KEUcQbg+84P/Cm2tncQjW3j68YWIqubCC3FcOJc478BAuGoZM6zvoRnakXEruEIjhc4
|
||||||
|
/g5gZop9c+voGAyLbQIfeBZxLL9BA1jzXvuGbWamuKh+GmmVbswE19A59FEBbmoAG7YbsLtm2mZmiml9
|
||||||
|
cvabNDwpz6YB7LYBoMXCumkJr7LOmnnHzBQ/9X2Bo2cOibm1GsBREbAQiYmw/8lnuCeWkVzcgnZlnw1j
|
||||||
|
3HV/wuNXK6i/9x5Hc6wawDlTXHbLJ+LZUBQPRyKwdQdxutwl1h+NLXHh5Ht1ewBHsiwawCW57HyDAfWR
|
||||||
|
dvl0uhZQ1eqX8aVc7EKLqrum651ATLf9OJx5XQM4KmY0xPzZ0hFAiQJnXB0WwME0E3IsL5B17ZlADqWb
|
||||||
|
NYDrOepdlcysmTWWOrxqbceRWtaLk0VO1XW72D5Vckd2gMBfq8zdpmUG62NJvKM4+XyziDk24xmfWoGE
|
||||||
|
s1c0gHPmbrPTpHNJKOCo2G1mZs20zcwUJ5yp1AB5+8/zEwgF5GMVDxh4AAAAAElFTkSuQmCC
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="toolStripButton5.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||||
|
YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAgxJREFUOE+lkvtL
|
||||||
|
U2EYx+0PEbtpFwnBKPGKiJImGP0gYhIYs1E5GF5gIxkpA00JRSmMEF0ohMh+GaRWYlqabMVcNdS2QpaI
|
||||||
|
VqiDIYhk397vA6fXhCjyhYdzeM/5fp7vczkAdeL2cwho7v/wWzT1zcN+Pwhr51uY2/y41PQaF+wzKKiZ
|
||||||
|
QvaN58g0jyLd5KEUcQbg+84P/Cm2tncQjW3j68YWIqubCC3FcOJc478BAuGoZM6zvoRnakXEruEIjhc4
|
||||||
|
/g5gZop9c+voGAyLbQIfeBZxLL9BA1jzXvuGbWamuKh+GmmVbswE19A59FEBbmoAG7YbsLtm2mZmiml9
|
||||||
|
cvabNDwpz6YB7LYBoMXCumkJr7LOmnnHzBQ/9X2Bo2cOibm1GsBREbAQiYmw/8lnuCeWkVzcgnZlnw1j
|
||||||
|
3HV/wuNXK6i/9x5Hc6wawDlTXHbLJ+LZUBQPRyKwdQdxutwl1h+NLXHh5Ht1ewBHsiwawCW57HyDAfWR
|
||||||
|
dvl0uhZQ1eqX8aVc7EKLqrum651ATLf9OJx5XQM4KmY0xPzZ0hFAiQJnXB0WwME0E3IsL5B17ZlADqWb
|
||||||
|
NYDrOepdlcysmTWWOrxqbceRWtaLk0VO1XW72D5Vckd2gMBfq8zdpmUG62NJvKM4+XyziDk24xmfWoGE
|
||||||
|
s1c0gHPmbrPTpHNJKOCo2G1mZs20zcwUJ5yp1AB5+8/zEwgF5GMVDxh4AAAAAElFTkSuQmCC
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="toolStripButton13.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||||
|
YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAgxJREFUOE+lkvtL
|
||||||
|
U2EYx+0PEbtpFwnBKPGKiJImGP0gYhIYs1E5GF5gIxkpA00JRSmMEF0ohMh+GaRWYlqabMVcNdS2QpaI
|
||||||
|
VqiDIYhk397vA6fXhCjyhYdzeM/5fp7vczkAdeL2cwho7v/wWzT1zcN+Pwhr51uY2/y41PQaF+wzKKiZ
|
||||||
|
QvaN58g0jyLd5KEUcQbg+84P/Cm2tncQjW3j68YWIqubCC3FcOJc478BAuGoZM6zvoRnakXEruEIjhc4
|
||||||
|
/g5gZop9c+voGAyLbQIfeBZxLL9BA1jzXvuGbWamuKh+GmmVbswE19A59FEBbmoAG7YbsLtm2mZmiml9
|
||||||
|
cvabNDwpz6YB7LYBoMXCumkJr7LOmnnHzBQ/9X2Bo2cOibm1GsBREbAQiYmw/8lnuCeWkVzcgnZlnw1j
|
||||||
|
3HV/wuNXK6i/9x5Hc6wawDlTXHbLJ+LZUBQPRyKwdQdxutwl1h+NLXHh5Ht1ewBHsiwawCW57HyDAfWR
|
||||||
|
dvl0uhZQ1eqX8aVc7EKLqrum651ATLf9OJx5XQM4KmY0xPzZ0hFAiQJnXB0WwME0E3IsL5B17ZlADqWb
|
||||||
|
NYDrOepdlcysmTWWOrxqbceRWtaLk0VO1XW72D5Vckd2gMBfq8zdpmUG62NJvKM4+XyziDk24xmfWoGE
|
||||||
|
s1c0gHPmbrPTpHNJKOCo2G1mZs20zcwUJ5yp1AB5+8/zEwgF5GMVDxh4AAAAAElFTkSuQmCC
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="toolStripButton1.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||||
|
YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAgxJREFUOE+lkvtL
|
||||||
|
U2EYx+0PEbtpFwnBKPGKiJImGP0gYhIYs1E5GF5gIxkpA00JRSmMEF0ohMh+GaRWYlqabMVcNdS2QpaI
|
||||||
|
VqiDIYhk397vA6fXhCjyhYdzeM/5fp7vczkAdeL2cwho7v/wWzT1zcN+Pwhr51uY2/y41PQaF+wzKKiZ
|
||||||
|
QvaN58g0jyLd5KEUcQbg+84P/Cm2tncQjW3j68YWIqubCC3FcOJc478BAuGoZM6zvoRnakXEruEIjhc4
|
||||||
|
/g5gZop9c+voGAyLbQIfeBZxLL9BA1jzXvuGbWamuKh+GmmVbswE19A59FEBbmoAG7YbsLtm2mZmiml9
|
||||||
|
cvabNDwpz6YB7LYBoMXCumkJr7LOmnnHzBQ/9X2Bo2cOibm1GsBREbAQiYmw/8lnuCeWkVzcgnZlnw1j
|
||||||
|
3HV/wuNXK6i/9x5Hc6wawDlTXHbLJ+LZUBQPRyKwdQdxutwl1h+NLXHh5Ht1ewBHsiwawCW57HyDAfWR
|
||||||
|
dvl0uhZQ1eqX8aVc7EKLqrum651ATLf9OJx5XQM4KmY0xPzZ0hFAiQJnXB0WwME0E3IsL5B17ZlADqWb
|
||||||
|
NYDrOepdlcysmTWWOrxqbceRWtaLk0VO1XW72D5Vckd2gMBfq8zdpmUG62NJvKM4+XyziDk24xmfWoGE
|
||||||
|
s1c0gHPmbrPTpHNJKOCo2G1mZs20zcwUJ5yp1AB5+8/zEwgF5GMVDxh4AAAAAElFTkSuQmCC
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
</root>
|
</root>
|
||||||
Reference in New Issue
Block a user