| @@ -1,123 +1,123 @@ | |||
| /* | |||
| Copyright 2019 Filipe Coelho <falktx@falktx.com> | |||
| Permission to use, copy, modify, and/or distribute this software for any | |||
| purpose with or without fee is hereby granted, provided that the above | |||
| copyright notice and this permission notice appear in all copies. | |||
| THIS SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES | |||
| WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF | |||
| MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR | |||
| ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES | |||
| WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN | |||
| ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF | |||
| OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | |||
| */ | |||
| /** | |||
| @file pugl_haiku.cpp BeOS/HaikuOS Pugl Implementation. | |||
| */ | |||
| #include <interface/Window.h> | |||
| #ifdef PUGL_CAIRO | |||
| #include <cairo/cairo.h> | |||
| #endif | |||
| #ifdef PUGL_OPENGL | |||
| #include <GL/gl.h> | |||
| #endif | |||
| #include "pugl_internal.h" | |||
| struct PuglInternalsImpl { | |||
| BWindow* window; | |||
| }; | |||
| PuglInternals* | |||
| puglInitInternals() | |||
| { | |||
| return (PuglInternals*)calloc(1, sizeof(PuglInternals)); | |||
| } | |||
| void | |||
| puglEnterContext(PuglView* view) | |||
| { | |||
| } | |||
| void | |||
| puglLeaveContext(PuglView* view, bool flush) | |||
| { | |||
| } | |||
| class DWindow : public BWindow | |||
| { | |||
| public: | |||
| DWindow(PuglInternals* const i) | |||
| : BWindow(BRect(), "", B_TITLED_WINDOW, 0x0), | |||
| impl(i) | |||
| { | |||
| } | |||
| private: | |||
| PuglInternals* const impl; | |||
| }; | |||
| int | |||
| puglCreateWindow(PuglView* view, const char* title) | |||
| { | |||
| PuglInternals* impl = view->impl; | |||
| impl->window = new DWindow(impl); | |||
| return 0; | |||
| } | |||
| void | |||
| puglShowWindow(PuglView* view) | |||
| { | |||
| } | |||
| void | |||
| puglHideWindow(PuglView* view) | |||
| { | |||
| } | |||
| void | |||
| puglDestroy(PuglView* view) | |||
| { | |||
| } | |||
| PuglStatus | |||
| puglProcessEvents(PuglView* view) | |||
| { | |||
| return PUGL_SUCCESS; | |||
| } | |||
| void | |||
| puglPostRedisplay(PuglView* view) | |||
| { | |||
| view->redisplay = true; | |||
| } | |||
| PuglNativeWindow | |||
| puglGetNativeWindow(PuglView* view) | |||
| { | |||
| return NULL; | |||
| } | |||
| void* | |||
| puglGetContext(PuglView* view) | |||
| { | |||
| return NULL; | |||
| } | |||
| int | |||
| puglUpdateGeometryConstraints(PuglView* view, int min_width, int min_height, bool aspect) | |||
| { | |||
| // TODO | |||
| return 1; | |||
| (void)view; | |||
| (void)min_width; | |||
| (void)min_height; | |||
| (void)aspect; | |||
| } | |||
| /* | |||
| Copyright 2019 Filipe Coelho <falktx@falktx.com> | |||
| Permission to use, copy, modify, and/or distribute this software for any | |||
| purpose with or without fee is hereby granted, provided that the above | |||
| copyright notice and this permission notice appear in all copies. | |||
| THIS SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES | |||
| WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF | |||
| MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR | |||
| ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES | |||
| WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN | |||
| ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF | |||
| OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | |||
| */ | |||
| /** | |||
| @file pugl_haiku.cpp BeOS/HaikuOS Pugl Implementation. | |||
| */ | |||
| #include <interface/Window.h> | |||
| #ifdef PUGL_CAIRO | |||
| #include <cairo/cairo.h> | |||
| #endif | |||
| #ifdef PUGL_OPENGL | |||
| #include <GL/gl.h> | |||
| #endif | |||
| #include "pugl_internal.h" | |||
| struct PuglInternalsImpl { | |||
| BWindow* window; | |||
| }; | |||
| PuglInternals* | |||
| puglInitInternals() | |||
| { | |||
| return (PuglInternals*)calloc(1, sizeof(PuglInternals)); | |||
| } | |||
| void | |||
| puglEnterContext(PuglView* view) | |||
| { | |||
| } | |||
| void | |||
| puglLeaveContext(PuglView* view, bool flush) | |||
| { | |||
| } | |||
| class DWindow : public BWindow | |||
| { | |||
| public: | |||
| DWindow(PuglInternals* const i) | |||
| : BWindow(BRect(), "", B_TITLED_WINDOW, 0x0), | |||
| impl(i) | |||
| { | |||
| } | |||
| private: | |||
| PuglInternals* const impl; | |||
| }; | |||
| int | |||
| puglCreateWindow(PuglView* view, const char* title) | |||
| { | |||
| PuglInternals* impl = view->impl; | |||
| impl->window = new DWindow(impl); | |||
| return 0; | |||
| } | |||
| void | |||
| puglShowWindow(PuglView* view) | |||
| { | |||
| } | |||
| void | |||
| puglHideWindow(PuglView* view) | |||
| { | |||
| } | |||
| void | |||
| puglDestroy(PuglView* view) | |||
| { | |||
| } | |||
| PuglStatus | |||
| puglProcessEvents(PuglView* view) | |||
| { | |||
| return PUGL_SUCCESS; | |||
| } | |||
| void | |||
| puglPostRedisplay(PuglView* view) | |||
| { | |||
| view->redisplay = true; | |||
| } | |||
| PuglNativeWindow | |||
| puglGetNativeWindow(PuglView* view) | |||
| { | |||
| return NULL; | |||
| } | |||
| void* | |||
| puglGetContext(PuglView* view) | |||
| { | |||
| return NULL; | |||
| } | |||
| int | |||
| puglUpdateGeometryConstraints(PuglView* view, int min_width, int min_height, bool aspect) | |||
| { | |||
| // TODO | |||
| return 1; | |||
| (void)view; | |||
| (void)min_width; | |||
| (void)min_height; | |||
| (void)aspect; | |||
| } | |||