diff --git a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer.sln b/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer.sln deleted file mode 100644 index 60a4678..0000000 --- a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer.sln +++ /dev/null @@ -1,29 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 2012 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WormsNET.ImgViewer", "WormsNET.ImgViewer\WormsNET.ImgViewer.csproj", "{D007CB58-9BB0-45C7-88C1-FA5945AB8EB9}" -EndProject -Global - GlobalSection(TeamFoundationVersionControl) = preSolution - SccNumberOfProjects = 2 - SccEnterpriseProvider = {4CA58AB2-18FA-4F8D-95D4-32DDF27D184C} - SccTeamFoundationServer = https://tfs.codeplex.com/tfs/tfs32 - SccProjectUniqueName0 = WormsNET.ImgViewer\\WormsNET.ImgViewer.csproj - SccProjectName0 = WormsNET.ImgViewer - SccLocalPath0 = WormsNET.ImgViewer - SccLocalPath1 = . - EndGlobalSection - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {D007CB58-9BB0-45C7-88C1-FA5945AB8EB9}.Debug|Any CPU.ActiveCfg = Debug|x86 - {D007CB58-9BB0-45C7-88C1-FA5945AB8EB9}.Debug|Any CPU.Build.0 = Debug|x86 - {D007CB58-9BB0-45C7-88C1-FA5945AB8EB9}.Release|Any CPU.ActiveCfg = Release|x86 - {D007CB58-9BB0-45C7-88C1-FA5945AB8EB9}.Release|Any CPU.Build.0 = Release|x86 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection -EndGlobal diff --git a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/ExtendedListView.cs b/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/ExtendedListView.cs deleted file mode 100644 index bead7ba..0000000 --- a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/ExtendedListView.cs +++ /dev/null @@ -1,375 +0,0 @@ -using System; -using System.ComponentModel; -using System.Drawing; -using System.Reflection; -using System.Runtime.InteropServices; -using System.Windows.Forms; - -namespace WormsNET.ImgViewer -{ - #region #### ExtendedListView ######################################################################### - #endregion - /// - /// Zeigt eine Auflistung von Elementen in einer von fünf verschiedenen Ansichten an. - /// - [ToolboxBitmap(typeof(ListView))] - public class ExtendedListView : ListView - { - #region ---- DELEGATES ---------------------------------------------------------------------------- - #endregion - - delegate void CallBackSetGroupState(ListViewGroup group, ListViewGroupState state); - delegate void CallbackSetGroupString(ListViewGroup group, string value); - - #region ---- MEMBERVARIABLEN ---------------------------------------------------------------------- - #endregion - - int? _fillColumnIndex; // Index der Spalte, die den restlichen Platz einnimmt - bool _codeColumnWidthChange; // Wurden die Spaltenbreiten vom Code geändert? - bool _enableAdditionalHotKeys; // Zusätzliche Tastenkombinationen erlauben? - bool _hoverSelectionDelay; // Delay vor kompletter Auswahl bei HotTracking? - bool _visualStylesEnabled; // Gibt an, ob visuelle Stile verwendet werden - - #region ---- KONSTRUKTOREN & DESTRUKTOR ----------------------------------------------------------- - #endregion - - /// - /// Erstellt eine neue Instanz der ExtendedListView-Klasse. - /// - public ExtendedListView() - { - // Flimmern verhindern durch Doppelpufferung (aktiviert auch blaues Auswahlrechteck) - SetStyle(ControlStyles.AllPaintingInWmPaint | ControlStyles.OptimizedDoubleBuffer, - true); - - // Eigenschaften setzen - _enableAdditionalHotKeys = true; - _fillColumnIndex = null; - _hoverSelectionDelay = false; - _visualStylesEnabled = true; - } - - #region ---- EIGENSCHAFTEN ------------------------------------------------------------------------ - #endregion - - /// - /// Gibt an oder legt fest, ob zusätzliche Tastenkombinationen wie z.B. Strg+A zur Auswahl - /// aller Items unterstützt werden sollen. - /// - [Browsable(true)] - [Category("Behavior")] - [DefaultValue(true)] - [Description("Determines wether additional shortcuts like Ctrl+A for selecting all items " - + "are supported.")] - public bool EnableAdditionalHotKeys - { - get - { - return _enableAdditionalHotKeys; - } - set - { - _enableAdditionalHotKeys = value; - } - } - - /// - /// Gibt den Index der Spalte an, die den restlichen nicht von anderen in der ListView - /// vorhandenen Spalten verbrauchten Platz einnimmt oder legt diesen fest. - /// - [Browsable(true)] - [Category("Layout")] - [DefaultValue(null)] - [Description("Determines the index of the column which automatically fits into the " - + "remaining space of the list view which is not used by all the other columns.")] - public int? FillColumnIndex - { - get - { - return _fillColumnIndex; - } - set - { - // Nur setzen, wenn sich der Wert vom bisherigen unterscheidet - if (!_fillColumnIndex.Equals(value)) - { - _fillColumnIndex = value; - if (_fillColumnIndex.HasValue) - { - LayoutColumns(); - } - else - { - // Horizontale Bildlaufleiste ermöglichen - NativeMethods.ShowScrollBar(Handle, NativeMethods.SB_HORZ, 1); - } - } - } - } - - /// - /// Gibt an oder legt fest ob ein kleiner Delay vor kompletter Auswahl eines überfahrenen - /// Items stattfinden soll wenn HoverSelection aktiviert ist. - /// - [Browsable(true)] - [Category("Behavior")] - [DefaultValue(false)] - [Description("Determines if there should be a small delay before hovered items are fully " - + "selected if HoverSelection is enabled.")] - public bool HoverSelectionDelay - { - get - { - return _hoverSelectionDelay; - } - set - { - _hoverSelectionDelay = value; - } - } - - /// - /// Gibt an oder legt fest ob diese ListView zur Darstellung visuelle Stile verwendet. - /// - [Browsable(true)] - [Category("Appearance")] - [DefaultValue(true)] - [Description("Determines if the listview uses visual styles to display its content.")] - public bool VisualStylesEnabled - { - get - { - return _visualStylesEnabled; - } - set - { - _visualStylesEnabled = value; - } - } - - #region ---- METHODEN (PUBLIC) -------------------------------------------------------------------- - #endregion - - /// - /// Passt die Breiten der Spalten gemäß der Füllspalte an. - /// - public void LayoutColumns() - { - if (_fillColumnIndex.HasValue && Columns.Count > _fillColumnIndex) - { - // Benötigten Platz der restlichen Spalten herausfinden - int usedSpace = 0; - foreach (ColumnHeader column in Columns) - { - if (column.Index != _fillColumnIndex.Value) - { - usedSpace += column.Width; - } - } - - // Breite der Füllspalte anpassen - _codeColumnWidthChange = true; - Columns[_fillColumnIndex.Value].Width = ClientSize.Width - usedSpace; - _codeColumnWidthChange = false; - } - } - - public void SetGroupCollapse(ListViewGroupState state) - { - for (int i = 0; i <= Groups.Count; i++) - { - NativeMethods.LVGROUP group = new NativeMethods.LVGROUP(); - group.cbSize = Marshal.SizeOf(group); - group.state = (int)state; - group.mask = NativeMethods.LVGF_STATE; - group.iGroupId = i; - - IntPtr ip = IntPtr.Zero; - ip = Marshal.AllocHGlobal(group.cbSize); - Marshal.StructureToPtr(group, ip, false); - NativeMethods.SendMessage(Handle, NativeMethods.LVM_SETGROUPINFO, i, ip); - - if (ip != null) - { - Marshal.FreeHGlobal(ip); - } - } - } - - #region ---- METHODEN (PROTECTED) ----------------------------------------------------------------- - #endregion - - protected override void WndProc(ref Message m) - { - switch (m.Msg) - { - case NativeMethods.WM_LBUTTONUP: - try - { - base.DefWndProc(ref m); - } - catch - { - } - break; - default: - base.WndProc(ref m); - break; - } - } - - protected override void OnHandleCreated(EventArgs e) - { - // Windowsstyles anwenden und gepunktete Linien entfernen - if (VisualStylesEnabled) - { - NativeMethods.SetWindowTheme(Handle, "explorer", null); - } - NativeMethods.MakeFocusInvisible(Handle); - - // Breiten der Spalten berechnen bezüglich Füllspalte - LayoutColumns(); - - base.OnHandleCreated(e); - } - - protected override void OnColumnWidthChanged(ColumnWidthChangedEventArgs e) - { - if (_fillColumnIndex.HasValue) - { - // Horizontale Bildlaufleiste deaktivieren - NativeMethods.ShowScrollBar(Handle, NativeMethods.SB_HORZ, 0); - } - - base.OnColumnWidthChanged(e); - } - - protected override void OnColumnWidthChanging(ColumnWidthChangingEventArgs e) - { - if (e != null && e.ColumnIndex.Equals(_fillColumnIndex) && !_codeColumnWidthChange) - { - // Ändern der Breite der Füllspalte verhindern - e.Cancel = true; - e.NewWidth = Columns[e.ColumnIndex].Width; - } - else - { - // Bei Größenänderungen die anderen Spaltenbreiten anpassen - LayoutColumns(); - } - - base.OnColumnWidthChanging(e); - } - - protected override void OnMouseMove(MouseEventArgs e) - { - if (HoverSelection && !HoverSelectionDelay && e != null) - { - ListViewItem hoveredItem = GetItemAt(e.X, e.Y); - if (hoveredItem != null && !hoveredItem.Selected) - { - foreach (ListViewItem item in Items) - { - item.Selected = false; - } - hoveredItem.Selected = true; - } - else if (hoveredItem == null && !MultiSelect) - { - foreach (ListViewItem item in Items) - { - item.Selected = false; - } - } - } - - base.OnMouseMove(e); - } - - protected override void OnKeyDown(KeyEventArgs e) - { - // Zusätzliche Tastenkombinationen - if (_enableAdditionalHotKeys) - { - if (e != null) - { - // Alle Items markieren - if (e.Modifiers == Keys.Control && e.KeyCode == Keys.A) - { - foreach (ListViewItem item in Items) - { - item.Selected = true; - } - } - - // Item umbenennen - if (LabelEdit && SelectedItems.Count == 1 - && e.Modifiers == Keys.None && e.KeyCode == Keys.F2) - { - SelectedItems[0].BeginEdit(); - } - } - } - - base.OnKeyDown(e); - } - - protected override void OnSizeChanged(EventArgs e) - { - // Spaltenbreiten bezüglich Füllspalte berechnen - LayoutColumns(); - - base.OnSizeChanged(e); - } - - #region ---- METHODEN (PRIVATE) ------------------------------------------------------------------- - #endregion - - private static int? GetGroupId(ListViewGroup group) - { - int? id = null; - Type groupType = group.GetType(); - if (groupType != null) - { - PropertyInfo pi = groupType.GetProperty("ID", BindingFlags.NonPublic - | BindingFlags.Instance); - if (pi != null) - { - object temp = pi.GetValue(group, null); - if (temp != null) - { - id = temp as int?; - } - } - } - return id; - } - - } // #### ExtendedListView #################################################################### - - public enum ListViewGroupMask - { - None = 0x00000, - Header = 0x00001, - Footer = 0x00002, - State = 0x00004, - Align = 0x00008, - GroupId = 0x00010, - SubTitle = 0x00100, - Task = 0x00200, - DescriptionTop = 0x00400, - DescriptionBottom = 0x00800, - TitleImage = 0x01000, - ExtendedImage = 0x02000, - Items = 0x04000, - Subset = 0x08000, - SubsetItems = 0x10000 - } - - public enum ListViewGroupState - { - Expanded = 0, - Collapsed = 1, - Collapsible = 8 - } -} diff --git a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/FormMain.Designer.cs b/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/FormMain.Designer.cs deleted file mode 100644 index c36dae8..0000000 --- a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/FormMain.Designer.cs +++ /dev/null @@ -1,517 +0,0 @@ -namespace WormsNET.ImgViewer -{ - partial class FormMain - { - /// - /// Erforderliche Designervariable. - /// - private System.ComponentModel.IContainer components = null; - - /// - /// Verwendete Ressourcen bereinigen. - /// - /// True, wenn verwaltete Ressourcen gelöscht werden sollen; andernfalls False. - protected override void Dispose(bool disposing) - { - if (disposing && (components != null)) - { - components.Dispose(); - } - base.Dispose(disposing); - } - - #region Vom Windows Form-Designer generierter Code - - /// - /// Erforderliche Methode für die Designerunterstützung. - /// Der Inhalt der Methode darf nicht mit dem Code-Editor geändert werden. - /// - private void InitializeComponent() - { - System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FormMain)); - this._ofdOpen = new System.Windows.Forms.OpenFileDialog(); - this._pbImage = new System.Windows.Forms.PictureBox(); - this._pnImage = new System.Windows.Forms.Panel(); - this._lbError = new System.Windows.Forms.Label(); - this._msMain = new System.Windows.Forms.MenuStrip(); - this._tsmiFile = new System.Windows.Forms.ToolStripMenuItem(); - this._tsmiOpen = new System.Windows.Forms.ToolStripMenuItem(); - this._tsmiSaveAs = new System.Windows.Forms.ToolStripMenuItem(); - this._tsmiClose = new System.Windows.Forms.ToolStripMenuItem(); - this._tssFile1 = new System.Windows.Forms.ToolStripSeparator(); - this._tsmiExit = new System.Windows.Forms.ToolStripMenuItem(); - this._tsmiView = new System.Windows.Forms.ToolStripMenuItem(); - this._tsmiDetails = new System.Windows.Forms.ToolStripMenuItem(); - this._tssView1 = new System.Windows.Forms.ToolStripSeparator(); - this._tsmiBlack = new System.Windows.Forms.ToolStripMenuItem(); - this._tsmiFitToWindow = new System.Windows.Forms.ToolStripMenuItem(); - this._tsmiHelp = new System.Windows.Forms.ToolStripMenuItem(); - this._tsmiAbout = new System.Windows.Forms.ToolStripMenuItem(); - this._sfdSave = new System.Windows.Forms.SaveFileDialog(); - this._scDetailsPreview = new System.Windows.Forms.SplitContainer(); - this._pnDetails = new System.Windows.Forms.Panel(); - this._gbGeneral = new System.Windows.Forms.GroupBox(); - this._cbHeader = new System.Windows.Forms.CheckBox(); - this._cbCompressed = new System.Windows.Forms.CheckBox(); - this._lbLength = new System.Windows.Forms.Label(); - this._tbSizeBpp = new System.Windows.Forms.TextBox(); - this._lbDescription = new System.Windows.Forms.Label(); - this._lbSizeBpp = new System.Windows.Forms.Label(); - this._tbLength = new System.Windows.Forms.TextBox(); - this._tbDescription = new System.Windows.Forms.TextBox(); - this._gbPalette = new System.Windows.Forms.GroupBox(); - this._lvColors = new WormsNET.ImgViewer.ExtendedListView(); - this._colColors = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); - this._cbPalette = new System.Windows.Forms.CheckBox(); - this._lbFilename = new System.Windows.Forms.Label(); - ((System.ComponentModel.ISupportInitialize)(this._pbImage)).BeginInit(); - this._pnImage.SuspendLayout(); - this._msMain.SuspendLayout(); - this._scDetailsPreview.Panel1.SuspendLayout(); - this._scDetailsPreview.Panel2.SuspendLayout(); - this._scDetailsPreview.SuspendLayout(); - this._pnDetails.SuspendLayout(); - this._gbGeneral.SuspendLayout(); - this._gbPalette.SuspendLayout(); - this.SuspendLayout(); - // - // _ofdOpen - // - this._ofdOpen.Filter = "IMG files|*.img|All files|*.*"; - this._ofdOpen.Title = "Browse for IMG file"; - // - // _pbImage - // - this._pbImage.BackColor = System.Drawing.Color.Black; - this._pbImage.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom; - this._pbImage.Dock = System.Windows.Forms.DockStyle.Fill; - this._pbImage.Location = new System.Drawing.Point(0, 0); - this._pbImage.Margin = new System.Windows.Forms.Padding(0); - this._pbImage.Name = "_pbImage"; - this._pbImage.Size = new System.Drawing.Size(578, 536); - this._pbImage.TabIndex = 2; - this._pbImage.TabStop = false; - // - // _pnImage - // - this._pnImage.AutoScroll = true; - this._pnImage.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; - this._pnImage.Controls.Add(this._lbError); - this._pnImage.Controls.Add(this._pbImage); - this._pnImage.Dock = System.Windows.Forms.DockStyle.Fill; - this._pnImage.Location = new System.Drawing.Point(0, 0); - this._pnImage.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0); - this._pnImage.Name = "_pnImage"; - this._pnImage.Size = new System.Drawing.Size(580, 538); - this._pnImage.TabIndex = 1; - // - // _lbError - // - this._lbError.BackColor = System.Drawing.SystemColors.Control; - this._lbError.Dock = System.Windows.Forms.DockStyle.Fill; - this._lbError.Font = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this._lbError.Location = new System.Drawing.Point(0, 0); - this._lbError.Name = "_lbError"; - this._lbError.Size = new System.Drawing.Size(578, 536); - this._lbError.TabIndex = 0; - this._lbError.Text = "No image loaded."; - this._lbError.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; - // - // _msMain - // - this._msMain.BackColor = System.Drawing.SystemColors.Control; - this._msMain.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this._msMain.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { - this._tsmiFile, - this._tsmiView, - this._tsmiHelp}); - this._msMain.Location = new System.Drawing.Point(0, 0); - this._msMain.Name = "_msMain"; - this._msMain.Padding = new System.Windows.Forms.Padding(2); - this._msMain.Size = new System.Drawing.Size(784, 24); - this._msMain.TabIndex = 0; - // - // _tsmiFile - // - this._tsmiFile.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { - this._tsmiOpen, - this._tsmiSaveAs, - this._tsmiClose, - this._tssFile1, - this._tsmiExit}); - this._tsmiFile.Name = "_tsmiFile"; - this._tsmiFile.Size = new System.Drawing.Size(37, 20); - this._tsmiFile.Text = "File"; - // - // _tsmiOpen - // - this._tsmiOpen.Image = ((System.Drawing.Image)(resources.GetObject("_tsmiOpen.Image"))); - this._tsmiOpen.Name = "_tsmiOpen"; - this._tsmiOpen.Size = new System.Drawing.Size(121, 22); - this._tsmiOpen.Text = "Open..."; - this._tsmiOpen.Click += new System.EventHandler(this._tsmiOpen_Click); - // - // _tsmiSaveAs - // - this._tsmiSaveAs.Enabled = false; - this._tsmiSaveAs.Image = ((System.Drawing.Image)(resources.GetObject("_tsmiSaveAs.Image"))); - this._tsmiSaveAs.Name = "_tsmiSaveAs"; - this._tsmiSaveAs.Size = new System.Drawing.Size(121, 22); - this._tsmiSaveAs.Text = "Save as..."; - this._tsmiSaveAs.Click += new System.EventHandler(this._tsmiSaveAs_Click); - // - // _tsmiClose - // - this._tsmiClose.Enabled = false; - this._tsmiClose.Image = ((System.Drawing.Image)(resources.GetObject("_tsmiClose.Image"))); - this._tsmiClose.Name = "_tsmiClose"; - this._tsmiClose.Size = new System.Drawing.Size(121, 22); - this._tsmiClose.Text = "Close"; - this._tsmiClose.Click += new System.EventHandler(this._tsmiClose_Click); - // - // _tssFile1 - // - this._tssFile1.Name = "_tssFile1"; - this._tssFile1.Size = new System.Drawing.Size(118, 6); - // - // _tsmiExit - // - this._tsmiExit.Image = ((System.Drawing.Image)(resources.GetObject("_tsmiExit.Image"))); - this._tsmiExit.Name = "_tsmiExit"; - this._tsmiExit.Size = new System.Drawing.Size(121, 22); - this._tsmiExit.Text = "Exit"; - this._tsmiExit.Click += new System.EventHandler(this._tsmiExit_Click); - // - // _tsmiView - // - this._tsmiView.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { - this._tsmiDetails, - this._tssView1, - this._tsmiBlack, - this._tsmiFitToWindow}); - this._tsmiView.Name = "_tsmiView"; - this._tsmiView.Size = new System.Drawing.Size(44, 20); - this._tsmiView.Text = "View"; - // - // _tsmiDetails - // - this._tsmiDetails.Checked = true; - this._tsmiDetails.CheckOnClick = true; - this._tsmiDetails.CheckState = System.Windows.Forms.CheckState.Checked; - this._tsmiDetails.Name = "_tsmiDetails"; - this._tsmiDetails.Size = new System.Drawing.Size(204, 22); - this._tsmiDetails.Text = "Show details pane"; - this._tsmiDetails.Click += new System.EventHandler(this._tsmiDetails_Click); - // - // _tssView1 - // - this._tssView1.Name = "_tssView1"; - this._tssView1.Size = new System.Drawing.Size(201, 6); - // - // _tsmiBlack - // - this._tsmiBlack.Checked = true; - this._tsmiBlack.CheckOnClick = true; - this._tsmiBlack.CheckState = System.Windows.Forms.CheckState.Checked; - this._tsmiBlack.Name = "_tsmiBlack"; - this._tsmiBlack.Size = new System.Drawing.Size(204, 22); - this._tsmiBlack.Text = "Show black pixels"; - this._tsmiBlack.Click += new System.EventHandler(this._tsmiBlack_Click); - // - // _tsmiFitToWindow - // - this._tsmiFitToWindow.Checked = true; - this._tsmiFitToWindow.CheckOnClick = true; - this._tsmiFitToWindow.CheckState = System.Windows.Forms.CheckState.Checked; - this._tsmiFitToWindow.Name = "_tsmiFitToWindow"; - this._tsmiFitToWindow.Size = new System.Drawing.Size(204, 22); - this._tsmiFitToWindow.Text = "Fit image to window size"; - this._tsmiFitToWindow.Click += new System.EventHandler(this._tsmiFitToWindow_Click); - // - // _tsmiHelp - // - this._tsmiHelp.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { - this._tsmiAbout}); - this._tsmiHelp.Name = "_tsmiHelp"; - this._tsmiHelp.Size = new System.Drawing.Size(44, 20); - this._tsmiHelp.Text = "Help"; - // - // _tsmiAbout - // - this._tsmiAbout.Image = ((System.Drawing.Image)(resources.GetObject("_tsmiAbout.Image"))); - this._tsmiAbout.Name = "_tsmiAbout"; - this._tsmiAbout.Size = new System.Drawing.Size(116, 22); - this._tsmiAbout.Text = "About..."; - this._tsmiAbout.Click += new System.EventHandler(this._tsmiAbout_Click); - // - // _sfdSave - // - this._sfdSave.Filter = "Bitmap|*.bmp|PNG image|*.png|JPEG image|*.jpg"; - this._sfdSave.FilterIndex = 2; - this._sfdSave.Title = "Save IMG file as..."; - // - // _scDetailsPreview - // - this._scDetailsPreview.Dock = System.Windows.Forms.DockStyle.Fill; - this._scDetailsPreview.FixedPanel = System.Windows.Forms.FixedPanel.Panel1; - this._scDetailsPreview.IsSplitterFixed = true; - this._scDetailsPreview.Location = new System.Drawing.Point(0, 24); - this._scDetailsPreview.Name = "_scDetailsPreview"; - // - // _scDetailsPreview.Panel1 - // - this._scDetailsPreview.Panel1.Controls.Add(this._pnDetails); - // - // _scDetailsPreview.Panel2 - // - this._scDetailsPreview.Panel2.Controls.Add(this._pnImage); - this._scDetailsPreview.Size = new System.Drawing.Size(784, 538); - this._scDetailsPreview.SplitterDistance = 200; - this._scDetailsPreview.TabIndex = 2; - // - // _pnDetails - // - this._pnDetails.BackColor = System.Drawing.SystemColors.Control; - this._pnDetails.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; - this._pnDetails.Controls.Add(this._gbGeneral); - this._pnDetails.Controls.Add(this._gbPalette); - this._pnDetails.Controls.Add(this._lbFilename); - this._pnDetails.Dock = System.Windows.Forms.DockStyle.Fill; - this._pnDetails.Location = new System.Drawing.Point(0, 0); - this._pnDetails.Name = "_pnDetails"; - this._pnDetails.Padding = new System.Windows.Forms.Padding(0, 8, 8, 0); - this._pnDetails.Size = new System.Drawing.Size(200, 538); - this._pnDetails.TabIndex = 0; - // - // _gbGeneral - // - this._gbGeneral.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); - this._gbGeneral.Controls.Add(this._cbHeader); - this._gbGeneral.Controls.Add(this._cbCompressed); - this._gbGeneral.Controls.Add(this._lbLength); - this._gbGeneral.Controls.Add(this._tbSizeBpp); - this._gbGeneral.Controls.Add(this._lbDescription); - this._gbGeneral.Controls.Add(this._lbSizeBpp); - this._gbGeneral.Controls.Add(this._tbLength); - this._gbGeneral.Controls.Add(this._tbDescription); - this._gbGeneral.Location = new System.Drawing.Point(3, 32); - this._gbGeneral.Name = "_gbGeneral"; - this._gbGeneral.Size = new System.Drawing.Size(193, 162); - this._gbGeneral.TabIndex = 1; - this._gbGeneral.TabStop = false; - this._gbGeneral.Text = "General information"; - // - // _cbHeader - // - this._cbHeader.AutoCheck = false; - this._cbHeader.AutoSize = true; - this._cbHeader.Location = new System.Drawing.Point(8, 22); - this._cbHeader.Name = "_cbHeader"; - this._cbHeader.Size = new System.Drawing.Size(97, 17); - this._cbHeader.TabIndex = 0; - this._cbHeader.Text = "Header correct"; - this._cbHeader.UseVisualStyleBackColor = true; - // - // _cbCompressed - // - this._cbCompressed.AutoCheck = false; - this._cbCompressed.AutoSize = true; - this._cbCompressed.Location = new System.Drawing.Point(8, 47); - this._cbCompressed.Name = "_cbCompressed"; - this._cbCompressed.Size = new System.Drawing.Size(84, 17); - this._cbCompressed.TabIndex = 1; - this._cbCompressed.Text = "Compressed"; - this._cbCompressed.ThreeState = true; - this._cbCompressed.UseVisualStyleBackColor = true; - // - // _lbLength - // - this._lbLength.AutoSize = true; - this._lbLength.Location = new System.Drawing.Point(5, 75); - this._lbLength.Name = "_lbLength"; - this._lbLength.Size = new System.Drawing.Size(62, 15); - this._lbLength.TabIndex = 2; - this._lbLength.Text = "Length (b)"; - // - // _tbSizeBpp - // - this._tbSizeBpp.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); - this._tbSizeBpp.Location = new System.Drawing.Point(78, 130); - this._tbSizeBpp.Name = "_tbSizeBpp"; - this._tbSizeBpp.ReadOnly = true; - this._tbSizeBpp.Size = new System.Drawing.Size(106, 23); - this._tbSizeBpp.TabIndex = 7; - this._tbSizeBpp.TextAlign = System.Windows.Forms.HorizontalAlignment.Right; - // - // _lbDescription - // - this._lbDescription.AutoSize = true; - this._lbDescription.Location = new System.Drawing.Point(5, 104); - this._lbDescription.Name = "_lbDescription"; - this._lbDescription.Size = new System.Drawing.Size(67, 15); - this._lbDescription.TabIndex = 4; - this._lbDescription.Text = "Description"; - // - // _lbSizeBpp - // - this._lbSizeBpp.AutoSize = true; - this._lbSizeBpp.Location = new System.Drawing.Point(5, 133); - this._lbSizeBpp.Name = "_lbSizeBpp"; - this._lbSizeBpp.Size = new System.Drawing.Size(64, 15); - this._lbSizeBpp.TabIndex = 6; - this._lbSizeBpp.Text = "Size && Bpp"; - // - // _tbLength - // - this._tbLength.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); - this._tbLength.Location = new System.Drawing.Point(78, 72); - this._tbLength.Name = "_tbLength"; - this._tbLength.ReadOnly = true; - this._tbLength.Size = new System.Drawing.Size(106, 23); - this._tbLength.TabIndex = 3; - this._tbLength.TextAlign = System.Windows.Forms.HorizontalAlignment.Right; - // - // _tbDescription - // - this._tbDescription.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); - this._tbDescription.Location = new System.Drawing.Point(78, 101); - this._tbDescription.Name = "_tbDescription"; - this._tbDescription.ReadOnly = true; - this._tbDescription.Size = new System.Drawing.Size(106, 23); - this._tbDescription.TabIndex = 5; - // - // _gbPalette - // - this._gbPalette.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) - | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); - this._gbPalette.Controls.Add(this._lvColors); - this._gbPalette.Controls.Add(this._cbPalette); - this._gbPalette.Location = new System.Drawing.Point(3, 200); - this._gbPalette.Name = "_gbPalette"; - this._gbPalette.Size = new System.Drawing.Size(193, 334); - this._gbPalette.TabIndex = 2; - this._gbPalette.TabStop = false; - this._gbPalette.Text = " "; - // - // _lvColors - // - this._lvColors.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] { - this._colColors}); - this._lvColors.Dock = System.Windows.Forms.DockStyle.Fill; - this._lvColors.FillColumnIndex = 0; - this._lvColors.FullRowSelect = true; - this._lvColors.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.Nonclickable; - this._lvColors.Location = new System.Drawing.Point(3, 16); - this._lvColors.MultiSelect = false; - this._lvColors.Name = "_lvColors"; - this._lvColors.Size = new System.Drawing.Size(187, 315); - this._lvColors.TabIndex = 1; - this._lvColors.UseCompatibleStateImageBehavior = false; - this._lvColors.View = System.Windows.Forms.View.Details; - this._lvColors.SelectedIndexChanged += new System.EventHandler(this._lvColors_SelectedIndexChanged); - // - // _colColors - // - this._colColors.Text = "Colors"; - this._colColors.Width = 183; - // - // _cbPalette - // - this._cbPalette.AutoCheck = false; - this._cbPalette.AutoSize = true; - this._cbPalette.Location = new System.Drawing.Point(14, -1); - this._cbPalette.Name = "_cbPalette"; - this._cbPalette.Size = new System.Drawing.Size(59, 17); - this._cbPalette.TabIndex = 0; - this._cbPalette.Text = "Palette"; - this._cbPalette.ThreeState = true; - this._cbPalette.UseVisualStyleBackColor = true; - // - // _lbFilename - // - this._lbFilename.AutoSize = true; - this._lbFilename.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this._lbFilename.Location = new System.Drawing.Point(8, 11); - this._lbFilename.Margin = new System.Windows.Forms.Padding(3); - this._lbFilename.Name = "_lbFilename"; - this._lbFilename.Size = new System.Drawing.Size(103, 15); - this._lbFilename.TabIndex = 0; - this._lbFilename.Text = "No image loaded."; - // - // FormMain - // - this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(784, 562); - this.Controls.Add(this._scDetailsPreview); - this.Controls.Add(this._msMain); - this.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); - this.MainMenuStrip = this._msMain; - this.MinimumSize = new System.Drawing.Size(216, 261); - this.Name = "FormMain"; - this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; - this.Text = "IMG Viewer"; - ((System.ComponentModel.ISupportInitialize)(this._pbImage)).EndInit(); - this._pnImage.ResumeLayout(false); - this._msMain.ResumeLayout(false); - this._msMain.PerformLayout(); - this._scDetailsPreview.Panel1.ResumeLayout(false); - this._scDetailsPreview.Panel2.ResumeLayout(false); - this._scDetailsPreview.ResumeLayout(false); - this._pnDetails.ResumeLayout(false); - this._pnDetails.PerformLayout(); - this._gbGeneral.ResumeLayout(false); - this._gbGeneral.PerformLayout(); - this._gbPalette.ResumeLayout(false); - this._gbPalette.PerformLayout(); - this.ResumeLayout(false); - this.PerformLayout(); - - } - - #endregion - - private System.Windows.Forms.OpenFileDialog _ofdOpen; - private System.Windows.Forms.PictureBox _pbImage; - private System.Windows.Forms.Panel _pnImage; - private System.Windows.Forms.MenuStrip _msMain; - private System.Windows.Forms.ToolStripMenuItem _tsmiFile; - private System.Windows.Forms.ToolStripMenuItem _tsmiOpen; - private System.Windows.Forms.ToolStripSeparator _tssFile1; - private System.Windows.Forms.ToolStripMenuItem _tsmiExit; - private System.Windows.Forms.ToolStripMenuItem _tsmiHelp; - private System.Windows.Forms.ToolStripMenuItem _tsmiAbout; - private System.Windows.Forms.ToolStripMenuItem _tsmiSaveAs; - private System.Windows.Forms.ToolStripMenuItem _tsmiClose; - private System.Windows.Forms.SaveFileDialog _sfdSave; - private System.Windows.Forms.ToolStripMenuItem _tsmiView; - private System.Windows.Forms.ToolStripMenuItem _tsmiFitToWindow; - private System.Windows.Forms.SplitContainer _scDetailsPreview; - private System.Windows.Forms.Panel _pnDetails; - private System.Windows.Forms.Label _lbFilename; - private System.Windows.Forms.CheckBox _cbHeader; - private System.Windows.Forms.Label _lbLength; - private System.Windows.Forms.TextBox _tbLength; - private System.Windows.Forms.Label _lbDescription; - private System.Windows.Forms.TextBox _tbDescription; - private System.Windows.Forms.TextBox _tbSizeBpp; - private System.Windows.Forms.Label _lbSizeBpp; - private System.Windows.Forms.CheckBox _cbCompressed; - private System.Windows.Forms.CheckBox _cbPalette; - private System.Windows.Forms.GroupBox _gbGeneral; - private System.Windows.Forms.GroupBox _gbPalette; - private WormsNET.ImgViewer.ExtendedListView _lvColors; - private System.Windows.Forms.ColumnHeader _colColors; - private System.Windows.Forms.Label _lbError; - private System.Windows.Forms.ToolStripMenuItem _tsmiDetails; - private System.Windows.Forms.ToolStripSeparator _tssView1; - private System.Windows.Forms.ToolStripMenuItem _tsmiBlack; - } -} - diff --git a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/FormMain.cs b/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/FormMain.cs deleted file mode 100644 index 5c1ce7d..0000000 --- a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/FormMain.cs +++ /dev/null @@ -1,434 +0,0 @@ -using System; -using System.Drawing; -using System.Drawing.Imaging; -using System.IO; -using System.Windows.Forms; -using Microsoft.Win32; - -namespace WormsNET.ImgViewer -{ - #region #### FormMain ################################################################################## - #endregion - /// - /// Hauptform der Anwendung. - /// - public partial class FormMain : Form - { - #region ---- MEMBERVARIABLEN ----------------------------------------------------------------------- - #endregion - - byte[,] _palette = new byte[1, 3]; - - #region ---- KONSTRUKTOR --------------------------------------------------------------------------- - #endregion - - /// - /// Standardkonstruktor. - /// - public FormMain() - { - InitializeComponent(); - - string[] args = Environment.GetCommandLineArgs(); - if (args.Length > 1 && File.Exists(args[1])) - { - if (ReadIMG(args[1])) - { - Text = Application.ProductName + " - " + args[1]; - string directoryOfFile = Path.GetDirectoryName(args[1]); - _ofdOpen.InitialDirectory = directoryOfFile; - _sfdSave.InitialDirectory = directoryOfFile; - } - } - else - { - try - { - RegistryKey regKey = Registry.CurrentUser - .OpenSubKey(@"Software\Team17SoftwareLTD\WormsArmageddon", true); - String gamePath = regKey.GetValue("PATH", String.Empty).ToString(); - _ofdOpen.InitialDirectory = gamePath; - _sfdSave.InitialDirectory = gamePath; - } - catch - { - } - } - } - - #region ---- METHODEN (PRIVATE) -------------------------------------------------------------------- - #endregion - - private bool ReadIMG(string path) - { - string description = ""; - bool isCompressed = false; - bool hasPalette = false; - short width, height; - short numberOfColors = 1; - byte[] imageData; - - ResetGUI(); - - FileStream fr = new FileStream(path, FileMode.Open, FileAccess.Read); - BinaryReader br = new BinaryReader(fr); - - // Header überprüfen - byte[] header = br.ReadBytes(4); - byte[] correctHeader = { 0x49, 0x4D, 0x47, 0x1A }; - if (!CompareArrays(header, correctHeader)) - { - _cbHeader.Checked = false; - SetErrorLabel("Invalid header."); - return false; - } - - // Dateilänge auslesen - byte[] fileLengthArray = br.ReadBytes(4); - - // Ggf. Bildbeschreibung auslesen - byte bitsPerPixel = br.ReadByte(); - if (bitsPerPixel > 48) - { - br.BaseStream.Seek(-1, SeekOrigin.Current); - while (true) - { - byte[] b = br.ReadBytes(1); - if (b[0] == 0) - { - break; - } - else - { - description += (char)b[0]; - } - } - bitsPerPixel = br.ReadByte(); - } - - // Imageflags auslesen - byte flags = br.ReadByte(); - switch (flags) - { - case 0x00: - break; - case 0x40: - isCompressed = true; - break; - case 0x80: - hasPalette = true; - break; - case 0xC0: - isCompressed = true; - hasPalette = true; - break; - default: - _cbPalette.CheckState = CheckState.Indeterminate; - _cbCompressed.CheckState = CheckState.Indeterminate; - SetErrorLabel("Invalid image flags."); - return false; - } - - // Ggf. Palette auslesen - if (hasPalette) - { - numberOfColors = BitConverter.ToInt16(br.ReadBytes(2), 0); - numberOfColors++; - _palette = new byte[numberOfColors, 3]; - for (int i = 0; i < numberOfColors; i++) - { - if (i > 0) - { - for (int j = 0; j < 3; j++) - { - _palette[i, j] = br.ReadByte(); - } - } - ListViewItem newItem = _lvColors.Items.Add("R=" + _palette[i, 0] - + " G=" + _palette[i, 1] + " B=" + _palette[i, 2]); - newItem.BackColor = Color.FromArgb(_palette[i, 0], _palette[i, 1], - _palette[i, 2]); - newItem.ForeColor = GetForeColor(newItem.BackColor); - } - } - - // Größe des Bildes - width = BitConverter.ToInt16(br.ReadBytes(2), 0); - height = BitConverter.ToInt16(br.ReadBytes(2), 0); - _pbImage.Size = new Size(width, height); - - // Dekomprimierung durchführen, wenn nötig - if (isCompressed) - { - imageData = new byte[width * height]; - Decompress(br, ref imageData); - } - else - { - imageData = br.ReadBytes(width * height); - } - - // Bild zeichnen - DrawIMG(width, height, imageData); - - // Datei und Ressourcen freigeben - br.Close(); - fr.Close(); - - // Informationen anzeigen - _tsmiSaveAs.Enabled = true; - _tsmiClose.Enabled = true; - _lbFilename.Text = Path.GetFileNameWithoutExtension(path); - _cbHeader.Checked = true; - _cbCompressed.Checked = isCompressed; - _tbLength.Text = BitConverter.ToInt32(fileLengthArray, 0).ToString(); - _tbDescription.Text = description; - _tbSizeBpp.Text = width.ToString() + "×" + height.ToString() - + "×" + bitsPerPixel.ToString(); - _cbPalette.Checked = hasPalette; - _colColors.Text = "Colors (" + numberOfColors.ToString() + ")"; - SetErrorLabel(""); - - return true; - } - - private bool CompareArrays(byte[] a, byte[] b) - { - if (a.Length == b.Length) - { - for (int i = 0; i < a.Length; i++) - { - if (a[i] != b[i]) - { - return false; - } - } - return true; - } - else - { - return false; - } - } - - private bool Decompress(BinaryReader b, ref byte[] dStream) - { - int cmd; - int output = 0; // Offset of next write - while ((cmd = b.ReadByte()) != -1) - { // Read a byte - if ((cmd & 0x80) == 0) - { // Command: 1 byte (color) - dStream[output++] = (byte)cmd; - } - else - { - int arg1 = (cmd >> 3) & 0xF; // Arg1 = bits 2-5 - int arg2 = b.ReadByte(); - if (arg2 == -1) - return false; - arg2 = ((cmd << 8) | arg2) & 0x7FF; // Arg2 = bits 6-16 - if (arg1 == 0) - { - if (arg2 == 0) // Command: 0x80 0x00 - return false; - int arg3 = b.ReadByte(); - if (arg3 == -1) - return false; - // Command: 3 bytes - output = CopyData(output, arg2, arg3 + 18, ref dStream); - } - else - { - // Command: 2 bytes - output = CopyData(output, arg2 + 1, arg1 + 2, ref dStream); - } - } - } - return true; - } - - private int CopyData(int dOffset, int cOffset, int Repeat, ref byte[] dStream) - { - for (; Repeat > 0; Repeat--) - { - dStream[dOffset] = dStream[dOffset++ - cOffset]; - } - return dOffset; - } - - private unsafe void DrawIMG(short width, short height, byte[] imageData) - { - Bitmap bm = new Bitmap(width, height); - BitmapData bmData = bm.LockBits(new Rectangle(0, 0, width, height), - ImageLockMode.WriteOnly, PixelFormat.Format32bppArgb); - int pixelSize = 4; - - for (int y = 0; y < bmData.Height; y++) - { - byte* row = (byte*)bmData.Scan0 + (y * bmData.Stride); - for (int x = 0; x < bmData.Width; x++) - { - byte paletteEntry = imageData[y * width + x]; - byte r = _palette[paletteEntry, 0]; - byte g = _palette[paletteEntry, 1]; - byte b = _palette[paletteEntry, 2]; - if (r != 0 || b != 0 || g != 0) - { - row[x * pixelSize] = b; - row[x * pixelSize + 1] = g; - row[x * pixelSize + 2] = r; - row[x * pixelSize + 3] = 255; - } - } - } - bm.UnlockBits(bmData); - _pbImage.BackgroundImage = bm; - } - - private Color GetForeColor(Color color) - { - if (color.GetBrightness() < 0.5) - { - return Color.White; - } - else - { - return Color.Black; - } - } - - private void ResetGUI() - { - Text = Application.ProductName; - _tsmiSaveAs.Enabled = false; - _tsmiClose.Enabled = false; - _lbError.Visible = true; - _lbError.Text = "No image loaded."; - _lbFilename.Text = "No image loaded."; - _cbHeader.Checked = false; - _cbCompressed.Checked = false; - _tbLength.Text = String.Empty; - _tbDescription.Text = String.Empty; - _tbSizeBpp.Text = String.Empty; - _cbPalette.Checked = false; - _colColors.Text = "Colors"; - _lvColors.Items.Clear(); - } - - private void SetErrorLabel(string text) - { - if (text.Length > 0) - { - _lbError.Visible = true; - _lbError.Text = text; - _pbImage.Size = new Size(0, 0); - } - else - { - _lbError.Visible = false; - } - } - - #region ---- EVENTHANDLER -------------------------------------------------------------------------- - #endregion - - private void _tsmiOpen_Click(object sender, EventArgs e) - { - if (_ofdOpen.ShowDialog() == DialogResult.OK) - { - try - { - if (ReadIMG(_ofdOpen.FileName)) - { - Text = Application.ProductName + " - " + _ofdOpen.FileName; - } - } - catch (Exception ex) - { - _lbError.Visible = true; - _lbError.Text = "Unknown error occured. " - + "Please send a screenshot of this information to the developers:" - + Environment.NewLine + ex.ToString(); - } - } - } - - private void _tsmiSaveAs_Click(object sender, EventArgs e) - { - if (_sfdSave.ShowDialog() == DialogResult.OK) - { - switch (_sfdSave.FilterIndex) - { - case 1: - _pbImage.BackgroundImage.Save(_sfdSave.FileName, ImageFormat.Bmp); - break; - case 2: - _pbImage.BackgroundImage.Save(_sfdSave.FileName, ImageFormat.Png); - break; - case 3: - _pbImage.BackgroundImage.Save(_sfdSave.FileName, ImageFormat.Jpeg); - break; - } - _sfdSave.InitialDirectory = Path.GetDirectoryName(_sfdSave.FileName); - } - } - - private void _tsmiClose_Click(object sender, EventArgs e) - { - Text = Application.ProductName; - _tsmiSaveAs.Enabled = false; - _tsmiClose.Enabled = false; - ResetGUI(); - _pbImage.BackgroundImage = null; - _pbImage.Size = new Size(0, 0); - } - - private void _tsmiExit_Click(object sender, EventArgs e) - { - Close(); - } - - private void _tsmiDetails_Click(object sender, EventArgs e) - { - _scDetailsPreview.Panel1Collapsed = !_tsmiDetails.Checked; - } - - private void _tsmiFitToWindow_Click(object sender, EventArgs e) - { - if (_tsmiFitToWindow.Checked) - { - _pbImage.BackgroundImageLayout = ImageLayout.Zoom; - _pbImage.Dock = DockStyle.Fill; - } - else - { - _pbImage.BackgroundImageLayout = ImageLayout.None; - _pbImage.Dock = DockStyle.None; - } - } - - private void _tsmiAbout_Click(object sender, EventArgs e) - { - MessageBox.Show(Application.ProductName + " " + Application.ProductVersion.ToString() - + Environment.NewLine + "The Worms.NET Team" + Environment.NewLine - + "Licensed under Ms-PL" + Environment.NewLine - + "Decompression algorithm by Pisto.", "About", MessageBoxButtons.OK, - MessageBoxIcon.Information); - } - - private void _lvColors_SelectedIndexChanged(object sender, EventArgs e) - { - foreach (ListViewItem foundItem in _lvColors.Items) - { - foundItem.Selected = false; - } - } - - private void _tsmiBlack_Click(object sender, EventArgs e) - { - _pbImage.BackColor = (_tsmiBlack.Checked ? Color.Black : SystemColors.Control); - } - - } // #### FormMain ############################################################################# -} diff --git a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/FormMain.resx b/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/FormMain.resx deleted file mode 100644 index a0e2610..0000000 --- a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/FormMain.resx +++ /dev/null @@ -1,1138 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - 114, 17 - - - 17, 17 - - - - - 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 - /wXdygyPNOStKwAAAABJRU5ErkJggg== - - - - - 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 - - - - 213, 17 - - - 57 - - - - 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 - pcaKA8DtQsy3E1As5fu3+zHLOW65x67E8at1rtU852qMFQOAO8T84X3/gzzmwz52JY5f6fN8UOddjbEi - AHC7EPPtRpi3MyHf4fo/u1y/dpQB4PfpV+5KuCAAcApyLQA00oPuZQC4Q8wf3veXesyHcdxyj12J41f6 - PB/UeVd7lAHg30AnfG4swEBwDQDYoQOAn14N9LBvxOO33rfoDlB8dI9ZznHLPXYlz7GS51ntc36QowwA - /4p+naDXSPnnDOYBgA162jI3Zqujh97/Yd/4nXFn3BkrMwgAfgs61x8t/+TWpMkKAHCqshWzagAXJQlB - lwa89HJCB4jalOY74864M27fUSk5kIVeWiAGneuH6cUtq1m8T1eImUsgcBkyJnIm9ooqwMTvLr/Pn5s+ - 7Ke6M+6MO+OWBxcW4l5tDAJs0a+AABM/g0K2AgDSHan8YmJnSYDVgQrnt5Y/u32btd8Zd8adMX9wkSFu - MZTDrCTAKb7p8t+FWgAwll8WzEoDVsxyfhPuiP93xp3xURqsBhQxKwlUgCBffpVqCdpQfjEIMLGbMUv4 - Fd3/DgDcGXfGR2dUqj+yLaACBIXyT35PrSXoCoEbFngpuAMAd8ad8VEbWs1LXeCl/f+DSSAUn7JU0wAA - AABJRU5ErkJggigAAAAwAAAAYAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAACgAA - AA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAA - AA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAA - AA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA8AAAAKAAAAAwAA - AAAAAAASAAAANwAAAEwAAABNAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAA - AEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAA - AEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATAAAAEwAAABMAAAATQAA - AE0AAAA4AAAAEgAAAAAAAAAnAgICmgQEBL0DAwO8AwMDuwMDA7sDAwO7AwMDuwMDA7sDAwO7AwMDuwMD - A7sCAgK7AgICuwICArsDAwO7AwMDuwICArsCAgK7AgICuwMCArsDAgK7AwMDuwMDA7sDAwO7AwMDuwMD - A7sDAwO7AwMDuwMDA7sDAwO7AwMDuwMDA7sDAwO7AwMDuwMDA7sDAwO7AwMDuwMDA7sDAwO7AwMDuwMD - A7sDAwO7AwMDvAUFBb4BAQGdAAAAJgAAAAAAAAAv0tLS//b29v/19fX/9fX1//T09P/09PT/8/Pz//Pz - 8//y8vL/8vLy//Hx8f/x8fH/8PDw/+/v7//v7+//7u7u/+7u7v/t7e3/7e3t/+zs7P/s7Oz/6+vr/+vr - 6//q6ur/6urq/+np6f/p6en/6Ojo/+jo6P/o6Oj/5+fn/+fn5//m5ub/5ubm/+bm5v/l5eX/5eXl/+Xl - 5f/k5OT/5OTk/+Tk5P/j4+P/4+Pj/+Pj4/+lpaX6AAAALgAAAAAAAAAv2dnZ//b29v/29vb/9fX1//X1 - 9f/09PT/9PT0//Pz8//z8/P/8vLy//Ly8v/x8fH/8fHx//Dw8P/w8PD/7+/v/+7u7v/u7u7/7e3t/+3t - 7f/s7Oz/7Ozs/+vr6//r6+v/6urq/+rq6v/p6en/6enp/+jo6P/o6Oj/6Ojo/+fn5//n5+f/5ubm/+bm - 5v/m5ub/5eXl/+Xl5f/l5eX/5OTk/+Tk5P/k5OT/5OTk/+Pj4/+trq7/AAAALgAAAAAAAAAv2dnZ//f3 - 9//29vb/9vb2//X19f/19fX/9PT0//T09P/z8/P/8/Pz//Ly8v/y8vL/8fHx//Hx8f/w8PD/8PDw/+/v - 7//u7u7/7u7u/+3t7f/t7e3/7Ozs/+zs7P/r6+v/6+vr/+rq6v/q6ur/6enp/+np6f/p6en/6Ojo/+jo - 6P/n5+f/5+fn/+fn5//m5ub/5ubm/+Xl5f/l5eX/5eXl/+Tk5P/k5OT/5OTk/+Tk5P+nqKj5AAAALQAA - AAAAAAAv2trb//f39//39/f/AAAA/wAAAP8AAAD/AAAA/xMLAP9VQRP/WldM/zQsF/9OOQb/NiYG/0ct - Av8SCwH/BCE6/xg+XP8ZPFf/GjxW/wooPf8BKUD/Ax0y/wcnPv8SNU//FzpU/xc4U/8YOFP/EjpR/xU4 - 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 - nP+iPJ7/y7XR/7/Hwv+VjZH/Oy0v/wEAAP8AAAD/AAAA/wAAAP8AAAD/6urq/+np6f+qqqr5AAAALQAA - AAAAAAAv4ODg//7+/v/9/f3/AAAA/wAAZf8BAGv/AAAA/wAAAf8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAEA/wAAAP9ORUH/ur++//// - //+hr67/c4h3/21zU/9bWDX/UT8y/0QnFf8qAAD/AAAA/wABAf8CAgL/AAAA/wAAAP8AAAD/6urq/+rq - 6v+qqqr5AAAALQAAAAAAAAAv39/g//7+/v/+/v7/AAAC/wAAjv8AABb/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAB/wAA - AP9US0P/p7C0/5CUjv9oVDb/ZzwV/z8aA/8yCAD/aD8M/29HE/81FQj/BAIB/wAAAP8AAAD/AAAA/wAA - AP8AAAD/6+vr/+rq6v+qqqr5AAAALQAAAAAAAAAv39/g//7+/v/+/v7/AAA1/wEAVP8AAAD/AAAB/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wUAAP9dUj3/cWRT/1syDP86FgD/DgAA/wAAAP8fCwT/RiEL/1kpDP8mAQD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/6+vr/+vr6/+qqqr5AAAALQAAAAAAAAAv4ODh///////+/v7/AAAr/wAA - B/8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wYCAP9IIw3/JwoA/wYAAP8AAAD/AAAA/wIAAP8AAAD/KBAE/5xx - Iv9gIQn/BgAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/7Ozs/+zs7P+qqqr5AAAALQAAAAAAAAAv4ODg//// - ////////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8BAAD/AAAA/wAA - AP8AAAD/EwQB/00rDf8cDQP/AQAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/7e3t/+zs7P+qqqr5AAAALQAA - AAAAAAAv4eHh////////////AAAB/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAgD/AgEA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/7e3t/+3t - 7f+rq6r5AAAALQAAAAAAAAAv4eHi////////////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/7u7u/+3t7f+rq6v5AAAALQAAAAAAAAAv4eHi////////////AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/7u7u/+7u7v+rq6v5AAAALQAAAAAAAAAv4eHi////////////AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/7+/v/+7u7v+rq6v5AAAALQAAAAAAAAAv4eHi//// - ////////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/7+/v/+/v7/+srK35AAAALQAA - AAAAAAAv4eLi////////////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/8PDw/+/v - 7/+srKv5AAAALQAAAAAAAAAv4eLi////////////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/8PDw//Dw8P+srKv5AAAALQAAAAAAAAAv4eLi////////////AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/8fHx//Hx8f+srKv5AAAALQAAAAAAAAAv4eHi////////////AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/8vLy//Hx8f+sq6v5AAAALQAAAAAAAAAv4eHi//// - ////////AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/8vLy//Ly8v+sq6v5AAAALgAA - AAAAAAAl4eHh//////////////////////////////////////////////////////////////////// - /////////v7+//7+/v/+/v7//f39//39/f/9/f3//Pz8//z8/P/8/Pz/+/v7//v7+//6+vr/+vr6//r6 - +v/5+fn/+fn5//j4+P/4+Pj/9/f3//f39//29vb/9vb2//X19f/19fX/9PT0//T09P/z8/P/8/Pz//Ly - 8v+vsLD4AAAAJQAAAAAAAAAQ4eHh//////////////////////////////////////////////////// - //////////////////////////////7+/v/+/v7//v7+//39/f/9/f3//f39//z8/P/8/Pz//Pz8//v7 - +//7+/v/+vr6//r6+v/6+vr/+fn5//n5+f/4+Pj/+Pj4//f39//39/f/9vb2//b29v/19fX/9fX1//T0 - 9P/09PT/8/Pz//Pz8//IyMj/AAAAEAAAAAAAAAACYWFhNm5ubjtsbGw5bGxsOWxsbDlsbGw5bGxsOWxs - bDlsbGw5bGxsOWxsbDlsbGw5bGxsOWxsbDlsbGw5bGxsOWxsbDlsbGw5bGxsOWxsbDlsbGw5bGxsOWxs - bDlra2s5bGtrOWxrazlsa2s5bGtrOWxrazlsbGs5bGxrOWxsazlsbGw5bGxsOWxsbDlsbGw5bGxsOWxs - bDlsbGw5bGxsOWxsbDlra2s5bGxsOXR0dDxNTU0yAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGOIgAAAAAAAY4iAAAAAAABjiIAAAAAAAGOIgAA - AAAAAY4iAAAAAAABjiIAAAAAAAGOIgAAAAAAAY4iAAAAAAABjiIAAAAAAAGOIgAAAAAAAY4iAAAAAAAB - jiIAAAAAAAGOIgAAAAAAAY4iAAAAAAABjiIAAAAAAAGOIgAAAAAAAY4iAAAAAAABjiIAAAAAAAGOIgAA - AAAAAY4iAAAAAAABjiIAAAAAAAGOIgAAAAAAAY4iAAAAAAABjiIAAAAAAAGOIgAAAAAAAY4iAAAAAAAB - jiIAAAAAAAGOIgAAAAAAAY4iAAAAAAABjiIAAAAAAAGOIgAAAAAAAY4iAAAAAAABjiIAAAAAAAGOIgAA - AAAAAY4iAAAAAAABjiIAAAAAAAGOIgAAAAAAAY4iAAAAAAABjiL///////+OIv///////44i//////// - jiL///////+OIv///////44i////////jiL///////+OIv///////44i////////jiIoAAAAIAAAAEAA - AAABACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAqAAAAOQAAADkAAAA5AAAAOQAA - ADkAAAA5AAAAOQAAADkAAAA5AAAAOQAAADkAAAA5AAAAOQAAADkAAAA5AAAAOQAAADkAAAA5AAAAOQAA - ADkAAAA5AAAAOQAAADkAAAA5AAAAOQAAADkAAAAqAAAADgAAAAAAAAAAAAAAKgAAAIEAAACsAAAArAAA - AKwAAACsAAAArAAAAKwAAACsAAAArAAAAKwAAACsAAAArAAAAKwAAACsAAAArAAAAKwAAACsAAAArAAA - AKwAAACsAAAArAAAAKwAAACsAAAArAAAAKwAAACsAAAArAAAAIEAAAAqAAAAAAAAAAAAAAA59fX1//T0 - 9P/z8/P/8/Pz//Ly8v/x8fH/8PDw//Dw8P/v7+//7u7u/+7u7v/t7e3/7e3t/+zs7P/r6+v/6+vr/+rq - 6v/q6ur/6enp/+np6f/o6Oj/6Ojo/+fn5//n5+f/5+fn/+bm5v/m5ub/5ubm/wAAADkAAAAAAAAAAAAA - ADn19fX/9fX1//T09P/z8/P/8/Pz//Ly8v/x8fH/8fHx//Dw8P/v7+//7+/v/+7u7v/t7e3/7e3t/+zs - 7P/r6+v/6+vr/+rq6v/q6ur/6enp/+np6f/o6Oj/6Ojo/+fn5//n5+f/5+fn/+bm5v/m5ub/AAAAOQAA - AAAAAAAAAAAAOfb29v/19fX/AAAA/wAAAP8DAAD/Sz0c/0dBMP8/LQH/OiMA/woWHf8TO1r/GTpU/wQu - Q/8CJjv/EDBJ/xg6Vf8VOlP/EzdO/xk5Wf8LLy3/AC8A/wMeHv8UN1H/Chg//wAAS/8AAR3/5+fn/+bm - 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 - AAAAAAAAAAAAOf/////+/v7/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/8PDw/+/v - 7/8AAAA5AAAAAAAAAAAAAAA5//////////8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP/w8PD/8PDw/wAAADkAAAAAAAAAAAAAADn//////////wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA//Hx8f/w8PD/AAAAOQAAAAAAAAAAAAAAOf//////////AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/8vLy//Hx8f8AAAA5AAAAAAAAAAAAAAA5//////////8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP/z8/P/8vLy/wAAADkAAAAAAAAAAAAAACr///////////// - ///////////////////+/v7//v7+//7+/v/9/f3//f39//z8/P/8/Pz/+/v7//v7+//6+vr/+vr6//n5 - +f/4+Pj/+Pj4//f39//39/f/9vb2//X19f/19fX/9PT0//Pz8//z8/P/AAAAKgAAAAAAAAAAAAAAKP// - ///////////////////////////////////+/v7//v7+//7+/v/9/f3//f39//z8/P/8/Pz/+/v7//v7 - +//6+vr/+vr6//n5+f/5+fn/+Pj4//f39//39/f/9vb2//X19f/19fX/9PT0//Pz8/8AAAAoAAAAAAAA - AAAAAAAoAAAAKgAAAC4AAAAzAAAAOQAAADkAAAA5AAAAOQAAADkAAAA5AAAAOQAAADkAAAA5AAAAOQAA - ADkAAAA5AAAAOQAAADkAAAA5AAAAOQAAADkAAAA5AAAAOQAAADkAAAA5AAAAOQAAADkAAAA5AAAAOQAA - ADMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAGAAAABgAAAAYAA - AAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAA - AAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAf//////////////////////////KAAAABgA - AAAwAAAAAQAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPAAAALAAAADwAAAA7AAAAOwAAADsAAAA7AAAAOwAA - ADsAAAA7AAAAOwAAADsAAAA7AAAAOwAAADsAAAA7AAAAOwAAADsAAAA7AAAAPAAAADYAAAAUAAAAAAAA - AAAAAAAqAAAAcwAAAIwAAACMAAAAjAAAAIwAAACMAAAAjAAAAIwAAACMAAAAjAAAAIwAAACMAAAAjAAA - AIwAAACMAAAAjAAAAIwAAACMAAAAjAAAAHMAAAAqAAAAAAAAAAAAAAA59fX1//X19f/19fX/9fX1//X1 - 9f/19fX/9fX1//X19f/19fX/9fX1//X19f/19fX/9fX1//X19f/19fX/9fX1//X19f/19fX/9fX1//X1 - 9f8AAAA5AAAAAAAAAAAAAAA59fX1//X19f/19fX/9fX1//X19f/19fX/9fX1//X19f/19fX/9fX1//X1 - 9f/19fX/9fX1//X19f/19fX/9fX1//X19f/19fX/9fX1//X19f8AAAA5AAAAAAAAAAAAAAA59fX1//X1 - 9f8AAAD/AAAA/z81Hv9GORb/KhoA/wsoQv8TOlT/ASc8/xIzTf8PPE//FDdV/w4zMv8AKAb/ES9G/wYP - S/8AAB//9fX1//X19f8AAAA5AAAAAAAAAAAAAAA59fX1//X19f8AAAD/EwoA/5WFc/+ql3j/alkX/xoH - AP8AHTT/CmuY/yxhmf+JHJf/S0mV/yF1l/8pdpP/JG+j/wkiP/8AAAD/9fX1//X19f8AAAA5AAAAAAAA - AAAAAAA59fX1//X19f8AAAD/QTEO/7Osuf/o38//tZ9W/y0iBf8KLFD/I26e/ydEcf9qPJ3/L2io/xVd - mP8WUIz/FSE4/wsAAP8AAAD/9fX1//X19f8AAAA5AAAAAAAAAAAAAAA59fX1//X19f8AAAD/Fg8X/2lk - m//Uzq7/j3xG/wkaCv8VTX3/H1aD/wIgNP8JQlz/Ty85/z9OUv+ZuLX/b00x/xAAAP8AAAD/9fX1//X1 - 9f8AAAA5AAAAAAAAAAAAAAA59fX1//X19f8AAAD/AAA+/wcGL/8QDQP/AAAA/wASAP8ACgP/AxAd/wIa - LP8uLjL/hDVf/6s8m//Ris//fIh4/1ksH/8AAAD/9fX1//X19f8AAAA5AAAAAAAAAAAAAAA59fX1//X1 - 9f8AAAj/AABQ/wAACP8AAAD/AAAA/wAFAP8ADgD/AAAA/wAAAP9CQjD/pGew/5kHrv/BUsj/xrHI/2JU - Tf8BAAD/9fX1//X19f8AAAA5AAAAAAAAAAAAAAA59fX1//X19f8AACf/AAAv/wAAAP8AAAH/AAAA/wAA - AP8AAAD/AgIC/wAAAP9OTk3/wru3/2dDUP9yXEr/JiQc/wAAAP8AAAD/9fX1//X19f8AAAA5AAAAAAAA - AAAAAAA59fX1//X19f8AAB3/AAAH/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8xJh7/MyQW/wYB - AP9DHAD/FQQA/wAAAP8AAAD/9fX1//X19f8AAAA5AAAAAAAAAAAAAAA59fX1//X19f8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAv8bDwj/EQkE/wAAAP8AAAD/9fX1//X1 - 9f8AAAA5AAAAAAAAAAAAAAA59fX1//X19f8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/9fX1//X19f8AAAA5AAAAAAAAAAAAAAA59fX1//X1 - 9f8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/9fX1//X19f8AAAA5AAAAAAAAAAAAAAA59fX1//X19f8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/9fX1//X19f8AAAA5AAAAAAAA - AAAAAAA59fX1//X19f8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA - AP8AAAD/AAAA/wAAAP8AAAD/9fX1//X19f8AAAA5AAAAAAAAAAAAAAA59fX1//X19f/19fX/9fX1//X1 - 9f/19fX/9fX1//X19f/19fX/9fX1//X19f/19fX/9fX1//X19f/19fX/9fX1//X19f/19fX/9fX1//X1 - 9f8AAAA5AAAAAAAAAAAAAAA59fX1//X19f/19fX/9fX1//X19f/19fX/9fX1//X19f/19fX/9fX1//X1 - 9f/19fX/9fX1//X19f/19fX/9fX1//X19f/19fX/9fX1//X19f8AAAA5AAAAAAAAAAAAAAA5IiIiQwAA - ADkiIiJDAAAAOSIiIkMAAAA5IiIiQwAAADkiIiJDAAAAOSIiIkMAAAA5IiIiQwAAADkiIiJDAAAAOSIi - IkMAAAA5IiIiQwAAADkAAAA5AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP// - /0H///9B////QYAAAUGAAAFBgAABQYAAAUGAAAFBgAABQYAAAUGAAAFBgAABQYAAAUGAAAFBgAABQYAA - AUGAAAFBgAABQYAAAUGAAAFBgAABQYAAAUGAAAFB////QSgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAmZmZ/5mZmf+ZmZn/mZmZ/5mZmf+ZmZn/mZmZ/5mZmf+ZmZn/mZmZ/5mZ - mf+ZmZn/mZmZ/5mZmf+ZmZn/mZmZ/5qamv/r6+v/6+vr/+vr6//r6+v/6+vr/+vr6//r6+v/6+vr/+vr - 6//r6+v/6+vr/+vr6//r6+v/6+vr/5qamv+cnJz/7e3t/wAAAP8XEwz/SjsX/yMaCP8ML0z/Bi1D/w4z - Sf8VN1T/DTEw/wgvHP8MHlL/AAAe/+3t7f+cnJz/n5+f/+/v7/8AAAD/WUw8/8m8qv99Zij/CgMG/wVf - h/9NS5j/bDih/xZtn/8XXpT/DitH/wAAAP/v7+//n5+f/6Ghof/x8fH/AAAA/0c/UP/Z09X/l4RD/wkl - Mf8eW47/FTNX/zNBZ/81W27/X3h9/x8EAP8AAAD/8fHx/6Ghof+kpKT/8/Pz/wAAB/8BATz/HRod/wwO - BP8AEgn/BBMh/wAcI/9SLT7/qTOU/8eax/9vXEj/AQAA//Pz8/+kpKT/p6en//b29v8AAB7/AAAr/wAA - AP8AAAD/AAUA/wAAAP8ICQL/kX+P/6U8q/+hZJ7/YF1Z/wAAAP/29vb/p6en/6qqqv/4+Pj/AAAe/wAA - Cv8AAAD/AAAA/wAAAP8AAAD/CQgJ/1xWS/88NSL/NSEF/wAAAP8AAAD/+Pj4/6qqqv+srKz/+vr6/wAA - Av8AAAD/AAAA/wAAAP8AAAD/AAAA/wMCAf8AAAD/AAAA/x8IA/8KBgX/AAAA//r6+v+srKz/r6+v//z8 - /P8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP/8/Pz/r6+v/7Gx - sf/+/v7/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD//v7+/7Gx - sf+ysrL//////wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA//// - //+ysrL/srKy//////////////////////////////////////////////////////////////////// - ////////srKy/7Kysv+ysrL/srKy/7Kysv+ysrL/srKy/7Kysv+ysrL/srKy/7Kysv+ysrL/srKy/7Ky - sv+ysrL/srKy/7Kysv8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAA//+sQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQAA - rEEAAKxBAACsQQAArEEAAKxB//+sQQ== - - - \ No newline at end of file diff --git a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Icon.ico b/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Icon.ico deleted file mode 100644 index 64c35b0..0000000 Binary files a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Icon.ico and /dev/null differ diff --git a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/NativeMethods.cs b/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/NativeMethods.cs deleted file mode 100644 index 16a3c6a..0000000 --- a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/NativeMethods.cs +++ /dev/null @@ -1,102 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Runtime.InteropServices; -using System.Text; - -namespace WormsNET.ImgViewer -{ - #region #### NativeMethods ############################################################################ - #endregion - /// - /// Static method and structure collection for native / WinAPI stuff. - /// - internal class NativeMethods - { - #region ---- STRUCTURES --------------------------------------------------------------------------- - #endregion - - [StructLayout(LayoutKind.Sequential)] - public struct LVGROUP - { - public int cbSize; - public int mask; - [MarshalAs(UnmanagedType.LPTStr)] - public string pszHeader; - public int cchHeader; - [MarshalAs(UnmanagedType.LPTStr)] - public string pszFooter; - public int cchFooter; - public int iGroupId; - public int stateMask; - public int state; - public int uAlign; - } - - #region ---- CONSTANTS ---------------------------------------------------------------------------- - #endregion - - internal const int LVM_FIRST = 0x00001000; - internal const int LVM_SETGROUPINFO = LVM_FIRST + 147; - internal const int LVGF_STATE = 0x00000004; - - internal const int SB_HORZ = 0; - internal const int SB_VERT = 1; - internal const int SB_CTL = 2; - internal const int SB_BOTH = 3; - - internal const int UIS_HIDEFOCUS = 0x00000001; - internal const int UIS_SET = 1; - - internal const int WM_CHANGEUISTATE = 0x00000127; - internal const int WM_LBUTTONUP = 0x00000202; - - #region ---- METHODS (INTERNAL) ------------------------------------------------------------------- - #endregion - - internal static void MakeFocusInvisible(IntPtr handle) - { - SendMessage(handle, WM_CHANGEUISTATE, MAKELONG(UIS_SET, UIS_HIDEFOCUS), 0); - } - - [DllImport("user32.dll")] - internal static extern int SendMessage(IntPtr hWnd, int message, int wParam, int lParam); - [DllImport("user32.dll")] - internal static extern int SendMessage(IntPtr hWnd, int message, int wParam, IntPtr lParam); - - [DllImport("uxtheme.dll", CharSet = CharSet.Unicode)] - internal static extern int SetWindowTheme(IntPtr hwnd, - [MarshalAs(UnmanagedType.LPWStr)] string pszSubAppName, string pszSubIdList); - - [DllImport("user32.dll")] - internal static extern int ShowScrollBar(IntPtr hWnd, int wBar, int bShow); - - #region ---- METHODS (PRIVATE) -------------------------------------------------------------------- - #endregion - - private static int MAKELONG(int wLow, int wHigh) - { - int low = (int)LOWORD(wLow); - short high = LOWORD(wHigh); - int product = 0x00010000 * (int)high; - int makeLong = (int)(low | product); - return makeLong; - } - - private static short LOWORD(int dw) - { - short loWord = 0; - ushort andResult = (ushort)(dw & 0x00007FFF); - ushort mask = 0x8000; - if ((dw & 0x8000) != 0) - { - loWord = (short)(mask | andResult); - } - else - { - loWord = (short)andResult; - } - return loWord; - } - } -} diff --git a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Program.cs b/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Program.cs deleted file mode 100644 index e8855f2..0000000 --- a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Program.cs +++ /dev/null @@ -1,20 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Windows.Forms; - -namespace WormsNET.ImgViewer -{ - static class Program - { - /// - /// Der Haupteinstiegspunkt für die Anwendung. - /// - [STAThread] - static void Main() - { - Application.EnableVisualStyles(); - Application.SetCompatibleTextRenderingDefault(false); - Application.Run(new FormMain()); - } - } -} diff --git a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Properties/AssemblyInfo.cs b/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Properties/AssemblyInfo.cs deleted file mode 100644 index fc19930..0000000 --- a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// Allgemeine Informationen über eine Assembly werden über die folgenden -// Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern, -// die mit einer Assembly verknüpft sind. -[assembly: AssemblyTitle("Worms.NET IMG Viewer")] -[assembly: AssemblyDescription("Worms.NET IMG Viewer")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("Worms.NET Team")] -[assembly: AssemblyProduct("Worms.NET PAL Editor")] -[assembly: AssemblyCopyright("Licensed under Ms-PL")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Durch Festlegen von ComVisible auf "false" werden die Typen in dieser Assembly unsichtbar -// für COM-Komponenten. Wenn Sie auf einen Typ in dieser Assembly von -// COM zugreifen müssen, legen Sie das ComVisible-Attribut für diesen Typ auf "true" fest. -[assembly: ComVisible(false)] - -// Die folgende GUID bestimmt die ID der Typbibliothek, wenn dieses Projekt für COM verfügbar gemacht wird -[assembly: Guid("11f9709d-7766-4fa8-9ca4-3f68acd23e16")] - -// Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten: -// -// Hauptversion -// Nebenversion -// Buildnummer -// Revision -// -// Sie können alle Werte angeben oder die standardmäßigen Build- und Revisionsnummern -// übernehmen, indem Sie "*" eingeben: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.2.0.0")] -[assembly: AssemblyFileVersion("1.2.0.0")] diff --git a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Properties/Resources.Designer.cs b/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Properties/Resources.Designer.cs deleted file mode 100644 index dad44cc..0000000 --- a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Properties/Resources.Designer.cs +++ /dev/null @@ -1,63 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// Runtime Version:4.0.30319.18051 -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace WormsNET.ImgViewer.Properties { - using System; - - - /// - /// A strongly-typed resource class, for looking up localized strings, etc. - /// - // This class was auto-generated by the StronglyTypedResourceBuilder - // class via a tool like ResGen or Visual Studio. - // To add or remove a member, edit your .ResX file then rerun ResGen - // with the /str option, or rebuild your VS project. - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - internal class Resources { - - private static global::System.Resources.ResourceManager resourceMan; - - private static global::System.Globalization.CultureInfo resourceCulture; - - [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] - internal Resources() { - } - - /// - /// Returns the cached ResourceManager instance used by this class. - /// - [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Resources.ResourceManager ResourceManager { - get { - if (object.ReferenceEquals(resourceMan, null)) { - global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("WormsNET.ImgViewer.Properties.Resources", typeof(Resources).Assembly); - resourceMan = temp; - } - return resourceMan; - } - } - - /// - /// Overrides the current thread's CurrentUICulture property for all - /// resource lookups using this strongly typed resource class. - /// - [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Globalization.CultureInfo Culture { - get { - return resourceCulture; - } - set { - resourceCulture = value; - } - } - } -} diff --git a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Properties/Resources.resx b/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Properties/Resources.resx deleted file mode 100644 index af7dbeb..0000000 --- a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Properties/Resources.resx +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Properties/Settings.Designer.cs b/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Properties/Settings.Designer.cs deleted file mode 100644 index 8cf6154..0000000 --- a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Properties/Settings.Designer.cs +++ /dev/null @@ -1,26 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// Runtime Version:4.0.30319.18051 -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace WormsNET.ImgViewer.Properties { - - - [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")] - internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { - - private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); - - public static Settings Default { - get { - return defaultInstance; - } - } - } -} diff --git a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Properties/Settings.settings b/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Properties/Settings.settings deleted file mode 100644 index 3964565..0000000 --- a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Properties/Settings.settings +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Resources/Icon.ico b/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Resources/Icon.ico deleted file mode 100644 index 64c35b0..0000000 Binary files a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Resources/Icon.ico and /dev/null differ diff --git a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Resources/MenuAbout.png b/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Resources/MenuAbout.png deleted file mode 100644 index 47a3785..0000000 Binary files a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Resources/MenuAbout.png and /dev/null differ diff --git a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Resources/MenuExit.png b/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Resources/MenuExit.png deleted file mode 100644 index b162363..0000000 Binary files a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Resources/MenuExit.png and /dev/null differ diff --git a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Resources/MenuNewPackage.png b/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Resources/MenuNewPackage.png deleted file mode 100644 index aa9689d..0000000 Binary files a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Resources/MenuNewPackage.png and /dev/null differ diff --git a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Resources/MenuOpenPackage.png b/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Resources/MenuOpenPackage.png deleted file mode 100644 index 3141ff8..0000000 Binary files a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Resources/MenuOpenPackage.png and /dev/null differ diff --git a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Resources/MenuSavePackage.png b/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Resources/MenuSavePackage.png deleted file mode 100644 index 2b04e10..0000000 Binary files a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Resources/MenuSavePackage.png and /dev/null differ diff --git a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Resources/ToolDelete.png b/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Resources/ToolDelete.png deleted file mode 100644 index 7a2dab2..0000000 Binary files a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Resources/ToolDelete.png and /dev/null differ diff --git a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Resources/ToolDown.png b/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Resources/ToolDown.png deleted file mode 100644 index 1d608e8..0000000 Binary files a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Resources/ToolDown.png and /dev/null differ diff --git a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Resources/ToolExtract.png b/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Resources/ToolExtract.png deleted file mode 100644 index 2b04e10..0000000 Binary files a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Resources/ToolExtract.png and /dev/null differ diff --git a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Resources/ToolOpen.png b/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Resources/ToolOpen.png deleted file mode 100644 index 59a013c..0000000 Binary files a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Resources/ToolOpen.png and /dev/null differ diff --git a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Resources/ToolUp.png b/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Resources/ToolUp.png deleted file mode 100644 index 1f4f667..0000000 Binary files a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/Resources/ToolUp.png and /dev/null differ diff --git a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/WormsNET.ImgViewer.csproj b/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/WormsNET.ImgViewer.csproj deleted file mode 100644 index e3968ac..0000000 --- a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/WormsNET.ImgViewer.csproj +++ /dev/null @@ -1,142 +0,0 @@ - - - - Debug - x86 - 8.0.30703 - 2.0 - {D007CB58-9BB0-45C7-88C1-FA5945AB8EB9} - WinExe - Properties - WormsNET.ImgViewer - WormsNET.ImgViewer - v4.0 - 512 - - - SAK - SAK - SAK - SAK - - - x86 - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - true - - - x86 - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - true - - - Icon.ico - - - false - - - - - - - true - bin\x64\Debug\ - DEBUG;TRACE - true - full - x64 - bin\Debug\IMG Viewer.exe.CodeAnalysisLog.xml - true - GlobalSuppressions.cs - prompt - MinimumRecommendedRules.ruleset - ;C:\Program Files (x86)\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools\\Rule Sets - false - ;C:\Program Files (x86)\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools\FxCop\\Rules - false - - - bin\x64\Release\ - TRACE - true - true - pdbonly - x64 - bin\Release\IMG Viewer.exe.CodeAnalysisLog.xml - true - GlobalSuppressions.cs - prompt - MinimumRecommendedRules.ruleset - ;C:\Program Files (x86)\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools\\Rule Sets - ;C:\Program Files (x86)\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools\FxCop\\Rules - - - - - - - - - Component - - - Form - - - FormMain.cs - - - - - - FormMain.cs - - - ResXFileCodeGenerator - Resources.Designer.cs - Designer - - - True - Resources.resx - True - - - - SettingsSingleFileGenerator - Settings.Designer.cs - - - True - Settings.settings - True - - - - - - - - - - - - \ No newline at end of file diff --git a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/app.config b/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/app.config deleted file mode 100644 index e365603..0000000 --- a/src_old/WormsNET.ImgViewer/WormsNET.ImgViewer/app.config +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/src_old/WormsNET.PalEditor/WormsNET.PalEditor.sln b/src_old/WormsNET.PalEditor/WormsNET.PalEditor.sln deleted file mode 100644 index 2fe0c6c..0000000 --- a/src_old/WormsNET.PalEditor/WormsNET.PalEditor.sln +++ /dev/null @@ -1,29 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 2012 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WormsNET.PalEditor", "WormsNET.PalEditor\WormsNET.PalEditor.csproj", "{7DC25DDF-EFEE-4060-B4EC-7B78A363EE28}" -EndProject -Global - GlobalSection(TeamFoundationVersionControl) = preSolution - SccNumberOfProjects = 2 - SccEnterpriseProvider = {4CA58AB2-18FA-4F8D-95D4-32DDF27D184C} - SccTeamFoundationServer = https://tfs.codeplex.com/tfs/tfs32 - SccProjectUniqueName0 = WormsNET.PalEditor\\WormsNET.PalEditor.csproj - SccProjectName0 = WormsNET.PalEditor - SccLocalPath0 = WormsNET.PalEditor - SccLocalPath1 = . - EndGlobalSection - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|x86 = Debug|x86 - Release|x86 = Release|x86 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {7DC25DDF-EFEE-4060-B4EC-7B78A363EE28}.Debug|x86.ActiveCfg = Debug|x86 - {7DC25DDF-EFEE-4060-B4EC-7B78A363EE28}.Debug|x86.Build.0 = Debug|x86 - {7DC25DDF-EFEE-4060-B4EC-7B78A363EE28}.Release|x86.ActiveCfg = Release|x86 - {7DC25DDF-EFEE-4060-B4EC-7B78A363EE28}.Release|x86.Build.0 = Release|x86 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection -EndGlobal diff --git a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/BinaryReaderEx.cs b/src_old/WormsNET.PalEditor/WormsNET.PalEditor/BinaryReaderEx.cs deleted file mode 100644 index f352c53..0000000 --- a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/BinaryReaderEx.cs +++ /dev/null @@ -1,102 +0,0 @@ -using System; -using System.Collections.Generic; -using System.IO; -using System.Text; - -namespace WormsNET.PalEditor -{ - #region #### BinaryReaderEx ########################################################################### - #endregion - /// - /// Extension class for System.IO.BinaryReader. - /// - public static class BinaryReaderEx - { - #region ---- METHODS (PUBLIC) --------------------------------------------------------------------- - #endregion - - /// - /// Reads a string from the current stream. The string is available in the specified - /// binary format. - /// - /// The extended BinaryReader. - /// The binary format, in which the string should be read. - /// The string being read. - public static string ReadString(this BinaryReader br, BinaryStringFormat format) - { - return ReadString(br, format, new ASCIIEncoding()); - } - /// - /// Reads a string from the current stream. The string is available in the specified - /// binary format and encoding. - /// - /// The extended BinaryReader. - /// The binary format, in which the string should be read. - /// The encoding used for converting the string. This is not - /// relevant for the VariableLengthPrefix binary format. - /// The string being read. - public static string ReadString(this BinaryReader br, BinaryStringFormat format, - Encoding encoding) - { - if (format == BinaryStringFormat.VariableLengthPrefix) - { - return br.ReadString(); - } - else if (format == BinaryStringFormat.WordLengthPrefix) - { - int length = br.ReadInt32(); - return encoding.GetString(br.ReadBytes(length)); - } - else if (format == BinaryStringFormat.ZeroTerminated) - { - // Read single bytes - List bytes = new List(); - byte readByte = br.ReadByte(); - while (readByte != 0) - { - bytes.Add(readByte); - readByte = br.ReadByte(); - } - - // Convert to string - return encoding.GetString(bytes.ToArray()); - } - else if (format == BinaryStringFormat.NoPrefixOrTermination) - { - throw new ArgumentException("NoPrefixOrTermination cannot be used for read " - + "operations. Specify the length of the string instead to read strings with " - + "no prefix or terminator."); - } - else - { - throw new ArgumentOutOfRangeException("The specified binary string format is " - + "invalid."); - } - } - - /// - /// Reads a string from the current stream. The string has neither a prefix or postfix, the - /// length has to be specified manually. - /// - /// The extended BinaryReader. - /// The length of the string. - /// The string being read. - public static string ReadString(this BinaryReader br, int length) - { - return ReadString(br, length, new ASCIIEncoding()); - } - /// - /// Reads a string from the current stream. The string has neither a prefix or postfix, the - /// length has to be specified manually. The string is available in the specified encoding. - /// - /// The extended BinaryReader. - /// The length of the string. - /// The encoding to use for reading the string. - /// The string being read. - public static string ReadString(this BinaryReader br, int length, Encoding encoding) - { - return encoding.GetString(br.ReadBytes(length)); - } - - } // #### BinaryReaderEx ###################################################################### -} diff --git a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/BinaryStringFormat.cs b/src_old/WormsNET.PalEditor/WormsNET.PalEditor/BinaryStringFormat.cs deleted file mode 100644 index 93032fa..0000000 --- a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/BinaryStringFormat.cs +++ /dev/null @@ -1,38 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace WormsNET.PalEditor -{ - #region #### BinaryStringFormat ####################################################################### - #endregion - /// - /// Eine Auflistung, die gängige binäre Codierungstypen für Zeichenketten enthält. - /// - public enum BinaryStringFormat - { - /// - /// The string has a prefix of variable length determining the length of the string and no - /// postfix (.NET Framework default). - /// - VariableLengthPrefix, - - /// - /// The string has a prefix of 4 bytes determining the length of the string and no postfix. - /// - WordLengthPrefix, - - /// - /// The string has no prefix and is terminated with a byte of the value 0. - /// - ZeroTerminated, - - /// - /// The string has neither prefix nor postfix. This format is only valid for writing - /// strings. For reading strings, the length has to be specified manually. - /// - NoPrefixOrTermination - - } // #### BinaryStringFormat ################################################################## -} diff --git a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/BinaryWriterEx.cs b/src_old/WormsNET.PalEditor/WormsNET.PalEditor/BinaryWriterEx.cs deleted file mode 100644 index 24310e2..0000000 --- a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/BinaryWriterEx.cs +++ /dev/null @@ -1,61 +0,0 @@ -using System.IO; -using System.Text; - -namespace WormsNET.PalEditor -{ - #region #### BinaryWriterEx ########################################################################### - #endregion - /// - /// Extension class for System.IO.BinaryWriter. - /// - public static class BinaryWriterEx - { - #region ---- METHODS (PUBLIC) --------------------------------------------------------------------- - #endregion - - /// - /// Writes a string in the specified binary format to this stream and advances the current - /// position of the stream in accordance with the binary format and the specific characters - /// being written to the stream. - /// - /// The extended BinaryWriter. - /// The value to write. - /// The binary string format used for converting the string. - public static void Write(this BinaryWriter bw, string value, BinaryStringFormat format) - { - Write(bw, value, format, new ASCIIEncoding()); - } - /// - /// Writes a string in the specified binary format to this stream in the specified encoding - /// and advances the current position of the stream in accordance with the encoding used, - /// the binary format and the specific characters being written to the stream. - /// - /// The extended BinaryWriter. - /// The value to write. - /// The binary string format used for converting the string. - /// The encoding used for converting the string. - public static void Write(this BinaryWriter bw, string value, BinaryStringFormat format, - Encoding encoding) - { - if (format == BinaryStringFormat.VariableLengthPrefix) - { - bw.Write(value); - } - else if (format == BinaryStringFormat.WordLengthPrefix) - { - bw.Write(value.Length); - bw.Write(encoding.GetBytes(value)); - } - else if (format == BinaryStringFormat.ZeroTerminated) - { - bw.Write(encoding.GetBytes(value)); - bw.Write((byte)0); - } - else if (format == BinaryStringFormat.NoPrefixOrTermination) - { - bw.Write(encoding.GetBytes(value)); - } - } - - } // #### BinaryWriterEx ###################################################################### -} diff --git a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/ColorEx.cs b/src_old/WormsNET.PalEditor/WormsNET.PalEditor/ColorEx.cs deleted file mode 100644 index 93b776c..0000000 --- a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/ColorEx.cs +++ /dev/null @@ -1,28 +0,0 @@ -using System.Drawing; - -namespace WormsNET.PalEditor -{ - #region #### ColorEx ################################################################################### - #endregion - /// - /// Statische Erweiterungsklasse für Color. - /// - public static class ColorEx - { - #region ---- METHODEN (PUBLIC) --------------------------------------------------------------------- - #endregion - - /// - /// Gibt eine erhellte oder verdunkelte Farbe zurück. Werte kleiner als 1.0 entsprechen - /// dabei einer Verdunklung, Werte größer als 1.0 einer Erhellung der Ausgangsfarbe. - /// - /// Die erweiterte Farbe. - /// Der neue Helligkeitswert der Farbe. - public static Color Brighten(this Color color, float brightness) - { - return Color.FromArgb((byte)(color.R * brightness), (byte)(color.G * brightness), - (byte)(color.B * brightness)); - } - - } // #### ColorEx ############################################################################## -} diff --git a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/FormMain.Designer.cs b/src_old/WormsNET.PalEditor/WormsNET.PalEditor/FormMain.Designer.cs deleted file mode 100644 index bbd6d51..0000000 --- a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/FormMain.Designer.cs +++ /dev/null @@ -1,168 +0,0 @@ -namespace WormsNET.PalEditor -{ - partial class FormMain - { - /// - /// Erforderliche Designervariable. - /// - private System.ComponentModel.IContainer components = null; - - /// - /// Verwendete Ressourcen bereinigen. - /// - /// True, wenn verwaltete Ressourcen gelöscht werden sollen; andernfalls False. - protected override void Dispose(bool disposing) - { - if (disposing && (components != null)) - { - components.Dispose(); - } - base.Dispose(disposing); - } - - #region Vom Windows Form-Designer generierter Code - - /// - /// Erforderliche Methode für die Designerunterstützung. - /// Der Inhalt der Methode darf nicht mit dem Code-Editor geändert werden. - /// - private void InitializeComponent() - { - System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FormMain)); - this._btLoad = new System.Windows.Forms.Button(); - this._btSave = new System.Windows.Forms.Button(); - this._ofd = new System.Windows.Forms.OpenFileDialog(); - this._sfd = new System.Windows.Forms.SaveFileDialog(); - this._tkZoom = new System.Windows.Forms.TrackBar(); - this._lbZoom = new System.Windows.Forms.Label(); - this._paButtons = new System.Windows.Forms.Panel(); - this._palEditor = new WormsNET.PalEditor.PaletteEditor(); - ((System.ComponentModel.ISupportInitialize)(this._tkZoom)).BeginInit(); - this._paButtons.SuspendLayout(); - this.SuspendLayout(); - // - // _btLoad - // - this._btLoad.FlatAppearance.BorderColor = System.Drawing.Color.White; - this._btLoad.FlatAppearance.BorderSize = 2; - this._btLoad.FlatAppearance.MouseDownBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64))))); - this._btLoad.FlatAppearance.MouseOverBackColor = System.Drawing.Color.Gray; - this._btLoad.FlatStyle = System.Windows.Forms.FlatStyle.Flat; - this._btLoad.Location = new System.Drawing.Point(12, 12); - this._btLoad.Name = "_btLoad"; - this._btLoad.Size = new System.Drawing.Size(75, 26); - this._btLoad.TabIndex = 0; - this._btLoad.Text = "Load"; - this._btLoad.UseVisualStyleBackColor = true; - this._btLoad.Click += new System.EventHandler(this._btLoad_Click); - // - // _btSave - // - this._btSave.FlatAppearance.BorderColor = System.Drawing.Color.White; - this._btSave.FlatAppearance.BorderSize = 2; - this._btSave.FlatAppearance.MouseDownBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64))))); - this._btSave.FlatAppearance.MouseOverBackColor = System.Drawing.Color.Gray; - this._btSave.FlatStyle = System.Windows.Forms.FlatStyle.Flat; - this._btSave.Location = new System.Drawing.Point(93, 12); - this._btSave.Name = "_btSave"; - this._btSave.Size = new System.Drawing.Size(75, 26); - this._btSave.TabIndex = 1; - this._btSave.Text = "Save"; - this._btSave.UseVisualStyleBackColor = true; - this._btSave.Click += new System.EventHandler(this._btSave_Click); - // - // _ofd - // - this._ofd.Filter = "Palette Files|*.pal|All Files|*.*"; - this._ofd.Title = "Open Worms Palette File"; - // - // _sfd - // - this._sfd.Filter = "Palette Files|*.pal|All Files|*.*"; - this._sfd.Title = "Save Worms Palette File"; - // - // _tkZoom - // - this._tkZoom.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this._tkZoom.AutoSize = false; - this._tkZoom.LargeChange = 10; - this._tkZoom.Location = new System.Drawing.Point(400, 15); - this._tkZoom.Margin = new System.Windows.Forms.Padding(3, 6, 3, 3); - this._tkZoom.Maximum = 50; - this._tkZoom.Minimum = 10; - this._tkZoom.Name = "_tkZoom"; - this._tkZoom.Size = new System.Drawing.Size(100, 23); - this._tkZoom.TabIndex = 3; - this._tkZoom.TickStyle = System.Windows.Forms.TickStyle.None; - this._tkZoom.Value = 30; - this._tkZoom.Scroll += new System.EventHandler(this._tkZoom_Scroll); - // - // _lbZoom - // - this._lbZoom.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this._lbZoom.AutoSize = true; - this._lbZoom.Location = new System.Drawing.Point(355, 18); - this._lbZoom.Name = "_lbZoom"; - this._lbZoom.Size = new System.Drawing.Size(39, 15); - this._lbZoom.TabIndex = 2; - this._lbZoom.Text = "Zoom"; - // - // _paButtons - // - this._paButtons.Controls.Add(this._btLoad); - this._paButtons.Controls.Add(this._btSave); - this._paButtons.Controls.Add(this._lbZoom); - this._paButtons.Controls.Add(this._tkZoom); - this._paButtons.Dock = System.Windows.Forms.DockStyle.Top; - this._paButtons.Location = new System.Drawing.Point(0, 0); - this._paButtons.Name = "_paButtons"; - this._paButtons.Size = new System.Drawing.Size(512, 49); - this._paButtons.TabIndex = 0; - this._paButtons.Click += new System.EventHandler(this._paButtons_Click); - // - // _palEditor - // - this._palEditor.Dock = System.Windows.Forms.DockStyle.Fill; - this._palEditor.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this._palEditor.Location = new System.Drawing.Point(0, 49); - this._palEditor.Name = "_palEditor"; - this._palEditor.Size = new System.Drawing.Size(512, 512); - this._palEditor.TabIndex = 1; - this._palEditor.TileSize = new System.Drawing.Size(32, 32); - // - // FormMain - // - this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.BackColor = System.Drawing.Color.Navy; - this.ClientSize = new System.Drawing.Size(512, 561); - this.Controls.Add(this._palEditor); - this.Controls.Add(this._paButtons); - this.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.ForeColor = System.Drawing.Color.White; - this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); - this.MinimumSize = new System.Drawing.Size(464, 151); - this.Name = "FormMain"; - this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; - this.Text = "Worms.NET PAL Editor"; - this.Shown += new System.EventHandler(this.FormMain_Shown); - ((System.ComponentModel.ISupportInitialize)(this._tkZoom)).EndInit(); - this._paButtons.ResumeLayout(false); - this._paButtons.PerformLayout(); - this.ResumeLayout(false); - - } - - #endregion - - private System.Windows.Forms.Button _btLoad; - private System.Windows.Forms.Button _btSave; - private System.Windows.Forms.OpenFileDialog _ofd; - private System.Windows.Forms.SaveFileDialog _sfd; - private System.Windows.Forms.TrackBar _tkZoom; - private System.Windows.Forms.Label _lbZoom; - private System.Windows.Forms.Panel _paButtons; - private PaletteEditor _palEditor; - } -} - diff --git a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/FormMain.cs b/src_old/WormsNET.PalEditor/WormsNET.PalEditor/FormMain.cs deleted file mode 100644 index 3c36810..0000000 --- a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/FormMain.cs +++ /dev/null @@ -1,196 +0,0 @@ -using System; -using System.Drawing; -using System.IO; -using System.Windows.Forms; - -namespace WormsNET.PalEditor -{ - #region #### FormMain ################################################################################## - #endregion - /// - /// Hauptfenster der Anwendung. - /// - public partial class FormMain : Form - { - #region ---- KONSTANTEN ---------------------------------------------------------------------------- - #endregion - - const short _palVersion = 0x0300; - - #region ---- KONSTRUKTOREN ------------------------------------------------------------------------- - #endregion - - /// - /// Standardkonstruktor. - /// - public FormMain() - { - InitializeComponent(); - RandomizeBackColor(); - } - - #region ---- METHODEN (PRIVATE) -------------------------------------------------------------------- - #endregion - - private void RandomizeBackColor() - { - Random rand = new Random(); - int colorPart = rand.Next(0, 4); - int colorValue = rand.Next(50, 90); - Color color = Color.Black; - switch (colorPart) - { - case 0: - color = Color.FromArgb(colorValue, 0, 0); - break; - case 1: - color = Color.FromArgb(0, colorValue, 0); - break; - case 2: - color = Color.FromArgb(0, 0, colorValue); - break; - case 3: - color = Color.FromArgb(colorValue, colorValue, 0); - break; - } - BackColor = color; - Color lighterColor = color.Brighten(1.5f); - Color lightColor = color.Brighten(1.8f); - _btLoad.FlatAppearance.MouseOverBackColor = lightColor; - _btSave.FlatAppearance.MouseOverBackColor = lightColor; - _btLoad.FlatAppearance.MouseDownBackColor = lighterColor; - _btSave.FlatAppearance.MouseDownBackColor = lighterColor; - } - - private void ShowOpenFileDialog(bool closeAtAbort) - { - if (_ofd.ShowDialog() == DialogResult.OK) - { - LoadPal(_ofd.FileName); - } - else - { - Close(); - } - } - - private void ShowSaveFileDialog() - { - if (_sfd.ShowDialog() == DialogResult.OK) - { - SavePal(_sfd.FileName); - } - } - - private void LoadPal(string filename) - { - FileStream stream = new FileStream(filename, FileMode.Open, FileAccess.Read, - FileShare.Read); - using (BinaryReader reader = new BinaryReader(stream)) - { - // RIFF Header - string riff = reader.ReadString(4); // RIFF - int dataSize = reader.ReadInt32(); - string type = reader.ReadString(4); // PAL - - // Data Chunk - string chunkType = reader.ReadString(4); // data - int chunkSize = reader.ReadInt32(); - short palVersion = reader.ReadInt16(); - short palEntries = reader.ReadInt16(); - - _palEditor.Clear(); - for (int i = 0; i < palEntries; i++) - { - byte red = reader.ReadByte(); - byte green = reader.ReadByte(); - byte blue = reader.ReadByte(); - byte flags = reader.ReadByte(); - _palEditor.Add(Color.FromArgb(red, green, blue)); - } - } - - string shortFilename = Path.GetFileName(filename); - _ofd.FileName = shortFilename; - _sfd.InitialDirectory = _ofd.InitialDirectory; - _sfd.FileName = shortFilename; - Text = Application.ProductName + " - " + shortFilename; - } - - private void SavePal(string filename) - { - // Länge berechnen - int length = 4 + 4 + 4 + 4 + 2 + 2 + _palEditor.Count * 4; - - FileStream stream = new FileStream(filename, FileMode.Create, FileAccess.Write, - FileShare.None); - using (BinaryWriter bw = new BinaryWriter(stream)) - { - // RIFF Header - bw.Write("RIFF", BinaryStringFormat.NoPrefixOrTermination); - bw.Write(length); - bw.Write("PAL ", BinaryStringFormat.NoPrefixOrTermination); - - // Data Chunk - bw.Write("data", BinaryStringFormat.NoPrefixOrTermination); - bw.Write(_palEditor.Count * 4 + 4); - bw.Write(_palVersion); - bw.Write((short)_palEditor.Count); - - foreach (Color color in _palEditor.Colors) - { - bw.Write((byte)color.R); - bw.Write((byte)color.G); - bw.Write((byte)color.B); - bw.Write((byte)0); - } - } - - string shortFilename = Path.GetFileName(filename); - Text = Application.ProductName + " - " + shortFilename; - _ofd.InitialDirectory = _sfd.InitialDirectory; - _ofd.FileName = shortFilename; - _sfd.FileName = shortFilename; - } - - #region ---- EVENTHANDLER -------------------------------------------------------------------------- - #endregion - - private void FormMain_Shown(object sender, EventArgs e) - { - if (Environment.GetCommandLineArgs().Length == 2) - { - string filename = Environment.GetCommandLineArgs()[1]; - if (File.Exists(filename)) - { - LoadPal(filename); - } - } - else - { - ShowOpenFileDialog(true); - } - } - - private void _paButtons_Click(object sender, EventArgs e) - { - RandomizeBackColor(); - } - - private void _btLoad_Click(object sender, EventArgs e) - { - ShowOpenFileDialog(false); - } - - private void _btSave_Click(object sender, EventArgs e) - { - ShowSaveFileDialog(); - } - - private void _tkZoom_Scroll(object sender, EventArgs e) - { - _palEditor.TileSize = new Size(_tkZoom.Value, _tkZoom.Value); - } - - } // #### FormMain ############################################################################# -} diff --git a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/FormMain.resx b/src_old/WormsNET.PalEditor/WormsNET.PalEditor/FormMain.resx deleted file mode 100644 index c1146c5..0000000 --- a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/FormMain.resx +++ /dev/null @@ -1,1049 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - 17, 17 - - - 92, 17 - - - - - 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 - XQB2dnYAfHx3AH9/fwCBGwMAhhsCAIUcAgCEGgYAiRsDAJEbAwCXGgQAnRoEAKYaBACoGQQArBoEALIb - BACoFhIAhSEJAJkPNgDBHgIAyR8CANIhAQDdIwAA4CMAAOEkAADnKAAA7y0BAPMwAgD4NAMA/jcDAP02 - BgD+OAMA/jgEANocIADuMz8A/kENAOtBHAD+SRUA/lUiAP9XJAD/YS0A/mk1AP5wPACDBk0AngR8AK4E - dQCoBHgAzgtaAO0NeACpaFsAhGtpAJV+fgDHU0AA+WxBAP50QgD+fk8AR44fAGSRCQBSvS0AFJtXAAOB - agAEsHQAD9J+AE/YRABf3HUAgL0DAImuMQCN4AUAluABAKD+AwCi9xUAkecsAKr9PQCNnXEA/Jt6ALHs - WAC32nIACC6JAAozlQA1BKEANgWlAAszqABpAoAAaAOKAGgEmwB8BJMAZgKtAANchwAEVZIAA1GfAA01 - xQARMssAGzHeACIw4ABKANoAcgDMAG4B2ABMAOAAXgL1AG0D5gB3HuoAZgP/AH4j/wABTMQAAEzeAAFM - 7QADTf4AEVT+AA164QAibeMAP3DtAD1q/gBMRuEAVU/hAFF5+wCJA7EAuQGmAOAAlgDxPpgA3Qe1AO0D - ogD+A6IA/gaiAPwVowD+OqoA/j2rAPVCrAD8UrMAsgHEALEA4AC0AeIAjTrzAJM9/gDcM9MAzQPzANEE - +wDVA/4A1gb+ANUz8QDqPP4A30PvANBT6gAEiIsABJGlAAG2oAB9jI0AAcSKAAPbqwAB6KAAD/GiAAP2 - sgADkN0AAbXEAACt0QACpNgAAbXYABvHygAY/sIAPP7UAAPG+QADyP4AN8HkACzK/gA9yPsAQvPEAEXx - ywCGhoYAk5OTAJSVkgCampoApaWlAKanrAC3p6cAqbCvALGrtAC1tbUAv7+/APichAD5pYcA/LWbAPW3 - vgDO6awA3Pa6AJSr9QD6kMsAwJf1AMmk+QCf2fEAqvfnAMHAwADFxsUAx8jIAMrKygDMzMwA0sjIANfX - 1wDY2NgA4ODgAOXl5QDo6OgA8/DwAPr6+gD+/v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAADozQAAAAAAAAAAAAAAAAAAAAAAAAAAJuTo5CXNAAAAAAAAAAAAAAAA - AOrKISEk5ujo5BDKAAAAAAAAAAAAAAAA4O3t5snM0uTn0AIRAAAAAAAAAAAAAAAADlbr7e3n4OTitAQP - bAAAAAAAAAAAAABVAQEOz+3t7ebOBhscXAAAAAAAAAAAAAA0CgcBASLl7dEZBh8dW2UAAAAAAAAAAFQp - KSkJAQEBIwMSFR5fXmRvAAAAAAAAADAuKykpCwgBDRcTFnqxYF1nAAAAAAAAVzAwLy0pKSkMGHUUcHuy - tWFmaQAAAAAAOzgyMDAvLSlOGnZycXy+s7diaG4AAABHOzs7NzAwLzVReHdydIq8u7m4amvYANRCPzw7 - Ozk2M1BPlnmBfYu9wrbAY2vZAElCQkI+Ozs7UpiXpIKEfoy6w7/BxwAA1U1MSD9CPz5EmJijpIOFf42P - xcTI3wAAAFpNTUtGQj9TnJupq4aIgI6QxsYAAAAAAADWWU1NSkWenJqrq4eJk5KR3gAAAAAAAAAAAG1N - WJmgoKiuraanlJXaAAAAAAAAAAAAAAAA19uioa+usNzdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAA////AP/8/wD/8D8A/gA/APwAPwD8AB8A+AAfAPgADwDwAAcA8AAHAOAA - AwDgAAEAwAAAAIAAAACAAAMAAAADAIAADwDAAB8A8AA/APwB/wD///8A////AP///wD///8AKAAAABAA - AAAgAAAAAQAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+Dg0ADDA/AEEODQBQEA4AWhMJAEUZ - GQB3GQUAfxoEAFUsLAAwXxgAJhNAADwEcAAGL2AABSt8AFIHRgBzA3MACm9PAAN4bwBscF8AX3RxAGJi - YgB1dXUAhhwCAIsbAwCQGwMAnxoEAKMaBACoGQUArhoEALQcBACjFxEAiykSAIIOLQDLIAEA1CQEAN4j - AADgIwAA4iQAAOQmAADwLgIA+zYDAP43AwD/OAUA/jwIAOYgJQD9RxUA/1EdAP9oNAD/bTkA/nI/AKEF - cQDJCV8Ag2pqAPNyUwDyWmcAPJwyAHOZKQAKvXYAQt5UAIbVCACj+BgAkOw9AP2VbwD7lnIAt9d2AAg4 - mwAIO7wAQgSPAH0EnQBCA6oACzvTABQ66QBKANUAXwP0AHYY/gA6S+oAC2jrAAJ+4QA4bfEAuwGWAPMa - gQDrAZoAxwG/AP0FogD+PaoA7zewAI14gwCjAdIAqgHhALIJ7wCTPP4AujbuANAG5wDoPPwABIaSAAKS - tgAAxpkACfiuAHTpogAAjM4AAsfFAC/zxwAExO8ANMr+AGbd1QCfhYEAjZaMAKGLiwCmpqUApaSrAK6u - rgC0uasAyoyDAP2ukgDB74QAhYftAI7Y9QCvwPkAxcXFAMrKygDMzMwA0dHRANnZ2QDo5OQA9fX1APj3 - 9wD7+/sAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AABve21tAAAAAAAAAAAAdxUWeXtrEwAAAAAAAAAANXx/eXd6FApwAAAAAAAAagMGbH5+bgIROQAAAAAA - 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 - /v7+/v7+/v7+/v7+/f39/9ra2v6urq7+srKy/7e3t/64uLj+xcXF/8rKyv7BwcH+z9DQ/zBOTv4KMCf+ - Djsj/zVZCP5VggP+WnMt1oGBgXKOjo5Sk5OTRJiYmDicnJwsoaGhIKSkpBalpaUMmZmZBQAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAiIiINnx8fHpjV1euPg8P/T4ODv46DAz/ - ZUhI/tHIyP79/f3//v7+/v7+/v7+/v7+//////7+/v75+fn+z8/P/8TExP7d3d3+0NDQ/9XV1f69vb7+ - trm7/z9ZWv4MNTL+CEoy/xRqOf5LdAL+VoUD/mh1ULCPj49VlpaWPpqamjKfn58npKSkHKSkpBCdnZ0G - n5+fAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACRkZExhoaGZ3x7e3xIIyPp - Pg4O/z4ODv8+Dg7/PQ0N/z0TE/+EbW3/7Ojo/////////////////////////////v7+/+7u7v/ExMT/ - 3Nzc/9LS0v+xs7T/Giw+/wslMP8NOzr/A2BG/wOCXP8wZRX/VIEC/2WPD/OBhnWDmZmZPJ2dnSygoKAh - oKCgCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmZmZAZeXlyyPj49T - iYmJYHhUTrJDDw3+PQ0O/z4NDf4+Dg7/PQ0N/j4ODv48DAz/Rx4e/qqYmP729PT+//////7+/v7+/v7+ - //////7+/v77+/v+xMTE/9TU1f5BQVb+DSA0/wslNf4KQUb+BFdQ/wJ+Wv4RdUP+XIYF/3eoBP51lyXe - m5yZU6CklxegpJgGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACfn58B - nZ2dIpaWlkCSkpJLjIF/b4YnEfCBGwP/XRMJ/z0NDv89DQ7/Pg4O/z4ODv8+Dg7/Pg4O/zsMDP9hPT3/ - xrm5//79/f/////////////////4+Pj/tLK1/8G+xf8cFzv/Cx4y/wspP/8CWnH/AmRz/wJxUf8EhF3/ - Oncd/3OhBP93qAX+jaJapsLHtRgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAKSkpAGioqIZnp6eLZqamjeXlpZEik9BvIUcA/6FGwL+hhwC/3sZBP5TEgr/Pg0N/j0NDv4+Dg7/ - PQ0N/j0NDf49DQ3+PA0N/3JTU/7Z0dH+/v39//7+/v6+t73+Wklk/yINNf4TDTX+DBwx/w0mPP4DUGX+ - AmqC/wJkUP4Dlmb+EZZW/1+KBv53qAT+eKYL+KSwinW7zJgKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAKampg+mpqYboaGhJZ6eni6YhoJohiAI+YUbAv6FGwL+hhwD/4YbAv6HGwL/ - cxgF/ksQDP48DQ7/Pg0N/j0NDf49DQ3+Pg4O/z0NDf4+FRX+jXd3/8/Gyv48GDf+Jw01/yIMNv4TDTj+ - Bx5U/wQpeP4CRmj+A2qE/wNqZP4Enmj+Bahu/zaCJv5yoQT+iccC/5PQGeW5wKpGudOFAwAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoKCgBaioqA2mpqYUpKSkHKWjoi+iRDTLjBsD/4UcA/+FHAP/ - hhwD/4YcA/+GHAP/hRwC/4YcAv9pFgf/QQ4N/z0NDv8+Dg7/Pg4O/z4ODv89Dg7/PA0N/zUTKP8yDDH/ - KQ05/yIKQP8hCVv/BR9n/wMqhP8CPGv/A2mC/wNygf8Ei1z/Bahu/xGaWf9wqwX/luAA/5fgAP6WwjzC - x8+1JgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoaGhAZ+dnQWjnZwJqaCeELKFfnGoHAf8 - qRoE/5wbA/6IGwP+hRwD/4UbAv6GHAP/hRsC/oUbAv6GHAL/ghsD/loTCf49DQ7+Pg0O/z0NDf49DQ3+ - OQwV/zkNMf4tCzP+KQ07/ygGVP4xA4H+CRxr/wIqg/4CPHX+BIaa/wSSqP4DfWH+BKVs/wWnbf49nSz+ - jdMA/5bgAP6W3wH9n7lsksbYoxIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - w5uVGK85KNqoGQT+qRoF/6kZBP6nGgT+lRoE/4YbA/6FHAP/hRsC/oUbAv6GHAP/hRwC/oYcAv54GQX+ - ThEL/z0NDv4+DQ/+TQgz/0QMOv5YA2n+ZQR8/zQDav4xA4L+Chtr/wIpg/4DM3v+BH2R/wSSqP4Ef3v+ - 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 - P8j7+LPR21d71tsBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD7jmYK+aB/aPx9T+X+cT3+ - /3E9//5wPP7+cDz+/3A8//5xPf7+bTn+/08b//42BP7+OAP/4B5D/vcCnP7+A6H//gOh/v4Dof7+A6H+ - wQO6/9MD/P7VA/7+1gT//9ED+/5jBdP+Zgb+/2cH/v5oCf7+Ux3f/zdf4/4+a/7+PWr//z1q/v4yc9T+ - OLzs/kXK+/Jx0PO0oNnvV5XW6woAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAPqniRf5nXuQ/XdG8v5xPf7+cDz+/3E9//5wPP7+cDz+/3I+//5nM/7wQCP/5zeT/v4xqf7/Hqb/ - /g2j/v4Eof7xBaD+whDX/9gK/v7WBv7+1QP//8kF9P6BMdn+kz3+/5Q9/v6VPv7+b0Df/zZe4/48af7+ - PWr//z1q/v5FcuHykMHWfJTK6huC0fACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAD7pIQD+baeNfqQabX+cj/8/3E9//9xPf//cT3//3E9//1wPf/eRnH/ - +zyo//89q///Pav//z2r//8zqf/eI6n/3Trv/+s8///pOf//5zP//8gp6v+FNeP/lDz//5Q9//+UPP// - cT7g/zVd4f88af7/PWr//z1p//9TduvcucrhIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPqaeAX3oIdX+4NZ0/5xPf3+cDz+ - /3E9/+tdT/7tOZ3//jyq/v48qv7/Pav//jyq/v48qv7OM7v+5zz7/+o8/v7qPP7+6z3//7s13/6KOe7+ - lD3//5M8/v6TPf7+eELk/jde3/tHcPrvXID303GP9KqouOxWj6jrBAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - +pJtDvmYdnL7fE7p+G9D+NxMkvP7PKr+/jyq/v48qv7/Pav//j2q/vg8qv7MN9T+6jz+/+o8/v7qPP7+ - 6jz//6w32f6NOvT+kz3+/5Q9/v6ROf79lmTkyqCo4VaRnO0nfpjxC3aT8wEAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAD2po8Y8amkKe+KpRbxir089W+6fvdht8n8RKz0/j2q/eFFr+7cRu3u - 6kH9+Oo9/v3qPP/+6jv+/rVt0Lm5mOZuwqDtZMeo7lnMtO5JxrPtG5aG7gIAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPhvvQb1hsYr - 84zJXuqZ1Crpdd0U6IDsK+dx9E/qg/Zw5IDyetui7BsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////////FGP////4//8UY////+A//xRj////gAf/FGP///4A - AP8UY//8CAAAPxRj//gAAAAHFGP/+AAAAAEUY//wAAAAARRj/+AAAAADFGP/wAAAAAMUY/+AAAAAAxRj - /wAAAAAfFGP8AAAAAD8UY/gAAAAAfxRj8AAAAAA/FGPwAAAAAB8UY+AAAAAAHxRj4AAAAAAPFGP8AAAA - AAcUY/gAAAAAAxRj+AAAAAADFGPwAAAAAAEUY/AAAAAAABRj4AAAAAAAFGPAAAAAAAAUY8AAAAAAABRj - gAAAAAAAFGOAAAAAAAEUYwAAAAAAAxRjAAAAAAAHFGMAAAAAAA8UYwAAAAAAHxRjAAAAAAA/FGPAAAAA - AH8UY/AAAAAB/xRj+AAAAAf/FGP+AAAAB/8UY/+AAAAf/xRj/+AAAP//FGP//wA///8UY////////xRj - ////////FGP///////8UY////////xRj////////FGP///////8UY////////xRjKAAAACAAAABAAAAA - AQAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAt7e3AQAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvLy8DdXV1XWrq6ub - fHx8Qm1tbQgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZmZmFW5ubnK2trbh - 5OTk/s3Nzf1eXl7SYmJin3FxcV17e3shgoKCAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAM3NzQGvr68PfHx8D1dXVwYAAAAASkpKIj8/P4hNTU3m - xMTE/eDg4P/i4uL+zs7O/4yOhPZVVlS2a2trlnd3d4KEhIRejIyMLZSUlAoAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA3t7eX8PDw+pVVVXjMTEx2zMzM9InJyfn - a2tr983Nzf7i4uL/6+vr//Dw8P/a2tr/aW5Z/j5CKONra2uWeXl5fYODg2iNjY1UlZWVP52dnSKhoaEL - n5+fAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ2cnELo6Ojy//////j4+P6goKD2 - Ojo673h4ePq1tbX+wcHB/8HBwf7BwcH/zs7O/srKyv8mRDP+LDUN/lNWRsB8fHx3h4eHYY+Pj02Xl5c6 - np6eJ6WlpRadnZ0IAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB2cXE9d2pqz+/r6/7///// - ///////////v7+//pqam/5iYmP+zs7P/ycnJ/9fX1//X19f/r7S0/x1ANv8ePhX/UnkL93F1aJOKiopZ - kpKSRpqamjOhoaEhpqamEZubmwUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAg4GBN25oaJhAExP5 - SyEh/qmZmf/5+Pj+//////7+/v7/////6+vr/sbGxv/MzMz+0NDQ/8fHx/6jqqz/DDMw/gxOMf9CcQr+ - W3wf4oiJh2OWlpY9nZ2dK6OjoxqhoaEKnp6eAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJGRkS+FhIRq - UjQ01D4ODv8+Dg7/PA0N/106Ov/LwcH//v7+/////////////f39/97e3v/Pz8//rq+z/xMmOf8MNDX/ - A2dM/xxxNf9cigP+eI5Gt5qamjqgoJ8eoaGhBQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACbm5si - kpKSSolvaYp2Ggb9TBAL/z0NDv4+Dg7/Pg4O/j4PD/9+X1/+5d/f//7+/v7/////+/v7/r+9wP9WU2v+ - DCA2/wZHWf4CZGL/BYBZ/lSHEP93pgj7oKuGaaawjwIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - pKSkFJ6eni2Zl5ZDiDQh3oYcAv+FGwP/bBYG/0UPDP89DQ7/Pg4O/z0NDf9DFRX/lH9///Tx8f+2rLX/ - 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 - XUfa/zxo+/89av79W37w1J275RAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAD6k3AE+pBqWfx/Ut7xalD47z6h/f49qv/+PKr+/zyq/9k4wf7qPP7/6jz+/uY8+/+JN+L+ - kz3+/5I7/v6IbN/Fe4/uboCa8TeJofEQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9pl+C/GUmhbxfq4h9mu5YfhourP3V7Lb3Gfdq+lf+cnpTPvq - 4Ffy2riM4FS7j+5BwJ3vM7Sb7g0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPB8ygMAAAAA - AAAAAOh09gXfhPAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - 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 - AAOsQcAHrEHgH6xB//+sQf//rEE= - - - \ No newline at end of file diff --git a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/Icon.ico b/src_old/WormsNET.PalEditor/WormsNET.PalEditor/Icon.ico deleted file mode 100644 index 8b7c91e..0000000 Binary files a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/Icon.ico and /dev/null differ diff --git a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/PaletteEditor.Designer.cs b/src_old/WormsNET.PalEditor/WormsNET.PalEditor/PaletteEditor.Designer.cs deleted file mode 100644 index 927720e..0000000 --- a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/PaletteEditor.Designer.cs +++ /dev/null @@ -1,195 +0,0 @@ -namespace WormsNET.PalEditor -{ - partial class PaletteEditor - { - /// - /// Erforderliche Designervariable. - /// - private System.ComponentModel.IContainer components = null; - - /// - /// Verwendete Ressourcen bereinigen. - /// - /// True, wenn verwaltete Ressourcen gelöscht werden sollen; andernfalls False. - protected override void Dispose(bool disposing) - { - if (disposing && (components != null)) - { - components.Dispose(); - } - base.Dispose(disposing); - } - - #region Vom Komponenten-Designer generierter Code - - /// - /// Erforderliche Methode für die Designerunterstützung. - /// Der Inhalt der Methode darf nicht mit dem Code-Editor geändert werden. - /// - private void InitializeComponent() - { - this.components = new System.ComponentModel.Container(); - this._cmColor = new System.Windows.Forms.ContextMenuStrip(this.components); - this._tstbColor = new System.Windows.Forms.ToolStripTextBox(); - this._tsmiColorDialog = new System.Windows.Forms.ToolStripMenuItem(); - this._tsmiSeparator1 = new System.Windows.Forms.ToolStripSeparator(); - this._tsmiBrighten = new System.Windows.Forms.ToolStripMenuItem(); - this._tsmiDarken = new System.Windows.Forms.ToolStripMenuItem(); - this._tsmiInverse = new System.Windows.Forms.ToolStripMenuItem(); - this._tsmiColorChannel = new System.Windows.Forms.ToolStripMenuItem(); - this._tsmiBgr = new System.Windows.Forms.ToolStripMenuItem(); - this._tsmiBRG = new System.Windows.Forms.ToolStripMenuItem(); - this._tsmiGBR = new System.Windows.Forms.ToolStripMenuItem(); - this._tsmiGRB = new System.Windows.Forms.ToolStripMenuItem(); - this._tsmiRBG = new System.Windows.Forms.ToolStripMenuItem(); - this._cd = new System.Windows.Forms.ColorDialog(); - this._tsmiDesaturate = new System.Windows.Forms.ToolStripMenuItem(); - this._cmColor.SuspendLayout(); - this.SuspendLayout(); - // - // _cmColor - // - this._cmColor.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { - this._tstbColor, - this._tsmiColorDialog, - this._tsmiSeparator1, - this._tsmiBrighten, - this._tsmiDarken, - this._tsmiInverse, - this._tsmiDesaturate, - this._tsmiColorChannel}); - this._cmColor.Name = "_cmColor"; - this._cmColor.Size = new System.Drawing.Size(161, 189); - // - // _tstbColor - // - this._tstbColor.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; - this._tstbColor.Name = "_tstbColor"; - this._tstbColor.Size = new System.Drawing.Size(100, 23); - this._tstbColor.TextChanged += new System.EventHandler(this._tstbColor_TextChanged); - // - // _tsmiColorDialog - // - this._tsmiColorDialog.Name = "_tsmiColorDialog"; - this._tsmiColorDialog.Size = new System.Drawing.Size(160, 22); - this._tsmiColorDialog.Text = "Color Dialog..."; - this._tsmiColorDialog.Click += new System.EventHandler(this._tsmiColorDialog_Click); - // - // _tsmiSeparator1 - // - this._tsmiSeparator1.Name = "_tsmiSeparator1"; - this._tsmiSeparator1.Size = new System.Drawing.Size(157, 6); - // - // _tsmiBrighten - // - this._tsmiBrighten.Name = "_tsmiBrighten"; - this._tsmiBrighten.Size = new System.Drawing.Size(160, 22); - this._tsmiBrighten.Text = "Brighten"; - this._tsmiBrighten.Click += new System.EventHandler(this._tsmiBrighten_Click); - // - // _tsmiDarken - // - this._tsmiDarken.Name = "_tsmiDarken"; - this._tsmiDarken.Size = new System.Drawing.Size(160, 22); - this._tsmiDarken.Text = "Darken"; - this._tsmiDarken.Click += new System.EventHandler(this._tsmiDarken_Click); - // - // _tsmiInverse - // - this._tsmiInverse.Name = "_tsmiInverse"; - this._tsmiInverse.Size = new System.Drawing.Size(160, 22); - this._tsmiInverse.Text = "Inverse"; - this._tsmiInverse.Click += new System.EventHandler(this._tsmiInverse_Click); - // - // _tsmiColorChannel - // - this._tsmiColorChannel.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { - this._tsmiBgr, - this._tsmiBRG, - this._tsmiGBR, - this._tsmiGRB, - this._tsmiRBG}); - this._tsmiColorChannel.Name = "_tsmiColorChannel"; - this._tsmiColorChannel.Size = new System.Drawing.Size(160, 22); - this._tsmiColorChannel.Text = "Color Channel"; - // - // _tsmiBgr - // - this._tsmiBgr.Name = "_tsmiBgr"; - this._tsmiBgr.Size = new System.Drawing.Size(96, 22); - this._tsmiBgr.Text = "BGR"; - this._tsmiBgr.Click += new System.EventHandler(this._tsmiBgr_Click); - // - // _tsmiBRG - // - this._tsmiBRG.Name = "_tsmiBRG"; - this._tsmiBRG.Size = new System.Drawing.Size(96, 22); - this._tsmiBRG.Text = "BRG"; - this._tsmiBRG.Click += new System.EventHandler(this._tsmiBRG_Click); - // - // _tsmiGBR - // - this._tsmiGBR.Name = "_tsmiGBR"; - this._tsmiGBR.Size = new System.Drawing.Size(96, 22); - this._tsmiGBR.Text = "GBR"; - this._tsmiGBR.Click += new System.EventHandler(this._tsmiGBR_Click); - // - // _tsmiGRB - // - this._tsmiGRB.Name = "_tsmiGRB"; - this._tsmiGRB.Size = new System.Drawing.Size(96, 22); - this._tsmiGRB.Text = "GRB"; - this._tsmiGRB.Click += new System.EventHandler(this._tsmiGRB_Click); - // - // _tsmiRBG - // - this._tsmiRBG.Name = "_tsmiRBG"; - this._tsmiRBG.Size = new System.Drawing.Size(96, 22); - this._tsmiRBG.Text = "RBG"; - this._tsmiRBG.Click += new System.EventHandler(this._tsmiRBG_Click); - // - // _cd - // - this._cd.AnyColor = true; - this._cd.FullOpen = true; - this._cd.SolidColorOnly = true; - // - // _tsmiDesaturate - // - this._tsmiDesaturate.Name = "_tsmiDesaturate"; - this._tsmiDesaturate.Size = new System.Drawing.Size(160, 22); - this._tsmiDesaturate.Text = "Desaturate"; - this._tsmiDesaturate.Click += new System.EventHandler(this._tsmiDesaturate_Click); - // - // PaletteEditor - // - this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.Name = "PaletteEditor"; - this.Size = new System.Drawing.Size(175, 173); - this._cmColor.ResumeLayout(false); - this._cmColor.PerformLayout(); - this.ResumeLayout(false); - - } - - #endregion - - private System.Windows.Forms.ContextMenuStrip _cmColor; - private System.Windows.Forms.ToolStripTextBox _tstbColor; - private System.Windows.Forms.ToolStripMenuItem _tsmiColorDialog; - private System.Windows.Forms.ToolStripSeparator _tsmiSeparator1; - private System.Windows.Forms.ToolStripMenuItem _tsmiBrighten; - private System.Windows.Forms.ToolStripMenuItem _tsmiDarken; - private System.Windows.Forms.ToolStripMenuItem _tsmiInverse; - private System.Windows.Forms.ToolStripMenuItem _tsmiColorChannel; - private System.Windows.Forms.ToolStripMenuItem _tsmiBgr; - private System.Windows.Forms.ToolStripMenuItem _tsmiBRG; - private System.Windows.Forms.ToolStripMenuItem _tsmiGBR; - private System.Windows.Forms.ToolStripMenuItem _tsmiGRB; - private System.Windows.Forms.ToolStripMenuItem _tsmiRBG; - private System.Windows.Forms.ColorDialog _cd; - private System.Windows.Forms.ToolStripMenuItem _tsmiDesaturate; - } -} diff --git a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/PaletteEditor.cs b/src_old/WormsNET.PalEditor/WormsNET.PalEditor/PaletteEditor.cs deleted file mode 100644 index 3ac7a70..0000000 --- a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/PaletteEditor.cs +++ /dev/null @@ -1,451 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Drawing; -using System.Windows.Forms; - -namespace WormsNET.PalEditor -{ - #region #### PaletteEditor ############################################################################# - #endregion - /// - /// Zeigt eine Farbpalette an und erlaubt deren Bearbeitung. - /// - [ToolboxBitmap(typeof(Panel))] - public partial class PaletteEditor : UserControl - { - #region ---- MEMBERVARIABLEN ----------------------------------------------------------------------- - #endregion - - List _colors; - int? _hoveredIndex; - int? _lastSelectedIndex; - List _selectedIndizes; - - Size _tileCount; - Size _tileSize; - - Pen _selectPen1; - Pen _selectPen2; - Pen _hoverPen1; - Pen _hoverPen2; - - #region ---- KONSTRUKTOREN ------------------------------------------------------------------------- - #endregion - - /// - /// Standardkonstruktor. - /// - public PaletteEditor() - { - // Doublebuffering und Resizeredraw einschalten - SetStyle(ControlStyles.AllPaintingInWmPaint | ControlStyles.OptimizedDoubleBuffer - | ControlStyles.ResizeRedraw, true); - - // Membervariablen initialisieren - _colors = new List(); - _selectedIndizes = new List(); - _tileSize = new Size(32, 32); - - // Grafikobjekte erstellen - _selectPen1 = new Pen(Color.Black); - _selectPen2 = new Pen(Color.White); - _hoverPen1 = new Pen(Color.FromArgb(128, Color.Black)); - _hoverPen2 = new Pen(Color.FromArgb(128, Color.White)); - - InitializeComponent(); - } - - #region ---- EIGENSCHAFTEN ------------------------------------------------------------------------- - #endregion - - /// - /// Gibt die Größe eines Farbeintrags an oder legt sie fest. - /// - public Size TileSize - { - get { return _tileSize; } - set - { - _tileSize = value; - CalculateSizes(); - Invalidate(); - } - } - - #region ---- METHODEN (PUBLIC) --------------------------------------------------------------------- - #endregion - - /// - /// Gibt die Liste der angezeigten Farben an. - /// - public ReadOnlyCollection Colors - { - get { return _colors.AsReadOnly(); } - } - - /// - /// Fügt die übergebene Farbe hinzu. - /// - /// Die hinzuzufügende Farbe. - public void Add(Color color) - { - _colors.Add(color); - Invalidate(); - } - - /// - /// Löscht alle Farben. - /// - public void Clear() - { - _colors = new List(); - Invalidate(); - } - - /// - /// Gibt die Anzahl der angezeigten Farben an. - /// - public int Count - { - get { return _colors.Count; } - } - - #region ---- METHODEN (PROTECTED) ------------------------------------------------------------------ - #endregion - - protected override void OnKeyDown(KeyEventArgs e) - { - if (e.Modifiers == Keys.Control && e.KeyCode == Keys.A) - { - int selectedCount = _selectedIndizes.Count; - _selectedIndizes.Clear(); - if (selectedCount < _colors.Count / 2) - { - // Minderheit der Indizes waren ausgewählt, alle auswählen - for (int i = 0; i < _colors.Count; i++) - { - _selectedIndizes.Add(i); - } - } - } - Invalidate(); - - base.OnKeyDown(e); - } - - protected override void OnMouseClick(MouseEventArgs e) - { - if (e.Button == MouseButtons.Right) - { - if (_selectedIndizes.Contains(_hoveredIndex.Value)) - { - if (_selectedIndizes.Count > 1) - { - // Mehrere Farben ausgewählt - ShowContextMenuMultiColor(e); - } - else - { - // Eine Farbe ausgewählt - ShowContextMenuSingleColor(); - } - } - else - { - // Nicht ausgewähltes Farbfeld angeklickt, die Farbe auswählen - _selectedIndizes.Clear(); - _selectedIndizes.Add(_hoveredIndex.Value); - Invalidate(); - ShowContextMenuSingleColor(); - } - } - - base.OnMouseClick(e); - } - - protected override void OnMouseMove(MouseEventArgs e) - { - // Maus muss sich innerhalb des Controls befinden - if (!ClientRectangle.IntersectsWith(new Rectangle(e.Location, new Size(1, 1)))) - { - return; - } - - _hoveredIndex = e.Location.Y / _tileSize.Height * _tileCount.Width + e.Location.X - / _tileSize.Width; - - if (e.Button == MouseButtons.Left) - { - if (Control.ModifierKeys == Keys.Control) - { - if (_lastSelectedIndex == null - || _lastSelectedIndex.Value != _hoveredIndex.Value) - { - if (_selectedIndizes.Contains(_hoveredIndex.Value)) - { - _selectedIndizes.Remove(_hoveredIndex.Value); - _lastSelectedIndex = _hoveredIndex; - } - else - { - _selectedIndizes.Add(_hoveredIndex.Value); - _lastSelectedIndex = _hoveredIndex; - } - } - } - else if (Control.ModifierKeys == Keys.None) - { - _selectedIndizes.Clear(); - _selectedIndizes.Add(_hoveredIndex.Value); - } - } - Invalidate(); - - base.OnMouseMove(e); - } - - protected override void OnMouseDown(MouseEventArgs e) - { - if (!_hoveredIndex.HasValue || e.Button != MouseButtons.Left) - { - return; - } - - if (Control.ModifierKeys == Keys.Control) - { - if (_selectedIndizes.Contains(_hoveredIndex.Value)) - { - _selectedIndizes.Remove(_hoveredIndex.Value); - _lastSelectedIndex = _hoveredIndex; - } - else - { - _selectedIndizes.Add(_hoveredIndex.Value); - _lastSelectedIndex = _hoveredIndex; - } - } - else if (Control.ModifierKeys == Keys.None) - { - _selectedIndizes.Clear(); - _selectedIndizes.Add(_hoveredIndex.Value); - } - Invalidate(); - - base.OnMouseDown(e); - } - - protected override void OnMouseUp(MouseEventArgs e) - { - _lastSelectedIndex = null; - - base.OnMouseUp(e); - } - - protected override void OnMouseLeave(EventArgs e) - { - _hoveredIndex = null; - Invalidate(); - - base.OnMouseLeave(e); - } - - protected override void OnPaint(PaintEventArgs e) - { - e.Graphics.Clear(BackColor); - - for (int i = 0; i < _colors.Count; i++) - { - // Position des Tiles berechnen - Point tileLocation = GetColorLocation(i); - - // Hintergrund zeichnen - using (SolidBrush br = new SolidBrush(_colors[i])) - { - e.Graphics.FillRectangle(br, new Rectangle(tileLocation, _tileSize)); - } - - // Rahmenbereiche berechnen - Rectangle borderRect1 = new Rectangle(tileLocation.X, tileLocation.Y, - _tileSize.Width - 1, _tileSize.Height - 1); - Rectangle borderRect2 = borderRect1; - borderRect2.Inflate(-1, -1); - // Stati darstellen - if (_selectedIndizes.Contains(i)) - { - // Ausgewähltes Item - e.Graphics.DrawRectangle(_selectPen1, borderRect1); - e.Graphics.DrawRectangle(_selectPen2, borderRect2); - } - if (_hoveredIndex.HasValue && _hoveredIndex == i) - { - // Gehovertes Item - e.Graphics.DrawRectangle(_hoverPen1, borderRect1); - e.Graphics.DrawRectangle(_hoverPen2, borderRect2); - } - } - } - - protected override void OnSizeChanged(EventArgs e) - { - CalculateSizes(); - base.OnSizeChanged(e); - } - - #region ---- METHODEN (PRIVATE) -------------------------------------------------------------------- - #endregion - - private void CalculateSizes() - { - _tileCount = new Size(ClientSize.Width / _tileSize.Width, - ClientSize.Height / _tileSize.Height); - } - - private Point GetColorLocation(int index) - { - return new Point((index % _tileCount.Width) * _tileSize.Width, - (index / _tileCount.Width) * _tileSize.Height); - } - - private void ShowContextMenuSingleColor() - { - - _tstbColor.Text = ColorTranslator.ToHtml(_colors[_hoveredIndex.Value]); - _cd.Color = _colors[_hoveredIndex.Value]; - Point screenPosition = PointToScreen(GetColorLocation(_hoveredIndex.Value)); - screenPosition.Y += _tileSize.Height; - _cmColor.Show(screenPosition); - } - - private void ShowContextMenuMultiColor(MouseEventArgs e) - { - _tstbColor.Text = "(multiple)"; - _cd.Color = Color.Black; - _cmColor.Show(PointToScreen(e.Location)); - } - - private int ClampColor(float value) - { - return Math.Max(0, Math.Min((int)value, 255)); - } - - #region ---- EVENTHANDLER -------------------------------------------------------------------------- - #endregion - - private void _tstbColor_TextChanged(object sender, EventArgs e) - { - try - { - Color color = ColorTranslator.FromHtml(_tstbColor.Text); - if (color.A == 255) - { - foreach (int selectIndex in _selectedIndizes) - { - _colors[selectIndex] = color; - } - Invalidate(); - } - _cd.Color = color; - } - catch - { - } - } - - private void _tsmiColorDialog_Click(object sender, EventArgs e) - { - if (_cd.ShowDialog() == DialogResult.OK) - { - _tstbColor.Text = ColorTranslator.ToHtml(_cd.Color); - foreach (int selectIndex in _selectedIndizes) - { - _colors[selectIndex] = _cd.Color; - } - } - } - - private void _tsmiBrighten_Click(object sender, EventArgs e) - { - foreach (int selectIndex in _selectedIndizes) - { - Color color = _colors[selectIndex]; - _colors[selectIndex] = Color.FromArgb(ClampColor(color.R * 1.1f), - ClampColor(color.G * 1.1f), ClampColor(color.B * 1.1f)); - } - } - - private void _tsmiDarken_Click(object sender, EventArgs e) - { - foreach (int selectIndex in _selectedIndizes) - { - Color color = _colors[selectIndex]; - _colors[selectIndex] = Color.FromArgb(ClampColor((float)color.R * 0.9f), - ClampColor((float)color.G * 0.9f), ClampColor((float)color.B * 0.9f)); - } - } - - private void _tsmiInverse_Click(object sender, EventArgs e) - { - foreach (int selectIndex in _selectedIndizes) - { - Color color = _colors[selectIndex]; - _colors[selectIndex] = Color.FromArgb(255 - color.R, 255 - color.G, 255 - color.B); - } - } - - private void _tsmiDesaturate_Click(object sender, EventArgs e) - { - foreach (int selectIndex in _selectedIndizes) - { - int brightness = (int)(_colors[selectIndex].GetBrightness() * 255.0f); - _colors[selectIndex] = Color.FromArgb(brightness, brightness, brightness); - } - } - - private void _tsmiBgr_Click(object sender, EventArgs e) - { - foreach (int selectIndex in _selectedIndizes) - { - Color color = _colors[selectIndex]; - _colors[selectIndex] = Color.FromArgb(color.B, color.G, color.R); - } - } - - private void _tsmiBRG_Click(object sender, EventArgs e) - { - foreach (int selectIndex in _selectedIndizes) - { - Color color = _colors[selectIndex]; - _colors[selectIndex] = Color.FromArgb(color.B, color.R, color.G); - } - } - - private void _tsmiGBR_Click(object sender, EventArgs e) - { - foreach (int selectIndex in _selectedIndizes) - { - Color color = _colors[selectIndex]; - _colors[selectIndex] = Color.FromArgb(color.G, color.B, color.R); - } - } - - private void _tsmiGRB_Click(object sender, EventArgs e) - { - foreach (int selectIndex in _selectedIndizes) - { - Color color = _colors[selectIndex]; - _colors[selectIndex] = Color.FromArgb(color.G, color.R, color.B); - } - } - - private void _tsmiRBG_Click(object sender, EventArgs e) - { - foreach (int selectIndex in _selectedIndizes) - { - Color color = _colors[selectIndex]; - _colors[selectIndex] = Color.FromArgb(color.R, color.B, color.G); - } - } - - } // #### PaletteEditor ######################################################################## -} diff --git a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/PaletteEditor.resx b/src_old/WormsNET.PalEditor/WormsNET.PalEditor/PaletteEditor.resx deleted file mode 100644 index a90990c..0000000 --- a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/PaletteEditor.resx +++ /dev/null @@ -1,126 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - 17, 17 - - - 119, 17 - - \ No newline at end of file diff --git a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/Program.cs b/src_old/WormsNET.PalEditor/WormsNET.PalEditor/Program.cs deleted file mode 100644 index 2c821db..0000000 --- a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/Program.cs +++ /dev/null @@ -1,21 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Windows.Forms; - -namespace WormsNET.PalEditor -{ - static class Program - { - /// - /// Der Haupteinstiegspunkt für die Anwendung. - /// - [STAThread] - static void Main() - { - Application.EnableVisualStyles(); - Application.SetCompatibleTextRenderingDefault(false); - Application.Run(new FormMain()); - } - } -} diff --git a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/Properties/AssemblyInfo.cs b/src_old/WormsNET.PalEditor/WormsNET.PalEditor/Properties/AssemblyInfo.cs deleted file mode 100644 index 5f7b45a..0000000 --- a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// Allgemeine Informationen über eine Assembly werden über die folgenden -// Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern, -// die mit einer Assembly verknüpft sind. -[assembly: AssemblyTitle("Worms.NET PAL Editor")] -[assembly: AssemblyDescription("Worms.NET PAL Editor")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("Worms.NET Team")] -[assembly: AssemblyProduct("Worms.NET PAL Editor")] -[assembly: AssemblyCopyright("Licensed under Ms-PL")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Durch Festlegen von ComVisible auf "false" werden die Typen in dieser Assembly unsichtbar -// für COM-Komponenten. Wenn Sie auf einen Typ in dieser Assembly von -// COM zugreifen müssen, legen Sie das ComVisible-Attribut für diesen Typ auf "true" fest. -[assembly: ComVisible(false)] - -// Die folgende GUID bestimmt die ID der Typbibliothek, wenn dieses Projekt für COM verfügbar gemacht wird -[assembly: Guid("d39300a8-54e8-45a8-ab6e-d95df12e3c74")] - -// Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten: -// -// Hauptversion -// Nebenversion -// Buildnummer -// Revision -// -// Sie können alle Werte angeben oder die standardmäßigen Build- und Revisionsnummern -// übernehmen, indem Sie "*" eingeben: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.2.0.0")] -[assembly: AssemblyFileVersion("1.2.0.0")] diff --git a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/Properties/Resources.Designer.cs b/src_old/WormsNET.PalEditor/WormsNET.PalEditor/Properties/Resources.Designer.cs deleted file mode 100644 index 716f7c7..0000000 --- a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/Properties/Resources.Designer.cs +++ /dev/null @@ -1,63 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// Runtime Version:4.0.30319.18051 -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace WormsNET.PALEditor.Properties { - using System; - - - /// - /// A strongly-typed resource class, for looking up localized strings, etc. - /// - // This class was auto-generated by the StronglyTypedResourceBuilder - // class via a tool like ResGen or Visual Studio. - // To add or remove a member, edit your .ResX file then rerun ResGen - // with the /str option, or rebuild your VS project. - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - internal class Resources { - - private static global::System.Resources.ResourceManager resourceMan; - - private static global::System.Globalization.CultureInfo resourceCulture; - - [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] - internal Resources() { - } - - /// - /// Returns the cached ResourceManager instance used by this class. - /// - [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Resources.ResourceManager ResourceManager { - get { - if (object.ReferenceEquals(resourceMan, null)) { - global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("WormsNET.PALEditor.Properties.Resources", typeof(Resources).Assembly); - resourceMan = temp; - } - return resourceMan; - } - } - - /// - /// Overrides the current thread's CurrentUICulture property for all - /// resource lookups using this strongly typed resource class. - /// - [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Globalization.CultureInfo Culture { - get { - return resourceCulture; - } - set { - resourceCulture = value; - } - } - } -} diff --git a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/Properties/Resources.resx b/src_old/WormsNET.PalEditor/WormsNET.PalEditor/Properties/Resources.resx deleted file mode 100644 index af7dbeb..0000000 --- a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/Properties/Resources.resx +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/Properties/Settings.Designer.cs b/src_old/WormsNET.PalEditor/WormsNET.PalEditor/Properties/Settings.Designer.cs deleted file mode 100644 index 667d556..0000000 --- a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/Properties/Settings.Designer.cs +++ /dev/null @@ -1,26 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// Runtime Version:4.0.30319.18051 -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace WormsNET.PALEditor.Properties { - - - [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")] - internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { - - private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); - - public static Settings Default { - get { - return defaultInstance; - } - } - } -} diff --git a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/Properties/Settings.settings b/src_old/WormsNET.PalEditor/WormsNET.PalEditor/Properties/Settings.settings deleted file mode 100644 index 3964565..0000000 --- a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/Properties/Settings.settings +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/Resources/Icon.ico b/src_old/WormsNET.PalEditor/WormsNET.PalEditor/Resources/Icon.ico deleted file mode 100644 index 8b7c91e..0000000 Binary files a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/Resources/Icon.ico and /dev/null differ diff --git a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/WormsNET.PalEditor.csproj b/src_old/WormsNET.PalEditor/WormsNET.PalEditor/WormsNET.PalEditor.csproj deleted file mode 100644 index 9fae1fa..0000000 --- a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/WormsNET.PalEditor.csproj +++ /dev/null @@ -1,112 +0,0 @@ - - - - Debug - x86 - 8.0.30703 - 2.0 - {7DC25DDF-EFEE-4060-B4EC-7B78A363EE28} - WinExe - Properties - WormsNET.PALEditor - WormsNET.PALEditor - v4.0 - - - 512 - SAK - SAK - SAK - SAK - - - x86 - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - x86 - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - Icon.ico - - - - - - - - - - - - Code - - - Form - - - FormMain.cs - - - UserControl - - - PaletteEditor.cs - - - - - FormMain.cs - - - PaletteEditor.cs - - - ResXFileCodeGenerator - Resources.Designer.cs - Designer - - - True - Resources.resx - True - - - - SettingsSingleFileGenerator - Settings.Designer.cs - - - True - Settings.settings - True - - - - - - - - - - - - \ No newline at end of file diff --git a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/app.config b/src_old/WormsNET.PalEditor/WormsNET.PalEditor/app.config deleted file mode 100644 index e365603..0000000 --- a/src_old/WormsNET.PalEditor/WormsNET.PalEditor/app.config +++ /dev/null @@ -1,3 +0,0 @@ - - -