Laba6 KozyrevSS PIbd-21 GasolineTanker Base #7

Closed
Serxionaft wants to merge 4 commits from Laba6 into Laba5
5 changed files with 65 additions and 41 deletions
Showing only changes of commit ab6ad40fb3 - Show all commits

View File

@ -47,7 +47,6 @@ namespace Lab.Generics
return null;
}
}
public bool SaveData(string filename)
{
if (File.Exists(filename))
@ -63,6 +62,7 @@ namespace Lab.Generics
records.Append($"{elem?.GetDataForSave(_separatorForObject)}{_separatorRecords}");
}
data.AppendLine($"{record.Key}{_separatorForKeyValue}{records}");
}
if (data.Length == 0)
{
@ -88,23 +88,24 @@ namespace Lab.Generics
string checker = reader.ReadLine();
if (checker == null)
return false;
string strs = reader.ReadLine();
if (!checker.StartsWith("CarStorage"))
return false;
_carStorages.Clear();
foreach (string data in strs.Split(';'))
string strs;
bool firstinit = true;
while ((strs = reader.ReadLine()) != null)
{
string[] record = data.Split(_separatorForKeyValue, StringSplitOptions.RemoveEmptyEntries);
if (record.Length != 2)
{
continue;
}
if (strs == null && firstinit)
return false;
if (strs == null )
break;
firstinit = false;
string name = strs.Split('|')[0];
CarsGenericCollection<DrawTanker, DrawingObjectTanker> collection = new(_pictureWidth, _pictureHeight);
string[] set = record[1].Split(_separatorRecords, StringSplitOptions.RemoveEmptyEntries);
foreach (string elem in set)
{
foreach (string data in strs.Split('|')[1].Split(';'))
{
DrawTanker? car =
elem?.CreateDrawTanker(_separatorForObject, _pictureWidth, _pictureHeight);
data?.CreateDrawTanker(_separatorForObject, _pictureWidth, _pictureHeight);
if (car != null)
{
if (!(collection + car))
@ -112,8 +113,10 @@ namespace Lab.Generics
return false;
}
}
}
_carStorages.Add(record[0], collection);
_carStorages.Add(name, collection);
}
return true;
}

View File

