/* * MoleculeByFormulaAction.hpp * * Created on: May 12, 2010 * Author: heber */ #ifndef MOLECULEBYFORMULAACTION_HPP_ #define MOLECULEBYFORMULAACTION_HPP_ #include "Actions/Action.hpp" class molecule; void SelectionMoleculeByFormula(molecule *_mol); class SelectionMoleculeByFormulaAction : public Action { friend void SelectionMoleculeByFormula(const std::string &_formula); public: SelectionMoleculeByFormulaAction(); virtual ~SelectionMoleculeByFormulaAction(); bool canUndo(); bool shouldUndo(); virtual const std::string getName(); protected: virtual Dialog * fillDialog(Dialog *dialog); private: virtual Action::state_ptr performCall(); virtual Action::state_ptr performUndo(Action::state_ptr); virtual Action::state_ptr performRedo(Action::state_ptr); static const char NAME[]; }; #endif /* MOLECULEBYFORMULAACTION_HPP_ */