From 03f57467e00d0d6c7c00f49e6226e65ba015d2d7 Mon Sep 17 00:00:00 2001 From: falkTX Date: Wed, 14 Jan 2015 18:43:40 +0000 Subject: [PATCH] Finalize dpf module changes --- source/modules/dgl/ImageKnob.hpp | 7 +-- source/modules/dgl/NanoVG.hpp | 5 +- source/modules/dgl/Widget.hpp | 50 ++++++++++++++-- source/modules/dgl/src/ImageKnob.cpp | 42 ++++++++------ source/modules/dgl/src/ImageSlider.cpp | 18 +++--- source/modules/dgl/src/NanoVG.cpp | 80 ++++++++++++++++++++++---- source/modules/dgl/src/Window.cpp | 70 +++++++++++++--------- 7 files changed, 196 insertions(+), 76 deletions(-) diff --git a/source/modules/dgl/ImageKnob.hpp b/source/modules/dgl/ImageKnob.hpp index 9b67403ca..2dd266947 100644 --- a/source/modules/dgl/ImageKnob.hpp +++ b/source/modules/dgl/ImageKnob.hpp @@ -85,11 +85,10 @@ private: Callback* fCallback; bool fIsImgVertical; - int fImgLayerSize; - int fImgLayerCount; - Rectangle fKnobArea; - GLuint fTextureId; + uint fImgLayerSize; + uint fImgLayerCount; bool fIsReady; + GLuint fTextureId; float _logscale(float value) const; float _invlogscale(float value) const; diff --git a/source/modules/dgl/NanoVG.hpp b/source/modules/dgl/NanoVG.hpp index 3c1f4f51d..1135f55fd 100644 --- a/source/modules/dgl/NanoVG.hpp +++ b/source/modules/dgl/NanoVG.hpp @@ -258,7 +258,7 @@ public: /** Destructor. */ - ~NanoVG(); + virtual ~NanoVG(); /** Get the NanoVG context. @@ -761,7 +761,8 @@ public: */ NanoWidget(Window& parent) : Widget(parent), - NanoVG() + NanoVG(), + leakDetector_NanoWidget() { setNeedsScaling(true); } diff --git a/source/modules/dgl/Widget.hpp b/source/modules/dgl/Widget.hpp index 8f4897dd8..faed6b571 100644 --- a/source/modules/dgl/Widget.hpp +++ b/source/modules/dgl/Widget.hpp @@ -53,14 +53,17 @@ class Widget public: /** Base event data. - @a mod The currently active keyboard modifiers. + @a mod The currently active keyboard modifiers, @see Modifier. @a time The timestamp (if any). */ struct BaseEvent { - Modifier mod; + uint mod; uint32_t time; - // make -Weffc++ happy - virtual ~BaseEvent() {} + + /** Constuctor */ + BaseEvent() noexcept : mod(0x0), time(0) {} + /** Destuctor */ + virtual ~BaseEvent() noexcept {} }; /** @@ -72,6 +75,12 @@ public: struct KeyboardEvent : BaseEvent { bool press; uint key; + + /** Constuctor */ + KeyboardEvent() noexcept + : BaseEvent(), + press(false), + key(0) {} }; /** @@ -82,7 +91,13 @@ public: */ struct SpecialEvent : BaseEvent { bool press; - Key key; + Key key; + + /** Constuctor */ + SpecialEvent() noexcept + : BaseEvent(), + press(false), + key(Key(0)) {} }; /** @@ -93,9 +108,16 @@ public: @see onMouse */ struct MouseEvent : BaseEvent { - int button; + int button; bool press; Point pos; + + /** Constuctor */ + MouseEvent() noexcept + : BaseEvent(), + button(0), + press(false), + pos(0, 0) {} }; /** @@ -105,6 +127,11 @@ public: */ struct MotionEvent : BaseEvent { Point pos; + + /** Constuctor */ + MotionEvent() noexcept + : BaseEvent(), + pos(0, 0) {} }; /** @@ -116,6 +143,12 @@ public: struct ScrollEvent : BaseEvent { Point pos; Point delta; + + /** Constuctor */ + ScrollEvent() noexcept + : BaseEvent(), + pos(0, 0), + delta(0.0f, 0.0f) {} }; /** @@ -127,6 +160,11 @@ public: struct ResizeEvent { Size size; Size oldSize; + + /** Constuctor */ + ResizeEvent() noexcept + : size(0, 0), + oldSize(0, 0) {} }; /** diff --git a/source/modules/dgl/src/ImageKnob.cpp b/source/modules/dgl/src/ImageKnob.cpp index f44122a0d..57dae6adb 100644 --- a/source/modules/dgl/src/ImageKnob.cpp +++ b/source/modules/dgl/src/ImageKnob.cpp @@ -42,9 +42,8 @@ ImageKnob::ImageKnob(Window& parent, const Image& image, Orientation orientation fIsImgVertical(image.getHeight() > image.getWidth()), fImgLayerSize(fIsImgVertical ? image.getWidth() : image.getHeight()), fImgLayerCount(fIsImgVertical ? image.getHeight()/fImgLayerSize : image.getWidth()/fImgLayerSize), - fKnobArea(0, 0, fImgLayerSize, fImgLayerSize), - fTextureId(0), fIsReady(false), + fTextureId(0), leakDetector_ImageKnob() { glGenTextures(1, &fTextureId); @@ -71,9 +70,8 @@ ImageKnob::ImageKnob(Widget* widget, const Image& image, Orientation orientation fIsImgVertical(image.getHeight() > image.getWidth()), fImgLayerSize(fIsImgVertical ? image.getWidth() : image.getHeight()), fImgLayerCount(fIsImgVertical ? image.getHeight()/fImgLayerSize : image.getWidth()/fImgLayerSize), - fKnobArea(0, 0, fImgLayerSize, fImgLayerSize), - fTextureId(0), fIsReady(false), + fTextureId(0), leakDetector_ImageKnob() { glGenTextures(1, &fTextureId); @@ -100,9 +98,8 @@ ImageKnob::ImageKnob(const ImageKnob& imageKnob) fIsImgVertical(imageKnob.fIsImgVertical), fImgLayerSize(imageKnob.fImgLayerSize), fImgLayerCount(imageKnob.fImgLayerCount), - fKnobArea(imageKnob.fKnobArea), - fTextureId(0), fIsReady(false), + fTextureId(0), leakDetector_ImageKnob() { glGenTextures(1, &fTextureId); @@ -129,7 +126,6 @@ ImageKnob& ImageKnob::operator=(const ImageKnob& imageKnob) fIsImgVertical = imageKnob.fIsImgVertical; fImgLayerSize = imageKnob.fImgLayerSize; fImgLayerCount = imageKnob.fImgLayerCount; - fKnobArea = imageKnob.fKnobArea; fIsReady = false; if (fTextureId != 0) @@ -206,12 +202,12 @@ void ImageKnob::setStep(float step) noexcept // NOTE: value is assumed to be scaled if using log void ImageKnob::setValue(float value, bool sendCallback) noexcept { - if (fValue == value) + if (d_isEqual(fValue, value)) return; fValue = value; - if (fStep == 0.0f) + if (d_isZero(fStep)) fValueTmp = value; if (fRotationAngle == 0) @@ -274,36 +270,44 @@ void ImageKnob::onDisplay() glPixelStorei(GL_PACK_ALIGNMENT, 1); glPixelStorei(GL_UNPACK_ALIGNMENT, 1); - int imageDataOffset = 0; + uint imageDataOffset = 0; if (fRotationAngle == 0) { - int layerDataSize = fImgLayerSize * fImgLayerSize * ((fImage.getFormat() == GL_BGRA || fImage.getFormat() == GL_RGBA) ? 4 : 3); - imageDataOffset = layerDataSize * int(normValue * float(fImgLayerCount-1)); + DISTRHO_SAFE_ASSERT_RETURN(fImgLayerCount > 0,); + DISTRHO_SAFE_ASSERT_RETURN(normValue >= 0.0f,); + + const uint layerDataSize = fImgLayerSize * fImgLayerSize * ((fImage.getFormat() == GL_BGRA || fImage.getFormat() == GL_RGBA) ? 4 : 3); + /* */ imageDataOffset = layerDataSize * uint(normValue * float(fImgLayerCount-1)); } - glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, getWidth(), getHeight(), 0, fImage.getFormat(), fImage.getType(), fImage.getRawData() + imageDataOffset); + glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, + static_cast(getWidth()), static_cast(getHeight()), 0, + fImage.getFormat(), fImage.getType(), fImage.getRawData() + imageDataOffset); fIsReady = true; } + const int w = static_cast(getWidth()); + const int h = static_cast(getHeight()); + if (fRotationAngle != 0) { glPushMatrix(); - const GLint w2 = getWidth()/2; - const GLint h2 = getHeight()/2; + const int w2 = w/2; + const int h2 = h/2; glTranslatef(static_cast(w2), static_cast(h2), 0.0f); glRotatef(normValue*static_cast(fRotationAngle), 0.0f, 0.0f, 1.0f); - Rectangle(-w2, -h2, getWidth(), getHeight()).draw(); + Rectangle(-w2, -h2, w, h).draw(); glPopMatrix(); } else { - Rectangle(0, 0, getWidth(), getHeight()).draw(); + Rectangle(0, 0, w, h).draw(); } glBindTexture(GL_TEXTURE_2D, 0); @@ -389,7 +393,7 @@ bool ImageKnob::onMotion(const MotionEvent& ev) { fValueTmp = value = fMaximum; } - else if (fStep != 0.0f) + else if (d_isNotZero(fStep)) { fValueTmp = value; const float rest = std::fmod(value, fStep); @@ -423,7 +427,7 @@ bool ImageKnob::onScroll(const ScrollEvent& ev) { fValueTmp = value = fMaximum; } - else if (fStep != 0.0f) + else if (d_isNotZero(fStep)) { fValueTmp = value; const float rest = std::fmod(value, fStep); diff --git a/source/modules/dgl/src/ImageSlider.cpp b/source/modules/dgl/src/ImageSlider.cpp index 78407c207..12f7b3719 100644 --- a/source/modules/dgl/src/ImageSlider.cpp +++ b/source/modules/dgl/src/ImageSlider.cpp @@ -179,12 +179,12 @@ void ImageSlider::setStep(float step) noexcept void ImageSlider::setValue(float value, bool sendCallback) noexcept { - if (fValue == value) + if (d_isEqual(fValue, value)) return; fValue = value; - if (fStep == 0.0f) + if (d_isZero(fStep)) fValueTmp = value; repaint(); @@ -210,7 +210,7 @@ void ImageSlider::onDisplay() glColor4f(1.0f, 1.0f, 1.0f, 1.0f); #endif - float normValue = (fValue - fMinimum) / (fMaximum - fMinimum); + const float normValue = (fValue - fMinimum) / (fMaximum - fMinimum); int x, y; @@ -278,7 +278,7 @@ bool ImageSlider::onMouse(const MouseEvent& ev) { fValueTmp = value = fMaximum; } - else if (fStep != 0.0f) + else if (d_isNotZero(fStep)) { fValueTmp = value; const float rest = std::fmod(value, fStep); @@ -347,7 +347,7 @@ bool ImageSlider::onMotion(const MotionEvent& ev) { fValueTmp = value = fMaximum; } - else if (fStep != 0.0f) + else if (d_isNotZero(fStep)) { fValueTmp = value; const float rest = std::fmod(value, fStep); @@ -381,16 +381,16 @@ void ImageSlider::_recheckArea() noexcept // horizontal fSliderArea = Rectangle(fStartPos.getX(), fStartPos.getY(), - fEndPos.getX() + fImage.getWidth() - fStartPos.getX(), - fImage.getHeight()); + fEndPos.getX() + static_cast(fImage.getWidth()) - fStartPos.getX(), + static_cast(fImage.getHeight())); } else { // vertical fSliderArea = Rectangle(fStartPos.getX(), fStartPos.getY(), - fImage.getWidth(), - fEndPos.getY() + fImage.getHeight() - fStartPos.getY()); + static_cast(fImage.getWidth()), + fEndPos.getY() + static_cast(fImage.getHeight()) - fStartPos.getY()); } } diff --git a/source/modules/dgl/src/NanoVG.cpp b/source/modules/dgl/src/NanoVG.cpp index 7bbf97eab..0b780804e 100644 --- a/source/modules/dgl/src/NanoVG.cpp +++ b/source/modules/dgl/src/NanoVG.cpp @@ -18,8 +18,32 @@ #include "../Window.hpp" // ----------------------------------------------------------------------- +// Ignore some warnings if debugging + +#ifdef DEBUG +# define NANOVG_GL3 0 +# define NANOVG_GLES2 0 +# define NANOVG_GLES3 0 +# define NANOVG_GL_USE_UNIFORMBUFFER 0 +# if defined(__clang__) +# pragma clang diagnostic push +# pragma clang diagnostic ignored "-Weverything" +# elif defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)) +# pragma GCC diagnostic push +# pragma GCC diagnostic ignored "-Wall" +# pragma GCC diagnostic ignored "-Wextra" +# pragma GCC diagnostic ignored "-Wconversion" +# pragma GCC diagnostic ignored "-Weffc++" +# pragma GCC diagnostic ignored "-Wsign-conversion" +# pragma GCC diagnostic ignored "-Wundef" +# pragma GCC diagnostic ignored "-Wzero-as-null-pointer-constant" +# endif +#endif + +// ----------------------------------------------------------------------- +// Include NanoVG OpenGL implementation -#define NANOVG_GL2_IMPLEMENTATION +#define NANOVG_GL2_IMPLEMENTATION 1 #include "nanovg/nanovg_gl.h" #if defined(NANOVG_GL2) @@ -36,6 +60,19 @@ # define nvgDeleteGL nvgDeleteGLES3 #endif +// ----------------------------------------------------------------------- +// Restore normal state if debugging + +#ifdef DEBUG +# if defined(__clang__) +# pragma clang diagnostic pop +# elif defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)) +# pragma GCC diagnostic pop +# endif +#endif + +// ----------------------------------------------------------------------- + START_NAMESPACE_DGL // ----------------------------------------------------------------------- @@ -75,7 +112,8 @@ NanoVG::Paint::operator NVGpaint() const noexcept NanoImage::NanoImage(NVGcontext* const context, const int imageId) noexcept : fContext(context), fImageId(imageId), - fSize() + fSize(), + leakDetector_NanoImage() { _updateSize(); } @@ -114,7 +152,7 @@ void NanoImage::_updateSize() if (h < 0) h = 0; } - fSize.setSize(w, h); + fSize.setSize(static_cast(w), static_cast(h)); } // ----------------------------------------------------------------------- @@ -122,14 +160,16 @@ void NanoImage::_updateSize() NanoVG::NanoVG() : fContext(nvgCreateGL(512, 512, NVG_ANTIALIAS)), - fInFrame(false) + fInFrame(false), + leakDetector_NanoVG() { DISTRHO_SAFE_ASSERT_RETURN(fContext != nullptr,); } NanoVG::NanoVG(const int textAtlasWidth, const int textAtlasHeight) : fContext(nvgCreateGL(textAtlasWidth, textAtlasHeight, NVG_ANTIALIAS)), - fInFrame(false) + fInFrame(false), + leakDetector_NanoVG() { DISTRHO_SAFE_ASSERT_RETURN(fContext != nullptr,); } @@ -151,7 +191,7 @@ void NanoVG::beginFrame(const uint width, const uint height, const float scaleFa DISTRHO_SAFE_ASSERT_RETURN(! fInFrame,); fInFrame = true; - nvgBeginFrame(fContext, width, height, scaleFactor, static_cast(alpha)); + nvgBeginFrame(fContext, static_cast(width), static_cast(height), scaleFactor, static_cast(alpha)); } void NanoVG::beginFrame(Widget* const widget) @@ -163,7 +203,7 @@ void NanoVG::beginFrame(Widget* const widget) Window& window(widget->getParentWindow()); fInFrame = true; - nvgBeginFrame(fContext, window.getWidth(), window.getHeight(), 1.0f, NVG_PREMULTIPLIED_ALPHA); + nvgBeginFrame(fContext, static_cast(window.getWidth()), static_cast(window.getHeight()), 1.0f, NVG_PREMULTIPLIED_ALPHA); } void NanoVG::endFrame() @@ -209,7 +249,17 @@ void NanoVG::strokeColor(const Color& color) void NanoVG::strokeColor(const int red, const int green, const int blue, const int alpha) { if (fContext != nullptr) - nvgStrokeColor(fContext, nvgRGBA(red, green, blue, alpha)); + { + DISTRHO_SAFE_ASSERT_RETURN(red >= 0 && red <= 255,); + DISTRHO_SAFE_ASSERT_RETURN(green >= 0 && green <= 255,); + DISTRHO_SAFE_ASSERT_RETURN(blue >= 0 && blue <= 255,); + DISTRHO_SAFE_ASSERT_RETURN(alpha >= 0 && alpha <= 255,); + + nvgStrokeColor(fContext, nvgRGBA(static_cast(red), + static_cast(green), + static_cast(blue), + static_cast(alpha))); + } } void NanoVG::strokeColor(const float red, const float green, const float blue, const float alpha) @@ -233,7 +283,17 @@ void NanoVG::fillColor(const Color& color) void NanoVG::fillColor(const int red, const int green, const int blue, const int alpha) { if (fContext != nullptr) - nvgFillColor(fContext, nvgRGBA(red, green, blue, alpha)); + { + DISTRHO_SAFE_ASSERT_RETURN(red >= 0 && red <= 255,); + DISTRHO_SAFE_ASSERT_RETURN(green >= 0 && green <= 255,); + DISTRHO_SAFE_ASSERT_RETURN(blue >= 0 && blue <= 255,); + DISTRHO_SAFE_ASSERT_RETURN(alpha >= 0 && alpha <= 255,); + + nvgFillColor(fContext, nvgRGBA(static_cast(red), + static_cast(green), + static_cast(blue), + static_cast(alpha))); + } } void NanoVG::fillColor(const float red, const float green, const float blue, const float alpha) @@ -427,7 +487,7 @@ NanoImage* NanoVG::createImageRGBA(uint w, uint h, const uchar* data) if (fContext == nullptr) return nullptr; DISTRHO_SAFE_ASSERT_RETURN(data != nullptr, nullptr); - if (const int imageId = nvgCreateImageRGBA(fContext, w, h, data)) + if (const int imageId = nvgCreateImageRGBA(fContext, static_cast(w), static_cast(h), data)) return new NanoImage(fContext, imageId); return nullptr; diff --git a/source/modules/dgl/src/Window.cpp b/source/modules/dgl/src/Window.cpp index dcadffc10..492e82876 100644 --- a/source/modules/dgl/src/Window.cpp +++ b/source/modules/dgl/src/Window.cpp @@ -70,6 +70,7 @@ struct Window::PrivateData { fUsingEmbed(false), fWidth(1), fHeight(1), + fWidgets(), fModal(), #if defined(DISTRHO_OS_WINDOWS) hwnd(0), @@ -97,6 +98,7 @@ struct Window::PrivateData { fUsingEmbed(false), fWidth(1), fHeight(1), + fWidgets(), fModal(parent.pData), #if defined(DISTRHO_OS_WINDOWS) hwnd(0), @@ -134,6 +136,7 @@ struct Window::PrivateData { fUsingEmbed(parentId != 0), fWidth(1), fHeight(1), + fWidgets(), fModal(), #if defined(DISTRHO_OS_WINDOWS) hwnd(0), @@ -177,7 +180,7 @@ struct Window::PrivateData { } puglInitResizable(fView, fResizable); - puglInitWindowSize(fView, fWidth, fHeight); + puglInitWindowSize(fView, static_cast(fWidth), static_cast(fHeight)); puglSetHandle(fView, this); puglSetDisplayFunc(fView, onDisplayCallback); @@ -611,7 +614,7 @@ struct Window::PrivateData { // ------------------------------------------------------------------- - void onDisplay() + void onPuglDisplay() { fSelf->onDisplayBefore(); @@ -629,22 +632,35 @@ struct Window::PrivateData { if (widget->fNeedsFullViewport || (widget->fAbsolutePos.isZero() && widget->fSize == Size(fWidth, fHeight))) { // full viewport size - glViewport(0, 0, fWidth, fHeight); + glViewport(0, + 0, + static_cast(fWidth), + static_cast(fHeight)); } else if (! widget->fNeedsScaling) { // only set viewport pos - glViewport(widget->getAbsoluteX(), /*fView->height - widget->getHeight()*/ - widget->getAbsoluteY(), fWidth, fHeight); + glViewport(widget->getAbsoluteX(), + /*fView->height - static_cast(widget->getHeight())*/ - widget->getAbsoluteY(), + static_cast(fWidth), + static_cast(fHeight)); // then cut the outer bounds - glScissor(widget->getAbsoluteX(), fView->height - widget->getHeight() - widget->getAbsoluteY(), widget->getWidth(), widget->getHeight()); + glScissor(widget->getAbsoluteX(), + fView->height - static_cast(widget->getHeight()) - widget->getAbsoluteY(), + static_cast(widget->getWidth()), + static_cast(widget->getHeight())); + glEnable(GL_SCISSOR_TEST); needsDisableScissor = true; } else { // limit viewport to widget bounds - glViewport(widget->getAbsoluteX(), fView->height - widget->getHeight() - widget->getAbsoluteY(), widget->getWidth(), widget->getHeight()); + glViewport(widget->getAbsoluteX(), + fView->height - static_cast(widget->getHeight()) - widget->getAbsoluteY(), + static_cast(widget->getWidth()), + static_cast(widget->getHeight())); } // display widget @@ -661,7 +677,7 @@ struct Window::PrivateData { fSelf->onDisplayAfter(); } - void onKeyboard(const bool press, const uint key) + void onPuglKeyboard(const bool press, const uint key) { DBGp("PUGL: onKeyboard : %i %i\n", press, key); @@ -683,7 +699,7 @@ struct Window::PrivateData { } } - void onSpecial(const bool press, const Key key) + void onPuglSpecial(const bool press, const Key key) { DBGp("PUGL: onSpecial : %i %i\n", press, key); @@ -705,7 +721,7 @@ struct Window::PrivateData { } } - void onMouse(const int button, const bool press, const int x, const int y) + void onPuglMouse(const int button, const bool press, const int x, const int y) { DBGp("PUGL: onMouse : %i %i %i %i\n", button, press, x, y); @@ -732,7 +748,7 @@ struct Window::PrivateData { } } - void onMotion(const int x, const int y) + void onPuglMotion(const int x, const int y) { DBGp("PUGL: onMotion : %i %i\n", x, y); @@ -754,7 +770,7 @@ struct Window::PrivateData { } } - void onScroll(const int x, const int y, const float dx, const float dy) + void onPuglScroll(const int x, const int y, const float dx, const float dy) { DBGp("PUGL: onScroll : %i %i %f %f\n", x, y, dx, dy); @@ -777,28 +793,28 @@ struct Window::PrivateData { } } - void onReshape(const int width, const int height) + void onPuglReshape(const int width, const int height) { DBGp("PUGL: onReshape : %i %i\n", width, height); if (width <= 1 && height <= 1) return; - fWidth = width; - fHeight = height; + fWidth = static_cast(width); + fHeight = static_cast(height); - fSelf->onReshape(width, height); + fSelf->onReshape(fWidth, fHeight); FOR_EACH_WIDGET(it) { Widget* const widget(*it); if (widget->fNeedsFullViewport) - widget->setSize(width, height); + widget->setSize(fWidth, fHeight); } } - void onClose() + void onPuglClose() { DBG("PUGL: onClose\n"); @@ -808,7 +824,7 @@ struct Window::PrivateData { fSelf->onClose(); if (fModal.childFocus != nullptr) - fModal.childFocus->onClose(); + fModal.childFocus->fSelf->onClose(); close(); } @@ -847,6 +863,8 @@ struct Window::PrivateData { DISTRHO_SAFE_ASSERT(! enabled); DISTRHO_SAFE_ASSERT(childFocus == nullptr); } + + DISTRHO_DECLARE_NON_COPY_STRUCT(Modal) } fModal; #if defined(DISTRHO_OS_WINDOWS) @@ -867,42 +885,42 @@ struct Window::PrivateData { static void onDisplayCallback(PuglView* view) { - handlePtr->onDisplay(); + handlePtr->onPuglDisplay(); } static void onKeyboardCallback(PuglView* view, bool press, uint32_t key) { - handlePtr->onKeyboard(press, key); + handlePtr->onPuglKeyboard(press, key); } static void onSpecialCallback(PuglView* view, bool press, PuglKey key) { - handlePtr->onSpecial(press, static_cast(key)); + handlePtr->onPuglSpecial(press, static_cast(key)); } static void onMouseCallback(PuglView* view, int button, bool press, int x, int y) { - handlePtr->onMouse(button, press, x, y); + handlePtr->onPuglMouse(button, press, x, y); } static void onMotionCallback(PuglView* view, int x, int y) { - handlePtr->onMotion(x, y); + handlePtr->onPuglMotion(x, y); } static void onScrollCallback(PuglView* view, int x, int y, float dx, float dy) { - handlePtr->onScroll(x, y, dx, dy); + handlePtr->onPuglScroll(x, y, dx, dy); } static void onReshapeCallback(PuglView* view, int width, int height) { - handlePtr->onReshape(width, height); + handlePtr->onPuglReshape(width, height); } static void onCloseCallback(PuglView* view) { - handlePtr->onClose(); + handlePtr->onPuglClose(); } #undef handlePtr