@ -43,23 +43,25 @@
DrawTank = new PictureBox();
openFileDialog = new OpenFileDialog();
saveFileDialog = new SaveFileDialog();
SaveButton = new Button();
LoadButton = new Button();
menuStrip1 = new MenuStrip();
StripMenu = new ToolStripMenuItem();
SaveItem = new ToolStripMenuItem();
LoadItem = new ToolStripMenuItem();
panel1.SuspendLayout();
panel2.SuspendLayout();
((System.ComponentModel.ISupportInitialize)DrawTank).BeginInit();
menuStrip1.SuspendLayout();
SuspendLayout();
//
// panel1
//
panel1.Controls.Add(LoadButton);
panel1.Controls.Add(SaveButton);
panel1.Controls.Add(panel2);
panel1.Controls.Add(UpdateButton);
panel1.Controls.Add(DeleteButton);
panel1.Controls.Add(AddButton);
panel1.Controls.Add(CarTextBox);
panel1.Controls.Add(label1);
panel1.Controls.Add(menuStrip1);
panel1.Dock = DockStyle.Right;
panel1.Location = new Point(550, 0);
panel1.Name = "panel1";
@ -164,7 +166,7 @@
// label1
//
label1.AutoSize = true;
label1.Location = new Point(2, 2);
label1.Location = new Point(144, 0);
label1.Name = "label1";
label1.Size = new Size(103, 20);
label1.TabIndex = 0;
@ -183,25 +185,36 @@
//
openFileDialog.FileName = "openFileDialog1";
//
// SaveButton
// menuStrip1
//
SaveButton.Location = new Point(6, 426);
SaveButton.Name = "SaveButton";
SaveButton.Size = new Size(109, 44);
SaveButton.TabIndex = 6;
SaveButton.Text = "Сохранить";
SaveButton.UseVisualStyleBackColor = true;
SaveButton.Click += SaveToolStripMenuItem_Click;
menuStrip1.ImageScalingSize = new Size(20, 20);
menuStrip1.Items.AddRange(new ToolStripItem[] { StripMenu });
menuStrip1.Location = new Point(0, 0);
menuStrip1.Name = "menuStrip1";
menuStrip1.Size = new Size(250, 28);
menuStrip1.TabIndex = 6;
menuStrip1.Text = "menuStrip1";
//
// LoadButton
// StripMenu
//
LoadButton.Location = new Point(121, 426);
LoadButton.Name = "LoadButton";
LoadButton.Size = new Size(113, 44);
LoadButton.TabIndex = 7;
LoadButton.Text = "Загрузить";
LoadButton.UseVisualStyleBackColor = true;
LoadButton.Click += LoadToolStripMenuItem_Click;
StripMenu.DropDownItems.AddRange(new ToolStripItem[] { SaveItem, LoadItem });
StripMenu.Name = "StripMenu";
StripMenu.Size = new Size(59, 24);
StripMenu.Text = "Файл";
//
// SaveItem
//
SaveItem.Name = "SaveItem";
SaveItem.Size = new Size(224, 26);
SaveItem.Text = "Сохранить";
SaveItem.Click += SaveToolStripMenuItem_Click;
//
// LoadItem
//
LoadItem.Name = "LoadItem";
LoadItem.Size = new Size(224, 26);
LoadItem.Text = "Загрузить";
LoadItem.Click += LoadToolStripMenuItem_Click;
//
// CollectionsFrame
//
@ -210,6 +223,7 @@
ClientSize = new Size(800, 514);
Controls.Add(DrawTank);
Controls.Add(panel1);
MainMenuStrip = menuStrip1;
Name = "CollectionsFrame";
Text = "Гаражи бензовозов";
panel1.ResumeLayout(false);
@ -217,6 +231,8 @@
panel2.ResumeLayout(false);
panel2.PerformLayout();
((System.ComponentModel.ISupportInitialize)DrawTank).EndInit();
menuStrip1.ResumeLayout(false);
menuStrip1.PerformLayout();
ResumeLayout(false);
}
@ -237,7 +253,9 @@
private Label label2;
private OpenFileDialog openFileDialog;
private SaveFileDialog saveFileDialog;
private Button LoadButton;
private Button SaveButton;
private MenuStrip menuStrip1;
private ToolStripMenuItem StripMenu;
private ToolStripMenuItem SaveItem;
private ToolStripMenuItem LoadItem;
}
}

View File

@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="menuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>344, 17</value>
</metadata>
<metadata name="openFileDialog.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>

View File

@ -16,14 +16,14 @@ namespace Lab
if (strs.Length == 3)
{
return new DrawTanker(Convert.ToInt32(strs[0]),
Convert.ToInt32(strs[1]), Color.FromName(strs[2]), width, height);
Convert.ToInt32(strs[1]), Color.FromName(strs[2].Replace("Color [", "").Replace("]", "")), width, height);
}
if (strs.Length == 7)
{
return new DrawGasolineTanker(Convert.ToInt32(strs[0]),
Convert.ToInt32(strs[1]),
Color.FromName(strs[2]),
Color.FromName(strs[3]),
Color.FromName(strs[2].Replace("Color [", "").Replace("]","")),
Color.FromName(strs[3].Replace("Color [", "").Replace("]","")),
Convert.ToBoolean(strs[4]),
Convert.ToBoolean(strs[5]),
Convert.ToBoolean(strs[6]), width, height);

View File

@ -131,7 +131,7 @@
//
// PurplePanel
//
PurplePanel.BackColor = Color.FromArgb(192, 0, 192);
PurplePanel.BackColor = Color.Purple;
PurplePanel.Location = new Point(182, 65);
PurplePanel.Name = "PurplePanel";
PurplePanel.Size = new Size(50, 50);
@ -179,7 +179,7 @@
//
// GreenPanel
//
GreenPanel.BackColor = Color.FromArgb(0, 192, 0);
GreenPanel.BackColor = Color.Green;
GreenPanel.Location = new Point(70, 9);
GreenPanel.Name = "GreenPanel";
GreenPanel.Size = new Size(50, 50);