author | insilmaril |
Mon Apr 24 10:05:10 2006 +0000 (2006-04-24) | |
changeset 302 | 8f89af56933d |
parent 175 | 728f51b71e71 |
child 315 | 866f79dfa6d7 |
permissions | -rw-r--r-- |
insilmaril@0 | 1 |
#ifndef MAPOBJ_H |
insilmaril@0 | 2 |
#define MAPOBJ_H |
insilmaril@0 | 3 |
|
insilmaril@0 | 4 |
#include <qcanvas.h> |
insilmaril@0 | 5 |
#include <iostream> |
insilmaril@0 | 6 |
|
insilmaril@0 | 7 |
#include "misc.h" |
insilmaril@0 | 8 |
|
insilmaril@0 | 9 |
using namespace std; |
insilmaril@0 | 10 |
|
insilmaril@0 | 11 |
#define Z_BBOX 0 |
insilmaril@129 | 12 |
#define Z_XLINK 10 |
insilmaril@0 | 13 |
#define Z_LINK 20 |
insilmaril@0 | 14 |
#define Z_FRAME 50 |
insilmaril@0 | 15 |
#define Z_SELBOX 60 |
insilmaril@0 | 16 |
#define Z_ICON 80 |
insilmaril@0 | 17 |
#define Z_TEXT 100 |
insilmaril@0 | 18 |
|
insilmaril@0 | 19 |
class MapObj:public xmlObj { |
insilmaril@0 | 20 |
public: |
insilmaril@0 | 21 |
MapObj (); |
insilmaril@0 | 22 |
MapObj (QCanvas*); |
insilmaril@0 | 23 |
MapObj (MapObj*); |
insilmaril@0 | 24 |
virtual ~MapObj (); |
insilmaril@0 | 25 |
virtual void init (); |
insilmaril@0 | 26 |
virtual void copy (MapObj*); |
insilmaril@0 | 27 |
virtual QCanvas* getCanvas(); |
insilmaril@0 | 28 |
virtual int x(); |
insilmaril@0 | 29 |
virtual int y(); |
insilmaril@0 | 30 |
virtual int width(); |
insilmaril@0 | 31 |
virtual int height(); |
insilmaril@227 | 32 |
virtual QPoint getAbsPos(); |
insilmaril@129 | 33 |
virtual QString getPos(); // Return position as string (x,y) |
insilmaril@0 | 34 |
virtual void move (double x,double y); // move to absolute Position |
insilmaril@0 | 35 |
virtual void moveBy (double x,double y); // move to relative Position |
insilmaril@175 | 36 |
virtual bool inBox(const QPoint&); // Check if Point is within clickbox |
insilmaril@0 | 37 |
virtual QRect getBBox(); // returns bounding box |
insilmaril@0 | 38 |
virtual QRect addBBox(QRect,QRect); // returns bbox which includes both boxes |
insilmaril@0 | 39 |
virtual QSize getSize(); // returns size of bounding box |
insilmaril@0 | 40 |
virtual bool isVisibleObj(); |
insilmaril@0 | 41 |
virtual void setVisibility(bool); |
insilmaril@175 | 42 |
virtual void positionBBox()=0; |
insilmaril@175 | 43 |
virtual void calcBBoxSize()=0; |
insilmaril@0 | 44 |
protected: |
insilmaril@0 | 45 |
QCanvas* canvas; |
insilmaril@0 | 46 |
QRect bbox; // bounding box of MO itself |
insilmaril@175 | 47 |
QRect clickBox; // area where mouseclicks are found |
insilmaril@0 | 48 |
QPoint absPos; // Position on canvas |
insilmaril@0 | 49 |
bool visible; |
insilmaril@0 | 50 |
}; |
insilmaril@0 | 51 |
|
insilmaril@0 | 52 |
#endif |