diff --git a/dgl/ImageBaseWidgets.hpp b/dgl/ImageBaseWidgets.hpp index a4bf007e..66acf94a 100644 --- a/dgl/ImageBaseWidgets.hpp +++ b/dgl/ImageBaseWidgets.hpp @@ -138,6 +138,7 @@ public: virtual void imageKnobDragStarted(ImageBaseKnob* imageKnob) = 0; virtual void imageKnobDragFinished(ImageBaseKnob* imageKnob) = 0; virtual void imageKnobValueChanged(ImageBaseKnob* imageKnob, float value) = 0; + virtual void imageKnobDoubleClicked(ImageBaseKnob* imageKnob) = 0; }; explicit ImageBaseKnob(Widget* parentWidget, const ImageType& image, Orientation orientation = Vertical) noexcept; diff --git a/dgl/src/ImageBaseWidgets.cpp b/dgl/src/ImageBaseWidgets.cpp index 3b71eb37..24cc0e60 100644 --- a/dgl/src/ImageBaseWidgets.cpp +++ b/dgl/src/ImageBaseWidgets.cpp @@ -316,6 +316,13 @@ struct ImageBaseKnob::PrivateData : public KnobEventHandler::Callback callback->imageKnobValueChanged(imageKnob, value); } + void knobDoubleClicked(SubWidget* const widget) override + { + if (callback != nullptr) + if (ImageBaseKnob* const imageKnob = dynamic_cast(widget)) + callback->imageKnobDoubleClicked(imageKnob); + } + // implemented independently per graphics backend void init(); void cleanup();