vymmodel.h
author insilmaril
Wed, 16 Jan 2008 15:45:19 +0000
changeset 655 d4b49c6c6069
parent 652 700553af9ca5
child 665 a7db20d79c32
permissions -rw-r--r--
Fixed missing MapCenter
     1 #ifndef VYMMODEL_H
     2 #define VYMMODEL_H
     3 
     4 #include <QGraphicsScene>
     5 
     6 #include "mapcenterobj.h"
     7 #include "mapeditor.h"
     8 
     9 
    10 /*! \brief This will later be divided into Model/View
    11 */
    12 
    13 class VymModel{
    14 public:
    15 	VymModel();
    16 	~VymModel ();
    17     void clear();
    18     void init();
    19 	void setMapEditor(MapEditor *me);	// FIXME should not be necessary in Model/View
    20 	MapEditor* getMapEditor();
    21 	void setVersion(const  QString &);
    22 	void setAuthor  (const QString &);
    23 	QString getAuthor ();
    24 	void setComment (const QString &);
    25 	QString getComment ();
    26 	QString getDate();
    27 	void setScene(QGraphicsScene *s);
    28 	QGraphicsScene *getScene();
    29 	MapCenterObj* addMapCenter();
    30 	MapCenterObj* removeMapCenter(MapCenterObj *mco);
    31 
    32 	BranchObj* first();					// FIXME replaced by ModelIndex later
    33 	BranchObj* next(BranchObj *bo);		// FIXME replaced by ModelIndex later
    34 
    35     LinkableMapObj* findMapObj(QPointF,LinkableMapObj*);	// find MapObj 
    36     LinkableMapObj* findObjBySelect (const QString &s);		// find MapObj by select string
    37     LinkableMapObj* findID (const QString &s);				// find MapObj by previously set ID
    38 	QString saveToDir (const QString&,const QString&,int, const QPointF&);// Save data recursivly to tempdir
    39 
    40 
    41 ////////////////////////////////////////// View related
    42     // void updateLink();  FIXME needed?
    43     void updateRelPositions();
    44 
    45 	QRectF getTotalBBox();
    46 	void reposition();					//!< Call reposition for all MCOs
    47 	void setHideTmp (HideTmpMode mode);	
    48 
    49 ////////////////////////////////////////// Selection related 
    50 	LinkableMapObj* getSelection();
    51 	BranchObj* getSelectedBranch();
    52 	bool select (const QString &s);
    53 	QString getSelectString (LinkableMapObj *lmo);
    54 
    55 private:
    56 	QGraphicsScene *mapScene;
    57 	MapEditor *mapEditor;
    58 	QList <MapCenterObj*> mapCenters;
    59 	QString version;	//!< version string saved in vym file
    60 	QString author;
    61 	QString comment;
    62 	QDate date;
    63 };
    64 
    65 
    66 #endif