From 0d035c70f2f1bcbd3d0316a3bbde833076c6d656 Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Thu, 16 Nov 2006 19:34:57 +0000 Subject: [PATCH] small changes to the mixer strip from thorwil git-svn-id: svn://localhost/ardour2/trunk@1135 d708f5d6-7413-0410-9779-e7cbd77b26cf --- gtk2_ardour/icons/strip_width.png | Bin 0 -> 256 bytes gtk2_ardour/mixer_strip.cc | 19 +++++++++++++++++- gtk2_ardour/mixer_strip.h | 1 + gtk2_ardour/mixer_ui.cc | 4 ++-- gtk2_ardour/time_axis_view.cc | 31 +++++++++++++++++------------- 5 files changed, 39 insertions(+), 16 deletions(-) create mode 100644 gtk2_ardour/icons/strip_width.png diff --git a/gtk2_ardour/icons/strip_width.png b/gtk2_ardour/icons/strip_width.png new file mode 100644 index 0000000000000000000000000000000000000000..99a0e727972c191c5f435f25da003ab9bf6a6038 GIT binary patch literal 256 zcmeAS@N?(olHy`uVBq!ia0vp^JV4CJ!3HGRcAO0XQY`6?zK#qG8~eHcB(j1e3p^r= z85sEH0PzvV(r+z|Ktc8rPhVH|Yux-o%(4ZYHWz_Hk|nMYCC>S|xv6<249-QVi6yBi z3gww484B*6z5(HleBwYwS)MMAArhBc`!Dh~DDb$%_dY%;bMA=DhWNh|9tHa5I90Wj zPe0sn%2>UCq4time;Rv1`5B!CCB|U(WCu~^`l`uWSQ!kA@5D~r9duw rt comment_window = 0; comment_area = 0; - width_button.add (*(manage (new Gtk::Image (get_xpm("lr.xpm"))))); + width_button.add (*(manage (new Gtk::Image (::get_icon("strip_width"))))); hide_button.add (*(manage (new Gtk::Image (::get_icon("hide"))))); input_label.set_text (_("Input")); @@ -260,6 +262,21 @@ MixerStrip::MixerStrip (Mixer_UI& mx, Session& sess, boost::shared_ptr rt global_vpacker.pack_start (output_button, Gtk::PACK_SHRINK); global_vpacker.pack_start (comment_button, Gtk::PACK_SHRINK); + if (route()->master() || route()->control()) { + + if (scrollbar_height == 0) { + HScrollbar scrollbar; + Gtk::Requisition requisition; + scrollbar.size_request (requisition); + scrollbar_height = requisition.height; + cerr << "scrollbar height = " << scrollbar_height << endl; + } + + EventBox* spacer = manage (new EventBox); + spacer->set_size_request (-1, scrollbar_height); + global_vpacker.pack_start (*spacer, false, false); + } + global_frame.add (global_vpacker); global_frame.set_shadow_type (Gtk::SHADOW_IN); global_frame.set_name ("BaseFrame"); diff --git a/gtk2_ardour/mixer_strip.h b/gtk2_ardour/mixer_strip.h index 5472778c17..92da4c13fe 100644 --- a/gtk2_ardour/mixer_strip.h +++ b/gtk2_ardour/mixer_strip.h @@ -246,6 +246,7 @@ class MixerStrip : public RouteUI, public Gtk::EventBox void engine_running(); void engine_stopped(); + static int scrollbar_height; }; #endif /* __ardour_mixer_strip__ */ diff --git a/gtk2_ardour/mixer_ui.cc b/gtk2_ardour/mixer_ui.cc index ff3f7eb25f..d8e5fc6988 100644 --- a/gtk2_ardour/mixer_ui.cc +++ b/gtk2_ardour/mixer_ui.cc @@ -76,7 +76,7 @@ Mixer_UI::Mixer_UI (AudioEngine& eng) strip_packer.pack_end (scroller_base, true, true); scroller.add (strip_packer); - scroller.set_policy (Gtk::POLICY_AUTOMATIC, Gtk::POLICY_AUTOMATIC); + scroller.set_policy (Gtk::POLICY_ALWAYS, Gtk::POLICY_AUTOMATIC); track_model = ListStore::create (track_columns); track_display.set_model (track_model); @@ -185,7 +185,7 @@ Mixer_UI::Mixer_UI (AudioEngine& eng) list_vpacker.pack_start (rhs_pane1, true, true); global_hpacker.pack_start (scroller, true, true); - global_hpacker.pack_start (out_packer, false, false); + global_hpacker.pack_start (out_packer, false, false, 12); list_hpane.add1(list_vpacker); list_hpane.add2(global_hpacker); diff --git a/gtk2_ardour/time_axis_view.cc b/gtk2_ardour/time_axis_view.cc index da7d3863d7..17a011baa7 100644 --- a/gtk2_ardour/time_axis_view.cc +++ b/gtk2_ardour/time_axis_view.cc @@ -393,23 +393,28 @@ TimeAxisView::name_entry_key_release (GdkEventKey* ev) allviews = editor.get_valid_views (0); if (allviews != 0) { i = find (allviews->begin(), allviews->end(), this); - if (i != allviews->end()) { - do { - if(ev->keyval == GDK_Tab) { - if(++i == allviews->end()) { return true; } - } else { - if(i-- == allviews->begin()) { return true; } - } - } while((*i)->hidden()); - - if((*i)->height_style == Small) { - (*i)->set_height(Smaller); + if (ev->keyval == GDK_Tab) { + if (i != allviews->end()) { + do { + if (++i == allviews->end()) { return true; } + } while((*i)->hidden()); + } + } else { + if (i != allviews->begin()) { + do { + if (--i == allviews->begin()) { return true; } + } while ((*i)->hidden()); } - - (*i)->name_entry.grab_focus(); } + + if ((*i)->height_style == Small) { + (*i)->set_height(Smaller); + } + + (*i)->name_entry.grab_focus(); } return true; + case GDK_Up: case GDK_Down: name_entry_changed ();