Browse Source

Cleanup

Signed-off-by: falkTX <falktx@falktx.com>
pull/272/head
falkTX 4 years ago
parent
commit
bc66137eb2
Signed by: falkTX <falktx@falktx.com> GPG Key ID: CDBAA37ABC74FBA0
4 changed files with 24 additions and 9 deletions
  1. +9
    -3
      dgl/Widget.hpp
  2. +2
    -2
      dgl/src/ImageWidgets.cpp
  3. +10
    -4
      dgl/src/Widget.cpp
  4. +3
    -0
      dgl/src/WidgetPrivateData.hpp

+ 9
- 3
dgl/Widget.hpp View File

@@ -32,8 +32,7 @@ END_NAMESPACE_DISTRHO


START_NAMESPACE_DGL START_NAMESPACE_DGL


class Application;
class ImageSlider;
// class Application;
class NanoWidget; class NanoWidget;
class Window; class Window;
class StandaloneWindow; class StandaloneWindow;
@@ -422,6 +421,12 @@ protected:
*/ */
virtual bool onSpecial(const SpecialEvent&); 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. A function called when a mouse button is pressed or released.
@return True to stop event propagation, false otherwise. @return True to stop event propagation, false otherwise.
@@ -450,6 +455,8 @@ protected:
*/ */
virtual void onPositionChanged(const PositionChangedEvent&); virtual void onPositionChanged(const PositionChangedEvent&);


void setNeedsFullViewport();

private: private:
struct PrivateData; struct PrivateData;
PrivateData* const pData; PrivateData* const pData;
@@ -457,7 +464,6 @@ private:
/** @internal */ /** @internal */
explicit Widget(Widget* groupWidget, bool addToSubWidgets); explicit Widget(Widget* groupWidget, bool addToSubWidgets);


friend class ImageSlider;
friend class NanoWidget; friend class NanoWidget;
friend class Window; friend class Window;
friend class StandaloneWindow; friend class StandaloneWindow;


+ 2
- 2
dgl/src/ImageWidgets.cpp View File

@@ -675,7 +675,7 @@ ImageSlider::ImageSlider(Window& parent, const Image& image) noexcept
fEndPos(), fEndPos(),
fSliderArea() fSliderArea()
{ {
pData->needsFullViewport = true;
setNeedsFullViewport();
} }


ImageSlider::ImageSlider(Widget* widget, const Image& image) noexcept ImageSlider::ImageSlider(Widget* widget, const Image& image) noexcept
@@ -698,7 +698,7 @@ ImageSlider::ImageSlider(Widget* widget, const Image& image) noexcept
fEndPos(), fEndPos(),
fSliderArea() fSliderArea()
{ {
pData->needsFullViewport = true;
setNeedsFullViewport();
} }


float ImageSlider::getValue() const noexcept float ImageSlider::getValue() const noexcept


+ 10
- 4
dgl/src/Widget.cpp View File

@@ -24,24 +24,20 @@ START_NAMESPACE_DGL
Widget::Widget(Window& parent) Widget::Widget(Window& parent)
: pData(new PrivateData(this, parent, nullptr, false)) : pData(new PrivateData(this, parent, nullptr, false))
{ {
parent._addWidget(this);
} }


Widget::Widget(Widget* groupWidget) Widget::Widget(Widget* groupWidget)
: pData(new PrivateData(this, groupWidget->getParentWindow(), groupWidget, true)) : pData(new PrivateData(this, groupWidget->getParentWindow(), groupWidget, true))
{ {
pData->parent._addWidget(this);
} }


Widget::Widget(Widget* groupWidget, bool addToSubWidgets) Widget::Widget(Widget* groupWidget, bool addToSubWidgets)
: pData(new PrivateData(this, groupWidget->getParentWindow(), groupWidget, addToSubWidgets)) : pData(new PrivateData(this, groupWidget->getParentWindow(), groupWidget, addToSubWidgets))
{ {
pData->parent._addWidget(this);
} }


Widget::~Widget() Widget::~Widget()
{ {
pData->parent._removeWidget(this);
delete pData; delete pData;
} }


@@ -228,6 +224,11 @@ bool Widget::onSpecial(const SpecialEvent&)
return false; return false;
} }


bool Widget::onCharacterInput(const CharacterInputEvent&)
{
return false;
}

bool Widget::onMouse(const MouseEvent&) bool Widget::onMouse(const MouseEvent&)
{ {
return false; return false;
@@ -251,6 +252,11 @@ void Widget::onPositionChanged(const PositionChangedEvent&)
{ {
} }


void Widget::setNeedsFullViewport()
{
pData->needsFullViewport = true;
}

// ----------------------------------------------------------------------- // -----------------------------------------------------------------------


END_NAMESPACE_DGL END_NAMESPACE_DGL

+ 3
- 0
dgl/src/WidgetPrivateData.hpp View File

@@ -56,10 +56,13 @@ struct Widget::PrivateData {
skipDisplay = true; skipDisplay = true;
groupWidget->pData->subWidgets.push_back(self); groupWidget->pData->subWidgets.push_back(self);
} }

parent._addWidget(self);
} }


~PrivateData() ~PrivateData()
{ {
parent._removeWidget(self);
subWidgets.clear(); subWidgets.clear();
} }




Loading…
Cancel
Save