Use AutomatableSlider & IntModel...
...instead of Knob & FloatModel
This commit is contained in:
@@ -3,8 +3,8 @@
|
||||
|
||||
#include <QObject>
|
||||
|
||||
#include "AutomatableSlider.h"
|
||||
#include "Groove.h"
|
||||
#include "Knob.h"
|
||||
#include "lmms_basics.h"
|
||||
#include "MidiTime.h"
|
||||
#include "Note.h"
|
||||
@@ -49,7 +49,7 @@ public slots:
|
||||
private:
|
||||
int m_frames_per_tick;
|
||||
int m_shiftAmount;
|
||||
float m_shiftFactor;// = (m_shiftAmount / 127.0)
|
||||
float m_shiftFactor;// = (m_shiftAmount / 127)
|
||||
|
||||
} ;
|
||||
|
||||
@@ -62,12 +62,12 @@ public:
|
||||
|
||||
public slots:
|
||||
void modelChanged();
|
||||
void valueChanged(float);
|
||||
void valueChanged(int);
|
||||
|
||||
private:
|
||||
GrooveExperiments * m_ge;
|
||||
FloatModel * m_nobModel;
|
||||
Knob * m_nob;
|
||||
IntModel * m_sliderModel;
|
||||
AutomatableSlider * m_slider;
|
||||
|
||||
} ;
|
||||
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
|
||||
#include <QObject>
|
||||
|
||||
#include "AutomatableSlider.h"
|
||||
#include "Groove.h"
|
||||
#include "Knob.h"
|
||||
#include "lmms_basics.h"
|
||||
#include "MidiTime.h"
|
||||
#include "Note.h"
|
||||
@@ -47,7 +47,7 @@ public slots:
|
||||
private:
|
||||
int m_frames_per_tick;
|
||||
int m_swingAmount;
|
||||
float m_swingFactor;// = (m_swingAmount / 127.0)
|
||||
float m_swingFactor;// = (m_swingAmount / 127)
|
||||
|
||||
} ;
|
||||
|
||||
@@ -60,12 +60,12 @@ public:
|
||||
|
||||
public slots:
|
||||
void modelChanged();
|
||||
void valueChanged(float);
|
||||
void valueChanged(int);
|
||||
|
||||
private:
|
||||
HalfSwing * m_half_swing;
|
||||
FloatModel * m_nobModel;
|
||||
Knob * m_nob;
|
||||
IntModel * m_sliderModel;
|
||||
AutomatableSlider * m_slider;
|
||||
|
||||
} ;
|
||||
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
|
||||
#include <QObject>
|
||||
|
||||
#include "AutomatableSlider.h"
|
||||
#include "Groove.h"
|
||||
#include "Knob.h"
|
||||
#include "lmms_basics.h"
|
||||
#include "MidiTime.h"
|
||||
#include "Note.h"
|
||||
@@ -49,7 +49,7 @@ public slots:
|
||||
private:
|
||||
int m_frames_per_tick;
|
||||
int m_swingAmount;
|
||||
float m_swingFactor;// = (m_swingAmount / 127.0)
|
||||
float m_swingFactor;// = (m_swingAmount / 127)
|
||||
|
||||
} ;
|
||||
|
||||
@@ -62,12 +62,12 @@ public:
|
||||
|
||||
public slots:
|
||||
void modelChanged();
|
||||
void valueChanged(float);
|
||||
void valueChanged(int);
|
||||
|
||||
private:
|
||||
HydrogenSwing * m_hy_swing;
|
||||
FloatModel * m_nobModel;
|
||||
Knob * m_nob;
|
||||
IntModel * m_sliderModel;
|
||||
AutomatableSlider * m_slider;
|
||||
|
||||
} ;
|
||||
|
||||
|
||||
@@ -25,10 +25,10 @@
|
||||
#include <QDomElement>
|
||||
#include <QLabel>
|
||||
|
||||
//#include "AutomatableSlider.h"
|
||||
#include "Engine.h"
|
||||
#include "Groove.h"
|
||||
#include "GrooveExperiments.h"
|
||||
#include "Knob.h"
|
||||
#include "lmms_basics.h"
|
||||
#include "MidiTime.h"
|
||||
#include "Note.h"
|
||||
@@ -42,7 +42,7 @@ GrooveExperiments::GrooveExperiments(QObject * _parent) :
|
||||
Groove()
|
||||
{
|
||||
m_shiftAmount = 0;
|
||||
m_shiftFactor = 0;
|
||||
m_shiftFactor = 0.0;
|
||||
init();
|
||||
update();
|
||||
}
|
||||
@@ -79,7 +79,7 @@ void GrooveExperiments::setAmount(int _amount)
|
||||
if (_amount > 0 && _amount <= 127)
|
||||
{
|
||||
m_shiftAmount = _amount;
|
||||
m_shiftFactor = (((float)m_shiftAmount) / 127.0);
|
||||
m_shiftFactor = (((int)m_shiftAmount) / 127);
|
||||
emit shiftAmountChanged(m_shiftAmount);
|
||||
}
|
||||
else if (_amount == 0)
|
||||
@@ -153,12 +153,12 @@ int GrooveExperiments::isInTick(MidiTime * _cur_start, const fpp_t _frames, cons
|
||||
// else no groove adjustments
|
||||
return _n->pos().getTicks() == _cur_start->getTicks() ? 0 : -1;
|
||||
}
|
||||
|
||||
// FIXME: Broken.
|
||||
void GrooveExperiments::saveSettings( QDomDocument & _doc, QDomElement & _element )
|
||||
{
|
||||
_element.setAttribute("shiftAmount", m_shiftAmount);
|
||||
}
|
||||
|
||||
// FIXME: Broken.
|
||||
void GrooveExperiments::loadSettings( const QDomElement & _this )
|
||||
{
|
||||
bool ok;
|
||||
@@ -183,34 +183,34 @@ QWidget * GrooveExperiments::instantiateView( QWidget * _parent )
|
||||
// VIEW //
|
||||
|
||||
GrooveExperimentsView::GrooveExperimentsView(GrooveExperiments * _ge, QWidget * _parent) :
|
||||
QWidget( _parent )
|
||||
QWidget(_parent)
|
||||
{
|
||||
m_nobModel = new FloatModel(0.0, 0.0, 127.0, 1.0); // Unused
|
||||
m_nob = new Knob(knobBright_26, this);
|
||||
m_nob->setModel(m_nobModel);
|
||||
m_nob->setLabel(tr("Shiftiness"));
|
||||
m_nob->setEnabled(true);
|
||||
m_nobModel->setValue(_ge->amount());
|
||||
m_sliderModel = new IntModel(0, 0, 127); // Unused
|
||||
m_slider = new AutomatableSlider(this, tr("Swinginess"));
|
||||
m_slider->setOrientation(Qt::Horizontal);
|
||||
m_slider->setFixedSize( 90, 26 );
|
||||
m_slider->setPageStep(1);
|
||||
m_slider->setModel(m_sliderModel);
|
||||
m_sliderModel->setValue(_ge->amount());
|
||||
|
||||
m_ge = _ge;
|
||||
|
||||
connect(m_nob, SIGNAL(sliderMoved(float)), this, SLOT(valueChanged(float)));
|
||||
connect(m_nobModel, SIGNAL( dataChanged() ), this, SLOT(modelChanged()) );
|
||||
|
||||
connect(m_slider, SIGNAL(sliderMoved(int)), this, SLOT(valueChanged(int)));
|
||||
connect(m_sliderModel, SIGNAL(dataChanged()), this, SLOT(modelChanged()));
|
||||
}
|
||||
|
||||
GrooveExperimentsView::~GrooveExperimentsView()
|
||||
{
|
||||
delete m_nob;
|
||||
delete m_nobModel;
|
||||
delete m_slider;
|
||||
delete m_sliderModel;
|
||||
}
|
||||
|
||||
void GrooveExperimentsView::modelChanged()
|
||||
{
|
||||
m_ge->setAmount((int)m_nobModel->value());
|
||||
m_ge->setAmount((int)m_sliderModel->value());
|
||||
}
|
||||
|
||||
void GrooveExperimentsView::valueChanged(float _f) // this value passed is gibberish
|
||||
void GrooveExperimentsView::valueChanged(int _i) // this value passed is gibberish
|
||||
{
|
||||
m_ge->setAmount((int)m_nobModel->value());
|
||||
m_ge->setAmount((int)m_sliderModel->value());
|
||||
}
|
||||
|
||||
@@ -26,10 +26,10 @@
|
||||
#include <QDomElement>
|
||||
#include <QLabel>
|
||||
|
||||
//#include "AutomatableSlider.h"
|
||||
#include "Engine.h"
|
||||
#include "Groove.h"
|
||||
#include "HalfSwing.h"
|
||||
#include "Knob.h"
|
||||
#include "lmms_basics.h"
|
||||
#include "MidiTime.h"
|
||||
#include "Note.h"
|
||||
@@ -44,7 +44,7 @@ HalfSwing::HalfSwing(QObject * _parent) :
|
||||
Groove()
|
||||
{
|
||||
m_swingAmount = 0;
|
||||
m_swingFactor = 0;
|
||||
m_swingFactor = 0.0;
|
||||
init();
|
||||
update();
|
||||
}
|
||||
@@ -81,7 +81,7 @@ void HalfSwing::setAmount(int _amount)
|
||||
if (_amount > 0 && _amount <= 127)
|
||||
{
|
||||
m_swingAmount = _amount;
|
||||
m_swingFactor = (((float)m_swingAmount) / 127.0);
|
||||
m_swingFactor = (((int)m_swingAmount) / 127);
|
||||
emit swingAmountChanged(m_swingAmount);
|
||||
}
|
||||
else if (_amount == 0)
|
||||
@@ -159,12 +159,12 @@ int HalfSwing::isInTick(MidiTime * _cur_start, const fpp_t _frames, const f_cnt_
|
||||
// else no groove adjustments
|
||||
return _n->pos().getTicks() == _cur_start->getTicks() ? 0 : -1;
|
||||
}
|
||||
|
||||
// FIXME: Broken.
|
||||
void HalfSwing::saveSettings( QDomDocument & _doc, QDomElement & _element )
|
||||
{
|
||||
_element.setAttribute("swingAmount", m_swingAmount);
|
||||
}
|
||||
|
||||
// FIXME: Broken.
|
||||
void HalfSwing::loadSettings( const QDomElement & _this )
|
||||
{
|
||||
bool ok;
|
||||
@@ -189,34 +189,34 @@ QWidget * HalfSwing::instantiateView( QWidget * _parent )
|
||||
// VIEW //
|
||||
|
||||
HalfSwingView::HalfSwingView(HalfSwing * _half_swing, QWidget * _parent) :
|
||||
QWidget( _parent )
|
||||
QWidget(_parent)
|
||||
{
|
||||
m_nobModel = new FloatModel(0.0, 0.0, 127.0, 1.0); // Unused
|
||||
m_nob = new Knob(knobBright_26, this);
|
||||
m_nob->setModel( m_nobModel );
|
||||
m_nob->setLabel( tr( "Swinginess" ) );
|
||||
m_nob->setEnabled(true);
|
||||
m_nobModel->setValue(_half_swing->amount());
|
||||
m_sliderModel = new IntModel(0, 0, 127); // Unused
|
||||
m_slider = new AutomatableSlider(this, tr("Swinginess"));
|
||||
m_slider->setOrientation(Qt::Horizontal);
|
||||
m_slider->setFixedSize( 90, 26 );
|
||||
m_slider->setPageStep(1);
|
||||
m_slider->setModel(m_sliderModel);
|
||||
m_sliderModel->setValue(_half_swing->amount());
|
||||
|
||||
m_half_swing = _half_swing;
|
||||
|
||||
connect(m_nob, SIGNAL(sliderMoved(float)), this, SLOT(valueChanged(float)));
|
||||
connect(m_nobModel, SIGNAL( dataChanged() ), this, SLOT(modelChanged()) );
|
||||
|
||||
connect(m_slider, SIGNAL(sliderMoved(int)), this, SLOT(valueChanged(int)));
|
||||
connect(m_sliderModel, SIGNAL(dataChanged()), this, SLOT(modelChanged()));
|
||||
}
|
||||
|
||||
HalfSwingView::~HalfSwingView()
|
||||
{
|
||||
delete m_nob;
|
||||
delete m_nobModel;
|
||||
delete m_slider;
|
||||
delete m_sliderModel;
|
||||
}
|
||||
|
||||
void HalfSwingView::modelChanged()
|
||||
{
|
||||
m_half_swing->setAmount((int)m_nobModel->value());
|
||||
m_half_swing->setAmount((int)m_sliderModel->value());
|
||||
}
|
||||
|
||||
void HalfSwingView::valueChanged(float _f) // this value passed is gibberish
|
||||
void HalfSwingView::valueChanged(int _i) // this value passed is gibberish
|
||||
{
|
||||
m_half_swing->setAmount((int)m_nobModel->value());
|
||||
m_half_swing->setAmount((int)m_sliderModel->value());
|
||||
}
|
||||
|
||||
@@ -26,10 +26,10 @@
|
||||
#include <QDomElement>
|
||||
#include <QLabel>
|
||||
|
||||
//#include "AutomatableSlider.h"
|
||||
#include "Engine.h"
|
||||
#include "Groove.h"
|
||||
#include "HydrogenSwing.h"
|
||||
#include "Knob.h"
|
||||
#include "lmms_basics.h"
|
||||
#include "MidiTime.h"
|
||||
#include "Note.h"
|
||||
@@ -44,7 +44,7 @@ HydrogenSwing::HydrogenSwing(QObject * _parent) :
|
||||
Groove()
|
||||
{
|
||||
m_swingAmount = 0;
|
||||
m_swingFactor = 0;
|
||||
m_swingFactor = 0.0;
|
||||
init();
|
||||
update();
|
||||
}
|
||||
@@ -81,7 +81,7 @@ void HydrogenSwing::setAmount(int _amount)
|
||||
if (_amount > 0 && _amount <= 127)
|
||||
{
|
||||
m_swingAmount = _amount;
|
||||
m_swingFactor = (((float)m_swingAmount) / 127.0);
|
||||
m_swingFactor = (((int)m_swingAmount) / 127);
|
||||
emit swingAmountChanged(m_swingAmount);
|
||||
}
|
||||
else if (_amount == 0)
|
||||
@@ -195,33 +195,34 @@ QWidget * HydrogenSwing::instantiateView( QWidget * _parent )
|
||||
// VIEW //
|
||||
|
||||
HydrogenSwingView::HydrogenSwingView(HydrogenSwing * _hy_swing, QWidget * _parent) :
|
||||
QWidget( _parent )
|
||||
QWidget(_parent)
|
||||
{
|
||||
m_nobModel = new FloatModel(0.0, 0.0, 127.0, 1.0); // Unused
|
||||
m_nob = new Knob(knobBright_26, this);
|
||||
m_nob->setModel( m_nobModel );
|
||||
m_nob->setLabel( tr( "Swinginess" ) );
|
||||
m_nob->setEnabled(true);
|
||||
m_nobModel->setValue(_hy_swing->amount());
|
||||
m_sliderModel = new IntModel(0, 0, 127); // Unused
|
||||
m_slider = new AutomatableSlider(this, tr("Swinginess"));
|
||||
m_slider->setOrientation(Qt::Horizontal);
|
||||
m_slider->setFixedSize( 90, 26 );
|
||||
m_slider->setPageStep(1);
|
||||
m_slider->setModel(m_sliderModel);
|
||||
m_sliderModel->setValue(_hy_swing->amount());
|
||||
|
||||
m_hy_swing = _hy_swing;
|
||||
|
||||
connect(m_nob, SIGNAL(sliderMoved(float)), this, SLOT(valueChanged(float)));
|
||||
connect(m_nobModel, SIGNAL( dataChanged() ), this, SLOT(modelChanged()) );
|
||||
connect(m_slider, SIGNAL(sliderMoved(int)), this, SLOT(valueChanged(int)));
|
||||
connect(m_sliderModel, SIGNAL(dataChanged()), this, SLOT(modelChanged()));
|
||||
}
|
||||
|
||||
HydrogenSwingView::~HydrogenSwingView()
|
||||
{
|
||||
delete m_nob;
|
||||
delete m_nobModel;
|
||||
delete m_slider;
|
||||
delete m_sliderModel;
|
||||
}
|
||||
|
||||
void HydrogenSwingView::modelChanged()
|
||||
{
|
||||
m_hy_swing->setAmount((int)m_nobModel->value());
|
||||
m_hy_swing->setAmount((int)m_sliderModel->value());
|
||||
}
|
||||
|
||||
void HydrogenSwingView::valueChanged(float _f) // this value passed is gibberish
|
||||
void HydrogenSwingView::valueChanged(int _i) // this value passed is gibberish
|
||||
{
|
||||
m_hy_swing->setAmount((int)m_nobModel->value());
|
||||
m_hy_swing->setAmount((int)m_sliderModel->value());
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user