17 #ifndef DGL_IMAGE_BASE_WIDGETS_HPP_INCLUDED 
   18 #define DGL_IMAGE_BASE_WIDGETS_HPP_INCLUDED 
   20 #include "EventHandlers.hpp" 
   21 #include "StandaloneWindow.hpp" 
   22 #include "SubWidget.hpp" 
   28 template <
class ImageType>
 
   35     void setImage(
const ImageType& image);
 
   50 template <
class ImageType>
 
   59         virtual void imageButtonClicked(
ImageBaseButton* imageButton, 
int button) = 0;
 
   63     explicit ImageBaseButton(
Widget* parentWidget, 
const ImageType& imageNormal, 
const ImageType& imageDown);
 
   64     explicit ImageBaseButton(
Widget* parentWidget, 
const ImageType& imageNormal, 
const ImageType& imageHover, 
const ImageType& imageDown);
 
   68     void setCallback(
Callback* callback) noexcept;
 
   77     PrivateData* 
const pData;
 
   84 template <
class ImageType>
 
   93         virtual void imageKnobDragStarted(
ImageBaseKnob* imageKnob) = 0;
 
   94         virtual void imageKnobDragFinished(
ImageBaseKnob* imageKnob) = 0;
 
   95         virtual void imageKnobValueChanged(
ImageBaseKnob* imageKnob, 
float value) = 0;
 
   98     explicit ImageBaseKnob(
Widget* parentWidget, 
const ImageType& image, Orientation orientation = Vertical) noexcept;
 
  103     void setCallback(
Callback* callback) noexcept;
 
  104     void setImageLayerCount(uint count) noexcept;
 
  105     void setRotationAngle(
int angle);
 
  115     PrivateData* 
const pData;
 
  124 template <
class ImageType>
 
  133         virtual void imageSliderDragFinished(
ImageBaseSlider* imageSlider) = 0;
 
  134         virtual void imageSliderValueChanged(
ImageBaseSlider* imageSlider, 
float value) = 0;
 
  140     float getValue() const noexcept;
 
  141     void setValue(
float value, 
bool sendCallback = false) noexcept;
 
  142     void setDefault(
float def) noexcept;
 
  144     void setStartPos(const 
Point<
int>& startPos) noexcept;
 
  145     void setStartPos(
int x, 
int y) noexcept;
 
  146     void setEndPos(const 
Point<
int>& endPos) noexcept;
 
  147     void setEndPos(
int x, 
int y) noexcept;
 
  149     void setInverted(
bool inverted) noexcept;
 
  150     void setRange(
float min, 
float max) noexcept;
 
  151     void setStep(
float step) noexcept;
 
  153     void setCallback(
Callback* callback) noexcept;
 
  162     PrivateData* const pData;
 
  165     void setAbsoluteX(
int) const noexcept {}
 
  166     void setAbsoluteY(
int) 
const noexcept {}
 
  167     void setAbsolutePos(
int, 
int) 
const noexcept {}
 
  168     void setAbsolutePos(
const Point<int>&) 
const noexcept {}
 
  175 template <
class ImageType>
 
  183         virtual void imageSwitchClicked(
ImageBaseSwitch* imageSwitch, 
bool down) = 0;
 
  186     explicit ImageBaseSwitch(
Widget* parentWidget, 
const ImageType& imageNormal, 
const ImageType& imageDown) noexcept;
 
  191     bool isDown() const noexcept;
 
  192     void setDown(
bool down) noexcept;
 
  194     void setCallback(
Callback* callback) noexcept;
 
  202     PrivateData* const pData;
 
  211 #endif // DGL_IMAGE_BASE_WIDGETS_HPP_INCLUDED 
  
void onDisplay() override
Definition: ImageBaseWidgets.hpp:85
bool onMouse(const MouseEvent &) override
Definition: ImageBaseWidgets.hpp:125
Definition: Window.hpp:50
bool onScroll(const ScrollEvent &) override
bool onMouse(const MouseEvent &) override
bool onMouse(const MouseEvent &) override
bool onKeyboard(const KeyboardEvent &) override
Definition: ImageBaseWidgets.hpp:29
Definition: ImageBaseWidgets.hpp:89
void onDisplay() override
void onDisplay() override
void onDisplay() override
Definition: StandaloneWindow.hpp:27
bool onMotion(const MotionEvent &) override
Definition: Geometry.hpp:40
Definition: ImageBaseWidgets.hpp:179
Definition: ImageBaseWidgets.hpp:176
Definition: EventHandlers.hpp:81
bool onMotion(const MotionEvent &) override
bool onMouse(const MouseEvent &) override
Definition: ImageBaseWidgets.hpp:128