summaryrefslogtreecommitdiffstats
path: root/Project/MainFrame.cpp
diff options
context:
space:
mode:
authorThales Lima Oliveira <thaleslima.ufu@gmail.com>2019-04-25 01:25:41 -0300
committerThales Lima Oliveira <thaleslima.ufu@gmail.com>2019-04-25 01:25:41 -0300
commit2771fff79ac9c3c09b70f4668e7142b2e944d1f2 (patch)
treec55b0780b0da2ac270df16c5b92d7fc243ea0756 /Project/MainFrame.cpp
parentfdb50c49b323edf16ce72c7ee2c678aa1ac99777 (diff)
downloadPSP.git-2771fff79ac9c3c09b70f4668e7142b2e944d1f2.tar.gz
PSP.git-2771fff79ac9c3c09b70f4668e7142b2e944d1f2.tar.xz
PSP.git-2771fff79ac9c3c09b70f4668e7142b2e944d1f2.zip
Matpower Importer and power quality calculation
Power quality in implementation
Diffstat (limited to 'Project/MainFrame.cpp')
-rw-r--r--Project/MainFrame.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/Project/MainFrame.cpp b/Project/MainFrame.cpp
index 5afff94..3af0545 100644
--- a/Project/MainFrame.cpp
+++ b/Project/MainFrame.cpp
@@ -27,6 +27,7 @@
#include "Inductor.h"
#include "Line.h"
#include "Load.h"
+#include "HarmCurrent.h"
#include "MainFrame.h"
#include "PropertiesData.h"
#include "SimulationsSettingsForm.h"
@@ -124,6 +125,8 @@ void MainFrame::EnableCurrentProjectRibbon(bool enable)
m_ribbonButtonBarClipboard->EnableButton(ID_RIBBON_UNDO, enable);
m_ribbonButtonBarCircuit->EnableButton(ID_RIBBON_ROTATEC, enable);
m_ribbonButtonBarCircuit->EnableButton(ID_RIBBON_ROTATECC, enable);
+ m_ribbonButtonBarSimulations->EnableButton(ID_RIBBON_HARMDIST, enable);
+ m_ribbonButtonBarSimulations->EnableButton(ID_RIBBON_FREQRESP, enable);
}
void MainFrame::CreateAddElementsMenu()
@@ -150,6 +153,8 @@ void MainFrame::CreateAddElementsMenu()
_("Adds a shunt capacitor at the circuit"));
wxMenuItem* inductorElement = new wxMenuItem(m_addElementsMenu, ID_ADDMENU_INDUCTOR, _("&Inductor\tShift-I"),
_("Adds a shunt inductor at the circuit"));
+ wxMenuItem* harmCurrentElement = new wxMenuItem(m_addElementsMenu, ID_ADDMENU_HARMCURRENT, _("&Harmonic current\tShift-H"),
+ _("Adds a harmonic current source at the circuit"));
m_addElementsMenu->Append(busElement);
m_addElementsMenu->Append(lineElement);
@@ -160,6 +165,7 @@ void MainFrame::CreateAddElementsMenu()
m_addElementsMenu->Append(loadElement);
m_addElementsMenu->Append(capacitorElement);
m_addElementsMenu->Append(inductorElement);
+ m_addElementsMenu->Append(harmCurrentElement);
m_addElementsMenu->Bind(wxEVT_COMMAND_MENU_SELECTED, &MainFrame::OnAddElementsClick, this);
}
@@ -439,6 +445,14 @@ void MainFrame::OnAddElementsClick(wxCommandEvent& event)
statusBarText = _("Insert Inductor: Click on a buses, ESC to cancel.");
newElement = true;
} break;
+ case ID_ADDMENU_HARMCURRENT: {
+ HarmCurrent* newHarmCurrent =
+ new HarmCurrent(wxString::Format(_("Harmonic Current %d"), workspace->GetElementNumber(ID_INDUCTOR)));
+ workspace->IncrementElementNumber(ID_HARMCURRENT);
+ elementList.push_back(newHarmCurrent);
+ statusBarText = _("Insert Harmonic Current Source: Click on a buses, ESC to cancel.");
+ newElement = true;
+ } break;
case ID_ADDMENU_INDMOTOR: {
IndMotor* newIndMotor = new IndMotor(
wxString::Format(_("Induction motor %d"), workspace->GetElementNumber(ID_INDMOTOR)));
@@ -540,3 +554,11 @@ void MainFrame::OnSimulationSettingsClick(wxRibbonButtonBarEvent& event)
simulSettingsForm.ShowModal();
}
}
+void MainFrame::OnFreqResponseClick(wxRibbonButtonBarEvent& event)
+{
+}
+void MainFrame::OnHarmDistortionsClick(wxRibbonButtonBarEvent& event)
+{
+ Workspace* workspace = static_cast<Workspace*>(m_auiNotebook->GetCurrentPage());
+ if(workspace) { workspace->RunHarmonicDistortion(); }
+}