gcp::Text Class Reference

#include <text.h>

Inheritance diagram for gcp::Text:
gcp::TextObject gcu::Object

List of all members.

Public Member Functions

 Text ()
 Text (double x, double y)
virtual ~Text ()
void GetCoords (double *x, double *y)
void SetCoords (double x, double y)
xmlNodePtr Save (xmlDocPtr xml) const
xmlNodePtr SaveSelection (xmlDocPtr xml) const
bool Load (xmlNodePtr node)
bool LoadSelection (xmlNodePtr node, unsigned pos)
bool LoadNode (xmlNodePtr node, unsigned &pos, int cur_size=0)
void AddItem ()
void UpdateItem ()
void SetSelected (int state)
bool OnChanged (bool save)
void Transform2D (gcu::Matrix2D &m, double x, double y)
void GetSize (double &x, double &y)
double GetYAlign ()
void SetText (char const *text)
bool SetProperty (unsigned property, char const *value)
std::string Name ()

Public Attributes

GCU_PROP(gccv::Anchor, Anchor)
private GtkJustification 
m_Justification

Detailed Description

The text objects in GChemPaint, excluding atomic symbols. Using this class to represent chemical objects looses the chemical significance.

Definition at line 41 of file gcp/text.h.


Constructor & Destructor Documentation

gcp::Text::Text (  ) 

The default constructor for an empty and unpositioned text.

gcp::Text::Text ( double  x,
double  y 
)
Parameters:
x the x coordinate.
y the y coordinate.

Constructs a new empty text positioned according to the given coordiantes

virtual gcp::Text::~Text (  )  [virtual]

The destructor.


Member Function Documentation

void gcp::Text::AddItem (  ) 

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

void gcp::Text::GetCoords ( double *  x,
double *  y 
)
Parameters:
x a pointer to the double value which will receive the x coordinate of the text.
y a pointer to the double value which will receive the y coordinate of the text.

Retrieves the coordinates of this text.

void gcp::Text::GetSize ( double &  x,
double &  y 
) [inline]
Parameters:
x where to store the width of the text.
y where to store the height of the text.

The sizes are given in canvas coordinates.

Reimplemented from gcp::TextObject.

Definition at line 147 of file gcp/text.h.

References gcp::TextObject::m_height, and gcp::TextObject::m_length.

double gcp::Text::GetYAlign (  )  [virtual]
Returns:
the y coordinate at half height of a carbon atom symbol if any was present at default size so that all texts and chemicalk symbols will have the same base line when aligned.

Reimplemented from gcu::Object.

bool gcp::Text::Load ( xmlNodePtr  node  )  [virtual]
Parameters:
node the xml node representing the text.

Loads the text in memory.

Reimplemented from gcp::TextObject.

bool gcp::Text::LoadNode ( xmlNodePtr  node,
unsigned &  pos,
int  cur_size = 0 
)
Parameters:
node the xml node representing a portion of the text.
pos where to insert the new text.
cur_size the current size in bytes.

Loads a portion of a text with a unique set of attributes. pos and cur_size are updated.

bool gcp::Text::LoadSelection ( xmlNodePtr  node,
unsigned  pos 
)
Parameters:
node the xml node representing the text to insert.
pos where to insert the new text.

Inserts a text inside an existing instance during a paste operation.

std::string gcp::Text::Name (  )  [virtual]
Returns:
the object generic name.

Reimplemented from gcu::Object.

bool gcp::Text::OnChanged ( bool  save  )  [virtual]
Parameters:
save whether the text should be saved for undo/redo operations.

Called after any change in the text.

Implements gcp::TextObject.

xmlNodePtr gcp::Text::Save ( xmlDocPtr  xml  )  const [virtual]
Parameters:
xml the xmlDoc used to save the document.
Returns:
a pointer to the xmlNode representing this text or NULL if an error occured.

Reimplemented from gcu::Object.

xmlNodePtr gcp::Text::SaveSelection ( xmlDocPtr  xml  )  const
Parameters:
xml the xmlDoc used for clipboard operations.

Saves the currently selected text. This method is used by the framework when editing the textual object.

Returns:
the xmlNode containing the serialized selection.
void gcp::Text::SetCoords ( double  x,
double  y 
)
Parameters:
x the new x coordinate of the text.
y the new y coordinate of the text.

Changes the position of this text.

bool gcp::Text::SetProperty ( unsigned  property,
char const *  value 
) [virtual]
Parameters:
property the property id as defined in objprops.h
value the property value as a string

Used when loading to set properties for the fragment. This method supports GCU_PROP_POS2D, GCU_PROP_TEXT_MARKUP, GCU_PROP_TEXT_TEXT, GCU_PROP_TEXT_ALIGNMENT and GCU_PROP_TEXT_JUSTIFICATION.

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

Reimplemented from gcu::Object.

void gcp::Text::SetSelected ( int  state  ) 
Parameters:
state the selection state of the text.

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

void gcp::Text::SetText ( char const *  text  )  [inline]
Parameters:
text the text to display.

Sets the text for this instance. The text will be displayed using the default font settings.

Definition at line 160 of file gcp/text.h.

References gcp::TextObject::m_buf.

void gcp::Text::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 a text object. Text rotation is not currently supported. The text which just be moved after transformation of its coordinates.

Reimplemented from gcu::Object.

void gcp::Text::UpdateItem (  ) 

Used to update the representation of the text in the view.


Member Data Documentation

GCU_PROP (gccv::Anchor, Anchor) private GtkJustification gcp::Text::m_Justification

fn GetRefAnchor()

Returns:
the gccv::Anchor used for the text as a reference.

Definition at line 193 of file gcp/text.h.


The documentation for this class was generated from the following file:
Generated on Tue Apr 13 14:55:03 2010 for The Gnome Chemistry Utils by  doxygen 1.6.3