From bc3cc0b38f28ea3b669d9283cb7c76ac656c86a9 Mon Sep 17 00:00:00 2001 From: Chris Date: Mon, 17 Jun 2024 17:53:00 +0200 Subject: [PATCH] add double click event to ImageBaseKnob --- dgl/ImageBaseWidgets.hpp | 1 + dgl/src/ImageBaseWidgets.cpp | 7 +++++++ 2 files changed, 8 insertions(+) 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();