ardour
ardour_ui.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 1999-2002 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 */
19 
20 #ifndef __ardour_gui_h__
21 #define __ardour_gui_h__
22 
23 #include <time.h>
24 
25 /* need _BSD_SOURCE to get timersub macros */
26 
27 #ifdef _BSD_SOURCE
28 #include <sys/time.h>
29 #else
30 #define _BSD_SOURCE
31 #include <sys/time.h>
32 #undef _BSD_SOURCE
33 #endif
34 
35 #include <list>
36 #include <cmath>
37 
38 
39 #include "pbd/xml++.h"
40 #include "pbd/controllable.h"
41 #include <gtkmm/box.h>
42 #include <gtkmm/frame.h>
43 #include <gtkmm/label.h>
44 #include <gtkmm/table.h>
45 #include <gtkmm/fixed.h>
46 #include <gtkmm/drawingarea.h>
47 #include <gtkmm/eventbox.h>
48 #include <gtkmm/menu.h>
49 #include <gtkmm/menuitem.h>
50 #include <gtkmm/button.h>
51 #include <gtkmm/togglebutton.h>
52 #include <gtkmm/treeview.h>
53 #include <gtkmm/menubar.h>
54 #include <gtkmm/textbuffer.h>
55 #include <gtkmm/adjustment.h>
56 #include <gtkmm2ext/gtk_ui.h>
57 #include <gtkmm2ext/click_box.h>
60 
61 #include "ardour/ardour.h"
62 #include "ardour/types.h"
63 #include "ardour/utils.h"
64 #include "ardour/plugin.h"
65 #include "ardour/session_handle.h"
66 #include "ardour/system_exec.h"
67 
68 #include "video_timeline.h"
69 
70 #include "about.h"
71 #include "ardour_button.h"
72 #include "ardour_dialog.h"
73 #include "ardour_window.h"
74 #include "editing.h"
75 #include "engine_dialog.h"
76 #include "export_video_dialog.h"
77 #include "meterbridge.h"
78 #include "ui_config.h"
79 #include "enums.h"
80 #include "visibility_group.h"
81 #include "window_manager.h"
82 
83 #include "add_route_dialog.h"
84 #include "add_video_dialog.h"
85 #include "big_clock_window.h"
86 #include "bundle_manager.h"
87 #include "global_port_matrix.h"
88 #include "keyeditor.h"
89 #include "location_ui.h"
90 #include "rc_option_editor.h"
91 #include "route_params_ui.h"
92 #include "session_option_editor.h"
93 #include "speaker_dialog.h"
94 
95 class VideoTimeLine;
96 class ArdourKeyboard;
97 class AudioClock;
98 class ButtonJoiner;
99 class ConnectionEditor;
100 class MainClock;
101 class Mixer_UI;
102 class PublicEditor;
103 class RCOptionEditor;
104 class RouteParams_UI;
105 class SaveAsDialog;
106 class SessionDialog;
107 class SessionOptionEditor;
108 class ShuttleControl;
109 class Splash;
110 class TimeInfoBox;
111 class MidiTracer;
112 class NSM_Client;
113 class LevelMeterHBox;
114 class GUIObjectState;
115 
116 namespace ARDOUR {
117  class ControlProtocolInfo;
118  class IO;
119  class Port;
120  class Route;
121  class RouteGroup;
122  class Location;
123  class ProcessThread;
124 }
125 
126 namespace Gtkmm2ext {
127  class TearOff;
128 }
129 
130 namespace Gtk {
131  class ProgressBar;
132 }
133 
135 {
136  private:
137  /* This must be the first data element because constructor ordering
138  relies on it.
139  */
141 
142  public:
143  ARDOUR_UI (int *argcp, char **argvp[], const char* localedir);
144  ~ARDOUR_UI();
145 
146  bool run_startup (bool should_be_new, std::string load_template);
147 
148  void show_splash ();
149  void hide_splash ();
150 
151  void launch_chat ();
152  void launch_manual ();
153  void launch_reference ();
154  void launch_tracker ();
155  void launch_subscribe ();
156  void launch_cheat_sheet ();
157  void launch_website ();
158  void launch_website_dev ();
159  void launch_forums ();
160  void launch_howto_report ();
161  void show_about ();
162  void hide_about ();
163 
164  void load_from_application_api (const std::string& path);
165  void finish();
166 
167  int load_session (const std::string& path, const std::string& snapshot, std::string mix_template = std::string());
169  int build_session (const std::string& path, const std::string& snapshot, ARDOUR::BusProfile&);
170  bool session_is_new() const { return _session_is_new; }
171 
173 
174  bool get_smart_mode () const;
175 
176  int get_session_parameters (bool quit_on_cancel, bool should_be_new = false, std::string load_template = "");
177  int build_session_from_dialog (SessionDialog&, const std::string& session_name, const std::string& session_path);
178  bool ask_about_loading_existing_session (const std::string& session_path);
179 
181  int unload_session (bool hide_stuff = false);
182  void close_session();
183 
184  int save_state_canfail (std::string state_name = "", bool switch_to_it = false);
185  void save_state (const std::string & state_name = "", bool switch_to_it = false);
186 
187  static ARDOUR_UI *instance () { return theArdourUI; }
188  static UIConfiguration *config () { return theArdourUI->ui_config; }
189  static float ui_scale;
190 
192  Mixer_UI* the_mixer() { return mixer; }
193 
194  void new_midi_tracer_window ();
195  void toggle_editing_space();
196  void toggle_mixer_space();
197  void toggle_keep_tearoffs();
198 
199  Gtk::Tooltips& tooltips() { return _tooltips; }
200 
202 
204 
210  static sigc::signal<void, framepos_t, bool, framepos_t> Clock;
211 
212  static void close_all_dialogs () { CloseAllDialogs(); }
213  static sigc::signal<void> CloseAllDialogs;
214 
215  XMLNode* editor_settings() const;
216  XMLNode* mixer_settings () const;
217  XMLNode* keyboard_settings () const;
218  XMLNode* tearoff_settings (const char*) const;
219 
220  void save_ardour_state ();
221  gboolean configure_handler (GdkEventConfigure* conf);
222 
223  void halt_on_xrun_message ();
224  void xrun_handler (framepos_t);
226 
228 
231  void focus_on_clock ();
233 
235 
237 
238  void store_clock_modes ();
239  void restore_clock_modes ();
240  void reset_main_clocks ();
241 
243 
244  void add_route (Gtk::Window* float_window);
245  void add_routes_part_two ();
246  void add_routes_thread ();
247 
248  void add_video (Gtk::Window* float_window);
249  void remove_video ();
250  void start_video_server_menu (Gtk::Window* float_window);
251  bool start_video_server (Gtk::Window* float_window, bool popup_msg);
252  void stop_video_server (bool ask_confirm=false);
253  void flush_videotimeline_cache (bool localcacheonly=false);
254  void export_video (bool range = false);
255 
257  int input_channels,
258  int32_t output_channels,
259  ARDOUR::TrackMode mode,
260  ARDOUR::RouteGroup* route_group,
261  uint32_t how_many,
262  std::string const & name_template
263  ) {
264 
265  session_add_audio_route (true, input_channels, output_channels, mode, route_group, how_many, name_template);
266  }
267 
268  void session_add_audio_bus (int input_channels, int32_t output_channels, ARDOUR::RouteGroup* route_group,
269  uint32_t how_many, std::string const & name_template) {
270  session_add_audio_route (false, input_channels, output_channels, ARDOUR::Normal, route_group, how_many, name_template);
271  }
272 
273  void session_add_midi_track (ARDOUR::RouteGroup* route_group, uint32_t how_many, std::string const & name_template,
274  ARDOUR::PluginInfoPtr instrument) {
275  session_add_midi_route (true, route_group, how_many, name_template, instrument);
276  }
277 
278  void session_add_mixed_track (const ARDOUR::ChanCount& input, const ARDOUR::ChanCount& output, ARDOUR::RouteGroup* route_group, uint32_t how_many, std::string const & name_template,
279  ARDOUR::PluginInfoPtr instrument);
280 
281  /*void session_add_midi_bus () {
282  session_add_midi_route (false);
283  }*/
284 
285  void attach_to_engine ();
286  void post_engine ();
287 
288  gint exit_on_main_window_close (GdkEventAny *);
289 
290  void maximise_editing_space ();
291  void restore_editing_space ();
292 
293  void show_ui_prefs ();
294 
296 
297  void setup_profile ();
298  void setup_tooltips ();
299 
300  void set_shuttle_fract (double);
301 
302  void get_process_buffers ();
303  void drop_process_buffers ();
304 
305  void reset_peak_display ();
308 
309  const std::string& announce_string() const { return _announce_string; }
310 
311  int disconnect_from_engine ();
312  int reconnect_to_engine ();
313 
314  protected:
315  friend class PublicEditor;
316 
317  void toggle_auto_play ();
318  void toggle_auto_input ();
319  void toggle_punch ();
320  void unset_dual_punch ();
322  void toggle_punch_in ();
323  void toggle_punch_out ();
326  void toggle_auto_return ();
327  void toggle_click ();
328  void toggle_audio_midi_setup ();
329  void toggle_session_auto_loop ();
330  void toggle_rc_options_window ();
332 
333  private:
336  Gtk::Tooltips _tooltips;
341 
342  void goto_editor_window ();
343  void goto_mixer_window ();
344  void toggle_mixer_window ();
345  void toggle_meterbridge ();
346  void toggle_editor_mixer ();
347 
348  int setup_windows ();
349  void setup_transport ();
350  void setup_clock ();
351 
353 
354  int starting ();
355 
356  int ask_about_saving_session (const std::vector<std::string>& actions);
357 
358  void save_session_at_its_request (std::string);
359  /* periodic safety backup, to be precise */
360  gint autosave_session();
361  void update_autosave();
362  sigc::connection _autosave_connection;
363 
364  void map_transport_state ();
365  int32_t do_engine_start ();
366 
367  void engine_halted (const char* reason, bool free_reason);
368  void engine_stopped ();
369  void engine_running ();
370 
371  void use_config ();
372 
373  void about_signal_response(int response);
374 
375  Gtk::VBox top_packer;
376 
377  sigc::connection clock_signal_connection;
378  void update_clocks ();
379  void start_clocking ();
380  void stop_clocking ();
381 
382  bool main_window_state_event_handler (GdkEventWindowState*, bool window_was_editor);
383 
385  void record_state_changed ();
386 
387  std::list<MidiTracer*> _midi_tracer_windows;
388 
389  void detach_tearoff (Gtk::Box* parent, Gtk::Widget* contents);
390  void reattach_tearoff (Gtk::Box* parent, Gtk::Widget* contents, int32_t order);
391  void reattach_all_tearoffs ();
392 
393  /* Transport Control */
394 
396  Gtk::Frame transport_frame;
399  Gtk::HBox transport_hbox;
400  Gtk::Fixed transport_base;
411 
413  enum ToggleType {
414  Roll = 0,
421  };
422 
424  void set_value (double);
425  double get_value (void) const;
426 
429  };
430 
438 
439  void toggle_follow_edits ();
440 
443 
451 
452  void toggle_external_sync ();
453  void toggle_time_master ();
454  void toggle_video_sync ();
455 
457 
463 
468 
469  Gtk::VBox alert_box;
470  Gtk::VBox meter_box;
474  bool editor_meter_peak_button_release (GdkEventButton*);
475 
476  void blink_handler (bool);
477  sigc::connection blink_connection;
478 
479  void solo_blink (bool);
480  void sync_blink (bool);
481  void audition_blink (bool);
482  void feedback_blink (bool);
483  void error_blink (bool);
484 
485  void set_flat_buttons();
486 
487  void soloing_changed (bool);
488  void auditioning_changed (bool);
489  void _auditioning_changed (bool);
490 
491  bool solo_alert_press (GdkEventButton* ev);
492  bool audition_alert_press (GdkEventButton* ev);
493  bool feedback_alert_press (GdkEventButton *);
494  bool error_alert_press (GdkEventButton *);
495 
496  void big_clock_value_changed ();
499 
500  /* called by Blink signal */
501 
502  void transport_rec_enable_blink (bool onoff);
503 
504  Gtk::Menu* session_popup_menu;
505 
506  struct RecentSessionModelColumns : public Gtk::TreeModel::ColumnRecord {
508  add (visible_name);
509  add (tip);
510  add (fullpath);
511  }
512  Gtk::TreeModelColumn<std::string> visible_name;
513  Gtk::TreeModelColumn<std::string> tip;
514  Gtk::TreeModelColumn<std::string> fullpath;
515  };
516 
518  Gtk::TreeView recent_session_display;
519  Glib::RefPtr<Gtk::TreeStore> recent_session_model;
520 
522  Gtk::FileChooserDialog* open_session_selector;
523 
524  void build_session_selector();
526  void recent_session_row_activated (const Gtk::TreePath& path, Gtk::TreeViewColumn* col);
527 
529  bool operator() (std::pair<std::string,std::string> a, std::pair<std::string,std::string> b) const {
530  return ARDOUR::cmp_nocase(a.first, b.first) == -1;
531  }
532  };
533 
534  /* menu bar and associated stuff */
535 
536  Gtk::MenuBar* menu_bar;
537  Gtk::EventBox menu_bar_base;
538  Gtk::HBox menu_hbox;
539 
541  void build_menu_bar ();
542 
543  Gtk::Label wall_clock_label;
544  gint update_wall_clock ();
545 
546  Gtk::Label disk_space_label;
547  void update_disk_space ();
548 
550  void update_timecode_format ();
551 
552  Gtk::Label cpu_load_label;
553  void update_cpu_load ();
554 
555  Gtk::Label xrun_label;
556  void update_xrun_count ();
557 
558  Gtk::Label buffer_load_label;
559  void update_buffer_load ();
560 
561  Gtk::Label sample_rate_label;
563 
564  Gtk::Label format_label;
565  void update_format ();
566 
567  void every_second ();
568  void every_point_one_seconds ();
570 
571  sigc::connection second_connection;
572  sigc::connection point_one_second_connection;
574  sigc::connection fps_connection;
575 
577 
578  void open_session ();
579  void open_recent_session ();
580  void save_template ();
581 
582  void edit_metadata ();
583  void import_metadata ();
584 
585  void session_add_audio_route (bool, int32_t, int32_t, ARDOUR::TrackMode, ARDOUR::RouteGroup *, uint32_t, std::string const &);
586  void session_add_midi_route (bool, ARDOUR::RouteGroup *, uint32_t, std::string const &, ARDOUR::PluginInfoPtr);
587 
588  void set_transport_sensitivity (bool);
589 
590  //stuff for ProTools-style numpad
591  void transport_numpad_event (int num);
592  void transport_numpad_decimal ();
595  gint transport_numpad_timeout ();
596  sigc::connection _numpad_timeout_connection;
597 
598  void transport_goto_nth_marker (int nth);
599  void transport_goto_zero ();
600  void transport_goto_start ();
601  void transport_goto_end ();
602  void transport_goto_wallclock ();
603  void transport_stop ();
604  void transport_record (bool roll);
605  void transport_roll ();
607  void transport_play_preroll();
608  void transport_forward (int option);
609  void transport_rewind (int option);
610  void transport_loop ();
611  void toggle_roll (bool with_abort, bool roll_out_of_bounded_mode);
613 
615  void set_session (ARDOUR::Session *);
617  void we_have_dependents ();
618 
619  void setup_session_options ();
620 
622 
623  void snapshot_session (bool switch_to_it);
624 
626 
627  bool save_as_progress_update (float fraction, int64_t cnt, int64_t total, Gtk::Label* label, Gtk::ProgressBar* bar);
628  void save_session_as ();
629  void rename_session ();
631 
632  int create_mixer ();
633  int create_editor ();
634 
636  int create_meterbridge ();
637  /* Dialogs that can be created via new<T> */
638 
648 
649  /* Windows/Dialogs that require a creator method */
650 
657 
658  /* creator methods */
659 
665 
667 
669 
670  /* Keyboard Handling */
671 
673 
674  /* Keymap handling */
675 
676  void install_actions ();
677 
678  void toggle_record_enable (uint32_t);
679 
682 
684 
685  void pop_back_splash (Gtk::Window&);
686 
687  /* cleanup */
688 
689  Gtk::MenuItem *cleanup_item;
690 
691  void display_cleanup_results (ARDOUR::CleanupReport& rep, const gchar* list_title, const bool msg_delete);
692  void cleanup ();
693  void flush_trash ();
694 
697  gint configure_timeout ();
698 
701 
703  void disk_speed_dialog_gone (int ignored_response, Gtk::MessageDialog*);
704  void disk_overrun_handler ();
705  void disk_underrun_handler ();
706  void gui_idle_handler ();
707 
708  void cancel_plugin_scan ();
709  void cancel_plugin_timeout ();
710  void plugin_scan_dialog (std::string type, std::string plugin, bool);
711  void plugin_scan_timeout (int);
712 
713  void session_format_mismatch (std::string, std::string);
714 
715  void session_dialog (std::string);
716  int pending_state_dialog ();
718 
719  Gtk::MenuItem* jack_disconnect_item;
720  Gtk::MenuItem* jack_reconnect_item;
721  Gtk::Menu* jack_bufsize_menu;
722 
723  Glib::RefPtr<Gtk::ActionGroup> common_actions;
724 
725  void editor_realized ();
726 
727  std::vector<std::string> positional_sync_strings;
728 
730  void toggle_use_mmc ();
731  void toggle_send_mmc ();
732  void toggle_send_mtc ();
733  void toggle_send_midi_clock ();
734 
735  void toggle_use_osc ();
736 
737  void parameter_changed (std::string);
738  void session_parameter_changed (std::string);
739 
740  bool first_idle ();
741 
742  void check_memory_locking ();
743 
744  bool check_audioengine();
745  void audioengine_setup ();
746 
747  void display_message (const char *prefix, gint prefix_len,
748  Glib::RefPtr<Gtk::TextBuffer::Tag> ptag, Glib::RefPtr<Gtk::TextBuffer::Tag> mtag,
749  const char *msg);
750  Gtk::Label status_bar_label;
751  bool status_bar_button_press (GdkEventButton*);
752 
753  void loading_message (const std::string& msg);
754 
757 
758  void step_edit_status_change (bool);
759 
760  void platform_specific ();
761  void platform_setup ();
762 
763  /* these are used only in response to a platform-specific "ShouldQuit" signal
764  */
765  bool idle_finish ();
766  void queue_finish ();
767  void fontconfig_dialog ();
768 
769  int missing_file (ARDOUR::Session*s, std::string str, ARDOUR::DataType type);
770  int ambiguous_file (std::string file, std::vector<std::string> hits);
771 
772  bool click_button_clicked (GdkEventButton *);
773 
775 
780 
781  void feedback_detected ();
782 
784  void midi_panic ();
785 
786  void successful_graph_sort ();
788 
794  };
795 
797 
798  void resize_text_widgets ();
799 
800  bool xrun_button_release (GdkEventButton* ev);
801 
802  std::string _announce_string;
803  void check_announcements ();
804 
805  int do_audio_midi_setup (uint32_t);
807 };
808 
809 #endif /* __ardour_gui_h__ */
810 
SessionOptionEditor * create_session_option_editor()
void toggle_mixer_window()
void toggle_video_sync()
void reenable_hide_loop_punch_ruler_if_appropriate()
void update_format()
Definition: ardour_ui.cc:1297
Gtk::Menu * session_popup_menu
Definition: ardour_ui.h:504
bool operator()(std::pair< std::string, std::string > a, std::pair< std::string, std::string > b) const
Definition: ardour_ui.h:529
sigc::connection second_connection
Definition: ardour_ui.h:571
WM::ProxyWithConstructor< BundleManager > bundle_manager
Definition: ardour_ui.h:653
void goto_editor_window()
void check_memory_locking()
Definition: ardour_ui.cc:960
int pending_state_dialog()
Definition: ardour_ui.cc:4315
void update_transport_clocks(framepos_t pos)
Definition: ardour_ui.cc:4431
void secondary_clock_value_changed()
Definition: ardour_ui.cc:2668
void transport_roll()
Definition: ardour_ui.cc:2042
int reconnect_to_engine()
Definition: ardour_ui.cc:4403
ArdourButton solo_alert_button
Definition: ardour_ui.h:465
AddVideoDialog * create_add_video_dialog()
int create_meterbridge()
void connect_dependents_to_session(ARDOUR::Session *)
void transport_forward(int option)
Definition: ardour_ui.cc:2243
void display_message(const char *prefix, gint prefix_len, Glib::RefPtr< Gtk::TextBuffer::Tag > ptag, Glib::RefPtr< Gtk::TextBuffer::Tag > mtag, const char *msg)
Definition: ardour_ui2.cc:171
ArdourKeyboard * keyboard
Definition: ardour_ui.h:672
RecentSessionModelColumns recent_session_columns
Definition: ardour_ui.h:517
void launch_reference()
Definition: ardour_ui.cc:3302
void session_parameter_changed(std::string)
void launch_forums()
Definition: ardour_ui.cc:3342
ArdourButton follow_edits_button
Definition: ardour_ui.h:459
std::list< MidiTracer * > _midi_tracer_windows
Definition: ardour_ui.h:387
void transport_rec_enable_blink(bool onoff)
Definition: ardour_ui.cc:2676
void toggle_use_osc()
gint autosave_session()
Definition: ardour_ui.cc:708
Gtk::TreeModelColumn< std::string > visible_name
Definition: ardour_ui.h:512
void restore_clock_modes()
void build_session_selector()
Definition: ardour_ui.cc:1619
WM::ProxyWithConstructor< SessionOptionEditor > session_option_editor
Definition: ardour_ui.h:651
int create_editor()
Definition: ardour_ui_ed.cc:77
ARDOUR_UI(int *argcp, char **argvp[], const char *localedir)
Definition: ardour_ui.cc:184
XMLNode * editor_settings() const
Definition: ardour_ui.cc:4069
void launch_website()
Definition: ardour_ui.cc:3330
void create_xrun_marker(framepos_t)
Definition: ardour_ui.cc:4107
void launch_chat()
Definition: ardour_ui.cc:3284
Gtk::VBox meter_box
Definition: ardour_ui.h:470
WM::Proxy< EngineControl > audio_midi_setup
Definition: ardour_ui.h:646
void xrun_handler(framepos_t)
Definition: ardour_ui.cc:4124
MainClock * primary_clock
Definition: ardour_ui.h:229
bool first_time_engine_run
Definition: ardour_ui.h:340
sigc::connection point_one_second_connection
Definition: ardour_ui.h:572
Gtk::HBox transport_button_hbox
Definition: ardour_ui.h:403
void post_engine()
Definition: ardour_ui.cc:491
int get_session_parameters(bool quit_on_cancel, bool should_be_new=false, std::string load_template="")
Definition: ardour_ui.cc:2841
void platform_setup()
Definition: cocoacarbon.mm:58
NSM_Client * nsm
Definition: ardour_ui.h:337
Gtk::HBox primary_clock_hbox
Definition: ardour_ui.h:409
void midi_panic()
Definition: ardour_ui.cc:4680
bool session_is_new() const
Definition: ardour_ui.h:170
int unload_session(bool hide_stuff=false)
int sr_mismatch_dialog(ARDOUR::framecnt_t, ARDOUR::framecnt_t)
Definition: ardour_ui.cc:4349
ArdourButton roll_button
Definition: ardour_ui.h:444
void reset_peak_display()
Definition: ardour_ui.cc:4707
void step_edit_status_change(bool)
Definition: ardour_ui.cc:4452
bool run_startup(bool should_be_new, std::string load_template)
WM::ProxyWithConstructor< GlobalPortMatrixWindow > midi_port_matrix
Definition: ardour_ui.h:656
Gtk::Fixed transport_base
Definition: ardour_ui.h:400
void transport_record(bool roll)
Definition: ardour_ui.cc:2009
Definition: ardour_ui.h:130
static ARDOUR_UI * instance()
Definition: ardour_ui.h:187
void stop_clocking()
Definition: ardour_ui.cc:2384
XMLNode * tearoff_settings(const char *) const
Definition: ardour_ui2.cc:204
gint exit_on_main_window_close(GdkEventAny *)
bool save_as_progress_update(float fraction, int64_t cnt, int64_t total, Gtk::Label *label, Gtk::ProgressBar *bar)
Definition: ardour_ui.cc:2390
Gtk::HBox transport_option_button_hbox
Definition: ardour_ui.h:405
void pop_back_splash(Gtk::Window &)
Definition: ardour_ui.cc:602
void launch_manual()
Definition: ardour_ui.cc:3296
void unset_dual_punch()
void launch_subscribe()
Definition: ardour_ui.cc:3314
void session_add_audio_route(bool, int32_t, int32_t, ARDOUR::TrackMode, ARDOUR::RouteGroup *, uint32_t, std::string const &)
Definition: ardour_ui.cc:1830
void update_xrun_count()
Definition: ardour_ui.cc:1351
bool start_video_server(Gtk::Window *float_window, bool popup_msg)
Definition: ardour_ui.cc:3765
void build_menu_bar()
static void close_all_dialogs()
Definition: ardour_ui.h:212
bool click_button_clicked(GdkEventButton *)
Definition: ardour_ui2.cc:736
void export_video(bool range=false)
Definition: ardour_ui.cc:4028
void audioengine_became_silent()
Definition: ardour_ui.cc:4802
void toggle_audio_midi_setup()
void show_splash()
Definition: ardour_ui.cc:3368
static PublicEditor * _instance
Definition: ardour_ui.h:203
void setup_transport()
Definition: ardour_ui2.cc:222
Representation of the interface of the Editor class.
Splash * splash
Definition: ardour_ui.h:683
void toggle_roll(bool with_abort, bool roll_out_of_bounded_mode)
Definition: ardour_ui.cc:2104
sigc::connection blink_connection
Definition: ardour_ui.h:477
void queue_finish()
Definition: ardour_ui.cc:1038
ARDOUR::SystemExec * video_server_process
Definition: ardour_ui.h:666
bool error_alert_press(GdkEventButton *)
Definition: ardour_ui2.cc:565
void successful_graph_sort()
Definition: ardour_ui.cc:4674
void about_signal_response(int response)
void transport_goto_start()
Definition: ardour_ui.cc:1880
Gtk::Menu * jack_bufsize_menu
Definition: ardour_ui.h:721
void toggle_external_sync()
void we_have_dependents()
void toggle_follow_edits()
Definition: ardour_ui2.cc:753
void flush_trash()
Definition: ardour_ui.cc:3588
UIConfiguration * ui_config
Definition: ardour_ui.h:140
void engine_stopped()
Definition: ardour_ui.cc:422
void toggle_send_midi_clock()
void finish()
Definition: ardour_ui.cc:1051
WM::Proxy< LocationUIWindow > location_ui
Definition: ardour_ui.h:644
sigc::connection fps_connection
Definition: ardour_ui.h:574
PublicEditor & the_editor()
Definition: ardour_ui.h:191
void every_second()
Definition: ardour_ui.cc:1186
Gtk::Label buffer_load_label
Definition: ardour_ui.h:558
boost::shared_ptr< TransportControllable > roll_controllable
Definition: ardour_ui.h:431
void detach_tearoff(Gtk::Box *parent, Gtk::Widget *contents)
Definition: ardour_ui2.cc:495
ArdourButton feedback_alert_button
Definition: ardour_ui.h:466
void transport_play_selection()
Definition: ardour_ui.cc:2197
void toggle_send_midi_feedback()
void cancel_plugin_scan()
Definition: ardour_ui.cc:4166
void start_clocking()
Definition: ardour_ui.cc:2374
void toggle_punch_in()
void setup_tooltips()
Definition: ardour_ui2.cc:126
void session_format_mismatch(std::string, std::string)
Definition: ardour_ui.cc:4688
void use_config()
Definition: ardour_ui.cc:4422
void map_transport_state()
Definition: ardour_ui.cc:2289
void flush_videotimeline_cache(bool localcacheonly=false)
Definition: ardour_ui.cc:4017
const std::string & announce_string() const
Definition: ardour_ui.h:309
void disk_overrun_handler()
Definition: ardour_ui.cc:4142
float editor_meter_max_peak
Definition: ardour_ui.h:472
ArdourLogLevel _log_not_acknowledged
Definition: ardour_ui.h:796
int build_session_from_dialog(SessionDialog &, const std::string &session_name, const std::string &session_path)
Definition: ardour_ui.cc:2776
GUIObjectState * gui_object_state
Definition: ardour_ui.h:227
void reattach_tearoff(Gtk::Box *parent, Gtk::Widget *contents, int32_t order)
Definition: ardour_ui2.cc:502
void reset_group_peak_display(ARDOUR::RouteGroup *)
Definition: ardour_ui.cc:4716
Gtk::Label format_label
Definition: ardour_ui.h:564
bool audition_alert_press(GdkEventButton *ev)
Definition: ardour_ui2.cc:537
void toggle_auto_return()
static ARDOUR_UI * theArdourUI
Definition: ardour_ui.h:352
Gtk::Label status_bar_label
Definition: ardour_ui.h:750
void recent_session_row_activated(const Gtk::TreePath &path, Gtk::TreeViewColumn *col)
Definition: ardour_ui.cc:1647
void import_metadata()
Definition: ardour_ui.cc:2742
void reattach_all_tearoffs()
Definition: ardour_ui2.cc:509
int ambiguous_file(std::string file, std::vector< std::string > hits)
Definition: ardour_ui.cc:4642
void every_point_one_seconds()
Definition: ardour_ui.cc:1209
MainClock * secondary_clock
Definition: ardour_ui.h:230
void set_transport_controllable_state(const XMLNode &)
Definition: ardour_ui.cc:643
ArdourButton goto_start_button
Definition: ardour_ui.h:446
Gtk::EventBox menu_bar_base
Definition: ardour_ui.h:537
Gtk::HBox transport_clock_hbox
Definition: ardour_ui.h:407
XMLNode * mixer_settings() const
Definition: ardour_ui.cc:4051
void goto_mixer_window()
Gtk::HBox transport_hbox
Definition: ardour_ui.h:399
void update_buffer_load()
Definition: ardour_ui.cc:1388
PBD::ScopedConnection halt_connection
Definition: ardour_ui.h:756
void save_ardour_state()
TimeInfoBox * time_info_box
Definition: ardour_ui.h:234
ArdourButton auto_loop_button
Definition: ardour_ui.h:448
void editor_realized()
Definition: ardour_ui2.cc:691
Gtk::Fixed transport_button_base
Definition: ardour_ui.h:401
void record_state_changed()
Definition: ardour_ui.cc:4467
std::string _announce_string
Definition: ardour_ui.h:802
void save_session_at_its_request(std::string)
Definition: ardour_ui.cc:700
void start_video_server_menu(Gtk::Window *float_window)
Definition: ardour_ui.cc:3759
Definition: splash.h:33
Gtk::HBox & editor_transport_box()
Definition: ardour_ui.h:201
void set_flat_buttons()
Definition: ardour_ui.cc:4796
bool xrun_button_release(GdkEventButton *ev)
void stop_video_server(bool ask_confirm=false)
Definition: ardour_ui.cc:3736
Meterbridge * meterbridge
Definition: ardour_ui.h:635
void transport_goto_zero()
Definition: ardour_ui.cc:1896
WM::ProxyWithConstructor< BigClockWindow > big_clock_window
Definition: ardour_ui.h:654
bool idle_finish()
Definition: ardour_ui.cc:1044
Definition: getopt.h:74
void new_midi_tracer_window()
void launch_howto_report()
Definition: ardour_ui.cc:3348
void save_state(const std::string &state_name="", bool switch_to_it=false)
Definition: ardour_ui.cc:2615
TrackMode
Definition: types.h:198
int load_session(const std::string &path, const std::string &snapshot, std::string mix_template=std::string())
Definition: ardour_ui.cc:3096
void close_session()
Definition: ardour_ui.cc:3073
int64_t framecnt_t
Definition: types.h:76
BundleManager * create_bundle_manager()
uint32_t rec_enabled_streams
Definition: ardour_ui.h:680
gboolean configure_handler(GdkEventConfigure *conf)
Definition: ardour_ui.cc:630
Gtk::Frame transport_button_frame
Definition: ardour_ui.h:402
void soloing_changed(bool)
Definition: ardour_ui2.cc:516
void update_timecode_format()
Definition: ardour_ui.cc:1485
GlobalPortMatrixWindow * create_global_port_matrix(ARDOUR::DataType)
Definition: ardour_ui.cc:406
void gui_idle_handler()
Definition: ardour_ui.cc:4262
static const char * localedir
Definition: load_session.cc:12
ArdourButton goto_end_button
Definition: ardour_ui.h:447
ARDOUR::Session * the_session()
Definition: ardour_ui.h:172
gint transport_numpad_timeout()
Definition: ardour_ui.cc:4751
void plugin_scan_dialog(std::string type, std::string plugin, bool)
Definition: ardour_ui.cc:4194
bool _was_dirty
Definition: ardour_ui.h:338
VideoTimeLine * video_timeline
Definition: ardour_ui.h:236
void auditioning_changed(bool)
Definition: ardour_ui2.cc:531
void toggle_meterbridge()
int create_mixer()
void transport_goto_nth_marker(int nth)
WM::ProxyWithConstructor< GlobalPortMatrixWindow > audio_port_matrix
Definition: ardour_ui.h:655
Gtk::Label disk_space_label
Definition: ardour_ui.h:546
Gtk::VBox transport_button_vbox
Definition: ardour_ui.h:404
sigc::connection clock_signal_connection
Definition: ardour_ui.h:377
ArdourButton midi_panic_button
Definition: ardour_ui.h:783
Gtk::VBox transport_option_button_vbox
Definition: ardour_ui.h:406
bool _mixer_on_top
Definition: ardour_ui.h:339
void display_cleanup_results(ARDOUR::CleanupReport &rep, const gchar *list_title, const bool msg_delete)
Definition: ardour_ui.cc:3389
void session_add_midi_track(ARDOUR::RouteGroup *route_group, uint32_t how_many, std::string const &name_template, ARDOUR::PluginInfoPtr instrument)
Definition: ardour_ui.h:273
void rename_session()
Definition: ardour_ui.cc:2555
Definition: amp.h:29
void setup_order_hint(AddRouteDialog::InsertAt)
Definition: ardour_ui.cc:3605
void setup_profile()
Definition: ardour_ui.cc:4598
void use_menubar_as_top_menubar()
SaveAsDialog * save_as_dialog
Definition: ardour_ui.h:625
void cleanup()
Definition: ardour_ui.cc:3531
void big_clock_value_changed()
Definition: ardour_ui.cc:2660
Gtk::MenuItem * jack_reconnect_item
Definition: ardour_ui.h:720
double get_value(void) const
Definition: ardour_ui.cc:4571
void session_add_midi_route(bool, ARDOUR::RouteGroup *, uint32_t, std::string const &, ARDOUR::PluginInfoPtr)
Definition: ardour_ui.cc:1819
void show_loop_punch_ruler_and_disallow_hide()
void set_transport_sensitivity(bool)
Definition: ardour_ui2.cc:684
void disk_speed_dialog_gone(int ignored_response, Gtk::MessageDialog *)
Definition: ardour_ui.cc:4290
bool check_audioengine()
Definition: ardour_ui.cc:1705
void audition_blink(bool)
Definition: ardour_ui2.cc:626
boost::shared_ptr< TransportControllable > play_selection_controllable
Definition: ardour_ui.h:436
void toggle_use_mmc()
std::string load_template
Definition: opts.cc:49
boost::shared_ptr< TransportControllable > auto_loop_controllable
Definition: ardour_ui.h:435
bool feedback_alert_press(GdkEventButton *)
Definition: ardour_ui2.cc:559
int do_audio_midi_setup(uint32_t)
Definition: ardour_ui.cc:4734
Gtk::MenuItem * jack_disconnect_item
Definition: ardour_ui.h:719
void toggle_record_enable(uint32_t)
Definition: ardour_ui.cc:2270
void show_ui_prefs()
Definition: ardour_ui2.cc:724
ARDOUR::microseconds_t last_peak_grab
Definition: ardour_ui.h:699
void disk_underrun_handler()
Definition: ardour_ui.cc:4272
VisibilityGroup _status_bar_visibility
Definition: ardour_ui.h:774
Mixer_UI * the_mixer()
Definition: ardour_ui.h:192
void reset_main_clocks()
TransportControllable(std::string name, ARDOUR_UI &, ToggleType)
Definition: ardour_ui.cc:4517
void transport_loop()
bool solo_alert_press(GdkEventButton *ev)
Definition: ardour_ui2.cc:546
Gtk::MenuItem * cleanup_item
Definition: ardour_ui.h:689
void save_session_as()
Definition: ardour_ui.cc:2409
Gtk::Tooltips & tooltips()
Definition: ardour_ui.h:199
void show_about()
void audioengine_setup()
LIBARDOUR_API int cmp_nocase(const std::string &s, const std::string &s2)
void install_actions()
Definition: ardour_ui_ed.cc:94
bool have_disk_speed_dialog_displayed
Definition: ardour_ui.h:702
WM::Proxy< ExportVideoDialog > export_video_dialog
Definition: ardour_ui.h:647
Definition: nsm.h:24
void remove_video()
Definition: ardour_ui.cc:3997
void transport_numpad_decimal()
Definition: ardour_ui.cc:4760
ArdourDialog * session_selector_window
Definition: ardour_ui.h:521
bool _feedback_exists
Definition: ardour_ui.h:787
void hide_splash()
Definition: ardour_ui.cc:3382
void halt_on_xrun_message()
Definition: ardour_ui.cc:4116
void loading_message(const std::string &msg)
Definition: ardour_ui.cc:3354
void toggle_editor_mixer()
Gtk::Frame transport_frame
Definition: ardour_ui.h:396
WM::Proxy< AddRouteDialog > add_route_dialog
Definition: ardour_ui.h:642
boost::shared_ptr< TransportControllable > stop_controllable
Definition: ardour_ui.h:432
ArdourButton error_alert_button
Definition: ardour_ui.h:467
void transport_goto_end()
Definition: ardour_ui.cc:1947
Gtk::VBox transport_clock_vbox
Definition: ardour_ui.h:408
bool editor_meter_peak_button_release(GdkEventButton *)
void launch_website_dev()
Definition: ardour_ui.cc:3336
WM::Proxy< SpeakerDialog > speaker_config_window
Definition: ardour_ui.h:639
void feedback_blink(bool)
Definition: ardour_ui2.cc:644
bool _session_is_new
Definition: ardour_ui.h:614
void edit_metadata()
Definition: ardour_ui.cc:2733
void primary_clock_value_changed()
Definition: ardour_ui.cc:2652
void sync_blink(bool)
Definition: ardour_ui2.cc:603
sigc::connection _numpad_timeout_connection
Definition: ardour_ui.h:596
void transport_stop()
Definition: ardour_ui.cc:1964
void feedback_detected()
Definition: ardour_ui.cc:4668
ArdourButton auditioning_alert_button
Definition: ardour_ui.h:464
void error_blink(bool)
Definition: ardour_ui2.cc:658
bool first_idle()
Definition: ardour_ui.cc:4484
void add_routes_thread()
gint configure_timeout()
Definition: ardour_ui.cc:610
ArdourButton play_selection_button
Definition: ardour_ui.h:449
WM::Proxy< About > about
Definition: ardour_ui.h:643
Mixer_UI * mixer
Definition: ardour_ui.h:335
void session_add_audio_bus(int input_channels, int32_t output_channels, ARDOUR::RouteGroup *route_group, uint32_t how_many, std::string const &name_template)
Definition: ardour_ui.h:268
void transport_goto_wallclock()
Definition: ardour_ui.cc:1912
Gtk::TreeModelColumn< std::string > tip
Definition: ardour_ui.h:513
Gtk::Label xrun_label
Definition: ardour_ui.h:555
ArdourButton auto_return_button
Definition: ardour_ui.h:458
void blink_handler(bool)
Definition: ardour_ui.cc:2353
static sigc::signal< void > CloseAllDialogs
Definition: ardour_ui.h:213
void toggle_keep_tearoffs()
void setup_session_options()
Glib::RefPtr< Gtk::ActionGroup > common_actions
Definition: ardour_ui.h:723
bool status_bar_button_press(GdkEventButton *)
Definition: ardour_ui2.cc:154
bool get_smart_mode() const
Definition: ardour_ui.cc:2097
std::vector< std::string > positional_sync_strings
Definition: ardour_ui.h:727
bool session_loaded
Definition: ardour_ui.h:168
WM::Proxy< KeyEditor > key_editor
Definition: ardour_ui.h:640
bool have_configure_timeout
Definition: ardour_ui.h:695
void redisplay_recent_sessions()
Definition: ardour_ui.cc:1530
void setup_clock()
void count_recenabled_streams(ARDOUR::Route &)
Definition: ardour_ui.cc:1417
Gtk::MenuBar * menu_bar
Definition: ardour_ui.h:536
ArdourButton stop_button
Definition: ardour_ui.h:445
bool ignore_dual_punch
Definition: ardour_ui.h:321
Definition: xml++.h:95
bool ask_about_loading_existing_session(const std::string &session_path)
Definition: ardour_ui.cc:2750
void handle_locations_change(ARDOUR::Location *)
void maximise_editing_space()
Definition: ardour_ui2.cc:708
static UIConfiguration * config()
Definition: ardour_ui.h:188
void launch_cheat_sheet()
Definition: ardour_ui.cc:3320
PBD::ScopedConnectionList forever_connections
Definition: ardour_ui.h:755
WM::Proxy< RCOptionEditor > rc_option_editor
Definition: ardour_ui.h:641
Gtk::TreeView recent_session_display
Definition: ardour_ui.h:518
void fontconfig_dialog()
void update_sample_rate(ARDOUR::framecnt_t)
Definition: ardour_ui.cc:1263
void toggle_auto_play()
void session_dialog(std::string)
Definition: ardour_ui.cc:4297
void engine_halted(const char *reason, bool free_reason)
Definition: ardour_ui.cc:448
void cancel_plugin_timeout()
Definition: ardour_ui.cc:4172
int setup_windows()
Definition: ardour_ui2.cc:70
boost::shared_ptr< TransportControllable > rec_controllable
Definition: ardour_ui.h:437
void toggle_punch_out()
Gtkmm2ext::TearOff * transport_tearoff
Definition: ardour_ui.h:395
void session_add_mixed_track(const ARDOUR::ChanCount &input, const ARDOUR::ChanCount &output, ARDOUR::RouteGroup *route_group, uint32_t how_many, std::string const &name_template, ARDOUR::PluginInfoPtr instrument)
Definition: ardour_ui.cc:1789
video-timline controller and display
void toggle_time_master()
std::string session_name
Definition: opts.cc:34
ARDOUR::ProcessThread * _process_thread
Definition: ardour_ui.h:779
bool _numpad_locate_happening
Definition: ardour_ui.h:593
void set_session(ARDOUR::Session *)
ArdourButton auto_input_button
Definition: ardour_ui.h:460
void update_disk_space()
Definition: ardour_ui.cc:1426
Gtk::TreeModelColumn< std::string > fullpath
Definition: ardour_ui.h:514
void set_shuttle_fract(double)
void transport_numpad_event(int num)
Definition: ardour_ui.cc:4775
ArdourButton sync_button
Definition: ardour_ui.h:462
void add_routes_part_two()
static sigc::signal< void, framepos_t, bool, framepos_t > Clock
Definition: ardour_ui.h:210
void update_autosave()
Definition: ardour_ui.cc:730
void store_clock_modes()
Definition: ardour_ui.cc:4499
void parameter_changed(std::string)
BigClockWindow * create_big_clock_window()
Gtk::FileChooserDialog * open_session_selector
Definition: ardour_ui.h:522
void transport_rewind(int option)
Definition: ardour_ui.cc:2216
void update_clocks()
Definition: ardour_ui.cc:2364
Gtk::VBox alert_box
Definition: ardour_ui.h:469
PublicEditor * editor
Definition: ardour_ui.h:334
AudioClock * big_clock
Definition: ardour_ui.h:232
void every_point_zero_something_seconds()
Definition: ardour_ui.cc:1216
void toggle_editing_space()
WM::Proxy< RouteParams_UI > route_params
Definition: ardour_ui.h:645
void toggle_auto_input()
void toggle_rc_options_window()
ArdourButton editor_meter_peak_display
Definition: ardour_ui.h:473
Gtk::Tooltips _tooltips
Definition: ardour_ui.h:336
void session_add_audio_track(int input_channels, int32_t output_channels, ARDOUR::TrackMode mode, ARDOUR::RouteGroup *route_group, uint32_t how_many, std::string const &name_template)
Definition: ardour_ui.h:256
void solo_blink(bool)
Definition: ardour_ui2.cc:585
void engine_running()
Definition: ardour_ui.cc:430
int missing_file(ARDOUR::Session *s, std::string str, ARDOUR::DataType type)
Definition: ardour_ui.cc:4619
XMLNode * keyboard_settings() const
Definition: ardour_ui.cc:4093
void toggle_send_mmc()
sigc::connection point_zero_something_second_connection
Definition: ardour_ui.h:573
static float ui_scale
Definition: ardour_ui.h:189
Gtk::Label cpu_load_label
Definition: ardour_ui.h:552
void open_recent_session()
Definition: ardour_ui.cc:1653
gint update_wall_clock()
Definition: ardour_ui.cc:1511
int disconnect_from_engine()
Definition: ardour_ui.cc:4382
void drop_process_buffers()
Definition: ardour_ui.cc:4662
void resize_text_widgets()
int build_session(const std::string &path, const std::string &snapshot, ARDOUR::BusProfile &)
Definition: ardour_ui.cc:3226
void toggle_session_auto_loop()
Definition: ardour_ui.cc:2163
void platform_specific()
Definition: cocoacarbon.mm:45
Gtk::HBox secondary_clock_hbox
Definition: ardour_ui.h:410
Glib::RefPtr< Gtk::TreeStore > recent_session_model
Definition: ardour_ui.h:519
void toggle_session_options_window()
LevelMeterHBox * editor_meter
Definition: ardour_ui.h:471
void hide_about()
bool trx_record_enable_all_tracks()
Definition: ardour_ui.cc:1982
void snapshot_session(bool switch_to_it)
Definition: ardour_ui.cc:2479
int starting()
Definition: ardour_ui.cc:777
ARDOUR::microseconds_t last_shuttle_request
Definition: ardour_ui.h:700
int _pending_locate_num
Definition: ardour_ui.h:594
sigc::connection _autosave_connection
Definition: ardour_ui.h:362
ArdourButton click_button
Definition: ardour_ui.h:461
boost::shared_ptr< TransportControllable > goto_start_controllable
Definition: ardour_ui.h:433
void update_tearoff_visibility()
Definition: ardour_ui2.cc:700
std::string name() const
Definition: controllable.h:99
int save_state_canfail(std::string state_name="", bool switch_to_it=false)
Definition: ardour_ui.cc:2633
int64_t framepos_t
int ask_about_saving_session(const std::vector< std::string > &actions)
Definition: ardour_ui.cc:1118
void set_fps_timeout_connection()
Definition: ardour_ui.cc:1231
void update_cpu_load()
Definition: ardour_ui.cc:1374
WM::ProxyWithConstructor< AddVideoDialog > add_video_dialog
Definition: ardour_ui.h:652
uint64_t microseconds_t
Definition: types.h:60
ARDOUR::microseconds_t last_configure_time
Definition: ardour_ui.h:696
void launch_tracker()
Definition: ardour_ui.cc:3308
void add_route(Gtk::Window *float_window)
Definition: ardour_ui.cc:3660
Gtk::VBox top_packer
Definition: ardour_ui.h:375
ARDOUR::Session * _session
void restore_editing_space()
Definition: ardour_ui2.cc:716
void get_process_buffers()
Definition: ardour_ui.cc:4655
void synchronize_sync_source_and_video_pullup()
void open_session()
Definition: ardour_ui.cc:1720
Gtk::HBox _editor_transport_box
Definition: ardour_ui.h:398
Editing of options which are obtained from and written back to one of the .rc files.
void add_video(Gtk::Window *float_window)
Definition: ardour_ui.cc:3881
Gtk::Label wall_clock_label
Definition: ardour_ui.h:543
int32_t do_engine_start()
boost::shared_ptr< TransportControllable > goto_end_controllable
Definition: ardour_ui.h:434
guint32 last_key_press_time
Definition: ardour_ui.h:621
void _auditioning_changed(bool)
Definition: ardour_ui2.cc:524
void focus_on_clock()
Gtk::Label timecode_format_label
Definition: ardour_ui.h:549
Gtk::HBox transport_tearoff_hbox
Definition: ardour_ui.h:397
void reset_route_peak_display(ARDOUR::Route *)
Definition: ardour_ui.cc:4725
Gtk::Label sample_rate_label
Definition: ardour_ui.h:561
ShuttleControl * shuttle_box
Definition: ardour_ui.h:456
void load_from_application_api(const std::string &path)
Definition: ardour_ui.cc:2826
void toggle_mixer_space()
XMLNode & get_transport_controllable_state()
Definition: ardour_ui.cc:674
void plugin_scan_timeout(int)
Definition: ardour_ui.cc:4179
bool main_window_state_event_handler(GdkEventWindowState *, bool window_was_editor)
void transport_play_preroll()
Definition: ardour_ui.cc:2207
void toggle_send_mtc()
ArdourButton rec_button
Definition: ardour_ui.h:450
void save_template()
Definition: ardour_ui.cc:2703
void check_announcements()
Definition: ardour_ui.cc:750
Gtk::HBox menu_hbox
Definition: ardour_ui.h:538
void attach_to_engine()
Definition: ardour_ui.cc:415