From 66fd00eda79d106d07617ebdeb90cdd46786e691 Mon Sep 17 00:00:00 2001 From: Thales1330 Date: Fri, 9 Sep 2016 17:01:27 -0300 Subject: Bus form under implementation --- Project/ElementForm.cpp | 254 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 254 insertions(+) create mode 100644 Project/ElementForm.cpp (limited to 'Project/ElementForm.cpp') diff --git a/Project/ElementForm.cpp b/Project/ElementForm.cpp new file mode 100644 index 0000000..c25afc0 --- /dev/null +++ b/Project/ElementForm.cpp @@ -0,0 +1,254 @@ +////////////////////////////////////////////////////////////////////// +// This file was auto-generated by codelite's wxCrafter Plugin +// wxCrafter project file: ElementForm.wxcp +// Do not modify this file by hand! +////////////////////////////////////////////////////////////////////// + +#include "ElementForm.h" + + +// Declare the bitmap loading function +extern void wxC9EE9InitBitmapResources(); + +static bool bBitmapLoaded = false; + + +BusFormBase::BusFormBase(wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style) + : wxDialog(parent, id, title, pos, size, style) +{ + if ( !bBitmapLoaded ) { + // We need to initialise the default bitmap handler + wxXmlResource::Get()->AddHandler(new wxBitmapXmlHandler); + wxC9EE9InitBitmapResources(); + bBitmapLoaded = true; + } + + wxBoxSizer* boxSizerLvl1_1 = new wxBoxSizer(wxVERTICAL); + this->SetSizer(boxSizerLvl1_1); + + m_notebook = new wxNotebook(this, wxID_ANY, wxDefaultPosition, wxDLG_UNIT(this, wxSize(-1,-1)), wxBK_DEFAULT); + m_notebook->SetName(wxT("m_notebook")); + + boxSizerLvl1_1->Add(m_notebook, 1, wxEXPAND, WXC_FROM_DIP(5)); + + m_panelGeneral = new wxPanel(m_notebook, wxID_ANY, wxDefaultPosition, wxDLG_UNIT(m_notebook, wxSize(-1,-1)), wxTAB_TRAVERSAL); + m_notebook->AddPage(m_panelGeneral, _("General"), false); + + wxBoxSizer* boxSizerLvl2_1 = new wxBoxSizer(wxVERTICAL); + m_panelGeneral->SetSizer(boxSizerLvl2_1); + + wxFlexGridSizer* flexGridSizerLvl3_1 = new wxFlexGridSizer(4, 2, 0, 0); + flexGridSizerLvl3_1->SetFlexibleDirection( wxBOTH ); + flexGridSizerLvl3_1->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED ); + flexGridSizerLvl3_1->AddGrowableCol(1); + + boxSizerLvl2_1->Add(flexGridSizerLvl3_1, 1, wxEXPAND, WXC_FROM_DIP(5)); + + m_staticTextName = new wxStaticText(m_panelGeneral, wxID_ANY, _("Name:"), wxDefaultPosition, wxDLG_UNIT(m_panelGeneral, wxSize(-1,-1)), 0); + + flexGridSizerLvl3_1->Add(m_staticTextName, 0, wxALL|wxALIGN_CENTER_VERTICAL, WXC_FROM_DIP(5)); + + m_textCtrlName = new wxTextCtrl(m_panelGeneral, wxID_ANY, wxT(""), wxDefaultPosition, wxDLG_UNIT(m_panelGeneral, wxSize(-1,-1)), 0); + #if wxVERSION_NUMBER >= 3000 + m_textCtrlName->SetHint(wxT("")); + #endif + + flexGridSizerLvl3_1->Add(m_textCtrlName, 1, wxALL|wxALIGN_CENTER_VERTICAL, WXC_FROM_DIP(5)); + m_textCtrlName->SetMinSize(wxSize(200,-1)); + + m_staticTextNomVoltage = new wxStaticText(m_panelGeneral, wxID_ANY, _("Nominal voltage:"), wxDefaultPosition, wxDLG_UNIT(m_panelGeneral, wxSize(-1,-1)), 0); + + flexGridSizerLvl3_1->Add(m_staticTextNomVoltage, 0, wxALL|wxALIGN_CENTER_VERTICAL, WXC_FROM_DIP(5)); + + wxBoxSizer* boxSizerLvl4_1 = new wxBoxSizer(wxHORIZONTAL); + + flexGridSizerLvl3_1->Add(boxSizerLvl4_1, 0, wxEXPAND, WXC_FROM_DIP(5)); + + m_textCtrlNomVoltage = new wxTextCtrl(m_panelGeneral, wxID_ANY, wxT(""), wxDefaultPosition, wxDLG_UNIT(m_panelGeneral, wxSize(-1,-1)), 0); + #if wxVERSION_NUMBER >= 3000 + m_textCtrlNomVoltage->SetHint(wxT("")); + #endif + + boxSizerLvl4_1->Add(m_textCtrlNomVoltage, 1, wxALL|wxALIGN_CENTER_VERTICAL, WXC_FROM_DIP(5)); + + wxArrayString m_choiceNomVoltageArr; + m_choiceNomVoltageArr.Add(wxT("V")); + m_choiceNomVoltageArr.Add(wxT("kV")); + m_choiceNomVoltage = new wxChoice(m_panelGeneral, wxID_ANY, wxDefaultPosition, wxDLG_UNIT(m_panelGeneral, wxSize(-1,-1)), m_choiceNomVoltageArr, 0); + m_choiceNomVoltage->SetSelection(1); + + boxSizerLvl4_1->Add(m_choiceNomVoltage, 0, wxALL, WXC_FROM_DIP(5)); + + m_checkBoxCtrlVoltage = new wxCheckBox(m_panelGeneral, wxID_ANY, _("Controlled voltage:"), wxDefaultPosition, wxDLG_UNIT(m_panelGeneral, wxSize(-1,-1)), 0); + m_checkBoxCtrlVoltage->SetValue(false); + + flexGridSizerLvl3_1->Add(m_checkBoxCtrlVoltage, 0, wxALL|wxALIGN_CENTER_VERTICAL, WXC_FROM_DIP(5)); + + wxBoxSizer* boxSizerLvl4_2 = new wxBoxSizer(wxHORIZONTAL); + + flexGridSizerLvl3_1->Add(boxSizerLvl4_2, 0, wxEXPAND, WXC_FROM_DIP(5)); + + m_textCtrlCtrlVoltage = new wxTextCtrl(m_panelGeneral, wxID_ANY, wxT(""), wxDefaultPosition, wxDLG_UNIT(m_panelGeneral, wxSize(-1,-1)), 0); + #if wxVERSION_NUMBER >= 3000 + m_textCtrlCtrlVoltage->SetHint(wxT("")); + #endif + + boxSizerLvl4_2->Add(m_textCtrlCtrlVoltage, 1, wxALL|wxALIGN_CENTER_VERTICAL, WXC_FROM_DIP(5)); + + wxArrayString m_choiceCtrlVoltageArr; + m_choiceCtrlVoltageArr.Add(wxT("p.u.")); + m_choiceCtrlVoltageArr.Add(wxT("kV")); + m_choiceCtrlVoltage = new wxChoice(m_panelGeneral, wxID_ANY, wxDefaultPosition, wxDLG_UNIT(m_panelGeneral, wxSize(-1,-1)), m_choiceCtrlVoltageArr, 0); + m_choiceCtrlVoltage->SetSelection(0); + + boxSizerLvl4_2->Add(m_choiceCtrlVoltage, 0, wxALL, WXC_FROM_DIP(5)); + + m_checkBoxSlackBus = new wxCheckBox(m_panelGeneral, wxID_ANY, _("Slack Bus"), wxDefaultPosition, wxDLG_UNIT(m_panelGeneral, wxSize(-1,-1)), 0); + m_checkBoxSlackBus->SetValue(false); + + flexGridSizerLvl3_1->Add(m_checkBoxSlackBus, 0, wxALL|wxALIGN_CENTER_VERTICAL, WXC_FROM_DIP(5)); + + m_panelFault = new wxPanel(m_notebook, wxID_ANY, wxDefaultPosition, wxDLG_UNIT(m_notebook, wxSize(-1,-1)), wxTAB_TRAVERSAL); + m_notebook->AddPage(m_panelFault, _("Fault"), false); + + wxBoxSizer* boxSizerLvl2_2 = new wxBoxSizer(wxVERTICAL); + m_panelFault->SetSizer(boxSizerLvl2_2); + + m_checkBoxFault = new wxCheckBox(m_panelFault, wxID_ANY, _("Insert fault in the bus"), wxDefaultPosition, wxDLG_UNIT(m_panelFault, wxSize(-1,-1)), 0); + m_checkBoxFault->SetValue(false); + + boxSizerLvl2_2->Add(m_checkBoxFault, 0, wxALL|wxALIGN_CENTER_VERTICAL, WXC_FROM_DIP(5)); + + wxFlexGridSizer* flexGridSizerLvl3_2 = new wxFlexGridSizer(3, 2, 0, 0); + flexGridSizerLvl3_2->SetFlexibleDirection( wxBOTH ); + flexGridSizerLvl3_2->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED ); + flexGridSizerLvl3_2->AddGrowableCol(1); + + boxSizerLvl2_2->Add(flexGridSizerLvl3_2, 1, wxEXPAND, WXC_FROM_DIP(5)); + + m_staticTextFaultType = new wxStaticText(m_panelFault, wxID_ANY, _("Fault type:"), wxDefaultPosition, wxDLG_UNIT(m_panelFault, wxSize(-1,-1)), 0); + + flexGridSizerLvl3_2->Add(m_staticTextFaultType, 0, wxALL|wxALIGN_CENTER_VERTICAL, WXC_FROM_DIP(5)); + + wxArrayString m_choiceFaultTypeArr; + m_choiceFaultTypeArr.Add(wxT("Three-phase")); + m_choiceFaultTypeArr.Add(wxT("Line-to-line")); + m_choiceFaultTypeArr.Add(wxT("Double line-to-ground")); + m_choiceFaultTypeArr.Add(wxT("Line-to-ground")); + m_choiceFaultType = new wxChoice(m_panelFault, wxID_ANY, wxDefaultPosition, wxDLG_UNIT(m_panelFault, wxSize(-1,-1)), m_choiceFaultTypeArr, 0); + m_choiceFaultType->SetSelection(0); + + flexGridSizerLvl3_2->Add(m_choiceFaultType, 0, wxALL|wxEXPAND|wxALIGN_CENTER_VERTICAL, WXC_FROM_DIP(5)); + + m_staticTextFaultPlace = new wxStaticText(m_panelFault, wxID_ANY, _("Fault place:"), wxDefaultPosition, wxDLG_UNIT(m_panelFault, wxSize(-1,-1)), 0); + + flexGridSizerLvl3_2->Add(m_staticTextFaultPlace, 0, wxALL|wxALIGN_CENTER_VERTICAL, WXC_FROM_DIP(5)); + + wxArrayString m_choiceFaultPlaceArr; + m_choiceFaultPlaceArr.Add(wxT("Line A")); + m_choiceFaultPlaceArr.Add(wxT("Line B")); + m_choiceFaultPlaceArr.Add(wxT("Line C")); + m_choiceFaultPlace = new wxChoice(m_panelFault, wxID_ANY, wxDefaultPosition, wxDLG_UNIT(m_panelFault, wxSize(-1,-1)), m_choiceFaultPlaceArr, 0); + m_choiceFaultPlace->SetSelection(0); + + flexGridSizerLvl3_2->Add(m_choiceFaultPlace, 0, wxALL|wxEXPAND|wxALIGN_CENTER_VERTICAL, WXC_FROM_DIP(5)); + + wxStaticBoxSizer* staticBoxSizerFaultImpedance = new wxStaticBoxSizer( new wxStaticBox(m_panelFault, wxID_ANY, _("Fault impedance")), wxVERTICAL); + + boxSizerLvl2_2->Add(staticBoxSizerFaultImpedance, 0, wxEXPAND, WXC_FROM_DIP(5)); + + wxFlexGridSizer* flexGridSizerLvl3_3 = new wxFlexGridSizer(2, 2, 0, 0); + flexGridSizerLvl3_3->SetFlexibleDirection( wxBOTH ); + flexGridSizerLvl3_3->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED ); + flexGridSizerLvl3_3->AddGrowableCol(1); + + staticBoxSizerFaultImpedance->Add(flexGridSizerLvl3_3, 1, wxEXPAND, WXC_FROM_DIP(5)); + + m_staticTextFaultResistance = new wxStaticText(m_panelFault, wxID_ANY, _("Resistance (R):"), wxDefaultPosition, wxDLG_UNIT(m_panelFault, wxSize(-1,-1)), 0); + + flexGridSizerLvl3_3->Add(m_staticTextFaultResistance, 0, wxALL|wxALIGN_CENTER_VERTICAL, WXC_FROM_DIP(5)); + + wxBoxSizer* boxSizerLvl4_3 = new wxBoxSizer(wxHORIZONTAL); + + flexGridSizerLvl3_3->Add(boxSizerLvl4_3, 0, wxEXPAND, WXC_FROM_DIP(5)); + + m_textCtrlFaultResistance = new wxTextCtrl(m_panelFault, wxID_ANY, wxT(""), wxDefaultPosition, wxDLG_UNIT(m_panelFault, wxSize(-1,-1)), 0); + #if wxVERSION_NUMBER >= 3000 + m_textCtrlFaultResistance->SetHint(wxT("")); + #endif + + boxSizerLvl4_3->Add(m_textCtrlFaultResistance, 1, wxALL|wxALIGN_CENTER_VERTICAL, WXC_FROM_DIP(5)); + + m_staticTextPU_1 = new wxStaticText(m_panelFault, wxID_ANY, _("p.u."), wxDefaultPosition, wxDLG_UNIT(m_panelFault, wxSize(-1,-1)), 0); + + boxSizerLvl4_3->Add(m_staticTextPU_1, 0, wxALL|wxALIGN_CENTER_VERTICAL, WXC_FROM_DIP(5)); + + m_staticTextReactance = new wxStaticText(m_panelFault, wxID_ANY, _("Reactance (Xl)"), wxDefaultPosition, wxDLG_UNIT(m_panelFault, wxSize(-1,-1)), 0); + + flexGridSizerLvl3_3->Add(m_staticTextReactance, 0, wxALL|wxALIGN_CENTER_VERTICAL, WXC_FROM_DIP(5)); + + wxBoxSizer* boxSizerLvl4_4 = new wxBoxSizer(wxHORIZONTAL); + + flexGridSizerLvl3_3->Add(boxSizerLvl4_4, 0, wxEXPAND, WXC_FROM_DIP(5)); + + m_textCtrlFaultReactance = new wxTextCtrl(m_panelFault, wxID_ANY, wxT(""), wxDefaultPosition, wxDLG_UNIT(m_panelFault, wxSize(-1,-1)), 0); + #if wxVERSION_NUMBER >= 3000 + m_textCtrlFaultReactance->SetHint(wxT("")); + #endif + + boxSizerLvl4_4->Add(m_textCtrlFaultReactance, 1, wxALL|wxALIGN_CENTER_VERTICAL, WXC_FROM_DIP(5)); + + m_staticTextPU_2 = new wxStaticText(m_panelFault, wxID_ANY, _("p.u."), wxDefaultPosition, wxDLG_UNIT(m_panelFault, wxSize(-1,-1)), 0); + + boxSizerLvl4_4->Add(m_staticTextPU_2, 0, wxALL|wxALIGN_CENTER_VERTICAL, WXC_FROM_DIP(5)); + + wxBoxSizer* boxSizerOkCancel = new wxBoxSizer(wxHORIZONTAL); + + boxSizerLvl1_1->Add(boxSizerOkCancel, 0, wxALL|wxALIGN_RIGHT, WXC_FROM_DIP(5)); + + m_buttonOK = new wxButton(this, wxID_ANY, _("OK"), wxDefaultPosition, wxDLG_UNIT(this, wxSize(-1,-1)), 0); + + boxSizerOkCancel->Add(m_buttonOK, 0, wxALL|wxALIGN_RIGHT, WXC_FROM_DIP(5)); + + m_ButtonCancel = new wxButton(this, wxID_ANY, _("Cancel"), wxDefaultPosition, wxDLG_UNIT(this, wxSize(-1,-1)), 0); + + boxSizerOkCancel->Add(m_ButtonCancel, 0, wxALL|wxALIGN_RIGHT, WXC_FROM_DIP(5)); + + + #if wxVERSION_NUMBER >= 2900 + if(!wxPersistenceManager::Get().Find(m_notebook)){ + wxPersistenceManager::Get().RegisterAndRestore(m_notebook); + } else { + wxPersistenceManager::Get().Restore(m_notebook); + } + #endif + + SetName(wxT("BusFormBase")); + SetSize(-1,-1); + if (GetSizer()) { + GetSizer()->Fit(this); + } + if(GetParent()) { + CentreOnParent(wxBOTH); + } else { + CentreOnScreen(wxBOTH); + } +#if wxVERSION_NUMBER >= 2900 + if(!wxPersistenceManager::Get().Find(this)) { + wxPersistenceManager::Get().RegisterAndRestore(this); + } else { + wxPersistenceManager::Get().Restore(this); + } +#endif + // Connect events + m_buttonOK->Connect(wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler(BusFormBase::OnButtonOKClick), NULL, this); + m_ButtonCancel->Connect(wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler(BusFormBase::OnButtonCancelClick), NULL, this); + +} + +BusFormBase::~BusFormBase() +{ + m_buttonOK->Disconnect(wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler(BusFormBase::OnButtonOKClick), NULL, this); + m_ButtonCancel->Disconnect(wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler(BusFormBase::OnButtonCancelClick), NULL, this); + +} -- cgit