Exemplo n.º 1
0
//------------------------------------------------------------------------------
// void OnButtonClick()
//------------------------------------------------------------------------------
void BurnThrusterPanel::OnButtonClick(wxCommandEvent &event)
{  
   bool isModified = false;
   if (event.GetEventObject() == cCoefButton)
   {
      ThrusterCoefficientDialog tcDlg(this, -1, "ThrusterCoefficientDialog", theObject, "C", cCoefs);
      tcDlg.ShowModal();
      isModified = tcDlg.AreCoefsSaved();
      if (isModified)
      {
         cCoefs.clear();
         cCoefs      = tcDlg.GetCoefValues();

         EnableUpdate(true);
      }
      areCCoefsChanged = areCCoefsChanged || isModified;
   }
   else if (event.GetEventObject() == kCoefButton)
   {
      ThrusterCoefficientDialog tcDlg(this, -1, "ImpulseCoefficientDialog", theObject, "K", kCoefs);
      tcDlg.ShowModal();
      isModified = tcDlg.AreCoefsSaved();
      if (isModified)
      {
         kCoefs.clear();
         kCoefs      = tcDlg.GetCoefValues();

         EnableUpdate(true);
      }
      areKCoefsChanged = areKCoefsChanged || isModified;
   }
}
Exemplo n.º 2
0
//------------------------------------------------------------------------------
// void OnButtonClick()
//------------------------------------------------------------------------------
void BurnThrusterPanel::OnButtonClick(wxCommandEvent &event)
{  
    if (event.GetEventObject() == cCoefButton)
    {
       ThrusterCoefficientDialog tcDlg(this, -1, wxT("ThrusterCoefficientDialog"), theObject, wxT("C"));
       tcDlg.ShowModal();
    }
    else if (event.GetEventObject() == kCoefButton)
    {
       ThrusterCoefficientDialog tcDlg(this, -1, wxT("ImpulseCoefficientDialog"), theObject, wxT("K"));
       tcDlg.ShowModal();
    }
}
Exemplo n.º 3
0
//------------------------------------------------------------------------------
// void OnButtonClick()
//------------------------------------------------------------------------------
void BurnThrusterPanel::OnButtonClick(wxCommandEvent &event)
{  
//   bool isModified = false;
//   if (event.GetEventObject() == cCoefButton)
//   {
//      ThrusterCoefficientDialog tcDlg(this, -1, "ThrusterCoefficientDialog", theObject, "C", cCoefs);
//      tcDlg.ShowModal();
//      isModified = tcDlg.AreCoefsSaved();
//      if (isModified)
//      {
//         cCoefs.clear();
//         cCoefs      = tcDlg.GetCoefValues();
//
//         EnableUpdate(true);
//      }
//      areCCoefsChanged = areCCoefsChanged || isModified;
//   }
//   else if (event.GetEventObject() == kCoefButton)
//   {
//      ThrusterCoefficientDialog tcDlg(this, -1, "ImpulseCoefficientDialog", theObject, "K", kCoefs);
//      tcDlg.ShowModal();
//      isModified = tcDlg.AreCoefsSaved();
//      if (isModified)
//      {
//         kCoefs.clear();
//         kCoefs      = tcDlg.GetCoefValues();
//
//         EnableUpdate(true);
//      }
//      areKCoefsChanged = areKCoefsChanged || isModified;
//   }

   if (theObject->IsOfType("ChemicalThruster"))
   {
      ThrusterCoefficientDialog tcDlg(this, -1, "Chemical Thruster Configuration",
            theObject, ChemicalThruster::COEFFICIENT_COUNT, cCoefs, kCoefs);
      tcDlg.ShowModal();
      bool cSaved = tcDlg.AreCoefs1Saved();
      bool kSaved = tcDlg.AreCoefs2Saved();

      if (cSaved)
      {
         cCoefs.clear();
         cCoefs      = tcDlg.GetCoefs1Values();

         EnableUpdate(true);
      }
      areCCoefsChanged = areCCoefsChanged || cSaved;

      if (kSaved)
      {
         kCoefs.clear();
         kCoefs      = tcDlg.GetCoefs2Values();

         EnableUpdate(true);
      }
      areKCoefsChanged = areKCoefsChanged || kSaved;
   }
   else // ElectricThruster
   {
//      MessageInterface::ShowMessage("Electric Thruster Configuration not yet implemented.\n");
      ThrusterCoefficientDialog tcDlg(this, -1, "Electric Thruster Configuration",
            theObject, ElectricThruster::ELECTRIC_COEFF_COUNT, tCoefs, mfCoefs);
      tcDlg.ShowModal();

      bool tSaved  = tcDlg.AreCoefs1Saved();
      bool mfSaved = tcDlg.AreCoefs2Saved();

      if (tSaved)
      {
         tCoefs.clear();
         tCoefs      = tcDlg.GetCoefs1Values();

         EnableUpdate(true);
      }
      areTCoefsChanged = areTCoefsChanged || tSaved;

      if (mfSaved)
      {
         mfCoefs.clear();
         mfCoefs      = tcDlg.GetCoefs2Values();

         EnableUpdate(true);
      }
      areMFCoefsChanged = areMFCoefsChanged || mfSaved;
   }
}