commit bc66137eb26c2668b9b75b2dda1816f064a93796
parent 5539e161653af7e59f12633f36e319ce2b8d94df
Author: falkTX <falktx@falktx.com>
Date: Mon, 8 Mar 2021 23:01:01 +0000
Cleanup
Signed-off-by: falkTX <falktx@falktx.com>
Diffstat:
4 files changed, 24 insertions(+), 9 deletions(-)
diff --git a/dgl/Widget.hpp b/dgl/Widget.hpp
@@ -32,8 +32,7 @@ END_NAMESPACE_DISTRHO
START_NAMESPACE_DGL
-class Application;
-class ImageSlider;
+// class Application;
class NanoWidget;
class Window;
class StandaloneWindow;
@@ -423,6 +422,12 @@ protected:
virtual bool onSpecial(const SpecialEvent&);
/**
+ A function called when an UTF-8 character is received.
+ @return True to stop event propagation, false otherwise.
+ */
+ virtual bool onCharacterInput(const CharacterInputEvent&);
+
+ /**
A function called when a mouse button is pressed or released.
@return True to stop event propagation, false otherwise.
*/
@@ -450,6 +455,8 @@ protected:
*/
virtual void onPositionChanged(const PositionChangedEvent&);
+ void setNeedsFullViewport();
+
private:
struct PrivateData;
PrivateData* const pData;
@@ -457,7 +464,6 @@ private:
/** @internal */
explicit Widget(Widget* groupWidget, bool addToSubWidgets);
- friend class ImageSlider;
friend class NanoWidget;
friend class Window;
friend class StandaloneWindow;
diff --git a/dgl/src/ImageWidgets.cpp b/dgl/src/ImageWidgets.cpp
@@ -675,7 +675,7 @@ ImageSlider::ImageSlider(Window& parent, const Image& image) noexcept
fEndPos(),
fSliderArea()
{
- pData->needsFullViewport = true;
+ setNeedsFullViewport();
}
ImageSlider::ImageSlider(Widget* widget, const Image& image) noexcept
@@ -698,7 +698,7 @@ ImageSlider::ImageSlider(Widget* widget, const Image& image) noexcept
fEndPos(),
fSliderArea()
{
- pData->needsFullViewport = true;
+ setNeedsFullViewport();
}
float ImageSlider::getValue() const noexcept
diff --git a/dgl/src/Widget.cpp b/dgl/src/Widget.cpp
@@ -24,24 +24,20 @@ START_NAMESPACE_DGL
Widget::Widget(Window& parent)
: pData(new PrivateData(this, parent, nullptr, false))
{
- parent._addWidget(this);
}
Widget::Widget(Widget* groupWidget)
: pData(new PrivateData(this, groupWidget->getParentWindow(), groupWidget, true))
{
- pData->parent._addWidget(this);
}
Widget::Widget(Widget* groupWidget, bool addToSubWidgets)
: pData(new PrivateData(this, groupWidget->getParentWindow(), groupWidget, addToSubWidgets))
{
- pData->parent._addWidget(this);
}
Widget::~Widget()
{
- pData->parent._removeWidget(this);
delete pData;
}
@@ -228,6 +224,11 @@ bool Widget::onSpecial(const SpecialEvent&)
return false;
}
+bool Widget::onCharacterInput(const CharacterInputEvent&)
+{
+ return false;
+}
+
bool Widget::onMouse(const MouseEvent&)
{
return false;
@@ -251,6 +252,11 @@ void Widget::onPositionChanged(const PositionChangedEvent&)
{
}
+void Widget::setNeedsFullViewport()
+{
+ pData->needsFullViewport = true;
+}
+
// -----------------------------------------------------------------------
END_NAMESPACE_DGL
diff --git a/dgl/src/WidgetPrivateData.hpp b/dgl/src/WidgetPrivateData.hpp
@@ -56,10 +56,13 @@ struct Widget::PrivateData {
skipDisplay = true;
groupWidget->pData->subWidgets.push_back(self);
}
+
+ parent._addWidget(self);
}
~PrivateData()
{
+ parent._removeWidget(self);
subWidgets.clear();
}