The Gnome Chemistry Utils  0.12.11
Public Member Functions | Protected Member Functions | Protected Attributes
gcp::Arrow Class Reference
Inheritance diagram for gcp::Arrow:
gcu::Object gccv::ItemClient gcp::MesomeryArrow gcp::ReactionArrow

List of all members.

Public Member Functions

 Arrow (gcu::TypeId Type)
virtual ~Arrow ()
bool Load (xmlNodePtr node)
void SetSelected (int state)
void SetCoords (double xstart, double ystart, double xend, double yend)
bool GetCoords (double *xstart, double *ystart, double *xend, double *yend)
void Move (double x, double y, double z=0)
void Transform2D (gcu::Matrix2D &m, double x, double y)
double GetYAlign ()
bool SetProperty (unsigned property, char const *value)
- Public Member Functions inherited from gcu::Object
 Object (TypeId Id=OtherType)
virtual ~Object ()
TypeId GetType () const
void SetId (gchar const *Id)
gchar const * GetId () const
virtual void AddChild (Object *object)
ObjectGetMolecule () const
ObjectGetReaction () const
ObjectGetGroup () const
DocumentGetDocument () const
ObjectGetParentOfType (TypeId Id) const
ObjectGetChild (const gchar *Id) const
ObjectGetFirstChild (std::map< std::string, Object * >::iterator &i)
ObjectGetNextChild (std::map< std::string, Object * >::iterator &i)
ObjectGetDescendant (const gchar *Id) const
ObjectGetParent () const
void SetParent (Object *Parent)
virtual xmlNodePtr Save (xmlDocPtr xml) const
bool SaveChildren (xmlDocPtr xml, xmlNodePtr node) const
void SaveId (xmlNodePtr node) const
xmlNodePtr GetNodeByProp (xmlNodePtr node, char const *Property, char const *Id)
xmlNodePtr GetNextNodeByProp (xmlNodePtr node, char const *Property, char const *Id)
xmlNodePtr GetNodeByName (xmlNodePtr node, char const *Name)
xmlNodePtr GetNextNodeByName (xmlNodePtr node, char const *Name)
bool HasChildren () const
unsigned GetChildrenNumber () const
virtual ObjectGetAtomAt (double x, double y, double z=0.)
virtual bool Build (std::list< Object * > &Children) throw (std::invalid_argument)
virtual bool BuildContextualMenu (GtkUIManager *UIManager, Object *object, double x, double y)
void EmitSignal (SignalId Signal)
virtual bool OnSignal (SignalId Signal, Object *Child)
void Lock (bool state=true)
bool IsLocked ()
ObjectGetFirstLink (std::set< Object * >::iterator &i)
ObjectGetNextLink (std::set< Object * >::iterator &i)
void Link (Object *object)
void Unlink (Object *object)
virtual void OnUnlink (Object *object)
void GetPossibleAncestorTypes (std::set< TypeId > &types) const
virtual std::string GetProperty (unsigned property) const
virtual void OnLoaded ()
void SetDirty (bool dirty=true)
virtual void Clear ()
std::string Identity ()
virtual char const * HasPropertiesDialog () const
void ShowPropertiesDialog ()
bool GetDirty (void) const
- Public Member Functions inherited from gccv::ItemClient
 ItemClient ()
virtual ~ItemClient ()
virtual void AddItem ()
virtual void UpdateItem ()
ItemGetItem (void)

Protected Member Functions

bool Save (xmlDocPtr xml, xmlNodePtr node) const
std::string Name ()
- Protected Member Functions inherited from gcu::Object
virtual DialogBuildPropertiesDialog ()

Protected Attributes

double m_x
double m_y
double m_width
double m_height
- Protected Attributes inherited from gccv::ItemClient
Itemm_Item

Additional Inherited Members

- Static Public Member Functions inherited from gcu::Object
static TypeId AddType (std::string TypeName, Object *(*CreateFunc)(), TypeId id=OtherType)
static void AddAlias (TypeId id, std::string TypeName)
static ObjectCreateObject (const std::string &TypeName, Object *parent=NULL)
static TypeId GetTypeId (const std::string &Name)
static std::string GetTypeName (TypeId Id)
static void AddMenuCallback (TypeId Id, BuildMenuCb cb)
static void AddRule (TypeId type1, RuleId rule, TypeId type2)
static void AddRule (const std::string &type1, RuleId rule, const std::string &type2)
static const std::set< TypeId > & GetRules (TypeId type, RuleId rule)
static const std::set< TypeId > & GetRules (const std::string &type, RuleId rule)
static void SetCreationLabel (TypeId Id, std::string Label)
static const std::string & GetCreationLabel (TypeId Id)
static const std::string & GetCreationLabel (const std::string &TypeName)
static SignalId CreateNewSignalId ()

