]> Creatis software - bbtkGEditor.git/blobdiff - lib/EditorGraphicBBS/bbsKernelEditorGraphic/GObjectModel.h
This commit was manufactured by cvs2svn to create tag
[bbtkGEditor.git] / lib / EditorGraphicBBS / bbsKernelEditorGraphic / GObjectModel.h
index 9f7a265a50629e3a177fc5120b43518b43614d5a..bfebe6b05a96e4f29a62b4a484ee0899f4fe3343 100644 (file)
@@ -35,26 +35,31 @@ Version:   $Revision$
 *  \brief Class bbtk::GObjectModel : abstract black-box interface. 
 */
 
-/**
-* \class bbtk::GObjectModel
-* \brief 
-*/
+/****
+* Design and Developpement of BBTK GEditor
+* Ricardo A Corredor J <ra.corredor67@uniandes.edu.co>
+* RaC - 2010
+****/
 
 #ifndef __GObjectModel_h__
 #define __GObjectModel_h__
 
 //Includes same project
 #include "GlobalConstants.h"
+#include "Observable.h"
 
 //Includes creaMaracasVisu
 
 //Includes std
 #include <iostream>
 
+//Includes bbtk
+#include <bbtkBlackBoxDescriptor.h>
+
 namespace bbtk
 {
 
-       class GObjectModel 
+       class GObjectModel : public Observable
        {
 
        public: 
@@ -65,11 +70,44 @@ namespace bbtk
                
                //Public methods
                
+               // Method to get the values of Inic or Final point passed as references in the parameters
                void getInicPoint(double& x, double& y, double& z);
                void getFinalPoint(double& x, double& y, double& z);
-               void setInicPoint(double& x, double& y, double& z);
-               void setFinalPoint(double& x, double& y, double& z);
 
+               // Returns the center of the enclosing rectangle
+               void getCenter(double& x, double& y, double& z);
+
+               // Method to set the values of Inic or Final point 
+               virtual void setInicPoint(double& x, double& y, double& z);
+               virtual void setFinalPoint(double& x, double& y, double& z);
+               
+               // Changes the inic(top-left point) point of the rectangle
+               virtual void move(double xx,double yy,double zz);
+
+               // Returns true if (x,y,z) is inside the rectangle 
+               virtual bool isPointInside(double x,double y, double z);
+
+               // Get the type of the graphical objects (See the GlobalConstants.h file)
+               int getGObjectType();
+               void setGObjectType(int obtype);
+
+               // The type in BBTK, for boxes for example in a BBS line like (new LoadHola abcd), LoadHola is the type
+               std::string getBBTKType();
+               void setBBTKType(std::string obtype);
+
+               // The name in BBTK, for boxes for example in a BBS line like (new LoadHola abcd), abcd is the name
+               std::string getBBTKName();
+               void setBBTKName(std::string obname);
+
+               // Object ID
+               int getObjectId();
+               void setObjectId(int id);
+
+               // Status bar message
+               virtual std::string getStatusText();
+
+               virtual void save(std::string &content);
+               
        private:
 
                //Private Attributes
@@ -87,8 +125,19 @@ namespace bbtk
                double _yFin;
                double _zFin;
 
-               //Protected methods
+               int _objectId;
+
+               // The type of the graphical objects (See the GlobalConstants.h file)
+               int  _gObjectType;
 
+               // The type in BBTK, for boxes for example in a BBS line like (new LoadHola abcd), LoadHola is the type
+               std::string _bbtkType;
+
+               // The name in BBTK, for boxes for example in a BBS line like (new LoadHola abcd), abcd is the name
+               std::string _bbtkName;
+
+               //Protected methods
+               
        };