protected void drawControllers(PApplet theApplet) {
    if (isOpen) {

      for (ControlWindowCanvas cc : _myControlCanvas) {
        if (cc.mode() == ControlWindowCanvas.PRE) {
          cc.draw(theApplet);
        }
      }
      for (ControllerInterface<?> ci : controllers.get()) {
        if (ci.isVisible()) {
          ci.updateInternalEvents(theApplet);
          ci.draw(theApplet);
        }
      }

      for (CDrawable cd : controllers.getDrawables()) {
        cd.draw(theApplet);
      }

      for (ControlWindowCanvas cc : _myControlCanvas) {
        if (cc.mode() == ControlWindowCanvas.POST) {
          cc.draw(theApplet);
        }
      }
    }
  }