Detailed Description

Definition at line 55 of file gcp/arrow.h.


Constructor & Destructor Documentation

gcp::Arrow::Arrow ( gcu::TypeId  Type)
Parameters:
Typean arrow type id.

Used to create an arrow of type Id. Should only be called from the constructor of a derived class.

virtual gcp::Arrow::~Arrow ( )
virtual

The destructor.


Member Function Documentation

bool gcp::Arrow::GetCoords ( double *  xstart,
double *  ystart,
double *  xend,
double *  yend 
)
Parameters:
xstartwhere to store the x coordinate of the start point.
ystartwhere to store the y coordinate of the start point.
xendwhere to store the x coordinate of the end point.
yendwhere to store the y coordinate of the end point.

Retrieves the position of the arrow.

double gcp::Arrow::GetYAlign ( )
virtual

Used to retrieve the y coordinate for alignment.

Returns:
y coordinate used for arrows alignment.

Reimplemented from gcu::Object.

bool gcp::Arrow::Load ( xmlNodePtr  node)
virtual
Parameters:
node,:a pointer to the xmlNode containing the serialized arrow.

Used to load an Arrow in memory. This method must be called from derived classes overloaded Load methods.

Returns:
true on succes, false otherwise.

Reimplemented from gcu::Object.

Reimplemented in gcp::MesomeryArrow, and gcp::ReactionArrow.

void gcp::Arrow::Move ( double  x,
double  y,
double  z = 0 
)
virtual
Parameters:
x,:the x component of the transation vector.
y,:the y component of the transation vector.
z,:the z component of the transation vector (unused).

Used to move an arrow. The third parameter is not taken into account.

Reimplemented from gcu::Object.

Reimplemented in gcp::ReactionArrow.

std::string gcp::Arrow::Name ( )
protectedvirtual
Returns:
the object generic name.

Reimplemented from gcu::Object.

Reimplemented in gcp::ReactionArrow, and gcp::MesomeryArrow.

bool gcp::Arrow::Save ( xmlDocPtr  xml,
xmlNodePtr  node 
) const
protected
Parameters:
xml,:the xmlDoc used to save the document.
node,:the node representing the Object.

This method must be called from derived classes overloaded Save methods.

Returns:
true on succes, false otherwise.
void gcp::Arrow::SetCoords ( double  xstart,
double  ystart,
double  xend,
double  yend 
)
Parameters:
xstartthe x coordinate of the start point.
ystartthe y coordinate of the start point.
xendthe x coordinate of the end point.
yendthe y coordinate of the end point.

Sets the position and length of an arrow.

bool gcp::Arrow::SetProperty ( unsigned  property,
char const *  value 
)
virtual
Parameters:
propertythe property id as defined in objprops.h
valuethe property value as a string

Used when loading to set common properties to arrows. Only one property is currently supported: gcu::GCU_PROP_ARROW_COORDS.

Returns:
true if the property could be set, or if the property is not relevant, false otherwise.

Reimplemented from gcu::Object.

Reimplemented in gcp::ReactionArrow.

void gcp::Arrow::SetSelected ( int  state)
virtual
Parameters:
state,:the selection state of the arrow.

Used to set the selection state of the arrow. The values of state might be gcp::SelStateUnselected, gcp::SelStateSelected, gcp::SelStateUpdating, or gcp::SelStateErasing.

Reimplemented from gccv::ItemClient.

Reimplemented in gcp::ReactionArrow.

void gcp::Arrow::Transform2D ( gcu::Matrix2D m,
double  x,
double  y 
)
virtual
Parameters:
m,:the Matrix2D of the transformation.
x,:the x component of the center of the transformation.
y,:the y component of the center of the transformation.

Used to move and/or transform an arrow.

Reimplemented from gcu::Object.


Member Data Documentation

double gcp::Arrow::m_height
protected

The y coordinate to the end point.

Definition at line 165 of file gcp/arrow.h.

double gcp::Arrow::m_width
protected

The x coordinate to the end point.

Definition at line 161 of file gcp/arrow.h.

double gcp::Arrow::m_x
protected

The x coordinate to the start point.

Definition at line 153 of file gcp/arrow.h.

double gcp::Arrow::m_y
protected

The y coordinate to the start point.

Definition at line 157 of file gcp/arrow.h.


The documentation for this class was generated from the following file: