implement button for global solo

git-svn-id: svn://localhost/ardour2/trunk@1573 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
John Anderson 2007-03-11 15:40:43 +00:00
parent bfd6bdf392
commit a31394fa8d
3 changed files with 18 additions and 5 deletions

View file

@ -3,8 +3,9 @@
if the handler is not called in the "correct thread", it will use a pseudo-RT-safe-enough technique to get the correct thread to recall "handler" later on, and return.
* jog with transport rolling doesn't work properly. My use of ScrollTimeline also doesn't work.
* make loop button sensitive to current transport state
* make sure rew button can go past the previous if pressed twice, relatively quickly.
* finish button mapping.
* finish button mapping. Only shifted buttons left for bcf.
* concurrency for bank switching? And make sure "old" events aren't sent to "new" faders
* TODOs in code
* removal of a route results in a strip that isn't dead, but doesn't have any effect on the session
@ -16,7 +17,7 @@ Later
* remove commented couts
* Queueing of writes?
* Generic surface code to common location
* bulk remote id changes cause too many surface updates
* bulk remote id changes cause too many surface updates. use Config->remote_model.
* which bank switching - overlap or dead faders? Option?
* signals for buttons?
* MackieControlProtocol in namespace Mackie?
@ -40,8 +41,5 @@ Actual Mackie
Bugs
----
* get_state isn't called on deactivate. Huh? What did I mean here?
* routes "forget" their remote_id between session save and the next session load
* definitely something wrong with remote_id assignment on session create
(master strip assigned 0).
* editor window doesn't update route remote_control_id when it's updated in mixer window.

View file

@ -1272,6 +1272,18 @@ LedState MackieControlProtocol::clicking_release( Button & button )
return Config->get_clicking();
}
LedState MackieControlProtocol::global_solo_press( Button & button )
{
bool state = !session->soloing();
session->set_all_solo ( state );
return state;
}
LedState MackieControlProtocol::global_solo_release( Button & button )
{
return session->soloing();
}
/////////////////////////////////////
// Bank Switching
/////////////////////////////////////

View file

@ -170,6 +170,9 @@ class MackieControlProtocol
virtual Mackie::LedState clicking_press( Mackie::Button & );
virtual Mackie::LedState clicking_release( Mackie::Button & );
virtual Mackie::LedState global_solo_press( Mackie::Button & );
virtual Mackie::LedState global_solo_release( Mackie::Button & );
protected:
// create instances of MackiePort, depending on what's found in ardour.rc
void create_ports();