#include <list>
#include <cmath>
-#include <libgnomecanvasmm/canvas.h>
#include "pbd/xml++.h"
#include "pbd/controllable.h"
#include "ardour/utils.h"
#include "ardour/plugin.h"
#include "ardour/session_handle.h"
+#include "ardour/system_exec.h"
#include "video_timeline.h"
+#include "about.h"
#include "ardour_button.h"
#include "ardour_dialog.h"
#include "ardour_window.h"
#include "editing.h"
+#include "engine_dialog.h"
#include "meterbridge.h"
#include "ui_config.h"
#include "enums.h"
#include "visibility_group.h"
#include "window_manager.h"
-class About;
-class AddRouteDialog;
-class AddVideoDialog;
+#include "add_route_dialog.h"
+#include "add_video_dialog.h"
+#include "big_clock_window.h"
+#include "bundle_manager.h"
+#include "global_port_matrix.h"
+#include "keyeditor.h"
+#include "location_ui.h"
+#include "rc_option_editor.h"
+#include "route_params_ui.h"
+#include "session_option_editor.h"
+#include "speaker_dialog.h"
+#include "theme_manager.h"
+
class VideoTimeLine;
-class SystemExec;
class ArdourKeyboard;
class AudioClock;
-class BigClockWindow;
-class BundleManager;
class ButtonJoiner;
class ConnectionEditor;
-class EngineControl;
-class KeyEditor;
-class LocationUIWindow;
class MainClock;
class Mixer_UI;
class PublicEditor;
class SessionOptionEditor;
class ShuttleControl;
class Splash;
-class SpeakerDialog;
-class ThemeManager;
class TimeInfoBox;
class MidiTracer;
class NSM_Client;
class LevelMeterHBox;
-class GlobalPortMatrixWindow;
class GUIObjectState;
namespace Gtkmm2ext {
void new_midi_tracer_window ();
void toggle_editing_space();
+ void toggle_mixer_space();
void toggle_keep_tearoffs();
Gtk::Tooltips& tooltips() { return _tooltips; }
static UIConfiguration *ui_config;
- SystemExec *video_server_process;
+ ARDOUR::SystemExec *video_server_process;
void handle_locations_change (ARDOUR::Location*);
void disk_speed_dialog_gone (int ignored_response, Gtk::MessageDialog*);
void disk_overrun_handler ();
void disk_underrun_handler ();
+ void gui_idle_handler ();
+
+ void cancel_plugin_scan ();
+ void cancel_plugin_timeout ();
+ void plugin_scan_dialog (std::string type, std::string plugin, bool);
+ void plugin_scan_timeout (int);
void session_format_mismatch (std::string, std::string);
void fontconfig_dialog ();
int missing_file (ARDOUR::Session*s, std::string str, ARDOUR::DataType type);
- int ambiguous_file (std::string file, std::string path, std::vector<std::string> hits);
+ int ambiguous_file (std::string file, std::vector<std::string> hits);
bool click_button_clicked (GdkEventButton *);
#include "ardour/audioengine.h"
#include "ardour/automation_watch.h"
+#ifdef interface
+#undef interface
+#endif
+
#include "actions.h"
#include "add_route_dialog.h"
#include "add_video_dialog.h"
{
SessionHandlePtr::set_session (s);
-
if (!_session) {
WM::Manager::instance().set_session (s);
/* Session option editor cannot exist across change-of-session */
editor_meter_peak_display.hide();
}
- if (_session
- && _session->master_out()
- && _session->master_out()->n_outputs().n(DataType::AUDIO) > 0) {
+ if (meter_box.get_parent()) {
+ transport_tearoff_hbox.remove (meter_box);
+ transport_tearoff_hbox.remove (editor_meter_peak_display);
+ }
+
+ if (_session &&
+ _session->master_out() &&
+ _session->master_out()->n_outputs().n(DataType::AUDIO) > 0) {
+
editor_meter = new LevelMeterHBox(_session);
editor_meter->set_meter (_session->master_out()->shared_peak_meter().get());
editor_meter->clear_meters();
meter_box.show();
editor_meter_peak_display.show();
}
- }
+ }
}
int
}
return true;
}
+
+ void
+ ARDOUR_UI::toggle_mixer_space()
+ {
+ Glib::RefPtr<Action> act = ActionManager::get_action ("Common", "ToggleMaximalMixer");
+
+ if (act) {
+ Glib::RefPtr<ToggleAction> tact = Glib::RefPtr<ToggleAction>::cast_dynamic(act);
+ if (tact->get_active()) {
+ mixer->maximise_mixer_space ();
+ } else {
+ mixer->restore_mixer_space ();
+ }
+ }
+ }