From 2f4a7917de6c6c72f388ce7a79052d3a0cc400a2 Mon Sep 17 00:00:00 2001 From: Nick Mainsbridge Date: Mon, 13 Oct 2008 01:56:42 +0000 Subject: [PATCH] Fit tracks fix from 2.0, don't crash if some env vars aren't set, remove some conflicts from mnemonic-us.bindings.in. git-svn-id: svn://localhost/ardour2/branches/3.0@3943 d708f5d6-7413-0410-9779-e7cbd77b26cf --- gtk2_ardour/editor_ops.cc | 8 ++++++-- gtk2_ardour/mnemonic-us.bindings.in | 8 -------- gtk2_ardour/port_matrix.cc | 19 ++++++++++++++++--- 3 files changed, 22 insertions(+), 13 deletions(-) diff --git a/gtk2_ardour/editor_ops.cc b/gtk2_ardour/editor_ops.cc index f974792d50..723e4e550c 100644 --- a/gtk2_ardour/editor_ops.cc +++ b/gtk2_ardour/editor_ops.cc @@ -6105,7 +6105,7 @@ Editor::fit_tracks () child_heights += ((*t)->effective_height - (*t)->current_height()); } - uint32_t h = (uint32_t) floor ((canvas_height - child_heights)/selection->tracks.size()); + uint32_t h = (uint32_t) floor ((canvas_height - child_heights - canvas_timebars_vsize)/selection->tracks.size()); double first_y_pos = DBL_MAX; undo_visual_stack.push_back (current_visual_state()); @@ -6114,7 +6114,11 @@ Editor::fit_tracks () (*t)->set_height (h); first_y_pos = std::min ((*t)->y_position, first_y_pos); } - + /* + set the controls_layout height now, because waiting for its size + request signal handler will cause the vertical adjustment setting to fail + */ + controls_layout.property_height () = full_canvas_height - canvas_timebars_vsize; vertical_adjustment.set_value (first_y_pos); redo_visual_stack.push_back (current_visual_state()); diff --git a/gtk2_ardour/mnemonic-us.bindings.in b/gtk2_ardour/mnemonic-us.bindings.in index 257e0131f0..4a29f85fb0 100644 --- a/gtk2_ardour/mnemonic-us.bindings.in +++ b/gtk2_ardour/mnemonic-us.bindings.in @@ -93,20 +93,12 @@ ;; HOME ROW -<<<<<<< .working -(gtk_accel_path "/Editor/zoom-to-region" "<%SECONDARY%>z") -======= (gtk_accel_path "/Editor/zoom-to-region" "<%PRIMARY%><%SECONDARY%>z") (gtk_accel_path "/Editor/zoom-to-region-both-axes" "<%SECONDARY%>z") ->>>>>>> .merge-right.r3622 (gtk_accel_path "/Editor/undo" "<%PRIMARY%>z") (gtk_accel_path "/Editor/toggle-zoom" "<%TERTIARY%>z") -<<<<<<< .working (gtk_accel_path "/MouseMode/set-mouse-mode-zoom" "z") (gtk_accel_path "/MouseMode/set-mouse-mode-note" "n") -======= -(gtk_accel_path "/MouseMode/set-mouse-mode-zoom" "z") ->>>>>>> .merge-right.r3622 (gtk_accel_path "/Editor/editor-cut" "<%PRIMARY%>x") (gtk_accel_path "/Editor/editor-copy" "<%PRIMARY%>c") (gtk_accel_path "/Common/ToggleColorManager" "<%WINDOW%>c") diff --git a/gtk2_ardour/port_matrix.cc b/gtk2_ardour/port_matrix.cc index 6ac7707002..cff4a3328e 100644 --- a/gtk2_ardour/port_matrix.cc +++ b/gtk2_ardour/port_matrix.cc @@ -252,7 +252,11 @@ RotatedLabelSet::RotatedLabelSet (PortGroupList& g) : Glib::ObjectBase ("RotatedLabelSet"), Widget (), _port_group_list (g), _base_width (128) { set_flags (NO_WINDOW); - set_angle (atoi (getenv ("AD_ANGLE"))); + if (getenv ("AD_ANGLE") != 0) { + set_angle (atoi (getenv ("AD_ANGLE"))); + } else { + set_angle (45); + } } RotatedLabelSet::~RotatedLabelSet () @@ -415,8 +419,17 @@ RotatedLabelSet::on_expose_event (GdkEventExpose* event) if ((*i)->visible) { for (uint32_t j = 0; j < (*i)->ports.size(); ++j) { std::pair const d = setup_layout ((*i)->ports[j]); - int x = atoi (getenv ("AD_X_SHIFT")); - int y = atoi (getenv ("AD_Y_SHIFT")); + int x, y; + if (getenv ("AD_X_SHIFT") != 0) { + x = atoi (getenv ("AD_X_SHIFT")); + } else { + x = 0; + } + if (getenv ("AD_Y_SHIFT") != 0) { + y = atoi (getenv ("AD_Y_SHIFT")); + } else { + y = 0; + } get_window()->draw_layout (_gc, int ((n + 0.25) * spacing) + x, height - d.second + y, _pango_layout, _fg_colour, _bg_colour); ++n; }