minimally wrap drawable
[mussa.git] / py / drawable.cpp
diff --git a/py/drawable.cpp b/py/drawable.cpp
new file mode 100644 (file)
index 0000000..1e926e4
--- /dev/null
@@ -0,0 +1,32 @@
+#include <boost/python.hpp>
+#include <boost/python/register_ptr_to_python.hpp>
+using namespace boost::python;
+
+#include "alg/drawable.hpp"
+
+
+void export_drawable()
+{
+  class_<Drawable>("Drawable")
+    .def(init<float, float, float, float, ColorRef>())
+         //optional<Drawable::draw_func_ptr> >())
+    .add_property("x", &Drawable::x, &Drawable::setX,
+                  "starting x (horizontal) coordinate")
+    .add_property("y", &Drawable::y, &Drawable::setY,
+                  "starting y (vertical) coordinate")
+    .add_property("z", &Drawable::z, &Drawable::setZ,
+                  "starting z (depth into/out of screen) coordinate")
+    .add_property("h", &Drawable::height, &Drawable::setHeight,
+                  "how 'tall' our rectangle should be")
+    .add_property("color", &Drawable::color, &Drawable::setColor,
+                  "color for this object")
+
+    //void setDrawFunction(draw_func_ptr d) { draw_func = d; }
+    //draw_func_ptr drawFunction() const { return draw_func; }
+    ;
+  register_ptr_to_python< DrawableRef >();
+}
+
+  
+