You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
54 lines
1021 B
54 lines
1021 B
/****************************************************************
|
|
**
|
|
** Definition of Molek class,
|
|
**
|
|
****************************************************************/
|
|
|
|
#ifndef MOLEK_H
|
|
#define MOLEK_H
|
|
|
|
#include <stdio.h>
|
|
#include <stdlib.h>
|
|
#include <tqwidget.h>
|
|
#include <tqpoint.h>
|
|
#include <tqpainter.h>
|
|
#include <tqpixmap.h>
|
|
#include "atom.h"
|
|
#include <tqvaluelist.h>
|
|
|
|
class KSimpleConfig;
|
|
|
|
#define MOLEK_SIZE 15
|
|
|
|
class Molek : public TQWidget
|
|
{
|
|
Q_OBJECT
|
|
|
|
|
|
public:
|
|
Molek (TQWidget *parent=0, const char *name=0);
|
|
~Molek ();
|
|
|
|
void load(const KSimpleConfig& config);
|
|
|
|
const atom& getAtom(uint index) const;
|
|
int atomSize() const { return atoms.count(); }
|
|
|
|
TQSize molecSize() const { return _size; }
|
|
uint getAtom(int x, int y) const { return molek[x][y]; }
|
|
|
|
protected:
|
|
void paintEvent( TQPaintEvent * );
|
|
|
|
private:
|
|
TQPixmap data;
|
|
uint molek[MOLEK_SIZE][MOLEK_SIZE]; // the indexes within atoms
|
|
TQValueList<atom> atoms;
|
|
TQString mname;
|
|
TQSize _size;
|
|
|
|
|
|
};
|
|
|
|
#endif // MOLEK_H
|