Ignore:
Timestamp:
Aug 28, 2010, 12:57:56 AM (14 years ago)
Author:
Frederik Heber <heber@…>
Branches:
Action_Thermostats, Add_AtomRandomPerturbation, Add_FitFragmentPartialChargesAction, Add_RotateAroundBondAction, Add_SelectAtomByNameAction, Added_ParseSaveFragmentResults, AddingActions_SaveParseParticleParameters, Adding_Graph_to_ChangeBondActions, Adding_MD_integration_tests, Adding_ParticleName_to_Atom, Adding_StructOpt_integration_tests, AtomFragments, Automaking_mpqc_open, AutomationFragmentation_failures, Candidate_v1.5.4, Candidate_v1.6.0, Candidate_v1.6.1, ChangeBugEmailaddress, ChangingTestPorts, ChemicalSpaceEvaluator, CombiningParticlePotentialParsing, Combining_Subpackages, Debian_Package_split, Debian_package_split_molecuildergui_only, Disabling_MemDebug, Docu_Python_wait, EmpiricalPotential_contain_HomologyGraph, EmpiricalPotential_contain_HomologyGraph_documentation, Enable_parallel_make_install, Enhance_userguide, Enhanced_StructuralOptimization, Enhanced_StructuralOptimization_continued, Example_ManyWaysToTranslateAtom, Exclude_Hydrogens_annealWithBondGraph, FitPartialCharges_GlobalError, Fix_BoundInBox_CenterInBox_MoleculeActions, Fix_ChargeSampling_PBC, Fix_ChronosMutex, Fix_FitPartialCharges, Fix_FitPotential_needs_atomicnumbers, Fix_ForceAnnealing, Fix_IndependentFragmentGrids, Fix_ParseParticles, Fix_ParseParticles_split_forward_backward_Actions, Fix_PopActions, Fix_QtFragmentList_sorted_selection, Fix_Restrictedkeyset_FragmentMolecule, Fix_StatusMsg, Fix_StepWorldTime_single_argument, Fix_Verbose_Codepatterns, Fix_fitting_potentials, Fixes, ForceAnnealing_goodresults, ForceAnnealing_oldresults, ForceAnnealing_tocheck, ForceAnnealing_with_BondGraph, ForceAnnealing_with_BondGraph_continued, ForceAnnealing_with_BondGraph_continued_betteresults, ForceAnnealing_with_BondGraph_contraction-expansion, FragmentAction_writes_AtomFragments, FragmentMolecule_checks_bonddegrees, GeometryObjects, Gui_Fixes, Gui_displays_atomic_force_velocity, ImplicitCharges, IndependentFragmentGrids, IndependentFragmentGrids_IndividualZeroInstances, IndependentFragmentGrids_IntegrationTest, IndependentFragmentGrids_Sole_NN_Calculation, JobMarket_RobustOnKillsSegFaults, JobMarket_StableWorkerPool, JobMarket_unresolvable_hostname_fix, MoreRobust_FragmentAutomation, ODR_violation_mpqc_open, PartialCharges_OrthogonalSummation, PdbParser_setsAtomName, PythonUI_with_named_parameters, QtGui_reactivate_TimeChanged_changes, Recreated_GuiChecks, Rewrite_FitPartialCharges, RotateToPrincipalAxisSystem_UndoRedo, SaturateAtoms_findBestMatching, SaturateAtoms_singleDegree, StoppableMakroAction, Subpackage_CodePatterns, Subpackage_JobMarket, Subpackage_LinearAlgebra, Subpackage_levmar, Subpackage_mpqc_open, Subpackage_vmg, Switchable_LogView, ThirdParty_MPQC_rebuilt_buildsystem, TrajectoryDependenant_MaxOrder, TremoloParser_IncreasedPrecision, TremoloParser_MultipleTimesteps, TremoloParser_setsAtomName, Ubuntu_1604_changes, stable
Children:
966e12
Parents:
53d01c
git-author:
Frederik Heber <heber@…> (08/26/10 21:05:34)
git-committer:
Frederik Heber <heber@…> (08/28/10 00:57:56)
Message:

