From 05134ead4f827ef4f73265190778409608d90207 Mon Sep 17 00:00:00 2001 From: Salikh Date: Tue, 28 Nov 2023 20:33:50 +0400 Subject: [PATCH] =?UTF-8?q?=D0=B8=D0=B7=D0=BC=D0=B5=D0=BD=D0=B5=D0=BD?= =?UTF-8?q?=D0=B8=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- AirBomber/BomberGenericStorage.cs | 4 +- AirBomber/FormBomberCollection.Designer.cs | 63 +++++++++++++++++++++- AirBomber/FormBomberCollection.cs | 32 +++++++++++ AirBomber/FormBomberCollection.resx | 12 +++++ 4 files changed, 107 insertions(+), 4 deletions(-) diff --git a/AirBomber/BomberGenericStorage.cs b/AirBomber/BomberGenericStorage.cs index 06804ac..59c3184 100644 --- a/AirBomber/BomberGenericStorage.cs +++ b/AirBomber/BomberGenericStorage.cs @@ -100,7 +100,7 @@ namespace AirBomber.Generics using (StreamWriter writer = new StreamWriter(filename)) { - writer.Write($"UstaStorage{Environment.NewLine}{data}"); + writer.Write($"BomberStorage{Environment.NewLine}{data}"); } return true; @@ -125,7 +125,7 @@ namespace AirBomber.Generics { return false; } - if (!cheker.StartsWith("UstaStorage")) + if (!cheker.StartsWith("BomberStorage")) { return false; } diff --git a/AirBomber/FormBomberCollection.Designer.cs b/AirBomber/FormBomberCollection.Designer.cs index 7de4be3..b63974a 100644 --- a/AirBomber/FormBomberCollection.Designer.cs +++ b/AirBomber/FormBomberCollection.Designer.cs @@ -39,9 +39,16 @@ ButtonAddBomber = new Button(); MessageBoxBomber = new TextBox(); PicBoxBomberCollection = new PictureBox(); + menuStrip = new MenuStrip(); + fileToolStripMenuItem = new ToolStripMenuItem(); + SaveToolStripMenuItem = new ToolStripMenuItem(); + LoadToolStripMenuItem = new ToolStripMenuItem(); + openFileDialog = new OpenFileDialog(); + saveFileDialog = new OpenFileDialog(); Tools.SuspendLayout(); Kit.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)PicBoxBomberCollection).BeginInit(); + menuStrip.SuspendLayout(); SuspendLayout(); // // Tools @@ -147,19 +154,62 @@ // // PicBoxBomberCollection // - PicBoxBomberCollection.Location = new Point(1, -2); + PicBoxBomberCollection.Location = new Point(0, 38); PicBoxBomberCollection.Name = "PicBoxBomberCollection"; PicBoxBomberCollection.Size = new Size(473, 563); PicBoxBomberCollection.TabIndex = 1; PicBoxBomberCollection.TabStop = false; // + // menuStrip + // + menuStrip.ImageScalingSize = new Size(20, 20); + menuStrip.Items.AddRange(new ToolStripItem[] { fileToolStripMenuItem }); + menuStrip.Location = new Point(0, 0); + menuStrip.Name = "menuStrip"; + menuStrip.Size = new Size(800, 28); + menuStrip.TabIndex = 2; + menuStrip.Text = "Файл"; + // + // fileToolStripMenuItem + // + fileToolStripMenuItem.DropDownItems.AddRange(new ToolStripItem[] { SaveToolStripMenuItem, LoadToolStripMenuItem }); + fileToolStripMenuItem.Name = "fileToolStripMenuItem"; + fileToolStripMenuItem.Size = new Size(59, 24); + fileToolStripMenuItem.Text = "Файл"; + // + // SaveToolStripMenuItem + // + SaveToolStripMenuItem.Name = "SaveToolStripMenuItem"; + SaveToolStripMenuItem.Size = new Size(224, 26); + SaveToolStripMenuItem.Text = "Сохранение"; + SaveToolStripMenuItem.Click += SaveToolStripMenuItem_Click; + // + // LoadToolStripMenuItem + // + LoadToolStripMenuItem.Name = "LoadToolStripMenuItem"; + LoadToolStripMenuItem.Size = new Size(224, 26); + LoadToolStripMenuItem.Text = "Загрузка"; + LoadToolStripMenuItem.Click += LoadToolStripMenuItem_Click; + // + // openFileDialog + // + openFileDialog.FileName = "openFileDialog"; + openFileDialog.Filter = "txt file | *.txt"; + // + // saveFileDialog + // + saveFileDialog.FileName = "saveFileDialog"; + saveFileDialog.Filter = "txt file | *.txt"; + // // FormBomberCollection // AutoScaleDimensions = new SizeF(8F, 20F); AutoScaleMode = AutoScaleMode.Font; - ClientSize = new Size(800, 581); + ClientSize = new Size(800, 619); Controls.Add(PicBoxBomberCollection); Controls.Add(Tools); + Controls.Add(menuStrip); + MainMenuStrip = menuStrip; Name = "FormBomberCollection"; Text = "FormBomberCollection"; Tools.ResumeLayout(false); @@ -167,7 +217,10 @@ Kit.ResumeLayout(false); Kit.PerformLayout(); ((System.ComponentModel.ISupportInitialize)PicBoxBomberCollection).EndInit(); + menuStrip.ResumeLayout(false); + menuStrip.PerformLayout(); ResumeLayout(false); + PerformLayout(); } #endregion @@ -183,5 +236,11 @@ private Button RemoveKit; private Button AddKit; private TextBox KitTextbox; + private MenuStrip menuStrip; + private ToolStripMenuItem fileToolStripMenuItem; + private ToolStripMenuItem SaveToolStripMenuItem; + private ToolStripMenuItem LoadToolStripMenuItem; + private OpenFileDialog openFileDialog; + private OpenFileDialog saveFileDialog; } } \ No newline at end of file diff --git a/AirBomber/FormBomberCollection.cs b/AirBomber/FormBomberCollection.cs index aa9a170..aafb173 100644 --- a/AirBomber/FormBomberCollection.cs +++ b/AirBomber/FormBomberCollection.cs @@ -148,5 +148,37 @@ namespace AirBomber _bomber[listBoxStorages.SelectedItem?.ToString() ?? string.Empty]?.ShowBomber(); } + private void SaveToolStripMenuItem_Click(object sender, EventArgs e) + { + if (saveFileDialog.ShowDialog() == DialogResult.OK) + { + if (_bomber.SaveData(saveFileDialog.FileName)) + { + MessageBox.Show("Сохранение прошло успешно", + "Результат", MessageBoxButtons.OK, MessageBoxIcon.Information); + } + else + { + MessageBox.Show("Не сохранилось", "Результат", + MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + } + + private void LoadToolStripMenuItem_Click(object sender, EventArgs e) + { + if (openFileDialog.ShowDialog() == DialogResult.OK) + { + if (_bomber.LoadData(openFileDialog.FileName)) + { + MessageBox.Show("Данные успешно загружены.", "Успех", MessageBoxButtons.OK, MessageBoxIcon.Information); + ReloadObjects(); + } + else + { + MessageBox.Show("Ошибка при загрузке данных.", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + } } } diff --git a/AirBomber/FormBomberCollection.resx b/AirBomber/FormBomberCollection.resx index af32865..4bfa349 100644 --- a/AirBomber/FormBomberCollection.resx +++ b/AirBomber/FormBomberCollection.resx @@ -117,4 +117,16 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + 17, 17 + + + 145, 1 + + + 315, 1 + + + 25 + \ No newline at end of file