|
AvogadroLibs 2.1.0-20261111
|
All layer dependent data for one molecule: which layers are hidden (visible) or refuse edits (locked), per-plugin key-value data (enable), and per-plugin custom data (settings).
More...
#include <avogadro/core/moleculeinfo.h>
Public Member Functions | |
| MoleculeInfo (const MoleculeInfo &other) | |
| MoleculeInfo & | operator= (const MoleculeInfo &other) |
| MoleculeInfo (MoleculeInfo &&)=default | |
| MoleculeInfo & | operator= (MoleculeInfo &&)=default |
| void | clear () |
Public Attributes | |
| std::vector< bool > | visible |
| std::vector< bool > | locked |
| std::map< std::string, std::vector< bool > > | enable |
| std::map< std::string, Core::Array< LayerDataPtr > > | settings |
| Layer | layer |
| std::set< std::string > | loaded |
Owned by the Molecule it belongs to, and shared with any undo command that needs it to outlive a single operation.
| MoleculeInfo | ( | const MoleculeInfo & | other | ) |
Copy every layer property, cloning the per-plugin settings.
Each molecule owns its own settings objects rather than sharing them: layers are per molecule, so editing a copy's settings must not reach back into the molecule it was copied from.