many options moved to menus, region list context menu sort of operational
[ardour.git] / gtk2_ardour / ardour_ui_options.cc
1 /*
2     Copyright (C) 2005 Paul Davis 
3
4     This program is free software; you can redistribute it and/or modify
5     it under the terms of the GNU General Public License as published by
6     the Free Software Foundation; either version 2 of the License, or
7     (at your option) any later version.
8
9     This program is distributed in the hope that it will be useful,
10     but WITHOUT ANY WARRANTY; without even the implied warranty of
11     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12     GNU General Public License for more details.
13
14     You should have received a copy of the GNU General Public License
15     along with this program; if not, write to the Free Software
16     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
17
18     $Id$
19 */
20
21 #include <ardour/configuration.h>
22 #include <ardour/session.h>
23 #include <ardour/audioengine.h>
24
25 #include "ardour_ui.h"
26 #include "actions.h"
27
28 using namespace Gtk;
29 using namespace ARDOUR;
30
31 void
32 ARDOUR_UI::toggle_time_master ()
33 {
34         bool yn = time_master_button.get_active();
35
36         Config->set_jack_time_master (yn);
37
38         if (session) {
39                 session->engine().reset_timebase ();
40         }
41 }
42
43 void
44 ARDOUR_UI::toggle_session_state (const char* group, const char* action, void (Session::*set)(bool))
45 {
46         if (session) {
47                 Glib::RefPtr<Action> act = ActionManager::get_action (group, action);
48                 if (act) {
49                         Glib::RefPtr<ToggleAction> tact = Glib::RefPtr<ToggleAction>::cast_dynamic(act);
50                         (session->*set) (tact->get_active());
51                 }
52         }
53 }
54
55 void
56 ARDOUR_UI::toggle_send_mtc ()
57 {
58         toggle_session_state ("options", "SendMTC", &Session::set_send_mtc);
59 }
60
61 void
62 ARDOUR_UI::toggle_send_mmc ()
63 {
64         toggle_session_state ("options", "SendMMC", &Session::set_send_mmc);
65 }
66
67 void
68 ARDOUR_UI::toggle_use_mmc ()
69 {
70         toggle_session_state ("options", "UseMMC", &Session::set_mmc_control);
71 }
72
73 void
74 ARDOUR_UI::toggle_use_midi_control ()
75 {
76         toggle_session_state ("options", "UseMIDIcontrol", &Session::set_midi_control);
77 }
78
79 void
80 ARDOUR_UI::toggle_send_midi_feedback ()
81 {
82         toggle_session_state ("options", "SendMIDIfeedback", &Session::set_midi_feedback);
83 }
84
85 void
86 ARDOUR_UI::toggle_AutoConnectNewTrackInputsToHardware()
87 {
88 }
89 void
90 ARDOUR_UI::toggle_AutoConnectNewTrackOutputsToHardware()
91 {
92 }
93 void
94 ARDOUR_UI::toggle_AutoConnectNewTrackOutputsToMaster()
95 {
96 }
97 void
98 ARDOUR_UI::toggle_ManuallyConnectNewTrackOutputs()
99 {
100 }
101 void
102 ARDOUR_UI::toggle_UseHardwareMonitoring()
103 {
104 }
105 void
106 ARDOUR_UI::toggle_UseSoftwareMonitoring()
107 {
108 }
109 void
110 ARDOUR_UI::toggle_UseExternalMonitoring()
111 {
112 }
113 void
114 ARDOUR_UI::toggle_StopPluginsWithTransport()
115 {
116 }
117 void
118 ARDOUR_UI::toggle_RunPluginsWhileRecording()
119 {
120 }
121 void
122 ARDOUR_UI::toggle_VerifyRemoveLastCapture()
123 {
124 }
125 void
126 ARDOUR_UI::toggle_StopRecordingOnXrun()
127 {
128 }
129 void
130 ARDOUR_UI::toggle_StopTransportAtEndOfSession()
131 {
132 }
133 void
134 ARDOUR_UI::toggle_GainReduceFastTransport()
135 {
136 }
137 void
138 ARDOUR_UI::toggle_LatchedSolo()
139 {
140 }
141 void
142 ARDOUR_UI::toggle_SoloViaBus()
143 {
144 }
145 void
146 ARDOUR_UI::toggle_AutomaticallyCreateCrossfades()
147 {
148 }
149 void
150 ARDOUR_UI::toggle_UnmuteNewFullCrossfades()
151 {
152 }