diff --git a/Data/Parsing/pars.py b/Data/Parsing/pars.py
new file mode 100644
index 0000000..d787c43
--- /dev/null
+++ b/Data/Parsing/pars.py
@@ -0,0 +1,30 @@
+from bs4 import BeautifulSoup
+import requests
+
+soup = BeautifulSoup(requests.get('https://smart-lab.ru/q/shares/').text, 'html.parser')
+stock = soup.find_all("tr")[2:]
+
+# f = open("stock.txt", "wb") # encoding="utf-8"
+
+try:
+ for i in stock:
+ data = i.get_text("|").split("|")
+ data = [j for j in data if '\n' != j][:-2]
+
+ if not '%' in data[-1]:
+ data = data[:-1]
+
+ if not '\t' in data[4]:
+ data[5] = data[5].split('%')[0].split('\t')[-1] + "%"
+ data[6] = data[6].replace(" ", "")
+ data[-3] = data[-3].replace(" ", "")
+
+ source = data[:8]
+ arg = data[-3:]
+ data = source + [arg[0], arg[2]]
+
+ print("|".join(data))
+except Exception as e:
+ print(repr(e))
+
+
diff --git a/Data/Parsing/stock.txt b/Data/Parsing/stock.txt
new file mode 100644
index 0000000..e69de29
diff --git a/Data/SysIcon/(1).png b/Data/SysIcon/(1).png
new file mode 100644
index 0000000..fefc3ed
Binary files /dev/null and b/Data/SysIcon/(1).png differ
diff --git a/Data/SysIcon/(2).png b/Data/SysIcon/(2).png
new file mode 100644
index 0000000..5964078
Binary files /dev/null and b/Data/SysIcon/(2).png differ
diff --git a/Data/SysIcon/(3).png b/Data/SysIcon/(3).png
new file mode 100644
index 0000000..d2aa6ae
Binary files /dev/null and b/Data/SysIcon/(3).png differ
diff --git a/Data/directions.png b/Data/directions.png
new file mode 100644
index 0000000..c3864b5
Binary files /dev/null and b/Data/directions.png differ
diff --git a/Data/main_ico.png b/Data/main_ico.png
new file mode 100644
index 0000000..59a7603
Binary files /dev/null and b/Data/main_ico.png differ
diff --git a/Data/percentage.png b/Data/percentage.png
new file mode 100644
index 0000000..aea0d81
Binary files /dev/null and b/Data/percentage.png differ
diff --git a/InvestWinApp.sln b/InvestWinApp.sln
new file mode 100644
index 0000000..2a806d3
--- /dev/null
+++ b/InvestWinApp.sln
@@ -0,0 +1,31 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.6.33723.286
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "InvestWinApp", "InvestWinApp\InvestWinApp.vcxproj", "{DD26BAF5-A6C3-415E-ACB5-A6562311BEDD}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
+ Release|x64 = Release|x64
+ Release|x86 = Release|x86
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {DD26BAF5-A6C3-415E-ACB5-A6562311BEDD}.Debug|x64.ActiveCfg = Debug|x64
+ {DD26BAF5-A6C3-415E-ACB5-A6562311BEDD}.Debug|x64.Build.0 = Debug|x64
+ {DD26BAF5-A6C3-415E-ACB5-A6562311BEDD}.Debug|x86.ActiveCfg = Debug|Win32
+ {DD26BAF5-A6C3-415E-ACB5-A6562311BEDD}.Debug|x86.Build.0 = Debug|Win32
+ {DD26BAF5-A6C3-415E-ACB5-A6562311BEDD}.Release|x64.ActiveCfg = Release|x64
+ {DD26BAF5-A6C3-415E-ACB5-A6562311BEDD}.Release|x64.Build.0 = Release|x64
+ {DD26BAF5-A6C3-415E-ACB5-A6562311BEDD}.Release|x86.ActiveCfg = Release|Win32
+ {DD26BAF5-A6C3-415E-ACB5-A6562311BEDD}.Release|x86.Build.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {4095E066-FD26-41D2-ADA5-A1EA03DF2701}
+ EndGlobalSection
+EndGlobal
diff --git a/InvestWinApp/AddApplicant.h b/InvestWinApp/AddApplicant.h
new file mode 100644
index 0000000..0b116fb
--- /dev/null
+++ b/InvestWinApp/AddApplicant.h
@@ -0,0 +1,398 @@
+#pragma once
+
+namespace InvestWinApp {
+
+ using namespace System;
+ using namespace System::ComponentModel;
+ using namespace System::Collections;
+ using namespace System::Windows::Forms;
+ using namespace System::Data;
+ using namespace System::Drawing;
+
+ ///
+ /// AddApplicant
+ ///
+ public ref class AddApplicant : public System::Windows::Forms::Form
+ {
+ public:
+ AddApplicant(void)
+ {
+ InitializeComponent();
+ //
+ //TODO:
+ //
+ }
+
+ protected:
+ ///
+ /// .
+ ///
+ ~AddApplicant()
+ {
+ if (components)
+ {
+ delete components;
+ }
+ }
+ private: System::Windows::Forms::TableLayoutPanel^ main_table;
+ protected:
+ private: System::Windows::Forms::TableLayoutPanel^ data_table;
+ private: System::Windows::Forms::Label^ label2;
+
+
+
+
+
+
+ private: System::Windows::Forms::Label^ label3;
+
+
+
+
+ private: System::Windows::Forms::Label^ label4;
+ private: System::Windows::Forms::Label^ label5;
+
+
+
+ private: System::Windows::Forms::Label^ label9;
+ private: System::Windows::Forms::TextBox^ addressBox;
+ private: System::Windows::Forms::TextBox^ scoreBox;
+
+
+ private: System::Windows::Forms::FlowLayoutPanel^ flowLayoutPanel1;
+ private: System::Windows::Forms::TextBox^ sernameBox;
+ private: System::Windows::Forms::TextBox^ nameBox;
+ private: System::Windows::Forms::TextBox^ parBox;
+
+
+
+
+
+
+ private: System::Windows::Forms::Button^ btn_add;
+ private: System::Windows::Forms::TextBox^ trendBox;
+
+
+ private: System::Windows::Forms::FlowLayoutPanel^ flow_benefit;
+ private: System::Windows::Forms::RadioButton^ benefitNo;
+ private: System::Windows::Forms::TextBox^ benefitYes;
+
+
+
+
+ private:
+ ///
+ /// .
+ ///
+ System::ComponentModel::Container ^components;
+
+#pragma region Windows Form Designer generated code
+ ///
+ ///
+ /// .
+ ///
+ void InitializeComponent(void)
+ {
+ this->main_table = (gcnew System::Windows::Forms::TableLayoutPanel());
+ this->data_table = (gcnew System::Windows::Forms::TableLayoutPanel());
+ this->label2 = (gcnew System::Windows::Forms::Label());
+ this->label3 = (gcnew System::Windows::Forms::Label());
+ this->label4 = (gcnew System::Windows::Forms::Label());
+ this->label5 = (gcnew System::Windows::Forms::Label());
+ this->label9 = (gcnew System::Windows::Forms::Label());
+ this->scoreBox = (gcnew System::Windows::Forms::TextBox());
+ this->flowLayoutPanel1 = (gcnew System::Windows::Forms::FlowLayoutPanel());
+ this->sernameBox = (gcnew System::Windows::Forms::TextBox());
+ this->nameBox = (gcnew System::Windows::Forms::TextBox());
+ this->parBox = (gcnew System::Windows::Forms::TextBox());
+ this->addressBox = (gcnew System::Windows::Forms::TextBox());
+ this->trendBox = (gcnew System::Windows::Forms::TextBox());
+ this->flow_benefit = (gcnew System::Windows::Forms::FlowLayoutPanel());
+ this->benefitNo = (gcnew System::Windows::Forms::RadioButton());
+ this->benefitYes = (gcnew System::Windows::Forms::TextBox());
+ this->btn_add = (gcnew System::Windows::Forms::Button());
+ this->main_table->SuspendLayout();
+ this->data_table->SuspendLayout();
+ this->flowLayoutPanel1->SuspendLayout();
+ this->flow_benefit->SuspendLayout();
+ this->SuspendLayout();
+ //
+ // main_table
+ //
+ this->main_table->ColumnCount = 1;
+ this->main_table->ColumnStyles->Add((gcnew System::Windows::Forms::ColumnStyle(System::Windows::Forms::SizeType::Percent, 100)));
+ this->main_table->Controls->Add(this->data_table, 0, 0);
+ this->main_table->Controls->Add(this->btn_add, 0, 1);
+ this->main_table->Dock = System::Windows::Forms::DockStyle::Fill;
+ this->main_table->Location = System::Drawing::Point(0, 0);
+ this->main_table->Name = L"main_table";
+ this->main_table->RowCount = 2;
+ this->main_table->RowStyles->Add((gcnew System::Windows::Forms::RowStyle(System::Windows::Forms::SizeType::Percent, 100)));
+ this->main_table->RowStyles->Add((gcnew System::Windows::Forms::RowStyle()));
+ this->main_table->Size = System::Drawing::Size(498, 315);
+ this->main_table->TabIndex = 2;
+ //
+ // data_table
+ //
+ this->data_table->AutoSize = true;
+ this->data_table->ColumnCount = 2;
+ this->data_table->ColumnStyles->Add((gcnew System::Windows::Forms::ColumnStyle()));
+ this->data_table->ColumnStyles->Add((gcnew System::Windows::Forms::ColumnStyle()));
+ this->data_table->Controls->Add(this->label2, 0, 0);
+ this->data_table->Controls->Add(this->label3, 0, 1);
+ this->data_table->Controls->Add(this->label4, 0, 2);
+ this->data_table->Controls->Add(this->label5, 0, 3);
+ this->data_table->Controls->Add(this->label9, 0, 4);
+ this->data_table->Controls->Add(this->scoreBox, 1, 3);
+ this->data_table->Controls->Add(this->flowLayoutPanel1, 1, 0);
+ this->data_table->Controls->Add(this->addressBox, 1, 1);
+ this->data_table->Controls->Add(this->trendBox, 1, 4);
+ this->data_table->Controls->Add(this->flow_benefit, 1, 2);
+ this->data_table->Dock = System::Windows::Forms::DockStyle::Fill;
+ this->data_table->Location = System::Drawing::Point(3, 3);
+ this->data_table->Name = L"data_table";
+ this->data_table->RowCount = 5;
+ this->data_table->RowStyles->Add((gcnew System::Windows::Forms::RowStyle(System::Windows::Forms::SizeType::Percent, 20)));
+ this->data_table->RowStyles->Add((gcnew System::Windows::Forms::RowStyle(System::Windows::Forms::SizeType::Percent, 20)));
+ this->data_table->RowStyles->Add((gcnew System::Windows::Forms::RowStyle(System::Windows::Forms::SizeType::Percent, 20)));
+ this->data_table->RowStyles->Add((gcnew System::Windows::Forms::RowStyle(System::Windows::Forms::SizeType::Percent, 20)));
+ this->data_table->RowStyles->Add((gcnew System::Windows::Forms::RowStyle(System::Windows::Forms::SizeType::Percent, 20)));
+ this->data_table->RowStyles->Add((gcnew System::Windows::Forms::RowStyle(System::Windows::Forms::SizeType::Absolute, 20)));
+ this->data_table->RowStyles->Add((gcnew System::Windows::Forms::RowStyle(System::Windows::Forms::SizeType::Absolute, 20)));
+ this->data_table->Size = System::Drawing::Size(492, 238);
+ this->data_table->TabIndex = 0;
+ //
+ // label2
+ //
+ this->label2->Anchor = System::Windows::Forms::AnchorStyles::Right;
+ this->label2->AutoSize = true;
+ this->label2->ForeColor = System::Drawing::Color::White;
+ this->label2->Location = System::Drawing::Point(3, 15);
+ this->label2->Name = L"label2";
+ this->label2->Size = System::Drawing::Size(161, 16);
+ this->label2->TabIndex = 1;
+ this->label2->Text = L" ";
+ //
+ // label3
+ //
+ this->label3->Anchor = System::Windows::Forms::AnchorStyles::Right;
+ this->label3->AutoSize = true;
+ this->label3->ForeColor = System::Drawing::Color::White;
+ this->label3->Location = System::Drawing::Point(117, 62);
+ this->label3->Name = L"label3";
+ this->label3->Size = System::Drawing::Size(47, 16);
+ this->label3->TabIndex = 2;
+ this->label3->Text = L"";
+ //
+ // label4
+ //
+ this->label4->Anchor = System::Windows::Forms::AnchorStyles::Right;
+ this->label4->AutoSize = true;
+ this->label4->ForeColor = System::Drawing::Color::White;
+ this->label4->Location = System::Drawing::Point(112, 109);
+ this->label4->Name = L"label4";
+ this->label4->Size = System::Drawing::Size(52, 16);
+ this->label4->TabIndex = 3;
+ this->label4->Text = L"";
+ //
+ // label5
+ //
+ this->label5->Anchor = System::Windows::Forms::AnchorStyles::Right;
+ this->label5->AutoSize = true;
+ this->label5->ForeColor = System::Drawing::Color::White;
+ this->label5->Location = System::Drawing::Point(65, 156);
+ this->label5->Name = L"label5";
+ this->label5->Size = System::Drawing::Size(99, 16);
+ this->label5->TabIndex = 4;
+ this->label5->Text = L" ";
+ //
+ // label9
+ //
+ this->label9->Anchor = System::Windows::Forms::AnchorStyles::Right;
+ this->label9->AutoSize = true;
+ this->label9->ForeColor = System::Drawing::Color::White;
+ this->label9->Location = System::Drawing::Point(24, 205);
+ this->label9->Name = L"label9";
+ this->label9->Size = System::Drawing::Size(140, 16);
+ this->label9->TabIndex = 8;
+ this->label9->Text = L" ";
+ //
+ // scoreBox
+ //
+ this->scoreBox->Anchor = System::Windows::Forms::AnchorStyles::Left;
+ this->scoreBox->Location = System::Drawing::Point(170, 153);
+ this->scoreBox->Name = L"scoreBox";
+ this->scoreBox->Size = System::Drawing::Size(315, 22);
+ this->scoreBox->TabIndex = 11;
+ //
+ // flowLayoutPanel1
+ //
+ this->flowLayoutPanel1->Anchor = System::Windows::Forms::AnchorStyles::Left;
+ this->flowLayoutPanel1->AutoSize = true;
+ this->flowLayoutPanel1->Controls->Add(this->sernameBox);
+ this->flowLayoutPanel1->Controls->Add(this->nameBox);
+ this->flowLayoutPanel1->Controls->Add(this->parBox);
+ this->flowLayoutPanel1->Location = System::Drawing::Point(170, 9);
+ this->flowLayoutPanel1->Name = L"flowLayoutPanel1";
+ this->flowLayoutPanel1->Size = System::Drawing::Size(318, 28);
+ this->flowLayoutPanel1->TabIndex = 13;
+ this->flowLayoutPanel1->WrapContents = false;
+ //
+ // sernameBox
+ //
+ this->sernameBox->Location = System::Drawing::Point(3, 3);
+ this->sernameBox->Name = L"sernameBox";
+ this->sernameBox->Size = System::Drawing::Size(100, 22);
+ this->sernameBox->TabIndex = 0;
+ //
+ // nameBox
+ //
+ this->nameBox->Location = System::Drawing::Point(109, 3);
+ this->nameBox->Name = L"nameBox";
+ this->nameBox->Size = System::Drawing::Size(100, 22);
+ this->nameBox->TabIndex = 1;
+ //
+ // parBox
+ //
+ this->parBox->Location = System::Drawing::Point(215, 3);
+ this->parBox->Name = L"parBox";
+ this->parBox->Size = System::Drawing::Size(100, 22);
+ this->parBox->TabIndex = 2;
+ //
+ // addressBox
+ //
+ this->addressBox->Anchor = System::Windows::Forms::AnchorStyles::Left;
+ this->addressBox->Location = System::Drawing::Point(170, 59);
+ this->addressBox->Name = L"addressBox";
+ this->addressBox->Size = System::Drawing::Size(315, 22);
+ this->addressBox->TabIndex = 10;
+ //
+ // trendBox
+ //
+ this->trendBox->Anchor = System::Windows::Forms::AnchorStyles::Left;
+ this->trendBox->Location = System::Drawing::Point(170, 202);
+ this->trendBox->Name = L"trendBox";
+ this->trendBox->Size = System::Drawing::Size(315, 22);
+ this->trendBox->TabIndex = 19;
+ //
+ // flow_benefit
+ //
+ this->flow_benefit->Anchor = System::Windows::Forms::AnchorStyles::Left;
+ this->flow_benefit->AutoSize = true;
+ this->flow_benefit->Controls->Add(this->benefitNo);
+ this->flow_benefit->Controls->Add(this->benefitYes);
+ this->flow_benefit->Location = System::Drawing::Point(170, 103);
+ this->flow_benefit->Name = L"flow_benefit";
+ this->flow_benefit->Size = System::Drawing::Size(318, 28);
+ this->flow_benefit->TabIndex = 20;
+ this->flow_benefit->WrapContents = false;
+ //
+ // benefitNo
+ //
+ this->benefitNo->Anchor = System::Windows::Forms::AnchorStyles::Left;
+ this->benefitNo->AutoSize = true;
+ this->benefitNo->ForeColor = System::Drawing::Color::White;
+ this->benefitNo->Location = System::Drawing::Point(3, 4);
+ this->benefitNo->Name = L"benefitNo";
+ this->benefitNo->Size = System::Drawing::Size(53, 20);
+ this->benefitNo->TabIndex = 0;
+ this->benefitNo->TabStop = true;
+ this->benefitNo->Text = L"";
+ this->benefitNo->UseVisualStyleBackColor = true;
+ this->benefitNo->Click += gcnew System::EventHandler(this, &AddApplicant::benefitNo_Click);
+ //
+ // benefitYes
+ //
+ this->benefitYes->Anchor = System::Windows::Forms::AnchorStyles::Left;
+ this->benefitYes->Location = System::Drawing::Point(62, 3);
+ this->benefitYes->Name = L"benefitYes";
+ this->benefitYes->Size = System::Drawing::Size(253, 22);
+ this->benefitYes->TabIndex = 1;
+ this->benefitYes->TextChanged += gcnew System::EventHandler(this, &AddApplicant::benefitYes_TextChanged);
+ //
+ // btn_add
+ //
+ this->btn_add->AutoSize = true;
+ this->btn_add->BackColor = System::Drawing::Color::FromArgb(static_cast(static_cast(26)), static_cast(static_cast(26)),
+ static_cast(static_cast(26)));
+ this->btn_add->Dock = System::Windows::Forms::DockStyle::Fill;
+ this->btn_add->ForeColor = System::Drawing::Color::Transparent;
+ this->btn_add->Location = System::Drawing::Point(3, 247);
+ this->btn_add->Name = L"btn_add";
+ this->btn_add->Size = System::Drawing::Size(492, 65);
+ this->btn_add->TabIndex = 6;
+ this->btn_add->Text = L"";
+ this->btn_add->UseVisualStyleBackColor = false;
+ this->btn_add->Click += gcnew System::EventHandler(this, &AddApplicant::btn_add_Click);
+ //
+ // AddApplicant
+ //
+ this->AutoScaleDimensions = System::Drawing::SizeF(8, 16);
+ this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
+ this->BackColor = System::Drawing::Color::FromArgb(static_cast(static_cast(26)), static_cast(static_cast(26)),
+ static_cast(static_cast(26)));
+ this->ClientSize = System::Drawing::Size(498, 315);
+ this->Controls->Add(this->main_table);
+ this->Name = L"AddApplicant";
+ this->Text = L"AddApplicant";
+ this->main_table->ResumeLayout(false);
+ this->main_table->PerformLayout();
+ this->data_table->ResumeLayout(false);
+ this->data_table->PerformLayout();
+ this->flowLayoutPanel1->ResumeLayout(false);
+ this->flowLayoutPanel1->PerformLayout();
+ this->flow_benefit->ResumeLayout(false);
+ this->flow_benefit->PerformLayout();
+ this->ResumeLayout(false);
+
+ }
+#pragma endregion
+private: System::Void btn_add_Click(System::Object^ sender, System::EventArgs^ e) {
+ // id
+ List^ data = ReadWrite::Load^>("applis.dat");
+
+ //
+ List^ abit = gcnew List;
+ abit->Add(gcnew Applicant);
+
+ bool flag = true;
+ try {
+ abit[0]->surname = sernameBox->Text;
+ abit[0]->name = nameBox->Text;
+ abit[0]->patro = parBox->Text;
+
+ abit[0]->address = addressBox->Text;
+
+ if (benefitNo->Checked) abit[0]->benefit = "";
+ else abit[0]->benefit = benefitYes->Text;
+
+ abit[0]->score_UGE = Convert::ToInt32(scoreBox->Text);
+ abit[0]->trend = trendBox->Text;
+
+ //
+ writeInFile(abit);
+ }
+ catch (...) { MessageBox::Show(" !"); flag = false; }
+
+ //
+ if (flag) {
+ sernameBox->Clear();
+ nameBox->Clear();
+ parBox->Clear();
+ addressBox->Clear();
+ benefitNo->Checked = false;
+ benefitYes->Clear();
+ scoreBox->Clear();
+ trendBox->Clear();
+ }
+}
+
+private: System::Void benefitNo_Click(System::Object^ sender, System::EventArgs^ e) {
+ benefitYes->Clear();
+ benefitNo->Checked = true;
+}
+private: System::Void benefitYes_TextChanged(System::Object^ sender, System::EventArgs^ e) {
+ benefitNo->Checked = false;
+}
+};
+}
diff --git a/InvestWinApp/AddApplicant.resx b/InvestWinApp/AddApplicant.resx
new file mode 100644
index 0000000..29dcb1b
--- /dev/null
+++ b/InvestWinApp/AddApplicant.resx
@@ -0,0 +1,120 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 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
+
+
\ No newline at end of file
diff --git a/InvestWinApp/AssemblyInfo.cpp b/InvestWinApp/AssemblyInfo.cpp
new file mode 100644
index 0000000..66daaed
--- /dev/null
+++ b/InvestWinApp/AssemblyInfo.cpp
@@ -0,0 +1,20 @@
+#include "pch.h"
+
+using namespace System;
+using namespace System::Reflection;
+using namespace System::Runtime::CompilerServices;
+using namespace System::Runtime::InteropServices;
+using namespace System::Security::Permissions;
+
+[assembly:AssemblyTitleAttribute(L"InvestWinApp")];
+[assembly:AssemblyDescriptionAttribute(L"")];
+[assembly:AssemblyConfigurationAttribute(L"")];
+[assembly:AssemblyCompanyAttribute(L"")];
+[assembly:AssemblyProductAttribute(L"InvestWinApp")];
+[assembly:AssemblyCopyrightAttribute(L"(c) 2023")];
+[assembly:AssemblyTrademarkAttribute(L"")];
+[assembly:AssemblyCultureAttribute(L"")];
+
+[assembly:AssemblyVersionAttribute(L"1.0.*")];
+
+[assembly:ComVisible(false)];
diff --git a/InvestWinApp/InvestWinApp.cpp b/InvestWinApp/InvestWinApp.cpp
new file mode 100644
index 0000000..9a4b77f
--- /dev/null
+++ b/InvestWinApp/InvestWinApp.cpp
@@ -0,0 +1,32 @@
+#include "pch.h"
+
+#include "config.h"
+#include "AddApplicant.h"
+#include "MyForm.h"
+
+
+void writeInFile(List^ list) {
+ List^ old_data = ReadWrite::Load^>("applis.dat");
+
+ if (old_data) {
+ old_data->AddRange(list);
+ ReadWrite::Save(old_data, "applis.dat");
+ }
+ else ReadWrite::Save(list, "applis.dat");
+}
+
+void MarshalString(String^ s, std::string& os) {
+ using namespace Runtime::InteropServices;
+ const char* chars = (const char*)(Marshal::StringToHGlobalAnsi(s)).ToPointer();
+ os = chars;
+ Marshal::FreeHGlobal(IntPtr((void*)chars));
+}
+
+
+[STAThreadAttribute]
+int main(array^ args) {
+ Application::SetCompatibleTextRenderingDefault(false);
+ Application::EnableVisualStyles();
+ InvestWinApp::MyForm form;
+ Application::Run(% form);
+}
\ No newline at end of file
diff --git a/InvestWinApp/InvestWinApp.vcxproj b/InvestWinApp/InvestWinApp.vcxproj
new file mode 100644
index 0000000..28662e5
--- /dev/null
+++ b/InvestWinApp/InvestWinApp.vcxproj
@@ -0,0 +1,179 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Release
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release
+ x64
+
+
+
+ 17.0
+ {DD26BAF5-A6C3-415E-ACB5-A6562311BEDD}
+ v4.8
+ ManagedCProj
+ InvestWinApp
+ 10.0
+ true
+
+
+
+ Application
+ true
+ v143
+ true
+ Unicode
+
+
+ Application
+ false
+ v143
+ true
+ Unicode
+
+
+ Application
+ true
+ v143
+ true
+ Unicode
+
+
+ Application
+ false
+ v143
+ true
+ Unicode
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Use
+ pch.h
+ Level3
+ _DEBUG;%(PreprocessorDefinitions)
+
+
+
+ Windows
+ main
+
+
+ true
+
+
+
+
+ Use
+ pch.h
+ Level3
+ WIN32;_DEBUG;%(PreprocessorDefinitions)
+
+
+
+ Console
+
+
+
+
+ Use
+ pch.h
+ Level3
+ WIN32;NDEBUG;%(PreprocessorDefinitions)
+
+
+
+ Console
+
+
+
+
+ Use
+ pch.h
+ Level3
+ NDEBUG;%(PreprocessorDefinitions)
+
+
+
+ Console
+
+
+
+
+
+
+
+ CppForm
+
+
+
+ CppForm
+
+
+
+
+
+
+
+
+ Create
+ Create
+ Create
+ Create
+
+
+
+
+
+
+
+ x64\Debug\RSREU.IO.dll
+
+
+
+
+
+
+
+
+
+
+ AddApplicant.h
+
+
+ MyForm.h
+
+
+
+
+
+
\ No newline at end of file
diff --git a/InvestWinApp/InvestWinApp.vcxproj.filters b/InvestWinApp/InvestWinApp.vcxproj.filters
new file mode 100644
index 0000000..b55a487
--- /dev/null
+++ b/InvestWinApp/InvestWinApp.vcxproj.filters
@@ -0,0 +1,55 @@
+
+
+
+
+ {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
+ cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx
+
+
+ {93995380-89BD-4b04-88EB-625FBE52EBFB}
+ h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd
+
+
+ {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
+ rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
+
+
+
+
+ Файлы ресурсов
+
+
+
+
+ Файлы заголовков
+
+
+ Файлы заголовков
+
+
+ Файлы заголовков
+
+
+ Файлы заголовков
+
+
+ Файлы заголовков
+
+
+
+
+ Исходные файлы
+
+
+ Исходные файлы
+
+
+ Исходные файлы
+
+
+
+
+ Файлы ресурсов
+
+
+
\ No newline at end of file
diff --git a/InvestWinApp/InvestWinApp.vcxproj.user b/InvestWinApp/InvestWinApp.vcxproj.user
new file mode 100644
index 0000000..0f14913
--- /dev/null
+++ b/InvestWinApp/InvestWinApp.vcxproj.user
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/InvestWinApp/MyForm.h b/InvestWinApp/MyForm.h
new file mode 100644
index 0000000..a5e03f7
--- /dev/null
+++ b/InvestWinApp/MyForm.h
@@ -0,0 +1,907 @@
+#pragma once
+#include
+#include
+#include
+
+namespace InvestWinApp {
+
+ using namespace System;
+ using namespace System::ComponentModel;
+ using namespace System::Collections;
+ using namespace System::Windows::Forms;
+ using namespace System::Data;
+ using namespace System::Drawing;
+
+ public ref class MyForm : public System::Windows::Forms::Form {
+ Boolean WindowWrap = 0;
+ Point mPoint;
+
+ private: System::Windows::Forms::FlowLayoutPanel^ SysButtons;
+ private: System::Windows::Forms::Button^ close;
+ private: System::Windows::Forms::Button^ expand;
+ private: System::Windows::Forms::Button^ wrap;
+ private: System::Windows::Forms::TableLayoutPanel^ top_table;
+ private: System::Windows::Forms::PictureBox^ main_ico;
+ private: System::Windows::Forms::FlowLayoutPanel^ left_panel;
+ private: System::Windows::Forms::MenuStrip^ menu;
+ private: System::Windows::Forms::TableLayoutPanel^ tableLayoutPanel1;
+ private: System::Windows::Forms::DataGridView^ gridTable;
+
+
+
+
+
+
+
+
+
+
+ private: System::Windows::Forms::ToolStripMenuItem^ toolTable;
+ private: System::Windows::Forms::ToolStripMenuItem^ ToolStripMenuItem;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ private: System::Windows::Forms::TableLayoutPanel^ right_table;
+ private: System::Windows::Forms::DataVisualization::Charting::Chart^ chart;
+ private: System::Windows::Forms::FlowLayoutPanel^ buttons;
+ private: System::Windows::Forms::Button^ top_btn;
+ private: System::Windows::Forms::Button^ after_btn;
+ private: System::Windows::Forms::ComboBox^ comboBox;
+ private: System::Windows::Forms::ToolStripMenuItem^ ToolStripMenuItem;
+ private: System::Windows::Forms::DataGridViewTextBoxColumn^ surname;
+ private: System::Windows::Forms::DataGridViewTextBoxColumn^ name;
+ private: System::Windows::Forms::DataGridViewTextBoxColumn^ patro;
+ private: System::Windows::Forms::DataGridViewTextBoxColumn^ address;
+ private: System::Windows::Forms::DataGridViewTextBoxColumn^ benefits;
+ private: System::Windows::Forms::DataGridViewTextBoxColumn^ scores;
+ private: System::Windows::Forms::DataGridViewTextBoxColumn^ trend;
+ private: System::Windows::Forms::ToolStripMenuItem^ ToolStripMenuItem;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ private: System::Windows::Forms::TableLayoutPanel^ main_table;
+
+ public:
+ MyForm(void)
+ {
+ InitializeComponent();
+
+ //
+ //TODO:
+ //
+ }
+
+ protected:
+ ///
+ /// .
+ ///
+ ~MyForm()
+ {
+ if (components)
+ {
+ delete components;
+ }
+ }
+ private:
+ ///
+ /// .
+ ///
+ System::ComponentModel::Container ^components;
+
+#pragma region Windows Form Designer generated code
+ ///
+ ///
+ /// .
+ ///
+ void InitializeComponent(void)
+ {
+ System::ComponentModel::ComponentResourceManager^ resources = (gcnew System::ComponentModel::ComponentResourceManager(MyForm::typeid));
+ System::Windows::Forms::DataVisualization::Charting::ChartArea^ chartArea1 = (gcnew System::Windows::Forms::DataVisualization::Charting::ChartArea());
+ System::Windows::Forms::DataVisualization::Charting::Legend^ legend1 = (gcnew System::Windows::Forms::DataVisualization::Charting::Legend());
+ System::Windows::Forms::DataVisualization::Charting::Series^ series1 = (gcnew System::Windows::Forms::DataVisualization::Charting::Series());
+ System::Windows::Forms::DataVisualization::Charting::DataPoint^ dataPoint1 = (gcnew System::Windows::Forms::DataVisualization::Charting::DataPoint(0,
+ 0));
+ System::Windows::Forms::DataVisualization::Charting::DataPoint^ dataPoint2 = (gcnew System::Windows::Forms::DataVisualization::Charting::DataPoint(0,
+ 0));
+ this->main_table = (gcnew System::Windows::Forms::TableLayoutPanel());
+ this->top_table = (gcnew System::Windows::Forms::TableLayoutPanel());
+ this->SysButtons = (gcnew System::Windows::Forms::FlowLayoutPanel());
+ this->close = (gcnew System::Windows::Forms::Button());
+ this->expand = (gcnew System::Windows::Forms::Button());
+ this->wrap = (gcnew System::Windows::Forms::Button());
+ this->left_panel = (gcnew System::Windows::Forms::FlowLayoutPanel());
+ this->main_ico = (gcnew System::Windows::Forms::PictureBox());
+ this->menu = (gcnew System::Windows::Forms::MenuStrip());
+ this->toolTable = (gcnew System::Windows::Forms::ToolStripMenuItem());
+ this->ToolStripMenuItem = (gcnew System::Windows::Forms::ToolStripMenuItem());
+ this->ToolStripMenuItem = (gcnew System::Windows::Forms::ToolStripMenuItem());
+ this->ToolStripMenuItem = (gcnew System::Windows::Forms::ToolStripMenuItem());
+ this->tableLayoutPanel1 = (gcnew System::Windows::Forms::TableLayoutPanel());
+ this->gridTable = (gcnew System::Windows::Forms::DataGridView());
+ this->surname = (gcnew System::Windows::Forms::DataGridViewTextBoxColumn());
+ this->name = (gcnew System::Windows::Forms::DataGridViewTextBoxColumn());
+ this->patro = (gcnew System::Windows::Forms::DataGridViewTextBoxColumn());
+ this->address = (gcnew System::Windows::Forms::DataGridViewTextBoxColumn());
+ this->benefits = (gcnew System::Windows::Forms::DataGridViewTextBoxColumn());
+ this->scores = (gcnew System::Windows::Forms::DataGridViewTextBoxColumn());
+ this->trend = (gcnew System::Windows::Forms::DataGridViewTextBoxColumn());
+ this->right_table = (gcnew System::Windows::Forms::TableLayoutPanel());
+ this->chart = (gcnew System::Windows::Forms::DataVisualization::Charting::Chart());
+ this->buttons = (gcnew System::Windows::Forms::FlowLayoutPanel());
+ this->comboBox = (gcnew System::Windows::Forms::ComboBox());
+ this->top_btn = (gcnew System::Windows::Forms::Button());
+ this->after_btn = (gcnew System::Windows::Forms::Button());
+ this->main_table->SuspendLayout();
+ this->top_table->SuspendLayout();
+ this->SysButtons->SuspendLayout();
+ this->left_panel->SuspendLayout();
+ (cli::safe_cast(this->main_ico))->BeginInit();
+ this->menu->SuspendLayout();
+ this->tableLayoutPanel1->SuspendLayout();
+ (cli::safe_cast(this->gridTable))->BeginInit();
+ this->right_table->SuspendLayout();
+ (cli::safe_cast(this->chart))->BeginInit();
+ this->buttons->SuspendLayout();
+ this->SuspendLayout();
+ //
+ // main_table
+ //
+ this->main_table->BackColor = System::Drawing::Color::FromArgb(static_cast(static_cast(26)), static_cast(static_cast(26)),
+ static_cast(static_cast(26)));
+ this->main_table->ColumnCount = 1;
+ this->main_table->ColumnStyles->Add((gcnew System::Windows::Forms::ColumnStyle(System::Windows::Forms::SizeType::Percent, 100)));
+ this->main_table->Controls->Add(this->top_table, 0, 0);
+ this->main_table->Controls->Add(this->tableLayoutPanel1, 0, 1);
+ this->main_table->Dock = System::Windows::Forms::DockStyle::Fill;
+ this->main_table->Location = System::Drawing::Point(0, 0);
+ this->main_table->Name = L"main_table";
+ this->main_table->RowCount = 2;
+ this->main_table->RowStyles->Add((gcnew System::Windows::Forms::RowStyle()));
+ this->main_table->RowStyles->Add((gcnew System::Windows::Forms::RowStyle(System::Windows::Forms::SizeType::Percent, 100)));
+ this->main_table->Size = System::Drawing::Size(1353, 690);
+ this->main_table->TabIndex = 0;
+ //
+ // top_table
+ //
+ this->top_table->Anchor = static_cast((((System::Windows::Forms::AnchorStyles::Top | System::Windows::Forms::AnchorStyles::Bottom)
+ | System::Windows::Forms::AnchorStyles::Left)
+ | System::Windows::Forms::AnchorStyles::Right));
+ this->top_table->AutoSize = true;
+ this->top_table->BackColor = System::Drawing::Color::FromArgb(static_cast(static_cast(32)), static_cast(static_cast(32)),
+ static_cast(static_cast(32)));
+ this->top_table->ColumnCount = 3;
+ this->top_table->ColumnStyles->Add((gcnew System::Windows::Forms::ColumnStyle()));
+ this->top_table->ColumnStyles->Add((gcnew System::Windows::Forms::ColumnStyle(System::Windows::Forms::SizeType::Percent, 100)));
+ this->top_table->ColumnStyles->Add((gcnew System::Windows::Forms::ColumnStyle()));
+ this->top_table->Controls->Add(this->SysButtons, 2, 0);
+ this->top_table->Controls->Add(this->left_panel, 0, 0);
+ this->top_table->Location = System::Drawing::Point(3, 3);
+ this->top_table->Name = L"top_table";
+ this->top_table->RowCount = 1;
+ this->top_table->RowStyles->Add((gcnew System::Windows::Forms::RowStyle(System::Windows::Forms::SizeType::Percent, 100)));
+ this->top_table->Size = System::Drawing::Size(1347, 60);
+ this->top_table->TabIndex = 5;
+ this->top_table->MouseDown += gcnew System::Windows::Forms::MouseEventHandler(this, &MyForm::moveWindow_MouseDown);
+ this->top_table->MouseMove += gcnew System::Windows::Forms::MouseEventHandler(this, &MyForm::moveWindow_MouseMove);
+ //
+ // SysButtons
+ //
+ this->SysButtons->Anchor = static_cast((System::Windows::Forms::AnchorStyles::Left | System::Windows::Forms::AnchorStyles::Right));
+ this->SysButtons->AutoSize = true;
+ this->SysButtons->BackColor = System::Drawing::Color::FromArgb(static_cast(static_cast(26)), static_cast(static_cast(26)),
+ static_cast(static_cast(26)));
+ this->SysButtons->Controls->Add(this->close);
+ this->SysButtons->Controls->Add(this->expand);
+ this->SysButtons->Controls->Add(this->wrap);
+ this->SysButtons->FlowDirection = System::Windows::Forms::FlowDirection::RightToLeft;
+ this->SysButtons->Location = System::Drawing::Point(1212, 8);
+ this->SysButtons->Name = L"SysButtons";
+ this->SysButtons->Size = System::Drawing::Size(132, 44);
+ this->SysButtons->TabIndex = 1;
+ this->SysButtons->WrapContents = false;
+ //
+ // close
+ //
+ this->close->FlatStyle = System::Windows::Forms::FlatStyle::Flat;
+ this->close->ForeColor = System::Drawing::Color::FromArgb(static_cast(static_cast(26)), static_cast(static_cast(26)),
+ static_cast(static_cast(26)));
+ this->close->Image = (cli::safe_cast(resources->GetObject(L"close.Image")));
+ this->close->Location = System::Drawing::Point(91, 3);
+ this->close->Name = L"close";
+ this->close->Size = System::Drawing::Size(38, 38);
+ this->close->TabIndex = 0;
+ this->close->UseVisualStyleBackColor = true;
+ this->close->Click += gcnew System::EventHandler(this, &MyForm::close_Click);
+ //
+ // expand
+ //
+ this->expand->FlatStyle = System::Windows::Forms::FlatStyle::Flat;
+ this->expand->ForeColor = System::Drawing::Color::FromArgb(static_cast(static_cast(26)), static_cast(static_cast(26)),
+ static_cast(static_cast(26)));
+ this->expand->Image = (cli::safe_cast(resources->GetObject(L"expand.Image")));
+ this->expand->Location = System::Drawing::Point(47, 3);
+ this->expand->Name = L"expand";
+ this->expand->Size = System::Drawing::Size(38, 38);
+ this->expand->TabIndex = 1;
+ this->expand->UseVisualStyleBackColor = true;
+ this->expand->Click += gcnew System::EventHandler(this, &MyForm::expand_Click);
+ //
+ // wrap
+ //
+ this->wrap->FlatStyle = System::Windows::Forms::FlatStyle::Flat;
+ this->wrap->ForeColor = System::Drawing::Color::FromArgb(static_cast(static_cast(26)), static_cast(static_cast(26)),
+ static_cast(static_cast(26)));
+ this->wrap->Image = (cli::safe_cast(resources->GetObject(L"wrap.Image")));
+ this->wrap->Location = System::Drawing::Point(3, 3);
+ this->wrap->Name = L"wrap";
+ this->wrap->Size = System::Drawing::Size(38, 38);
+ this->wrap->TabIndex = 2;
+ this->wrap->UseVisualStyleBackColor = true;
+ this->wrap->Click += gcnew System::EventHandler(this, &MyForm::wrap_Click);
+ //
+ // left_panel
+ //
+ this->left_panel->Anchor = static_cast((((System::Windows::Forms::AnchorStyles::Top | System::Windows::Forms::AnchorStyles::Bottom)
+ | System::Windows::Forms::AnchorStyles::Left)
+ | System::Windows::Forms::AnchorStyles::Right));
+ this->left_panel->AutoSize = true;
+ this->left_panel->Controls->Add(this->main_ico);
+ this->left_panel->Controls->Add(this->menu);
+ this->left_panel->Location = System::Drawing::Point(3, 3);
+ this->left_panel->Name = L"left_panel";
+ this->left_panel->Size = System::Drawing::Size(294, 54);
+ this->left_panel->TabIndex = 3;
+ this->left_panel->WrapContents = false;
+ //
+ // main_ico
+ //
+ this->main_ico->Image = (cli::safe_cast(resources->GetObject(L"main_ico.Image")));
+ this->main_ico->Location = System::Drawing::Point(3, 3);
+ this->main_ico->Name = L"main_ico";
+ this->main_ico->Size = System::Drawing::Size(48, 48);
+ this->main_ico->SizeMode = System::Windows::Forms::PictureBoxSizeMode::AutoSize;
+ this->main_ico->TabIndex = 2;
+ this->main_ico->TabStop = false;
+ this->main_ico->Click += gcnew System::EventHandler(this, &MyForm::main_ico_Click);
+ //
+ // menu
+ //
+ this->menu->Anchor = static_cast((System::Windows::Forms::AnchorStyles::Left | System::Windows::Forms::AnchorStyles::Right));
+ this->menu->BackColor = System::Drawing::Color::FromArgb(static_cast(static_cast(32)), static_cast(static_cast(32)),
+ static_cast(static_cast(32)));
+ this->menu->Dock = System::Windows::Forms::DockStyle::None;
+ this->menu->ImageScalingSize = System::Drawing::Size(40, 40);
+ this->menu->Items->AddRange(gcnew cli::array< System::Windows::Forms::ToolStripItem^ >(1) { this->toolTable });
+ this->menu->Location = System::Drawing::Point(54, 13);
+ this->menu->Name = L"menu";
+ this->menu->RenderMode = System::Windows::Forms::ToolStripRenderMode::System;
+ this->menu->Size = System::Drawing::Size(240, 28);
+ this->menu->TabIndex = 3;
+ this->menu->Text = L"menu";
+ //
+ // toolTable
+ //
+ this->toolTable->DropDownItems->AddRange(gcnew cli::array< System::Windows::Forms::ToolStripItem^ >(3) {
+ this->ToolStripMenuItem,
+ this->ToolStripMenuItem, this->ToolStripMenuItem
+ });
+ this->toolTable->ForeColor = System::Drawing::Color::White;
+ this->toolTable->Name = L"toolTable";
+ this->toolTable->Size = System::Drawing::Size(82, 24);
+ this->toolTable->Text = L"";
+ //
+ // ToolStripMenuItem
+ //
+ this->ToolStripMenuItem->Name = L"ToolStripMenuItem";
+ this->ToolStripMenuItem->Size = System::Drawing::Size(251, 26);
+ this->ToolStripMenuItem->Text = L" ";
+ this->ToolStripMenuItem->Click += gcnew System::EventHandler(this, &MyForm::ToolStripMenuItem_Click);
+ //
+ // ToolStripMenuItem
+ //
+ this->ToolStripMenuItem->Name = L"ToolStripMenuItem";
+ this->ToolStripMenuItem->Size = System::Drawing::Size(251, 26);
+ this->ToolStripMenuItem->Text = L" ";
+ this->ToolStripMenuItem->Click += gcnew System::EventHandler(this, &MyForm::ToolStripMenuItem_Click);
+ //
+ // ToolStripMenuItem
+ //
+ this->ToolStripMenuItem->Name = L"ToolStripMenuItem";
+ this->ToolStripMenuItem->Size = System::Drawing::Size(251, 26);
+ this->ToolStripMenuItem->Text = L" ";
+ this->ToolStripMenuItem->Click += gcnew System::EventHandler(this, &MyForm::ToolStripMenuItem_Click);
+ //
+ // tableLayoutPanel1
+ //
+ this->tableLayoutPanel1->Anchor = static_cast((((System::Windows::Forms::AnchorStyles::Top | System::Windows::Forms::AnchorStyles::Bottom)
+ | System::Windows::Forms::AnchorStyles::Left)
+ | System::Windows::Forms::AnchorStyles::Right));
+ this->tableLayoutPanel1->ColumnCount = 2;
+ this->tableLayoutPanel1->ColumnStyles->Add((gcnew System::Windows::Forms::ColumnStyle(System::Windows::Forms::SizeType::Percent,
+ 100)));
+ this->tableLayoutPanel1->ColumnStyles->Add((gcnew System::Windows::Forms::ColumnStyle()));
+ this->tableLayoutPanel1->Controls->Add(this->gridTable, 0, 0);
+ this->tableLayoutPanel1->Controls->Add(this->right_table, 1, 0);
+ this->tableLayoutPanel1->Location = System::Drawing::Point(3, 69);
+ this->tableLayoutPanel1->Name = L"tableLayoutPanel1";
+ this->tableLayoutPanel1->RowCount = 1;
+ this->tableLayoutPanel1->RowStyles->Add((gcnew System::Windows::Forms::RowStyle(System::Windows::Forms::SizeType::Percent, 100)));
+ this->tableLayoutPanel1->Size = System::Drawing::Size(1347, 618);
+ this->tableLayoutPanel1->TabIndex = 6;
+ //
+ // gridTable
+ //
+ this->gridTable->AllowUserToAddRows = false;
+ this->gridTable->AllowUserToDeleteRows = false;
+ this->gridTable->Anchor = static_cast((((System::Windows::Forms::AnchorStyles::Top | System::Windows::Forms::AnchorStyles::Bottom)
+ | System::Windows::Forms::AnchorStyles::Left)
+ | System::Windows::Forms::AnchorStyles::Right));
+ this->gridTable->BackgroundColor = System::Drawing::Color::FromArgb(static_cast(static_cast(26)), static_cast(static_cast(26)),
+ static_cast(static_cast(26)));
+ this->gridTable->BorderStyle = System::Windows::Forms::BorderStyle::None;
+ this->gridTable->ColumnHeadersHeightSizeMode = System::Windows::Forms::DataGridViewColumnHeadersHeightSizeMode::AutoSize;
+ this->gridTable->Columns->AddRange(gcnew cli::array< System::Windows::Forms::DataGridViewColumn^ >(7) {
+ this->surname, this->name,
+ this->patro, this->address, this->benefits, this->scores, this->trend
+ });
+ this->gridTable->EnableHeadersVisualStyles = false;
+ this->gridTable->GridColor = System::Drawing::Color::FromArgb(static_cast(static_cast(32)), static_cast(static_cast(32)),
+ static_cast(static_cast(32)));
+ this->gridTable->Location = System::Drawing::Point(3, 3);
+ this->gridTable->Name = L"gridTable";
+ this->gridTable->ReadOnly = true;
+ this->gridTable->RowHeadersVisible = false;
+ this->gridTable->RowHeadersWidth = 51;
+ this->gridTable->RowTemplate->Height = 24;
+ this->gridTable->Size = System::Drawing::Size(885, 612);
+ this->gridTable->TabIndex = 0;
+ //
+ // surname
+ //
+ this->surname->HeaderText = L"";
+ this->surname->MinimumWidth = 6;
+ this->surname->Name = L"surname";
+ this->surname->ReadOnly = true;
+ this->surname->Width = 125;
+ //
+ // name
+ //
+ this->name->HeaderText = L"";
+ this->name->MinimumWidth = 6;
+ this->name->Name = L"name";
+ this->name->ReadOnly = true;
+ this->name->Width = 125;
+ //
+ // patro
+ //
+ this->patro->HeaderText = L"";
+ this->patro->MinimumWidth = 6;
+ this->patro->Name = L"patro";
+ this->patro->ReadOnly = true;
+ this->patro->Width = 125;
+ //
+ // address
+ //
+ this->address->AutoSizeMode = System::Windows::Forms::DataGridViewAutoSizeColumnMode::Fill;
+ this->address->HeaderText = L"";
+ this->address->MinimumWidth = 6;
+ this->address->Name = L"address";
+ this->address->ReadOnly = true;
+ //
+ // benefits
+ //
+ this->benefits->HeaderText = L"";
+ this->benefits->MinimumWidth = 6;
+ this->benefits->Name = L"benefits";
+ this->benefits->ReadOnly = true;
+ this->benefits->Width = 125;
+ //
+ // scores
+ //
+ this->scores->HeaderText = L" ";
+ this->scores->MinimumWidth = 6;
+ this->scores->Name = L"scores";
+ this->scores->ReadOnly = true;
+ this->scores->Width = 125;
+ //
+ // trend
+ //
+ this->trend->HeaderText = L"";
+ this->trend->MinimumWidth = 6;
+ this->trend->Name = L"trend";
+ this->trend->ReadOnly = true;
+ this->trend->Width = 125;
+ //
+ // right_table
+ //
+ this->right_table->ColumnCount = 1;
+ this->right_table->ColumnStyles->Add((gcnew System::Windows::Forms::ColumnStyle(System::Windows::Forms::SizeType::Percent, 100)));
+ this->right_table->Controls->Add(this->chart, 0, 1);
+ this->right_table->Controls->Add(this->buttons, 0, 0);
+ this->right_table->Dock = System::Windows::Forms::DockStyle::Fill;
+ this->right_table->Location = System::Drawing::Point(894, 3);
+ this->right_table->Name = L"right_table";
+ this->right_table->RowCount = 2;
+ this->right_table->RowStyles->Add((gcnew System::Windows::Forms::RowStyle()));
+ this->right_table->RowStyles->Add((gcnew System::Windows::Forms::RowStyle(System::Windows::Forms::SizeType::Percent, 100)));
+ this->right_table->Size = System::Drawing::Size(450, 612);
+ this->right_table->TabIndex = 1;
+ //
+ // chart
+ //
+ this->chart->BackColor = System::Drawing::Color::FromArgb(static_cast(static_cast(26)), static_cast(static_cast(26)),
+ static_cast(static_cast(26)));
+ chartArea1->BackColor = System::Drawing::Color::FromArgb(static_cast(static_cast(26)), static_cast(static_cast(26)),
+ static_cast(static_cast(26)));
+ chartArea1->Name = L"ChartArea1";
+ this->chart->ChartAreas->Add(chartArea1);
+ this->chart->Dock = System::Windows::Forms::DockStyle::Fill;
+ legend1->BorderColor = System::Drawing::Color::FromArgb(static_cast(static_cast(26)), static_cast(static_cast(26)),
+ static_cast(static_cast(26)));
+ legend1->Name = L"Legend1";
+ this->chart->Legends->Add(legend1);
+ this->chart->Location = System::Drawing::Point(3, 238);
+ this->chart->Name = L"chart";
+ series1->ChartArea = L"ChartArea1";
+ series1->ChartType = System::Windows::Forms::DataVisualization::Charting::SeriesChartType::Doughnut;
+ series1->Legend = L"Legend1";
+ series1->Name = L"Series1";
+ dataPoint1->Color = System::Drawing::Color::LawnGreen;
+ dataPoint1->Label = L"#PERCENT{P2}";
+ dataPoint1->LegendText = L"";
+ dataPoint2->Color = System::Drawing::Color::DeepSkyBlue;
+ dataPoint2->Label = L"#PERCENT{P2}";
+ dataPoint2->LegendText = L" .";
+ series1->Points->Add(dataPoint1);
+ series1->Points->Add(dataPoint2);
+ this->chart->Series->Add(series1);
+ this->chart->Size = System::Drawing::Size(444, 371);
+ this->chart->TabIndex = 0;
+ this->chart->Text = L"chart1";
+ //
+ // buttons
+ //
+ this->buttons->Anchor = System::Windows::Forms::AnchorStyles::None;
+ this->buttons->AutoSize = true;
+ this->buttons->Controls->Add(this->comboBox);
+ this->buttons->Controls->Add(this->top_btn);
+ this->buttons->Controls->Add(this->after_btn);
+ this->buttons->Location = System::Drawing::Point(13, 3);
+ this->buttons->Name = L"buttons";
+ this->buttons->Size = System::Drawing::Size(424, 229);
+ this->buttons->TabIndex = 1;
+ //
+ // comboBox
+ //
+ this->comboBox->DropDownStyle = System::Windows::Forms::ComboBoxStyle::DropDownList;
+ this->comboBox->FormattingEnabled = true;
+ this->comboBox->Location = System::Drawing::Point(3, 3);
+ this->comboBox->Name = L"comboBox";
+ this->comboBox->Size = System::Drawing::Size(418, 24);
+ this->comboBox->TabIndex = 2;
+ this->comboBox->SelectedIndexChanged += gcnew System::EventHandler(this, &MyForm::comboBox_SelectedIndexChanged);
+ //
+ // top_btn
+ //
+ this->top_btn->Anchor = System::Windows::Forms::AnchorStyles::None;
+ this->top_btn->FlatStyle = System::Windows::Forms::FlatStyle::Flat;
+ this->top_btn->ForeColor = System::Drawing::Color::White;
+ this->top_btn->Image = (cli::safe_cast(resources->GetObject(L"top_btn.Image")));
+ this->top_btn->Location = System::Drawing::Point(3, 33);
+ this->top_btn->Name = L"top_btn";
+ this->top_btn->Size = System::Drawing::Size(206, 193);
+ this->top_btn->TabIndex = 0;
+ this->top_btn->UseVisualStyleBackColor = true;
+ this->top_btn->Click += gcnew System::EventHandler(this, &MyForm::top_btn_Click);
+ //
+ // after_btn
+ //
+ this->after_btn->Anchor = System::Windows::Forms::AnchorStyles::None;
+ this->after_btn->FlatStyle = System::Windows::Forms::FlatStyle::Flat;
+ this->after_btn->ForeColor = System::Drawing::Color::White;
+ this->after_btn->Image = (cli::safe_cast(resources->GetObject(L"after_btn.Image")));
+ this->after_btn->Location = System::Drawing::Point(215, 33);
+ this->after_btn->Name = L"after_btn";
+ this->after_btn->Size = System::Drawing::Size(206, 193);
+ this->after_btn->TabIndex = 1;
+ this->after_btn->UseVisualStyleBackColor = true;
+ this->after_btn->Click += gcnew System::EventHandler(this, &MyForm::after_btn_Click);
+ //
+ // MyForm
+ //
+ this->AutoScaleDimensions = System::Drawing::SizeF(8, 16);
+ this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
+ this->BackColor = System::Drawing::Color::FromArgb(static_cast(static_cast(31)), static_cast(static_cast(31)),
+ static_cast(static_cast(31)));
+ this->ClientSize = System::Drawing::Size(1353, 690);
+ this->Controls->Add(this->main_table);
+ this->Cursor = System::Windows::Forms::Cursors::Default;
+ this->FormBorderStyle = System::Windows::Forms::FormBorderStyle::None;
+ this->MainMenuStrip = this->menu;
+ this->MinimumSize = System::Drawing::Size(825, 500);
+ this->Name = L"MyForm";
+ this->Text = L"";
+ this->Closed += gcnew System::EventHandler(this, &MyForm::MyForm_Closed);
+ this->Load += gcnew System::EventHandler(this, &MyForm::MyForm_Load);
+ this->main_table->ResumeLayout(false);
+ this->main_table->PerformLayout();
+ this->top_table->ResumeLayout(false);
+ this->top_table->PerformLayout();
+ this->SysButtons->ResumeLayout(false);
+ this->left_panel->ResumeLayout(false);
+ this->left_panel->PerformLayout();
+ (cli::safe_cast(this->main_ico))->EndInit();
+ this->menu->ResumeLayout(false);
+ this->menu->PerformLayout();
+ this->tableLayoutPanel1->ResumeLayout(false);
+ (cli::safe_cast(this->gridTable))->EndInit();
+ this->right_table->ResumeLayout(false);
+ this->right_table->PerformLayout();
+ (cli::safe_cast(this->chart))->EndInit();
+ this->buttons->ResumeLayout(false);
+ this->ResumeLayout(false);
+
+ }
+#pragma endregion
+//
+private: System::Void MyForm_Load(System::Object^ sender, System::EventArgs^ e) {
+ main_ico_Click(sender, e);
+}
+private: System::Void MyForm_Closed(System::Object^ sender, System::EventArgs^ e) {
+}
+private: System::Void MyForm_MouseMove(System::Object^ sender, System::Windows::Forms::MouseEventArgs^ e) {
+ if (e->Button == System::Windows::Forms::MouseButtons::Left) {
+ this->ClientSize = System::Drawing::Size(this->PointToClient(MousePosition).X, this->PointToClient(MousePosition).Y);
+ }
+}
+
+//
+private: System::Void close_Click(System::Object^ sender, System::EventArgs^ e) {
+ this->Close();
+}
+private: System::Void expand_Click(System::Object^ sender, System::EventArgs^ e) {
+ this->TopMost = true;
+ if (!WindowWrap) {
+ this->WindowState = System::Windows::Forms::FormWindowState::Maximized; WindowWrap = 1;
+ } else {
+ this->WindowState = System::Windows::Forms::FormWindowState::Normal; WindowWrap = 0;
+ }
+}
+private: System::Void wrap_Click(System::Object^ sender, System::EventArgs^ e) {
+ this->TopMost = true;
+ this->WindowState = System::Windows::Forms::FormWindowState::Minimized;
+}
+
+//
+private: System::Void moveWindow_MouseDown(System::Object^ sender, System::Windows::Forms::MouseEventArgs^ e) {
+ mPoint = Point(e->X, e->Y);
+}
+private: System::Void moveWindow_MouseMove(System::Object^ sender, System::Windows::Forms::MouseEventArgs^ e) {
+ if (e->Button == System::Windows::Forms::MouseButtons::Left) {
+ this->Location = Point(this->Location.X + e->X - mPoint.X, this->Location.Y + e->Y - mPoint.Y);
+ }
+}
+
+//
+private: System::Void main_ico_Click(System::Object^ sender, System::EventArgs^ e) {
+ Table(sender, e);
+}
+
+private: System::Void after_btn_Click(System::Object^ sender, System::EventArgs^ e) {
+ List^ data = ReadWrite::Load^>("applis.dat");
+
+ if (data) {
+ int local = 0; int unlocal = 0;
+ for (int i = 0; i < data->Count; i++) {
+ std::string adr = "";
+ MarshalString(data[i]->address, adr);
+ adr = adr.substr(0, adr.find(","));
+
+ if (adr == ". ") local++;
+ else unlocal++;
+ }
+
+ double perc = (100 / ((double)data->Count)) * unlocal;
+ MessageBox::Show(" " + perc.ToString()->Substring(0, 4) + "%", "");
+ }
+}
+
+private: System::Void top_btn_Click(System::Object^ sender, System::EventArgs^ e) {
+ List^ data = ReadWrite::Load^>("applis.dat");
+ List^ nums = gcnew List;
+
+ if (data) {
+ for (int i = 0; i < data->Count; i++)
+ if (!nums->Contains(data[i]->trend)) nums->Add(data[i]->trend);
+
+ int* nums_i = new int[nums->Count];
+ for (int i = 0; i < nums->Count; i++) nums_i[i] = 0;
+
+ for (int i = 0; i < data->Count; i++)
+ for (int j = 0; j < nums->Count; j++)
+ if (nums[j] == data[i]->trend) nums_i[j]++;
+
+ for (int i = 0; i < nums->Count; i++) {
+ for (int j = 0; j < nums->Count - 1; j++) {
+ if (nums_i[j] < nums_i[j + 1]) {
+ std::swap(nums_i[j], nums_i[j + 1]);
+
+ String^ buf = nums[j];
+ nums[j] = nums[j + 1];
+ nums[j + 1] = buf;
+
+ }
+ }
+ }
+
+ String^ txt = " :\n";
+ for (int i = 0; i < nums->Count; i++) txt += (i + 1).ToString() + ". " + nums[i] + " - " + nums_i[i].ToString() + "\n";
+
+ MessageBox::Show(txt, "");
+ }
+}
+
+private: System::Void comboBox_SelectedIndexChanged(System::Object^ sender, System::EventArgs^ e) {
+ Table(sender, e);
+ Chart(sender, e);
+}
+
+//
+private: System::Void Table(System::Object^ sender, System::EventArgs^ e) {
+ gridTable->Rows->Clear();
+ List^ data = ReadWrite::Load^>("applis.dat");
+ List^ nums = gcnew List;
+
+ if (data) {
+ for (int i = 0; i < data->Count; i++) {
+ if (comboBox->Text == "" || comboBox->Text == data[i]->trend)
+ gridTable->Rows->Add(data[i]->surname, data[i]->name, data[i]->patro,
+ data[i]->address, data[i]->benefit, data[i]->score_UGE,
+ data[i]->trend);
+
+ if (!nums->Contains(data[i]->trend)) nums->Add(data[i]->trend);
+ }
+
+ comboBox->Items->Clear();
+ for (int i = 0; i < nums->Count; i++) {
+ comboBox->Items->Add(nums[i]);
+ }
+ }
+
+ Chart(sender, e);
+}
+
+private: System::Void Chart(System::Object^ sender, System::EventArgs^ e) {
+ List^ data = ReadWrite::Load^>("applis.dat");
+
+ if (data) {
+ int bYes = 0, bNo = 0;
+
+ for (int i = 0; i < data->Count; i++) {
+ if (data[i]->benefit == "") bNo++;
+ else bYes++;
+ }
+ double proc = 100 / (double)data->Count;
+
+ auto s1 = chart->Series[0];
+ s1->Points->Clear();
+
+ s1->Points->AddY(bYes * proc);
+ s1->Points[0]->Color = System::Drawing::Color::LawnGreen;
+ s1->Points[0]->Label = L"#PERCENT{P2}";
+ s1->Points[0]->LegendText = L"";
+
+ s1->Points->AddY(bNo * proc);
+ s1->Points[1]->Color = System::Drawing::Color::DeepSkyBlue;
+ s1->Points[1]->Label = L"#PERCENT{P2}";
+ s1->Points[1]->LegendText = L" .";
+ }
+}
+
+//
+private: System::Void ToolStripMenuItem_Click(System::Object^ sender, System::EventArgs^ e) {
+ Table(sender, e);
+ MessageBox::Show(" !", "");
+}
+
+private: System::Void ToolStripMenuItem_Click(System::Object^ sender, System::EventArgs^ e) {
+ AddApplicant^ prt_data = gcnew AddApplicant();
+ prt_data->ShowDialog();
+
+ Table(sender, e);
+}
+private: System::Void ToolStripMenuItem_Click(System::Object^ sender, System::EventArgs^ e) {
+ List^ data = ReadWrite::Load^>("applis.dat");
+
+ if (data) {
+ String^ txt = "";
+ for (int i = 0; i < data->Count; i++) {
+ std::string adr = "";
+ MarshalString(data[i]->address, adr);
+ adr = adr.substr(0, adr.find(","));
+
+ if (adr != ". ") {
+ txt += data[i]->surname + " " + data[i]->name + " " + data[i]->patro + " " + data[i]->benefit + " " + data[i]->trend + "\n";
+ }
+ }
+ System::IO::File::WriteAllText("stud.txt", txt);
+ MessageBox::Show(" !", "");
+ system("notepad stud.txt");
+ }
+}
+};
+}
+
diff --git a/InvestWinApp/MyForm.resx b/InvestWinApp/MyForm.resx
new file mode 100644
index 0000000..953130d
--- /dev/null
+++ b/InvestWinApp/MyForm.resx
@@ -0,0 +1,298 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 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
+
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAYAAACpSkzOAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAL
+ DAAACwwBP0AiyAAAAQNJREFUSEvNllkKwjAURbMureCPXYO0Ql2V1AVZdTtOPwr13gzgkPhamhQPXEhe
+ 5J2mplXlaNt2hRyRGzIU9jggpW1vQGHL1UTUTsKdpKagiFtMTUNRjO9E4krRKPyN6IGskRw5s/ABa1yr
+ kDsLISTRWh9NgHGGvMo4ntllrlMWRBLlto8GcydjMlvWYL5AgkgiX0PKfLUTEkQSkQsytz2/wNoU+Skh
+ XUTEK0Otk4QMFU2QaCLp1nWSSaI+h4GfDSKJ+hxvPrhBJFFl+/iu+k2G8aAHlq8VNkj+CorGqKLRfvj2
+ ZpyUHUWlGSdl6Y5mbeZJ2GiJA4UCaZBYfyDZy+xEKfUEanRf9hfPKeoAAAAASUVORK5CYII=
+
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAYAAACpSkzOAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAL
+ DAAACwwBP0AiyAAAASNJREFUSEvtlNtKw1AQRfMFFUTqrV5RFMUP8y/tW0F80XpXVFS8/ERcO9lH7fG0
+ NbHgSxasl5k9M4QmzRoa/o88z1u4jzMu1UY7vKvlUgmFKeyhOMcFtyrD7CyeaBEc4bRbRbNblL+4wMrH
+ NOPZ7xy4XQROy9oA17jkyFiU9UxM35GRoXtcd2woZJbxRgMRml9zrIRCB1PHHnDDsR/QW8FbBSPucNWx
+ QWjM4ZlSES+449gn1DbxUYGIK+w4loaAjqV+s1fcdUy5LXxSI0JHFh0bDUG9oqljb7iH2/isQsQl/u5I
+ gIHUqyrebUytT6KAQT1ZX1vGUP9IgAVtDF96ir8fCbBo2DEdmXdsMrBQx4613eg/cbJHAizWsUPbdrmh
+ oQpZ9gE57Y4wk4JZCgAAAABJRU5ErkJggg==
+
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAYAAACpSkzOAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAL
+ DAAACwwBP0AiyAAAAKVJREFUSEvtlkEKgzAQRXMu0XsU9VxiD6StB9Jt+r+TLAJK6TSjmzz4kERmHkNA
+ dRHvfY8syIb8C3u8kS60F3Dw5FMjxijhJNa0FHFEa2aKctzJN1aKLqGI1BSRmiJSc7uo2l/tClBbS4uU
+ Q1GoURPaJNwrAnWo+RnUNtIi5UyUHYou+/C9ZG3KRFEna1Me8QJH2Zsw7JIIDlpkRnL9QLKXTOKc+wCp
+ tFs93+RIzQAAAABJRU5ErkJggg==
+
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAL
+ DAAACwwBP0AiyAAAA2dJREFUaEPtmEloFEEUhhM1iQYTUaMHgwdvmuUsgjdJwIMSiOYgeHFBBMWLICgB
+ L4ogBmNEEQ+CB1HwpCDiigcFwYOiggu476JIFMU1fn/3o6npnun0ZOsW+4MPMv1eVb+eqaquSkVOTk7O
+ /8nAwEAr9uId/GLq773YYmnZg+Jq8AD+xlL8wv1Ybc2yAQWp+EuYlIuYnYegmINeWeXRZ83ThUI05sPD
+ 5hl2Yp3ZgffQRcOp2bpJD4rQ5HRR8dMsHMC1qRZz6bFwelDEXb+WgE4LRSC23E8JuG2h9KCIfr+WgDoL
+ RSBW76cE9FsoPVSEX0tA3ANM8VMCMvEA4SHUYaEIxLr8lIBMDKHwJNZqM9XCAVybjs+V4JCJSdyCWhJd
+ tNpowmrMS33z4eLVpsm6SRcK0fagXHqtefpQTDVe8MpKxnmssubZgIL0EH0YHk4uimmnmq3iXSiuGXvw
+ Nn429fceHJkxT0cNuBR34xV8j9q3X8NNWG+p2YCCZqFWBf18NzBuzy70rR3CedZFelDEK1U0RPSgp3AR
+ VlqXY4uqGCHuo4ZXrXU9Nni3jvITNZT0Fl2GGmKNuA1fYhyaLzuw0W4xuni3LKQNJ1s4ArEqXIHXMY4f
+ eAxH923q3crBLieC9AV4HPWLleIbLrYmZUG7ibjQPhZHd3Cxy2VBs9m4Cz+ojyK8wUmWPijk6p8AG/AF
+ asWLnOACCBZgl4cEzWtxHYa30KLN0kpCjt7W6zF8tOy2lCiWEGCXPfioc2qDfUwMbSrxJrrEHSVVuB78
+ qRKL8A6Lr25+vAC9hdfgWdRE1Pg+gyux5GnKhbwmdPmDcywcwDUtCGvxCQ7GRmtWiAVd4ibkVzyB+jdI
+ jXURgdg+dLlsIQ8+q/BV+EjBhJy05oVYcCh8wqO4BCdYd+pP8+AjunRZbBxqy/JAFxOiE5zaFH/TeynD
+ R9sRvfTm42pdCLEVNSwfep+SoRVIwyv4coripUa5hd2osawj4U58jEmI2+8nQb/eFky2JfGa+Gjp245z
+ LRSBmPbyWu9f40jzHbXDnWG3SwYNNmNkhYiD/PHYjkdQc2E4aNE4jGOzdwrDjfXW1ETWhNahpxx09m21
+ rtKHYrQCacU4jXqHlOIqxu9x0oYCZ6L2M+dQe6G3qMNPu6Xk5OTk/LNUVPwFXMCcWiZ0F1oAAAAASUVO
+ RK5CYII=
+
+
+
+ 19, 24
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+
+ 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
+ TkSuQmCC
+
+
+
+ 25
+
+
\ No newline at end of file
diff --git a/InvestWinApp/Resource.h b/InvestWinApp/Resource.h
new file mode 100644
index 0000000..1e1a593
--- /dev/null
+++ b/InvestWinApp/Resource.h
@@ -0,0 +1,3 @@
+//{{NO_DEPENDENCIES}}
+// Включаемый файл, созданный в Microsoft Visual C++.
+// Используется app.rc
diff --git a/InvestWinApp/app.ico b/InvestWinApp/app.ico
new file mode 100644
index 0000000..789d7cc
Binary files /dev/null and b/InvestWinApp/app.ico differ
diff --git a/InvestWinApp/app.rc b/InvestWinApp/app.rc
new file mode 100644
index 0000000..c361455
Binary files /dev/null and b/InvestWinApp/app.rc differ
diff --git a/InvestWinApp/applis.dat b/InvestWinApp/applis.dat
new file mode 100644
index 0000000..dfb39a6
Binary files /dev/null and b/InvestWinApp/applis.dat differ
diff --git a/InvestWinApp/config.h b/InvestWinApp/config.h
new file mode 100644
index 0000000..79bb7e9
--- /dev/null
+++ b/InvestWinApp/config.h
@@ -0,0 +1,33 @@
+#pragma once
+
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include