public PlayPanel(Vector2f size, Vector2f position, RenderWindow window) {
    super(size, position);

    m_petriDish = new PetriDish(400.0f, new Vector2f(50.0f, 50.0f));

    m_gameTime = Time.ZERO;

    m_showGps = false;

    // Load font
    Font m_timeFont = new Font();
    try {
      InputStream istream = getClass().getResourceAsStream("/Resources/00TT.TTF");
      m_timeFont.loadFromStream(istream);
    } catch (IOException ex) {
      // Failed to load font
      ex.printStackTrace();
    }
    m_timeText = new Text("", m_timeFont, 30);
    m_timeText.setColor(Color.BLACK);
    m_timeText.setPosition(new Vector2f(10.0f, 5.0f));

    m_fpsText = new Text("FPS: ", m_timeFont, 30);
    m_fpsText.setColor(Color.BLACK);
    m_fpsText.setPosition(new Vector2f(350.0f, 5.0f));

    m_defaultView = window.getDefaultView();
    m_currentView = new View(new Vector2f(400, 300), new Vector2f(800, 600));

    m_zoom = 0;
    m_leftMouseHold = false;
    m_currentPan = m_holdMousePos = m_pan = Vector2i.ZERO;
  }