25 #ifndef GCHEMPAINT_FRAGMENT_H
26 #define GCHEMPAINT_FRAGMENT_H
39 extern gccv::Tag ChargeTag, StoichiometryTag;
151 xmlNodePtr
Save (xmlDocPtr xml)
const;
166 bool Load (xmlNodePtr node);
200 void Move (
double x,
double y,
double z = 0);
218 Atom const *
GetAtom ()
const {
return reinterpret_cast <
Atom const * > (m_Atom);}
260 bool GetPosition (
double angle,
double &x,
double &y);
279 bool SetProperty (
unsigned property,
char const *value);
310 bool GetCoords (
double *x,
double *y,
double *z = NULL)
const;
371 bool SavePortion (xmlDocPtr xml, xmlNodePtr node,
unsigned start,
unsigned end)
const;
375 unsigned m_BeginAtom, m_EndAtom;
400 #endif //GCHEMPAINT_FRAGMENT_H
bool GetPosition(double angle, double &x, double &y)
gccv::Item * GetChargeItem()
int GetElementAtPos(unsigned start, unsigned &end)
#define GCU_RO_PROP(type, member)
xmlNodePtr SaveSelection(xmlDocPtr xml) const
void Transform2D(gcu::Matrix2D &m, double x, double y)
int GetAvailablePosition(double &x, double &y)
bool OnChanged(bool save)
gccv::Anchor GetChargePosition(FragmentAtom *pAtom, unsigned char &Pos, double Angle, double &x, double &y)
Object(TypeId Id=OtherType)
void Move(double x, double y, double z=0)
ChargeTextTag(double size)
void SetSelected(int state)
Validity
The validity state of a Fragment as it is currently evaluated by the framework. The 0...
TextTag * Restrict(TextTag *tag)
StoichiometryTextTag(double size)
bool GetCoords(double *x, double *y, double *z=NULL) const
Object * GetAtomAt(double x, double y, double z=0.)
#define GCU_PROP(type, member)
bool SetProperty(unsigned property, char const *value)
FragmentMode
Edition mode.
virtual ~StoichiometryTextTag()
The base class for the canvas contents.
TextTag * Restrict(TextTag *tag)
bool Load(xmlNodePtr node)
xmlNodePtr Save(xmlDocPtr xml) const
TextTag(Tag tag, TagPriority priority=TagPriorityFirst)