projects
/
ardour.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
run bundle fixup code for all platforms
[ardour.git]
/
gtk2_ardour
/
editor.cc
diff --git
a/gtk2_ardour/editor.cc
b/gtk2_ardour/editor.cc
index 931196115f16bd4f109df5ef2f1fb13a063db67f..864e2eab272e260a0f84ccfa6fa1301b7d4e8bb3 100644
(file)
--- a/
gtk2_ardour/editor.cc
+++ b/
gtk2_ardour/editor.cc
@@
-485,7
+485,6
@@
Editor::Editor ()
controls_layout.add_events (Gdk::BUTTON_PRESS_MASK|Gdk::BUTTON_RELEASE_MASK|Gdk::ENTER_NOTIFY_MASK|Gdk::LEAVE_NOTIFY_MASK);
controls_layout.signal_button_release_event().connect (sigc::mem_fun(*this, &Editor::edit_controls_button_release));
controls_layout.add_events (Gdk::BUTTON_PRESS_MASK|Gdk::BUTTON_RELEASE_MASK|Gdk::ENTER_NOTIFY_MASK|Gdk::LEAVE_NOTIFY_MASK);
controls_layout.signal_button_release_event().connect (sigc::mem_fun(*this, &Editor::edit_controls_button_release));
- controls_layout_size_request_connection = controls_layout.signal_size_request().connect (sigc::mem_fun (*this, &Editor::controls_layout_size_request));
_cursors = new MouseCursors;
_cursors = new MouseCursors;
@@
-1524,16
+1523,18
@@
Editor::build_track_region_context_menu ()
region_edit_menu_split_item = 0;
region_edit_menu_split_multichannel_item = 0;
region_edit_menu_split_item = 0;
region_edit_menu_split_multichannel_item = 0;
+ /* we might try to use items that are currently attached to a crossfade menu,
+ so clear that, too.
+ */
+ track_crossfade_context_menu.items().clear ();
+
RouteTimeAxisView* rtv = dynamic_cast<RouteTimeAxisView*> (clicked_axisview);
if (rtv) {
boost::shared_ptr<Track> tr;
boost::shared_ptr<Playlist> pl;
RouteTimeAxisView* rtv = dynamic_cast<RouteTimeAxisView*> (clicked_axisview);
if (rtv) {
boost::shared_ptr<Track> tr;
boost::shared_ptr<Playlist> pl;
- /* Don't offer a region submenu if we are in internal edit mode, as we don't select regions in this
- mode and so offering region context is somewhat confusing.
- */
- if ((tr = rtv->track()) && ((pl = tr->playlist())) && !internal_editing()) {
+ if ((tr = rtv->track()) && ((pl = tr->playlist()))) {
framepos_t const framepos = (framepos_t) floor ((double) get_preferred_edit_position() * tr->speed());
uint32_t regions_at = pl->count_regions_at (framepos);
add_region_context_items (edit_items, regions_at > 1);
framepos_t const framepos = (framepos_t) floor ((double) get_preferred_edit_position() * tr->speed());
uint32_t regions_at = pl->count_regions_at (framepos);
add_region_context_items (edit_items, regions_at > 1);
@@
-1552,6
+1553,11
@@
Editor::build_track_crossfade_context_menu ()
MenuList& edit_items = track_crossfade_context_menu.items();
edit_items.clear ();
MenuList& edit_items = track_crossfade_context_menu.items();
edit_items.clear ();
+ /* we might try to use items that are currently attached to a crossfade menu,
+ so clear that, too.
+ */
+ track_region_context_menu.items().clear ();
+
AudioTimeAxisView* atv = dynamic_cast<AudioTimeAxisView*> (clicked_axisview);
if (atv) {
AudioTimeAxisView* atv = dynamic_cast<AudioTimeAxisView*> (clicked_axisview);
if (atv) {
@@
-1716,7
+1722,7
@@
Editor::add_region_context_items (Menu_Helpers::MenuList& edit_items, bool multi
}
if (_popup_region_menu_item == 0) {
}
if (_popup_region_menu_item == 0) {
- _popup_region_menu_item =
new MenuItem (menu_item_name
);
+ _popup_region_menu_item =
manage (new MenuItem (menu_item_name)
);
_popup_region_menu_item->set_submenu (*dynamic_cast<Menu*> (ActionManager::get_widget (X_("/PopupRegionMenu"))));
_popup_region_menu_item->show ();
} else {
_popup_region_menu_item->set_submenu (*dynamic_cast<Menu*> (ActionManager::get_widget (X_("/PopupRegionMenu"))));
_popup_region_menu_item->show ();
} else {
@@
-2107,9
+2113,9
@@
Editor::set_state (const XMLNode& node, int /*version*/)
}
}
}
}
- set_default_size (g.base_width, g.base_height);
+
//
set_default_size (g.base_width, g.base_height);
move (x, y);
move (x, y);
-
+
if (_session && (prop = node.property ("playhead"))) {
framepos_t pos;
sscanf (prop->value().c_str(), "%" PRIi64, &pos);
if (_session && (prop = node.property ("playhead"))) {
framepos_t pos;
sscanf (prop->value().c_str(), "%" PRIi64, &pos);
@@
-4809,6
+4815,12
@@
Editor::region_view_added (RegionView *)
_summary->set_dirty ();
}
_summary->set_dirty ();
}
+void
+Editor::region_view_removed ()
+{
+ _summary->set_dirty ();
+}
+
TimeAxisView*
Editor::axis_view_from_route (boost::shared_ptr<Route> r) const
{
TimeAxisView*
Editor::axis_view_from_route (boost::shared_ptr<Route> r) const
{
@@
-4849,6
+4861,8
@@
Editor::handle_new_route (RouteList& routes)
RouteTimeAxisView *rtv;
list<RouteTimeAxisView*> new_views;
RouteTimeAxisView *rtv;
list<RouteTimeAxisView*> new_views;
+ cerr << "Handle new route\n";
+
for (RouteList::iterator x = routes.begin(); x != routes.end(); ++x) {
boost::shared_ptr<Route> route = (*x);
for (RouteList::iterator x = routes.begin(); x != routes.end(); ++x) {
boost::shared_ptr<Route> route = (*x);
@@
-4872,6
+4886,7
@@
Editor::handle_new_route (RouteList& routes)
rtv->effective_gain_display ();
rtv->view()->RegionViewAdded.connect (sigc::mem_fun (*this, &Editor::region_view_added));
rtv->effective_gain_display ();
rtv->view()->RegionViewAdded.connect (sigc::mem_fun (*this, &Editor::region_view_added));
+ rtv->view()->RegionViewRemoved.connect (sigc::mem_fun (*this, &Editor::region_view_removed));
}
_routes->routes_added (new_views);
}
_routes->routes_added (new_views);
@@
-5473,3
+5488,4
@@
Editor::notebook_tab_clicked (GdkEventButton* ev, Gtk::Widget* page)
return true;
}
return true;
}
+