Responsive "Effects chain" & "User controller" LEDs (#4297)

This commit is contained in:
Hussam Eddin Alhomsi
2018-04-24 11:25:49 +03:00
committed by GitHub
parent 418bcce402
commit f7a0553e6a
5 changed files with 23 additions and 9 deletions

View File

@@ -66,6 +66,7 @@ public slots:
void selectController();
void midiToggled();
void userToggled();
void userSelected();
void autoDetectToggled();
void enableAutoDetect( QAction * _a );

View File

@@ -57,11 +57,6 @@ public:
void clear();
void setEnabled( bool _on )
{
m_enabledModel.setValue( _on );
}
private:
typedef QVector<Effect *> EffectList;

View File

@@ -125,6 +125,8 @@ void EffectChain::appendEffect( Effect * _effect )
m_effects.append( _effect );
Engine::mixer()->doneChangeInModel();
m_enabledModel.setValue( true );
emit dataChanged();
}
@@ -144,6 +146,12 @@ void EffectChain::removeEffect( Effect * _effect )
m_effects.erase( found );
Engine::mixer()->doneChangeInModel();
if( m_effects.isEmpty() )
{
m_enabledModel.setValue( false );
}
emit dataChanged();
}
@@ -250,7 +258,6 @@ void EffectChain::clear()
Engine::mixer()->requestChangeInModel();
m_enabledModel.setValue( false );
while( m_effects.count() )
{
Effect * e = m_effects[m_effects.count() - 1];
@@ -259,4 +266,6 @@ void EffectChain::clear()
}
Engine::mixer()->doneChangeInModel();
m_enabledModel.setValue( false );
}

View File

@@ -188,11 +188,14 @@ ControllerConnectionDialog::ControllerConnectionDialog( QWidget * _parent,
m_userController = new ComboBox( m_userGroupBox, "Controller" );
m_userController->setGeometry( 10, 24, 200, 22 );
for (Controller * c : Engine::getSong()->controllers())
{
m_userController->model()->addItem( c->name() );
}
connect( m_userController->model(), SIGNAL( dataUnchanged() ),
this, SLOT( userSelected() ) );
connect( m_userController->model(), SIGNAL( dataChanged() ),
this, SLOT( userSelected() ) );
// Mapping functions
@@ -389,8 +392,15 @@ void ControllerConnectionDialog::userToggled()
{
m_midiGroupBox->model()->setValue( 0 );
}
}
m_userController->setEnabled( enabled );
void ControllerConnectionDialog::userSelected()
{
m_userGroupBox->model()->setValue( 1 );
userToggled();
}

View File

@@ -231,7 +231,6 @@ void EffectRackView::addEffect()
Effect * fx = esd.instantiateSelectedPlugin( fxChain() );
fxChain()->m_enabledModel.setValue( true );
fxChain()->appendEffect( fx );
update();