The Gnome Chemistry Utils  0.14.12
Public Member Functions | Static Public Member Functions | List of all members
gcp::Brackets Class Reference

Brackets class. More...

#include <gcp/brackets.h>

Inheritance diagram for gcp::Brackets:
gcu::Object gccv::ItemClient

Public Member Functions

 Brackets (gccv::BracketsTypes type=gccv::BracketsTypeNormal)
 
virtual ~Brackets ()
 
void AddItem ()
 
bool Load (xmlNodePtr node)
 
xmlNodePtr Save (xmlDocPtr xml) const
 
void SetSelected (int state)
 
void OnLoaded ()
 
void OnUnlink (Object *object)
 
bool BuildContextualMenu (gcu::UIManager *UIManager, Object *object, double x, double y)
 
void SetEmbeddedObjects (std::set< gcu::Object * > objects)
 
std::set< gcu::Object * > const & GetEmbeddedObjects ()
 
void Transform2D (gcu::Matrix2D &m, double x, double y)
 
void SetType (gccv::BracketsTypes val)
 
gccv::BracketsTypes GetType (void) const
 
gccv::BracketsTypesGetRefType (void)
 
void SetUsed (gccv::BracketsUses val)
 
gccv::BracketsUses GetUsed (void) const
 
gccv::BracketsUsesGetRefUsed (void)
 
unsigned GetDecorations (void) const
 
void SetFontDesc (std::string val)
 
std::string GetFontDesc (void) const
 
std::string & GetRefFontDesc (void)
 
- Public Member Functions inherited from gcu::Object
 Object (TypeId Id=OtherType)
 
virtual ~Object ()
 
TypeId GetType () const
 
void SetId (gchar const *Id)
 
char const * GetId () const
 
virtual void AddChild (Object *object)
 
ObjectGetMolecule () const
 
ObjectGetReaction () const
 
ObjectGetGroup () const
 
DocumentGetDocument () const
 
ApplicationGetApplication () 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 char *Id) const
 
ObjectGetParent () const
 
void SetParent (Object *Parent)
 
virtual bool GetCoords (double *x, double *y, double *z=NULL) const
 
virtual void Move (double x, double y, double z=0.)
 
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::set< Object * > const &Children) throw (std::invalid_argument)
 
virtual double GetYAlign ()
 
