diff options
author | Nick Mainsbridge <beatroute@iprimus.com.au> | 2005-12-06 15:14:37 +0000 |
---|---|---|
committer | Nick Mainsbridge <beatroute@iprimus.com.au> | 2005-12-06 15:14:37 +0000 |
commit | f04aa5e49a1633f6cf39b8bb1872725332370b52 (patch) | |
tree | 3d9fccb9fdcc93e31304dc4892939d85712af28f | |
parent | 857f1163d4054ea66a7281deabdf771c03dcad42 (diff) |
some treeview headings and session click fix
git-svn-id: svn://localhost/trunk/ardour2@174 d708f5d6-7413-0410-9779-e7cbd77b26cf
-rw-r--r-- | gtk2_ardour/editor.cc | 13 | ||||
-rw-r--r-- | gtk2_ardour/editor_route_list.cc | 4 | ||||
-rw-r--r-- | libs/ardour/session_click.cc | 11 |
3 files changed, 20 insertions, 8 deletions
diff --git a/gtk2_ardour/editor.cc b/gtk2_ardour/editor.cc index 3c49e8a14e..099ee43cb2 100644 --- a/gtk2_ardour/editor.cc +++ b/gtk2_ardour/editor.cc @@ -532,11 +532,13 @@ Editor::Editor (AudioEngine& eng) edit_group_list.set_name ("MixerGroupList"); //edit_group_list.set_shadow_type (Gtk::SHADOW_IN); - route_list.set_headers_visible (false); - edit_group_list.set_reorderable (false); - edit_group_list.set_size_request (75, -1); + edit_group_list.columns_autosize (); edit_group_list.get_selection()->set_mode (Gtk::SELECTION_MULTIPLE); + edit_group_list.set_reorderable (false); + + edit_group_list.set_size_request (75, -1); + edit_group_list.set_headers_visible (true); edit_group_list_scroller.add (edit_group_list); edit_group_list_scroller.set_policy (Gtk::POLICY_AUTOMATIC, Gtk::POLICY_AUTOMATIC); @@ -616,11 +618,14 @@ Editor::Editor (AudioEngine& eng) named_selection_model = TreeStore::create (named_selection_columns); named_selection_display.set_model (named_selection_model); + named_selection_display.append_column (_("Chunks"), named_selection_columns.text); + named_selection_display.set_size_request (100, -1); named_selection_display.set_name ("RegionListDisplay"); + + named_selection_display.get_selection()->set_mode (Gtk::SELECTION_SINGLE); named_selection_display.set_size_request (100, -1); named_selection_display.set_headers_visible (true); named_selection_display.set_headers_clickable (true); - named_selection_display.get_selection()->set_mode (Gtk::SELECTION_SINGLE); named_selection_display.signal_button_press_event().connect (mem_fun(*this, &Editor::named_selection_display_button_press)); named_selection_display.get_selection()->signal_changed().connect (mem_fun (*this, &Editor::named_selection_display_selection_changed)); diff --git a/gtk2_ardour/editor_route_list.cc b/gtk2_ardour/editor_route_list.cc index d9bfc7e65f..5df85489b7 100644 --- a/gtk2_ardour/editor_route_list.cc +++ b/gtk2_ardour/editor_route_list.cc @@ -156,10 +156,10 @@ Editor::route_display_selection_changed () for (i = rows.begin(); i != rows.end(); ++i) { tv = (*i)[route_display_columns.tv]; if (selection->is_selected (i)) { - tv->set_marked_for_display (true); + tv->set_marked_for_display (false); } else { AudioTimeAxisView *atv; - tv->set_marked_for_display (false); + tv->set_marked_for_display (true); if ((atv = dynamic_cast<AudioTimeAxisView*>(tv)) != 0) { if (current_mixer_strip && &(atv->route()) == &(current_mixer_strip->route())) { // this will hide the mixer strip diff --git a/libs/ardour/session_click.cc b/libs/ardour/session_click.cc index d97d29cc18..250adfe4cc 100644 --- a/libs/ardour/session_click.cc +++ b/libs/ardour/session_click.cc @@ -95,15 +95,22 @@ Session::click (jack_nframes_t start, jack_nframes_t nframes, jack_nframes_t off clk = *i; next = i; ++next; - + if (clk->start < start) { internal_offset = 0; } else { internal_offset = clk->start - start; } + if (nframes < internal_offset) { + /* we've just located or something.. + effectively going backwards. + lets get the flock out of here */ + break; + } + copy = min (clk->duration - clk->offset, nframes - internal_offset); - + memcpy (buf + internal_offset, &clk->data[clk->offset], copy * sizeof (Sample)); clk->offset += copy; |