LMMS
Loading...
Searching...
No Matches
lmms::gui::AudioFileProcessorWaveView Class Reference

#include <AudioFileProcessorWaveView.h>

Inheritance diagram for lmms::gui::AudioFileProcessorWaveView:

Classes

class  knob

Public Types

enum class  Point { Start , End , Loop }

Public Slots

void update ()
void isPlaying (lmms::f_cnt_t current_frame)

Public Member Functions

 AudioFileProcessorWaveView (QWidget *parent, int w, int h, Sample const *buf, knob *start, knob *end, knob *loop)
void updateSampleRange ()

Protected Member Functions

virtual void enterEvent (QEvent *e)
virtual void leaveEvent (QEvent *e)
virtual void mousePressEvent (QMouseEvent *me)
virtual void mouseReleaseEvent (QMouseEvent *me)
virtual void mouseMoveEvent (QMouseEvent *me)
virtual void wheelEvent (QWheelEvent *we)
virtual void paintEvent (QPaintEvent *pe)

Private Types

enum class  DraggingType {
  Wave , SlideWave , ZoomWave , SampleStart ,
  SampleEnd , SampleLoop
}

Private Member Functions

void setTo (int to)
void setFrom (int from)
int range () const
void zoom (const bool out=false)
void slide (int px)
void slideSamplePointByPx (Point point, int px)
void slideSamplePointByFrames (Point point, long frameOffset, bool slideTo=false)
void slideSampleByFrames (long frameOffset)
void slideSamplePointToFrames (Point point, f_cnt_t frames)
void updateGraph ()
void reverse ()
void updateCursor (const QMouseEvent *me=nullptr)
bool pointerCloseToStartEndOrLoop (const QMouseEvent *me) const
void configureKnobRelationsAndWaveViews ()

Static Private Member Functions

static bool isCloseTo (int a, int b)

Private Attributes

Sample constm_sample
QPixmap m_graph
int m_from
int m_to
int m_last_from
int m_last_to
float m_last_amp
knobm_startKnob
knobm_endKnob
knobm_loopKnob
int m_startFrameX
int m_endFrameX
int m_loopFrameX
bool m_isDragging
QPoint m_draggingLastPoint
DraggingType m_draggingType
bool m_reversed
f_cnt_t m_framesPlayed
bool m_animation
SampleThumbnail m_sampleThumbnail

Static Private Attributes

static const int s_padding = 2

Friends

class AudioFileProcessorView

Member Enumeration Documentation

◆ DraggingType

Enumerator
Wave 
SlideWave 
ZoomWave 
SampleStart 
SampleEnd 
SampleLoop 

◆ Point

Enumerator
Start 
End 
Loop 

Constructor & Destructor Documentation

◆ AudioFileProcessorWaveView()

lmms::gui::AudioFileProcessorWaveView::AudioFileProcessorWaveView ( QWidget * parent,
int w,
int h,
Sample const * buf,
knob * start,
knob * end,
knob * loop )

Member Function Documentation

◆ configureKnobRelationsAndWaveViews()

void lmms::gui::AudioFileProcessorWaveView::configureKnobRelationsAndWaveViews ( )
private

◆ enterEvent()

void lmms::gui::AudioFileProcessorWaveView::enterEvent ( QEvent * e)
protectedvirtual

◆ isCloseTo()

bool lmms::gui::AudioFileProcessorWaveView::isCloseTo ( int a,
int b )
inlinestaticprivate

◆ isPlaying

void lmms::gui::AudioFileProcessorWaveView::isPlaying ( lmms::f_cnt_t current_frame)
slot

◆ leaveEvent()

void lmms::gui::AudioFileProcessorWaveView::leaveEvent ( QEvent * e)
protectedvirtual

◆ mouseMoveEvent()

void lmms::gui::AudioFileProcessorWaveView::mouseMoveEvent ( QMouseEvent * me)
protectedvirtual

◆ mousePressEvent()

void lmms::gui::AudioFileProcessorWaveView::mousePressEvent ( QMouseEvent * me)
protectedvirtual

◆ mouseReleaseEvent()

void lmms::gui::AudioFileProcessorWaveView::mouseReleaseEvent ( QMouseEvent * me)
protectedvirtual

◆ paintEvent()

void lmms::gui::AudioFileProcessorWaveView::paintEvent ( QPaintEvent * pe)
protectedvirtual

◆ pointerCloseToStartEndOrLoop()