virtual bool BuildContextualMenu (UIManager *uim, 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 bool SetProperty (unsigned property, char const *value)
 
virtual std::string GetProperty (unsigned property) const
 
void SetDirty (bool dirty=true)
 
virtual void Clear ()
 
virtual std::string Name ()
 
std::string Identity ()
 
virtual char const * HasPropertiesDialog () const
 
virtual bool CanSelect () const
 
virtual void NotifyEmpty ()
 
void ShowPropertiesDialog ()
 
bool GetDirty (void) const
 
- Public Member Functions inherited from gccv::ItemClient
 ItemClient ()
 
virtual ~ItemClient ()
 
virtual void UpdateItem ()
 
ItemGetItem (void)
 

Static Public Member Functions

static bool ConnectedAtoms (std::set< gcu::Object * > const &objects)
 
- 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 ()
 

Additional Inherited Members

- Protected Member Functions inherited from gcu::Object
virtual DialogBuildPropertiesDialog ()
 
- Protected Attributes inherited from gccv::ItemClient
Itemm_Item
 

Detailed Description

Brackets class.

Represents brackets of various types that might be used in different situations as to enclose part of a molecule or a whole object or several objects.

Definition at line 90 of file gcp/brackets.h.

Constructor & Destructor Documentation

gcp::Brackets::Brackets ( gccv::BracketsTypes  type = gccv::BracketsTypeNormal)
Parameters
typewhether to create a brackets pair or a single bracket.

Used to create a brackets pair or a single, closing, or opening bracket.

virtual gcp::Brackets::~Brackets ( )
virtual

The destructor.

Member Function Documentation

void gcp::Brackets::AddItem ( )
virtual

Used to add a representation of the brackets in the view.

Reimplemented from gccv::ItemClient.

bool gcp::Brackets::BuildContextualMenu ( gcu::UIManager UIManager,
Object object,
double  x,
double  y 
)
Parameters
UIManagerthe gcu::UIManager to populate.
objectthe atom on which occured the mouse click.
xx coordinate of the mouse click.
yy coordinate of the mouse click.

This method is called to build a contextual menu for the brackets.

static bool gcp::Brackets::ConnectedAtoms ( std::set< gcu::Object * > const &  objects)
static

Tests if a collection of atoms can be enclosed inside brackets. Enclosing non connected atoms is not allowed.

Returns
true if all atoms in the set are connected.

Referenced by GetEmbeddedObjects().

gcp::Brackets::GetDecorations ( void  ) const
inline
Returns
the allowed additions to the brackets as a bit field composed of BracketsDecorations values.

Definition at line 218 of file gcp/brackets.h.

std::set< gcu::Object * > const& gcp::Brackets::GetEmbeddedObjects ( )
inline
Returns
the collection of objects that should be enclosed inside the brackets.

Definition at line 164 of file gcp/brackets.h.

References ConnectedAtoms(), and Transform2D().

gcp::Brackets::GetFontDesc ( void  ) const
inline
Returns
the font used to display the brackets.

Definition at line 231 of file gcp/brackets.h.

gcp::Brackets::GetRefFontDesc ( void  )
inline
Returns
the font used to display the brackets as a reference.

Definition at line 231 of file gcp/brackets.h.

gcp::Brackets::GetRefType ( void  )
inline
Returns
the brackets type as a reference.

Definition at line 199 of file gcp/brackets.h.

gcp::Brackets::GetRefUsed ( void  )
inline
Returns
the used brackets as a reference.

Definition at line 212 of file gcp/brackets.h.

gcp::Brackets::GetType ( void  ) const
inline
Returns
the brackets type.

Definition at line 199 of file gcp/brackets.h.

gcp::Brackets::GetUsed ( void  ) const
inline
Returns
the used brackets.

Definition at line 212 of file gcp/brackets.h.

bool gcp::Brackets::Load ( xmlNodePtr  node)
virtual
Parameters
nodea pointer to the xmlNode containing the serialized brackets.

Used to load a Brackets instance in memory.

Returns
true on succes, false otherwise.

Reimplemented from gcu::Object.

void gcp::Brackets::OnLoaded ( )
virtual

For brackets, OnLoaded() is called each time an embedded object is added.

Reimplemented from gcu::Object.

void gcp::Brackets::OnUnlink ( Object object)
Parameters
objectthe object just unlinked by Object::Unlink.

Called when an object has been unlinked. Programs should not call it directly, but should call Object::OnUnlink instead.

xmlNodePtr gcp::Brackets::Save ( xmlDocPtr  xml) const
virtual
Parameters
xmlthe xmlDoc used to save the document.

Used to save the Brackects to the xmlDoc.

Reimplemented from gcu::Object.

void gcp::Brackets::SetEmbeddedObjects ( std::set< gcu::Object * >  objects)
Parameters
objectsthe objects to enclose.

Sets the collection of objects that should be enclosed inside the brackets.

gcp::Brackets::SetFontDesc ( std::string  val)
inline
Parameters
valthe font to use as a string.

Sets the font to use when displaying the brackets.

Definition at line 231 of file gcp/brackets.h.

void gcp::Brackets::SetSelected ( int  state)
virtual
Parameters
statethe selection state of the brackets.

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

Reimplemented from gccv::ItemClient.

gcp::Brackets::SetType ( gccv::BracketsTypes  val)
inline
Parameters
valthe new type for the brackets.

Sets the new default bond length for the document.

Definition at line 199 of file gcp/brackets.h.

gcp::Brackets::SetUsed ( gccv::BracketsUses  val)
inline
Parameters
valthe brackets to use.

Sets the brackets used for this instance, opening, closing, or both.

Definition at line 212 of file gcp/brackets.h.

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

Used to move and/or transform brackets. Brackets rotation is not currently supported. Actually, this method does not do anything. The brackets are adjusted according to their content new position.

Reimplemented from gcu::Object.

Referenced by GetEmbeddedObjects().


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