25 #ifndef GCR_DOCUMENT_H
26 #define GCR_DOCUMENT_H
28 #include <libxml/tree.h>
74 body_centered_tetragonal,
76 base_centered_orthorhombic,
77 body_centered_orthorhombic,
78 face_centered_orthorhombic,
81 base_centered_monoclinic,
100 bool Load (
const std::string &filename);
119 void UpdateAllViews ();
179 bool SetProperty (
unsigned property,
char const *value);
193 bool Loaded ()
throw (gcu::LoaderError);
234 void GetCell (
Lattice *lattice,
double *a,
double *b,
double *c,
double *alpha,
double *beta,
double *gamma);
247 void SetCell (
Lattice lattice,
double a,
double b,
double c,
double alpha,
double beta,
double gamma);
259 void GetSize (
double* xmin,
double* xmax,
double* ymin,
double* ymax,
double* zmin,
double* zmax);
271 void SetSize (
double xmin,
double xmax,
double ymin,
double ymax,
double zmin,
double zmax);
298 void Define (
unsigned nPage = 0);
370 void SaveAsImage (
const std::string &filename,
char const *type, std::map<std::string, std::string>& options);
404 void SetMail (
char const *mail);
434 char const *
GetLabel () {
return m_Label? m_Label: m_DefaultLabel.c_str ();}
463 void Error(
int num)
const;
558 std::string m_DefaultLabel;
661 #endif // GCR_DOCUMENT_H
void SetMail(char const *mail)
Document(gcu::Application *App)
void SetTitle(char const *title)
void ParseXMLTree(xmlNode *xml)
#define GCU_RO_PROP(type, member)
void Draw(gcu::Matrix const &m) const
void SetSize(double xmin, double xmax, double ymin, double ymax, double zmin, double zmax)
void AddView(View *pView)
Handle crystallographic space group symmetry.
void SetComment(char const *comment)
std::list< Cleavage * > CleavageList
GDate * GetCreationDate()
virtual Line * CreateNewLine()
std::list< View * > m_Views
void SetAuthor(char const *author)
gcu::SpaceGroup const * FindSpaceGroup()
void SaveAsImage(const std::string &filename, char const *type, std::map< std::string, std::string > &options)
Object(TypeId Id=OtherType)
bool SetProperty(unsigned property, char const *value)
virtual const char * GetProgramId() const
void AddChild(Object *object)
void SetFileName(const std::string &filename)
gchar const * LatticeName[]
void SetActiveView(View *pView)
The Gnome Chemistry Utils C++ classes.
void SetWidget(GtkWidget *widget)
GDate * GetRevisionDate()
void SetCell(Lattice lattice, double a, double b, double c, double alpha, double beta, double gamma)
std::list< Line * > LineList
The crystal structures related classes.
void GetSize(double *xmin, double *xmax, double *ymin, double *ymax, double *zmin, double *zmax)
#define GCU_PROT_POINTER_PROP(type, member)
void Define(unsigned nPage=0)
xmlDocPtr BuildXMLTree() const
void SetLabel(char const *label)
bool RemoveView(View *pView)
virtual Atom * CreateNewAtom()
virtual Cleavage * CreateNewCleavage()
void OnExportVRML(const std::string &FileName) const
#define GCU_PROP(type, member)
virtual bool LoadNewView(xmlNodePtr node)
std::string GetProperty(unsigned property) const
const gchar * GetFileName()
CleavageList * GetCleavageList()
std::list< gcr::View * > * GetViews()
void GetCell(Lattice *lattice, double *a, double *b, double *c, double *alpha, double *beta, double *gamma)
std::list< Atom * > AtomList
virtual View * CreateNewView()