]> Dogcows Code - chaz/yoink/blobdiff - src/Moof/Transition.hh
refactoring needed for win32 crash
[chaz/yoink] / src / Moof / Transition.hh
index cf1595c125bb351556b11d720fcbeeeb1c422672..dfc2602ec988bbe3bb6fd692a2cd56bd86ed036e 100644 (file)
@@ -31,7 +31,7 @@
 
 #include <boost/shared_ptr.hpp>
 
-#include <Moof/Engine.hh>
+#include <Moof/Core.hh>
 #include <Moof/Interpolator.hh>
 #include <Moof/Layer.hh>
 #include <Moof/Log.hh>
@@ -46,20 +46,17 @@ namespace Mf {
 template <typename T>
 class Transition : public Layer
 {
-       LayerP  to;
-       LayerP  from;
+       LayerP  mTo;
+       LayerP  mFrom;
 
-       T               interpolator;
-
-       Engine* engine;
+       T               mInterp;
 
 public:
 
        Transition(LayerP t, LayerP f, const T& interp) :
-               to(t),
-               from(f),
-               interpolator(interp),
-               engine(0) {}
+               mTo(t),
+               mFrom(f),
+               mInterp(interp) {}
 
        typedef boost::shared_ptr<Transition> Ptr;
 
@@ -69,27 +66,22 @@ public:
        }
 
 
-       void pushed(Engine& e)
-       {
-               engine = &e;
-       }
-
-       void popped(Engine& e)
+       void removedFromCore()
        {
-               if (to) e.push(to);
+               if (mTo) core.push(mTo);
        }
 
        void update(Scalar t, Scalar dt)
        {
-               interpolator.update(t, dt);
+               mInterp.update(t, dt);
 
-               if (from) from->update(t, dt);
-               if (to) to->update(t, dt);
+               if (mFrom) mFrom->update(t, dt);
+               if (mTo) mTo->update(t, dt);
 
-               if (interpolator.isDone())
+               if (mInterp.isDone())
                {
                        // to should /replace/ this
-                       engine->pop(this);
+                       core.pop(this);
                }
        }
 
@@ -105,15 +97,15 @@ public:
                glMatrixMode(GL_MODELVIEW);
                glPushMatrix();
                glLoadIdentity();
-               glColor4(1.0, 1.0, 1.0, alpha);
+               glColor(1.0, 1.0, 1.0, alpha);
                Mf::Texture::resetBind();
 
                //glRectf(-1.0f, -1.0f, 1.0f, 1.0f);
                glBegin(GL_QUADS);
-                       glVertex3f(-1.0, -1.0, -0.1);
-                       glVertex3f(1.0, -1.0, -0.1);
-                       glVertex3f(1.0, 1.0, -0.1);
-                       glVertex3f(-1.0, 1.0, -0.1);
+                       glVertex(-1.0, -1.0, -0.1);
+                       glVertex(1.0, -1.0, -0.1);
+                       glVertex(1.0, 1.0, -0.1);
+                       glVertex(-1.0, 1.0, -0.1);
                glEnd();
 
                glDisable(GL_BLEND);
@@ -128,27 +120,27 @@ public:
 
        void draw(Scalar alpha) const
        {
-               Scalar a = interpolator.getState(alpha);
-               logInfo("draw state: %f", a);
+               Scalar a = mInterp.getState(alpha);
+               logInfo << "transition state: " << a << std::endl;
 
                //glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
 
-               if (from)
+               if (mFrom)
                {
                        glPushMatrix();
                        glLoadIdentity();
                        glRotate(180.0 * a, 0.0, 1.0, 0.0);
-                       from->draw(alpha);
+                       mFrom->draw(alpha);
                        glPopMatrix();
                }
                        //drawFade(a);
 
-               if (to)
+               if (mTo)
                {
                        glPushMatrix();
                        glLoadIdentity();
                        glRotate(180.0 * (1.0 - a), 0.0, 1.0, 0.0);
-                       to->draw(alpha);
+                       mTo->draw(alpha);
                        glPopMatrix();
                }
                        //drawFade(1.0 - a);
@@ -156,13 +148,13 @@ public:
 
        bool handleEvent(const Event& event)
        {
-               if (to)
+               if (mTo)
                {
-                       return to->handleEvent(event);
+                       return mTo->handleEvent(event);
                }
-               else if (from)
+               else if (mFrom)
                {
-                       return from->handleEvent(event);
+                       return mFrom->handleEvent(event);
                }
                return false;
        }
This page took 0.022145 seconds and 4 git commands to generate.