+ removeAllBalls(s_mouseBalls);
+}
+
+void creator::handleInput()
+{
+ if(input::mouseLeft())
+ addBall(input::mousePosition(), 10, cCyan);
+
+ if(input::mouseRight() && ! s_mouseBalls.isEmpty())
+ removeBall();
+}
+
+/// ***** Private Methods *****
+
+Ball* addBall(const Vector2& vecPos,
+ float fRadius,
+ const float* color,
+ queBall& que)
+{
+ Ball* pBall = new Ball(vecPos, fRadius, color);
+
+ que.pushBack(pBall);
+ manager::add(pBall);
+
+ return pBall;
+}
+Polygon* addPoly(const vector<Vector2>& vecPoints,
+ const float* color,
+ quePoly& que)
+{
+ Polygon* pPoly = new Polygon(vecPoints, color);
+
+ que.pushBack(pPoly);
+ manager::add(pPoly);
+
+ return pPoly;
+}
+
+void removeBall(queBall& que)
+{
+ Ball* pBall = que.getFront();
+
+ manager::remove(pBall);
+ que.popFront();
+
+ delete pBall;
+}
+void removeAllBalls(queBall& que)
+{
+ while(! que.isEmpty() )