]> Shamusworld >> Repos - architektonas/blobdiff - src/object.h
Initial stab at text object. Nonfunctional ATM.
[architektonas] / src / object.h
index 875e92ca6c358f7eec29ef60c3a1d24cf7d8895c..2e2efffa5f5b14bb14c196052115ea84b0d6f521 100644 (file)
@@ -1,12 +1,15 @@
 #ifndef __OBJECT_H__
 #define __OBJECT_H__
 
+#include <stdio.h>
 #include <vector>                                                      // This is a container
 #include "vector.h"                                                    // This is the mathematical construct
+#include "connection.h"
 
 class Painter;
 class QFont;
 class Dimension;
+//class FILE;
 
 enum ObjectState { OSInactive, OSSelected };
 
@@ -26,8 +29,16 @@ class Object
                virtual void Transmute(Object *, Object *);
                virtual Object * GetParent(void);
                virtual void Add(Object *);
+               virtual Vector * GetPointAt(Vector);
+               virtual void Enumerate(FILE *);
+               virtual Object * Copy(void);
+               virtual Vector GetPointAtParameter(double parameter);
+               virtual void Connect(Object *, double);
+               virtual void Disconnect(Object *, double);
+               virtual void DisconnectAll(Object *);
                ObjectState GetState(void);
                void Reparent(Object *);
+//             Dimension * GetAttachedDimension(void);
 //Hm.          Object * Connect(Object *);
 
                // Class methods
@@ -47,8 +58,8 @@ class Object
                ObjectState state;
                ObjectState oldState;
                bool needUpdate;
-               Dimension * attachedDimension;
-               std::vector<Object *> connected;
+//             Dimension * attachedDimension;
+               std::vector<Connection> connected;
 
                // Class variables
                static QFont * font;