bool lmms::gui::AudioFileProcessorWaveView::pointerCloseToStartEndOrLoop ( const QMouseEvent * me) const
private

◆ range()

int lmms::gui::AudioFileProcessorWaveView::range ( ) const
private

◆ reverse()

void lmms::gui::AudioFileProcessorWaveView::reverse ( )
private

◆ setFrom()

void lmms::gui::AudioFileProcessorWaveView::setFrom ( int from)
private

◆ setTo()

void lmms::gui::AudioFileProcessorWaveView::setTo ( int to)
private

◆ slide()

void lmms::gui::AudioFileProcessorWaveView::slide ( int px)
private

◆ slideSampleByFrames()

void lmms::gui::AudioFileProcessorWaveView::slideSampleByFrames ( long frameOffset)
private

◆ slideSamplePointByFrames()

void lmms::gui::AudioFileProcessorWaveView::slideSamplePointByFrames ( Point point,
long frameOffset,
bool slideTo = false )
private

◆ slideSamplePointByPx()

void lmms::gui::AudioFileProcessorWaveView::slideSamplePointByPx ( Point point,
int px )
private

◆ slideSamplePointToFrames()

void lmms::gui::AudioFileProcessorWaveView::slideSamplePointToFrames ( Point point,
f_cnt_t frames )
inlineprivate

◆ update

void lmms::gui::AudioFileProcessorWaveView::update ( )
inlineslot

◆ updateCursor()

void lmms::gui::AudioFileProcessorWaveView::updateCursor ( const QMouseEvent * me = nullptr)
private

◆ updateGraph()

void lmms::gui::AudioFileProcessorWaveView::updateGraph ( )
private

◆ updateSampleRange()

void lmms::gui::AudioFileProcessorWaveView::updateSampleRange ( )

◆ wheelEvent()

void lmms::gui::AudioFileProcessorWaveView::wheelEvent ( QWheelEvent * we)
protectedvirtual

◆ zoom()

void lmms::gui::AudioFileProcessorWaveView::zoom ( const bool out = false)
private

◆ AudioFileProcessorView

friend class AudioFileProcessorView
friend

Member Data Documentation

◆ m_animation

bool lmms::gui::AudioFileProcessorWaveView::m_animation
private

◆ m_draggingLastPoint

QPoint lmms::gui::AudioFileProcessorWaveView::m_draggingLastPoint
private

◆ m_draggingType

DraggingType lmms::gui::AudioFileProcessorWaveView::m_draggingType
private

◆ m_endFrameX

int lmms::gui::AudioFileProcessorWaveView::m_endFrameX
private

◆ m_endKnob

knob* lmms::gui::AudioFileProcessorWaveView::m_endKnob
private

◆ m_framesPlayed

f_cnt_t lmms::gui::AudioFileProcessorWaveView::m_framesPlayed
private

◆ m_from

int lmms::gui::AudioFileProcessorWaveView::m_from
private

◆ m_graph

QPixmap lmms::gui::AudioFileProcessorWaveView::m_graph
private

◆ m_isDragging

bool lmms::gui::AudioFileProcessorWaveView::m_isDragging
private

◆ m_last_amp

float lmms::gui::AudioFileProcessorWaveView::m_last_amp
private

◆ m_last_from

int lmms::gui::AudioFileProcessorWaveView::m_last_from
private

◆ m_last_to

int lmms::gui::AudioFileProcessorWaveView::m_last_to
private

◆ m_loopFrameX

int lmms::gui::AudioFileProcessorWaveView::m_loopFrameX
private

◆ m_loopKnob

knob* lmms::gui::AudioFileProcessorWaveView::m_loopKnob
private

◆ m_reversed

bool lmms::gui::AudioFileProcessorWaveView::m_reversed
private

◆ m_sample

Sample const* lmms::gui::AudioFileProcessorWaveView::m_sample
private

◆ m_sampleThumbnail

SampleThumbnail lmms::gui::AudioFileProcessorWaveView::m_sampleThumbnail
private

◆ m_startFrameX

int lmms::gui::AudioFileProcessorWaveView::m_startFrameX
private

◆ m_startKnob

knob* lmms::gui::AudioFileProcessorWaveView::m_startKnob
private

◆ m_to

int lmms::gui::AudioFileProcessorWaveView::m_to
private

◆ s_padding

const int lmms::gui::AudioFileProcessorWaveView::s_padding = 2
staticprivate

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