#include <sigc++/trackable.h>
#include <msp/graphics/window.h>
#include "device.h"
-#include "view.h"
+#include "windowview_backend.h"
namespace Msp {
namespace GL {
/**
A view targeting a Graphics::Window.
-After rendering, buffers are swapped to show the result in the window.
+After rendering, the result is presented in the window.
The aspect ratio of the view's Camera is automatically updated to match that of
the window.
*/
-class WindowView: public View, public sigc::trackable
+class WindowView: public WindowViewBackend, public sigc::trackable
{
+ friend WindowViewBackend;
+
private:
Graphics::Window &window;
Device &device;
virtual unsigned get_height() const { return window.get_height(); }
using View::render;
- virtual void render(Renderer &);
private:
void window_resized(unsigned, unsigned);
-
- virtual const Framebuffer &get_target() const;
};
} // namespace GL