projects
/
ardour.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
destroy splash when hiding it to workaround odd bug on OS X where the window will...
[ardour.git]
/
gtk2_ardour
/
mixer_ui.h
diff --git
a/gtk2_ardour/mixer_ui.h
b/gtk2_ardour/mixer_ui.h
index ce7c02439de071ab45f8f8b2a7e5fdc00255025e..febc62b8ddbbaa25558a829e883b5434c287f81d 100644
(file)
--- a/
gtk2_ardour/mixer_ui.h
+++ b/
gtk2_ardour/mixer_ui.h
@@
-39,8
+39,8
@@
#include "ardour/ardour.h"
#include "ardour/session_handle.h"
#include "ardour/ardour.h"
#include "ardour/session_handle.h"
-#include "route_processor_selection.h"
#include "enums.h"
#include "enums.h"
+#include "mixer_actor.h"
namespace ARDOUR {
class Route;
namespace ARDOUR {
class Route;
@@
-52,13
+52,14
@@
class PluginSelector;
class MixerGroupTabs;
class MonitorSection;
class MixerGroupTabs;
class MonitorSection;
-class Mixer_UI : public Gtk::Window, public PBD::ScopedConnectionList, public ARDOUR::SessionHandlePtr
+class Mixer_UI : public Gtk::Window, public PBD::ScopedConnectionList, public ARDOUR::SessionHandlePtr
, public MixerActor
{
public:
{
public:
-
Mixer_UI
();
+
static Mixer_UI* instance
();
~Mixer_UI();
void set_session (ARDOUR::Session *);
~Mixer_UI();
void set_session (ARDOUR::Session *);
+ void track_editor_selection ();
PluginSelector* plugin_selector();
PluginSelector* plugin_selector();
@@
-80,10
+81,15
@@
class Mixer_UI : public Gtk::Window, public PBD::ScopedConnectionList, public AR
void toggle_auto_rebinding ();
void set_auto_rebinding(bool);
void toggle_auto_rebinding ();
void set_auto_rebinding(bool);
- RouteRedirectSelection& selection() { return _selection; }
MonitorSection* monitor_section() const { return _monitor_section; }
MonitorSection* monitor_section() const { return _monitor_section; }
+ protected:
+ void set_route_targets_for_operation ();
+
private:
private:
+ Mixer_UI ();
+ static Mixer_UI* _instance;
+
bool _visible;
Gtk::HBox global_hpacker;
bool _visible;
Gtk::HBox global_hpacker;
@@
-128,6
+134,8
@@
class Mixer_UI : public Gtk::Window, public PBD::ScopedConnectionList, public AR
void add_strip (ARDOUR::RouteList&);
void remove_strip (MixerStrip *);
void add_strip (ARDOUR::RouteList&);
void remove_strip (MixerStrip *);
+ MixerStrip* strip_by_route (boost::shared_ptr<ARDOUR::Route>);
+
void hide_all_strips (bool with_select);
void unselect_all_strips();
void select_all_strips ();
void hide_all_strips (bool with_select);
void unselect_all_strips();
void select_all_strips ();
@@
-142,8
+150,6
@@
class Mixer_UI : public Gtk::Window, public PBD::ScopedConnectionList, public AR
void strip_select_op (bool audiotrack, bool select);
void select_strip_op (MixerStrip*, bool select);
void strip_select_op (bool audiotrack, bool select);
void select_strip_op (MixerStrip*, bool select);
- void follow_strip_selection ();
-
gint start_updating ();
gint stop_updating ();
gint start_updating ();
gint stop_updating ();
@@
-187,8
+193,9
@@
class Mixer_UI : public Gtk::Window, public PBD::ScopedConnectionList, public AR
void disable_all_route_groups ();
void add_route_group (ARDOUR::RouteGroup *);
void route_groups_changed ();
void disable_all_route_groups ();
void add_route_group (ARDOUR::RouteGroup *);
void route_groups_changed ();
- void route_group_name_edit (const
Glib::ustring&, const Glib::u
string&);
+ void route_group_name_edit (const
std::string&, const std::
string&);
void route_group_row_change (const Gtk::TreeModel::Path& path,const Gtk::TreeModel::iterator& iter);
void route_group_row_change (const Gtk::TreeModel::Path& path,const Gtk::TreeModel::iterator& iter);
+ void route_group_row_deleted (Gtk::TreeModel::Path const &);
Gtk::Menu *track_menu;
void track_column_click (gint);
Gtk::Menu *track_menu;
void track_column_click (gint);
@@
-210,7
+217,7
@@
class Mixer_UI : public Gtk::Window, public PBD::ScopedConnectionList, public AR
add (strip);
}
Gtk::TreeModelColumn<bool> visible;
add (strip);
}
Gtk::TreeModelColumn<bool> visible;
- Gtk::TreeModelColumn<
Glib::u
string> text;
+ Gtk::TreeModelColumn<
std::
string> text;
Gtk::TreeModelColumn<boost::shared_ptr<ARDOUR::Route> > route;
Gtk::TreeModelColumn<MixerStrip*> strip;
};
Gtk::TreeModelColumn<boost::shared_ptr<ARDOUR::Route> > route;
Gtk::TreeModelColumn<MixerStrip*> strip;
};
@@
-222,7
+229,7
@@
class Mixer_UI : public Gtk::Window, public PBD::ScopedConnectionList, public AR
add (group);
}
Gtk::TreeModelColumn<bool> visible;
add (group);
}
Gtk::TreeModelColumn<bool> visible;
- Gtk::TreeModelColumn<
Glib::ustring>
text;
+ Gtk::TreeModelColumn<
std::string>
text;
Gtk::TreeModelColumn<ARDOUR::RouteGroup*> group;
};
Gtk::TreeModelColumn<ARDOUR::RouteGroup*> group;
};
@@
-240,8
+247,6
@@
class Mixer_UI : public Gtk::Window, public PBD::ScopedConnectionList, public AR
bool strip_button_release_event (GdkEventButton*, MixerStrip*);
bool strip_button_release_event (GdkEventButton*, MixerStrip*);
- RouteRedirectSelection _selection;
-
Width _strip_width;
void sync_order_keys (std::string const &);
Width _strip_width;
void sync_order_keys (std::string const &);
@@
-252,10
+257,26
@@
class Mixer_UI : public Gtk::Window, public PBD::ScopedConnectionList, public AR
void parameter_changed (std::string const &);
void set_route_group_activation (ARDOUR::RouteGroup *, bool);
void parameter_changed (std::string const &);
void set_route_group_activation (ARDOUR::RouteGroup *, bool);
+ void setup_track_display ();
+ void new_track_or_bus ();
+
static const int32_t default_width = 478;
static const int32_t default_height = 765;
static const int32_t default_width = 478;
static const int32_t default_height = 765;
+ /** true if we are rebuilding the route group list, or clearing
+ it during a session teardown.
+ */
+ bool _in_group_rebuild_or_clear;
+
+ void update_title ();
+ MixerStrip* strip_by_x (int x);
+
friend class MixerGroupTabs;
friend class MixerGroupTabs;
+
+ void follow_editor_selection ();
+ bool _following_editor_selection;
+
+ void monitor_section_going_away ();
};
#endif /* __ardour_mixer_ui_h__ */
};
#endif /* __ardour_mixer_ui_h__ */