All Actions are converted to the new macro framework.

  • included all three values that have been used to create or convert the files
    • createdef.sh
    • createCpp.sh
    • createHeader.sh
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/Actions/SelectionAction/MoleculeByIdAction.cpp

    r53d01c r1fd675  
    2020#include "Helpers/MemDebug.hpp"
    2121
    22 #include "Actions/SelectionAction/MoleculeByIdAction.hpp"
    23 #include "Actions/ActionRegistry.hpp"
    2422#include "molecule.hpp"
    2523#include "Helpers/Log.hpp"
     
    3230using namespace std;
    3331
    34 #include "UIElements/UIFactory.hpp"
    35 #include "UIElements/Dialog.hpp"
    36 #include "Actions/ValueStorage.hpp"
     32#include "Actions/SelectionAction/MoleculeByIdAction.hpp"
    3733
     34// and construct the stuff
     35#include "MoleculeByIdAction.def"
     36#include "Action_impl_pre.hpp"
     37/** =========== define the function ====================== */
     38Action::state_ptr SelectionMoleculeByIdAction::performCall() {
     39  // obtain information
     40  getParametersfromValueStorage();
    3841
    39 // memento to remember the state when undoing
    40 
    41 class SelectionMoleculeByIdState : public ActionState {
    42 public:
    43   SelectionMoleculeByIdState(molecule* _mol) :
    44     mol(_mol)
    45   {}
    46   molecule* mol;
    47 };
    48 
    49 const char SelectionMoleculeByIdAction::NAME[] = "select-molecule-by-id";
    50 
    51 SelectionMoleculeByIdAction::SelectionMoleculeByIdAction() :
    52   Action(NAME)
    53 {}
    54 
    55 SelectionMoleculeByIdAction::~SelectionMoleculeByIdAction()
    56 {}
    57 
    58 void SelectionMoleculeById(molecule *_mol) {
    59   ValueStorage::getInstance().setCurrentValue(SelectionMoleculeByIdAction::NAME, _mol);
    60   ActionRegistry::getInstance().getActionByName(SelectionMoleculeByIdAction::NAME)->call(Action::NonInteractive);
    61 };
    62 
    63 void SelectionMoleculeByIdAction::getParametersfromValueStorage()
    64 {};
    65 
    66 Dialog* SelectionMoleculeByIdAction::fillDialog(Dialog *dialog) {
    67   ASSERT(dialog,"No Dialog given when filling action dialog");
    68 
    69   dialog->queryMolecule(NAME, ValueStorage::getInstance().getDescription(NAME));
    70 
    71   return dialog;
    72 }
    73 
    74 Action::state_ptr SelectionMoleculeByIdAction::performCall() {
    75   molecule *mol = NULL;
    76 
    77   ValueStorage::getInstance().queryCurrentValue(NAME, mol);
    78 
    79   if (!World::getInstance().isSelected(mol)) {
    80     DoLog(1) && (Log() << Verbose(1) << "Selecting molecule " << mol->name << endl);
    81     World::getInstance().selectMolecule(mol);
    82     return Action::state_ptr(new SelectionMoleculeByIdState(mol));
     42  if (!World::getInstance().isSelected(params.mol)) {
     43    DoLog(1) && (Log() << Verbose(1) << "Selecting molecule " << params.mol->name << endl);
     44    World::getInstance().selectMolecule(params.mol);
     45    return Action::state_ptr(new SelectionMoleculeByIdState(params));
    8346  } else {
    8447    return Action::success;
     
    8952  SelectionMoleculeByIdState *state = assert_cast<SelectionMoleculeByIdState*>(_state.get());
    9053
    91   if (state->mol != NULL)
    92     World::getInstance().unselectMolecule(state->mol);
     54  if (state->params.mol != NULL)
     55    World::getInstance().unselectMolecule(state->params.mol);
    9356
    94   return Action::state_ptr(new SelectionMoleculeByIdState(state->mol));
     57  return Action::state_ptr(_state);
    9558}
    9659
     
    9861  SelectionMoleculeByIdState *state = assert_cast<SelectionMoleculeByIdState*>(_state.get());
    9962
    100   if (state->mol != NULL)
    101     World::getInstance().selectMolecule(state->mol);
     63  if (state->params.mol != NULL)
     64    World::getInstance().selectMolecule(state->params.mol);
    10265
    103   return Action::state_ptr(new SelectionMoleculeByIdState(state->mol));
     66  return Action::state_ptr(state);
    10467}
    10568
     
    11578  return NAME;
    11679}
     80/** =========== end of function ====================== */
Note: See TracChangeset for help on using the changeset viewer.