diff options
Diffstat (limited to 'katomic/molek.h')
-rw-r--r-- | katomic/molek.h | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/katomic/molek.h b/katomic/molek.h new file mode 100644 index 00000000..6189e4e8 --- /dev/null +++ b/katomic/molek.h @@ -0,0 +1,52 @@ +/**************************************************************** +** +** Definition of Molek class, +** +****************************************************************/ + +#ifndef MOLEK_H +#define MOLEK_H + +#include <stdio.h> +#include <stdlib.h> +#include <qwidget.h> +#include <qpoint.h> +#include <qpainter.h> +#include <qpixmap.h> +#include "atom.h" +#include <qvaluelist.h> + +class KSimpleConfig; + +#define MOLEK_SIZE 15 + +class Molek : public QWidget +{ + Q_OBJECT + +public: + Molek (QWidget *parent=0, const char *name=0); + ~Molek (); + + void load(const KSimpleConfig& config); + + const atom& getAtom(uint index) const; + int atomSize() const { return atoms.count(); } + + QSize molecSize() const { return _size; } + uint getAtom(int x, int y) const { return molek[x][y]; } + +protected: + void paintEvent( QPaintEvent * ); + +private: + QPixmap data; + uint molek[MOLEK_SIZE][MOLEK_SIZE]; // the indexes within atoms + QValueList<atom> atoms; + QString mname; + QSize _size; + + +}; + +#endif // MOLEK_H |