diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2008-02-12 16:55:11 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2008-02-12 16:55:11 +0000 |
commit | c241f36817b43e02baa4b164b603063d827e939f (patch) | |
tree | 57a19cdb29d3b7e1f0736896e61f43c6ebde5d8c | |
parent | 8bfbf5bda11fcdae12f28bf6fc6bca910aaec411 (diff) |
fix up compile issues; add new grabber_edit_point cursor
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@3040 d708f5d6-7413-0410-9779-e7cbd77b26cf
-rw-r--r-- | gtk2_ardour/audio_region_view.cc | 5 | ||||
-rw-r--r-- | gtk2_ardour/editor.cc | 16 | ||||
-rw-r--r-- | gtk2_ardour/editor.h | 1 | ||||
-rw-r--r-- | gtk2_ardour/editor_mouse.cc | 63 | ||||
-rw-r--r-- | gtk2_ardour/editor_ops.cc | 4 | ||||
-rw-r--r-- | gtk2_ardour/icons/grabber_edit_point.png | bin | 0 -> 543 bytes | |||
-rw-r--r-- | libs/ardour/audiosource.cc | 2 |
7 files changed, 56 insertions, 35 deletions
diff --git a/gtk2_ardour/audio_region_view.cc b/gtk2_ardour/audio_region_view.cc index ad4001b10c..d1b64b239b 100644 --- a/gtk2_ardour/audio_region_view.cc +++ b/gtk2_ardour/audio_region_view.cc @@ -772,8 +772,6 @@ AudioRegionView::create_waves () uint32_t nchans = atv.get_diskstream()->n_channels(); - cerr << "creating waves for " << _region->name() << " with wfd = " << wait_for_data << " and channels = " << nchans << endl; - /* in tmp_waves, set up null pointers for each channel so the vector is allocated */ for (uint32_t n = 0; n < nchans; ++n) { tmp_waves.push_back (0); @@ -789,16 +787,13 @@ AudioRegionView::create_waves () if (wait_for_data) { if (audio_region()->source(n)->peaks_ready (bind (mem_fun(*this, &AudioRegionView::peaks_ready_handler), n), data_ready_connection)) { - cerr << "\tData is ready\n"; create_one_wave (n, true); } else { - cerr << "\tdata is not ready\n"; // we'll get a PeaksReady signal from the source in the future // and will call create_one_wave(n) then. } } else { - cerr << "\tdon't delay, display today!\n"; create_one_wave (n, true); } diff --git a/gtk2_ardour/editor.cc b/gtk2_ardour/editor.cc index dfd560f467..b2a327c8c9 100644 --- a/gtk2_ardour/editor.cc +++ b/gtk2_ardour/editor.cc @@ -170,6 +170,7 @@ Gdk::Cursor* Editor::cross_hair_cursor = 0; Gdk::Cursor* Editor::selector_cursor = 0; Gdk::Cursor* Editor::trimmer_cursor = 0; Gdk::Cursor* Editor::grabber_cursor = 0; +Gdk::Cursor* Editor::grabber_edit_point_cursor = 0; Gdk::Cursor* Editor::zoom_cursor = 0; Gdk::Cursor* Editor::time_fx_cursor = 0; Gdk::Cursor* Editor::fader_cursor = 0; @@ -1305,21 +1306,14 @@ Editor::build_cursors () transparent_cursor = new Gdk::Cursor (bits, bits, c, c, 0, 0); } - Glib::RefPtr<Gdk::Pixbuf> grabber_edit_point_pixbuf (::get_icon ("grabber_edit_point")); grabber_cursor = new Gdk::Cursor (HAND2); -#ifdef GTKOSX { - - Glib::RefPtr<Gdk::Pixbuf> hand2 (grabber_cursor->get_image()); - hand2->save ("hand.png", "png"); + Glib::RefPtr<Gdk::Pixbuf> grabber_edit_point_pixbuf (::get_icon ("grabber_edit_point")); + grabber_edit_point_cursor = new Gdk::Cursor (Gdk::Display::get_default(), grabber_edit_point_pixbuf, 5, 17); } - - grabber_edit_point_cursor = new Gdk::Cursor (Gdk::Display::get_default(), grabber_edit_point_pixbuf); -#endif - cross_hair_cursor = new Gdk::Cursor (CROSSHAIR); trimmer_cursor = new Gdk::Cursor (SB_H_DOUBLE_ARROW); selector_cursor = new Gdk::Cursor (XTERM); @@ -2149,6 +2143,8 @@ Editor::set_edit_point_preference (EditPoint ep) edit_point_selector.set_active_text (str); } + set_canvas_cursor (); + if (!changed) { return; } @@ -2175,7 +2171,7 @@ Editor::set_edit_point_preference (EditPoint ep) break; } } - + instant_save (); } diff --git a/gtk2_ardour/editor.h b/gtk2_ardour/editor.h index c29239b1c1..4064b2b393 100644 --- a/gtk2_ardour/editor.h +++ b/gtk2_ardour/editor.h @@ -532,6 +532,7 @@ class Editor : public PublicEditor Gtk::VBox vpacker; Gdk::Cursor* current_canvas_cursor; + void set_canvas_cursor (); ArdourCanvas::CanvasAA track_canvas; ArdourCanvas::CanvasAA time_canvas; diff --git a/gtk2_ardour/editor_mouse.cc b/gtk2_ardour/editor_mouse.cc index df30834dff..e43b247fac 100644 --- a/gtk2_ardour/editor_mouse.cc +++ b/gtk2_ardour/editor_mouse.cc @@ -203,6 +203,47 @@ Editor::mouse_mode_toggled (MouseMode m) } void +Editor::set_canvas_cursor () +{ + switch (mouse_mode) { + case MouseRange: + current_canvas_cursor = selector_cursor; + break; + + case MouseObject: + switch (_edit_point) { + case EditAtMouse: + current_canvas_cursor = grabber_edit_point_cursor; + break; + default: + current_canvas_cursor = grabber_cursor; + break; + } + break; + + case MouseGain: + current_canvas_cursor = cross_hair_cursor; + break; + + case MouseZoom: + current_canvas_cursor = zoom_cursor; + break; + + case MouseTimeFX: + current_canvas_cursor = time_fx_cursor; // just use playhead + break; + + case MouseAudition: + current_canvas_cursor = speaker_cursor; + break; + } + + if (is_drawable()) { + track_canvas.get_window()->set_cursor(*current_canvas_cursor); + } +} + +void Editor::set_mouse_mode (MouseMode m, bool force) { if (drag_info.item) { @@ -253,44 +294,32 @@ Editor::set_mouse_mode (MouseMode m, bool force) switch (mouse_mode) { case MouseRange: mouse_select_button.set_active (true); - current_canvas_cursor = selector_cursor; break; case MouseObject: mouse_move_button.set_active (true); - if (Profile->get_sae()) { - current_canvas_cursor = timebar_cursor; - } else { - current_canvas_cursor = grabber_cursor; - } break; case MouseGain: mouse_gain_button.set_active (true); - current_canvas_cursor = cross_hair_cursor; break; case MouseZoom: mouse_zoom_button.set_active (true); - current_canvas_cursor = zoom_cursor; break; case MouseTimeFX: mouse_timefx_button.set_active (true); - current_canvas_cursor = time_fx_cursor; // just use playhead break; case MouseAudition: mouse_audition_button.set_active (true); - current_canvas_cursor = speaker_cursor; break; } ignore_mouse_mode_toggle = false; - - if (is_drawable()) { - track_canvas.get_window()->set_cursor(*current_canvas_cursor); - } + + set_canvas_cursor (); } void @@ -806,6 +835,7 @@ bool Editor::button_release_handler (ArdourCanvas::Item* item, GdkEvent* event, ItemType item_type) { nframes_t where = event_frame (event, 0, 0); + AutomationTimeAxisView* atv = 0; /* no action if we're recording */ @@ -1028,13 +1058,14 @@ Editor::button_release_handler (ArdourCanvas::Item* item, GdkEvent* event, ItemT case MouseObject: switch (item_type) { case AutomationTrackItem: - AutomationTimeAxisView* atv = dynamic_cast<AutomationTimeAxisView*>(clicked_trackview); + atv = dynamic_cast<AutomationTimeAxisView*>(clicked_trackview); if (atv) { atv->add_automation_event (item, event, where, event->button.y); } return true; + break; - + default: break; } diff --git a/gtk2_ardour/editor_ops.cc b/gtk2_ardour/editor_ops.cc index 92bb403166..a6437a2b7a 100644 --- a/gtk2_ardour/editor_ops.cc +++ b/gtk2_ardour/editor_ops.cc @@ -3066,7 +3066,7 @@ Editor::align (RegionPoint what) { RegionSelection rs; - get_regions_for_action (rs); + get_regions_for_action (rs, false); nframes64_t where = get_preferred_edit_position(); if (!rs.empty()) { @@ -3085,7 +3085,7 @@ Editor::align_relative (RegionPoint what) nframes64_t where = get_preferred_edit_position(); RegionSelection rs; - get_regions_for_action (rs); + get_regions_for_action (rs, false); if (!rs.empty()) { align_selection_relative (what, where, rs); diff --git a/gtk2_ardour/icons/grabber_edit_point.png b/gtk2_ardour/icons/grabber_edit_point.png Binary files differnew file mode 100644 index 0000000000..7bbfe03828 --- /dev/null +++ b/gtk2_ardour/icons/grabber_edit_point.png diff --git a/libs/ardour/audiosource.cc b/libs/ardour/audiosource.cc index 7c8801845a..d9e5f83bd1 100644 --- a/libs/ardour/audiosource.cc +++ b/libs/ardour/audiosource.cc @@ -142,8 +142,6 @@ AudioSource::peaks_ready (sigc::slot<void> the_slot, sigc::connection& conn) con connect the slot while still holding the lock. */ - cerr << _name << " @ " << this << " peaks built = " << _peaks_built << endl; - if (!(ret = _peaks_built)) { conn = PeaksReady.connect (the_slot); } |