DISTRHO Plugin Framework
Classes | Public Member Functions | Protected Member Functions | List of all members
ImageBaseKnob< ImageType > Class Template Reference

#include <ImageBaseWidgets.hpp>

Inheritance diagram for ImageBaseKnob< ImageType >:
SubWidget KnobEventHandler Widget

Classes

class  Callback
 

Public Member Functions

 ImageBaseKnob (Widget *parentWidget, const ImageType &image, Orientation orientation=Vertical) noexcept
 
 ImageBaseKnob (const ImageBaseKnob &imageKnob)
 
ImageBaseKnoboperator= (const ImageBaseKnob &imageKnob)
 
void setCallback (Callback *callback) noexcept
 
void setImageLayerCount (uint count) noexcept
 
void setRotationAngle (int angle)
 
bool setValue (float value, bool sendCallback=false) noexcept override
 
- Public Member Functions inherited from SubWidget
 SubWidget (Widget *parentWidget)
 
 ~SubWidget () override
 
template<typename T >
bool contains (T x, T y) const noexcept
 
template<typename T >
bool contains (const Point< T > &pos) const noexcept
 
int getAbsoluteX () const noexcept
 
int getAbsoluteY () const noexcept
 
Point< int > getAbsolutePos () const noexcept
 
Rectangle< int > getAbsoluteArea () const noexcept
 
Rectangle< uint > getConstrainedAbsoluteArea () const noexcept
 
void setAbsoluteX (int x) noexcept
 
void setAbsoluteY (int y) noexcept
 
void setAbsolutePos (int x, int y) noexcept
 
void setAbsolutePos (const Point< int > &pos) noexcept
 
Point< int > getMargin () const noexcept
 
void setMargin (int x, int y) noexcept
 
void setMargin (const Point< int > &offset) noexcept
 
WidgetgetParentWidget () const noexcept
 
void repaint () noexcept override
 
virtual void toBottom ()
 
virtual void toFront ()
 
void setNeedsFullViewportDrawing (bool needsFullViewportForDrawing=true)
 
void setNeedsViewportScaling (bool needsViewportScaling=true, double autoScaleFactor=0.0)
 
void setSkipDrawing (bool skipDrawing=true)
 
- Public Member Functions inherited from Widget
virtual ~Widget ()
 
bool isVisible () const noexcept
 
void setVisible (bool visible)
 
void show ()
 
void hide ()
 
uint getWidth () const noexcept
 
uint getHeight () const noexcept
 
const Size< uint > getSize () const noexcept
 
void setWidth (uint width) noexcept
 
void setHeight (uint height) noexcept
 
void setSize (uint width, uint height) noexcept
 
void setSize (const Size< uint > &size) noexcept
 
uint getId () const noexcept
 
const char * getName () const noexcept
 
void setId (uint id) noexcept
 
void setName (const char *name) noexcept
 
ApplicationgetApp () const noexcept
 
WindowgetWindow () const noexcept
 
const GraphicsContextgetGraphicsContext () const noexcept
 
TopLevelWidgetgetTopLevelWidget () const noexcept
 
std::list< SubWidget * > getChildren () const noexcept
 
ApplicationgetParentApp () const noexcept
 
WindowgetParentWindow () const noexcept
 
- Public Member Functions inherited from KnobEventHandler
 KnobEventHandler (SubWidget *self)
 
 KnobEventHandler (SubWidget *self, const KnobEventHandler &other)
 
KnobEventHandleroperator= (const KnobEventHandler &other)
 
bool isInteger () const noexcept
 
float getValue () const noexcept
 
float getNormalizedValue () const noexcept
 
void setDefault (float def) noexcept
 
void setRange (float min, float max) noexcept
 
void setStep (float step) noexcept
 
void setUsingLogScale (bool yesNo) noexcept
 
Orientation getOrientation () const noexcept
 
void setOrientation (Orientation orientation) noexcept
 
void setCallback (Callback *callback) noexcept
 
void setMouseDeceleration (float accel) noexcept
 
bool mouseEvent (const Widget::MouseEvent &ev, double scaleFactor=1.0)
 
bool motionEvent (const Widget::MotionEvent &ev, double scaleFactor=1.0)
 
bool scrollEvent (const Widget::ScrollEvent &ev)
 

Protected Member Functions

void onDisplay () override
 
bool onMouse (const MouseEvent &) override
 
bool onMotion (const MotionEvent &) override
 
bool onScroll (const ScrollEvent &) override
 
- Protected Member Functions inherited from SubWidget
virtual void onPositionChanged (const PositionChangedEvent &)
 
- Protected Member Functions inherited from Widget
virtual bool onKeyboard (const KeyboardEvent &)
 
virtual bool onCharacterInput (const CharacterInputEvent &)
 
virtual void onResize (const ResizeEvent &)
 
virtual bool onSpecial (const SpecialEvent &)
 
- Protected Member Functions inherited from KnobEventHandler
State getState () const noexcept
 

Additional Inherited Members

- Public Types inherited from KnobEventHandler
enum  Orientation { Horizontal , Vertical , Both }
 
enum  State { kKnobStateDefault = 0x0 , kKnobStateHover = 0x1 , kKnobStateDragging = 0x2 , kKnobStateDraggingHover = kKnobStateDragging|kKnobStateHover }
 

Detailed Description

template<class ImageType>
class ImageBaseKnob< ImageType >

DGL Image Knob class.

This is a typical knob/dial, where the drawing comes from a pregenerated image "filmstrip". The knob's "filmstrip" image can be either horizontal or vertical, with the number of steps automatically based on the largest value (ie, horizontal if width>height, vertical if height>width). There are no different images for "hover" or "down" states.

The event logic for this knob comes from the KnobEventHandler class.

See also
CairoImageKnob, OpenGLImageKnob

Member Function Documentation

◆ onDisplay()

template<class ImageType >
void ImageBaseKnob< ImageType >::onDisplay ( )
overrideprotectedvirtual

A function called to draw the widget contents.

Implements Widget.

◆ onMouse()

template<class ImageType >
bool ImageBaseKnob< ImageType >::onMouse ( const MouseEvent )
overrideprotectedvirtual

A function called when a mouse button is pressed or released.

Returns
True to stop event propagation, false otherwise.

Reimplemented from Widget.

◆ onMotion()

template<class ImageType >
bool ImageBaseKnob< ImageType >::onMotion ( const MotionEvent )
overrideprotectedvirtual

A function called when the pointer moves.

Returns
True to stop event propagation, false otherwise.

Reimplemented from Widget.

◆ onScroll()

template<class ImageType >
bool ImageBaseKnob< ImageType >::onScroll ( const ScrollEvent )
overrideprotectedvirtual

A function called on scrolling (e.g. mouse wheel or track pad).

Returns
True to stop event propagation, false otherwise.

Reimplemented from Widget.


The documentation for this class was generated from the following file: