ShishGL  1.0
A simple modular cross-platform graphics library
Sh::Slidable Class Reference

#include <Slidable.hpp>

Inheritance diagram for Sh::Slidable:
Collaboration diagram for Sh::Slidable:

Public Member Functions

 Slidable (UIWindow *target, const Frame &slide_frame)
 
void onTargetUpdate () override
 
bool onMouseButton (MouseButtonEvent &event) override
 
bool onMouseMove (MouseEvent &event) override
 
void onDrag (const Vector2< double > &) final
 
virtual void onSlide (const Vector2< double > &)
 
- Public Member Functions inherited from Sh::Draggable
 Draggable (UIWindow *target)
 
const Vector2< double > & dragPoint () const
 
- Public Member Functions inherited from Sh::Holdable
 Holdable (UIWindow *target)
 
bool isHeld () const
 
uint8_t numHeld () const
 
virtual void reactOnHold (TimerEvent &event)
 
bool onTimer (TimerEvent &event) override
 
- Public Member Functions inherited from Sh::Clickable
 Clickable (UIWindow *target)
 
virtual void reactOnPress (MouseButtonEvent &event)
 
virtual void reactOnRelease (MouseButtonEvent &event)
 
- Public Member Functions inherited from Sh::DefaultBehavior
 DefaultBehavior (UIWindow *target)
 
 ~DefaultBehavior () override=default
 
- Public Member Functions inherited from Sh::Behavior
 Behavior (class UIWindow *target)
 
template<typename SomeWindow >
SomeWindow * target () const
 
- Public Member Functions inherited from Sh::PlatformListener
 ~PlatformListener () override=default
 
- Public Member Functions inherited from Sh::Listener
virtual ~Listener ()
 

Protected Member Functions

void slide (const Vector2< double > &delta)
 
- Protected Member Functions inherited from Sh::Draggable
void drag (const Vector2< double > &delta)
 
- Protected Member Functions inherited from Sh::DefaultBehavior
virtual bool onMouseEntered (MouseEvent &event)
 
virtual bool onMouseLeft (MouseEvent &event)
 
- Protected Member Functions inherited from Sh::PlatformListener
virtual bool onMouseScroll (class MouseScrollEvent &)
 
virtual bool onKeyboard (class KeyboardEvent &)
 

Protected Attributes

Frame frame
 
Vector2< double > parent_offset
 
- Protected Attributes inherited from Sh::Draggable
Vector2< double > drag_point
 
- Protected Attributes inherited from Sh::Holdable
uint8_t n_held
 

Constructor & Destructor Documentation

◆ Slidable()

Sh::Slidable::Slidable ( UIWindow target,
const Frame slide_frame 
)
inlineexplicit

Member Function Documentation

◆ onDrag()

void Sh::Slidable::onDrag ( const Vector2< double > &  )
inlinefinalvirtual

Reimplemented from Sh::Draggable.

◆ onMouseButton()

bool Sh::Slidable::onMouseButton ( MouseButtonEvent event)
inlineoverridevirtual

Reimplemented from Sh::Draggable.

◆ onMouseMove()

bool Sh::Slidable::onMouseMove ( MouseEvent event)
inlineoverridevirtual

Reimplemented from Sh::Draggable.

◆ onSlide()

virtual void Sh::Slidable::onSlide ( const Vector2< double > &  )
inlinevirtual

Reimplemented in SlideTester, and Sh::FrameScroller.

◆ onTargetUpdate()

void Sh::Slidable::onTargetUpdate ( )
inlineoverridevirtual

Reimplemented from Sh::Behavior.

◆ slide()

void Sh::Slidable::slide ( const Vector2< double > &  delta)
inlineprotected

Member Data Documentation

◆ frame

Frame Sh::Slidable::frame
protected

◆ parent_offset

Vector2<double> Sh::Slidable::parent_offset
protected

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