Paul Davis
21c26c8688
replace old implementation of Editor::_ensure_time_axis_view_is_visible() with the guts of Editor::ensure_track_is_visible(), then remove the latter.
...
Also change all users of ensure_track_is_visible() to use _ensure_time_axis_view_is_visible()
2014-08-17 19:47:36 -04:00
Paul Davis
50c5ba16b8
add ability to save current action sensitivities and restore them, and to disable all action sensitivity.
...
This is needed to be able to lock the application fully on OS X, where the global menu bar would still allow interaction
even when a modal dialog is displayed.
Conflicts:
gtk2_ardour/editor.h
gtk2_ardour/editor_ops.cc
gtk2_ardour/verbose_cursor.cc
2014-08-17 19:45:04 -04:00
Robin Gareus
a17616f1da
move utility functions into a dedicated namespace
...
Conflicts:
gtk2_ardour/about.cc
gtk2_ardour/editor_ops.cc
2014-08-17 18:51:22 -04:00
Paul Davis
8473bd72e1
remove unused code
...
Conflicts:
gtk2_ardour/editor_ops.cc
2014-08-17 18:45:50 -04:00
Paul Davis
2e8f7c5c93
a set of inter-related subtle changes to get vertical autoscrolling to work, or at least work better.
2014-08-17 15:33:01 -04:00
Paul Davis
1776e12f26
remove header file includes of now-removed gtk custom ruler
2014-08-17 15:07:49 -04:00
Paul Davis
cd29e0b7cc
clamp zoom level to show 3 days on a 4000 pixel wide screen; comment unused variable for now
2014-08-17 15:05:53 -04:00
Paul Davis
c5152cfdb3
fix up fit-selected-tracks so that we are filling the trackview area, not the entire canvas (which now includes rulers)
2014-08-17 14:58:15 -04:00
Paul Davis
e8e3460665
more profound changes to canvas scrolling, in particular find appropriate ScrollGroup for Canvas::{window,canvas}_to_{canvas,window}()
...
Conflicts:
gtk2_ardour/editor_mouse.cc
2014-08-17 13:43:52 -04:00
Paul Davis
f945edded6
fix up operation of Editor::temporal_zoom_to_frame() which had not been updated since samples_per_pixel was changed to an integer (framecnt_t)
2014-08-16 17:21:02 -04:00
Robin Gareus
0c7b49423b
fixup freeze operation.
...
since rev. 1e3a955 , Session::write_one_track() gets and drops
thread buffers.
2014-08-16 17:16:12 -04:00
Colin Fletcher
75817e1000
Don't clear the clipboard when deleting things
...
Deleting regions (or ranges, or anything) shouldn't affect the contents of
the clipboard - only CutCopyOp::Copy, CutCopyOp::Cut and CutCopyOp::Clear
should do that.
2014-08-16 16:49:03 -04:00
Colin Fletcher
80f04cc298
Ripple mode: basic implementation
...
Add a value for Ripple to EditMode enum.
Add Ripple edit mode to edit mode dropdown, by adding it to the
Editor::build_edit_mode_menu() helper function, and remove the old code that
added items to the (now unused) Editor::edit_mode_strings.
Add the regions that should be affected by the drag to RegionDrag::_views so
that the drag carries them along automatically.
Use a copy of the RegionList in Playlist::core_ripple(), since bad things
happen when iterating over regions and they get moved around in the list.
Handle rippling in removal of regions from playlist.
When dragging in ripple mode, exclude all regions that lie before the
original start position of the selected regions being dragged from
rippling: this is what Mixbus does.
Make editor dragging respect snap-to settings, by using the existing
compute_x_delta() function, which did almost the right thing. Move setting
of _last_frame_position out of that function so all ripple-dragged regions
can move.
Ripple when dragging from region list: even though Mixbus doesn't do this, it
seems like a good idea.
Prevent multi-track selection being dragged across tracks, by making
RegionMotionDrag::y_movement_allowed() virtual, and overriding it in
RegionRippleDrag to forbid dragging of selections containing regions on more
than one track to dofferent tracks in ripple mode.
Remember which TimeAxisView a ripple-mode drag that's allowed cross-track
drags started from, so that the effect of rippling regions after any region
that's dragged off that track can be undone.
2014-08-16 16:36:03 -04:00
Paul Davis
e08ec37f69
"sequence regions" operation (remove space between selected regions) added, c/o Thomas Brand
2014-08-16 16:10:38 -04:00
GZharun
c61558b761
[Summary] Implemented correct behavior for Master Track in tracks list
...
[Details] Removed context menu item "Remove" for master track
Made master track unmovable in any case
2014-08-08 15:52:10 +03:00
nikolay
f28dcaa77f
[Summary] Implementation of the AUTO LOCK TIMER and minor improvement of session_lock_dialog
...
[Review] GZharun
2014-07-03 17:52:57 +03:00
Paul Davis
385629b8c3
add timer-based trigger for locking.
...
Also changed the lock dialog to be a normal Gtk::Dialog because ArdourDialog forwards events to the Editor.
Not sure if this is true for WavesDialog at present.
2014-06-25 08:37:10 -04:00
Paul Davis
47efec2898
add forgotten #include for actions
2014-06-25 08:13:04 -04:00
Paul Davis
c7e7940364
add Editor::lock() and Editor::unlock() and the to-be-replaced Lock dialog from Ardour
2014-06-25 08:00:11 -04:00
Valeriy Kamyshniy
706f89993a
[Summary] Making namespace WavesUI a class.
...
[git-p4: depot-paths = "//Abdaw/dev_main/tracks/": change = 466991]
2014-06-12 18:19:50 -04:00
Valeriy Kamyshniy
55db039027
[Summary] Changing temporal zoom fader to 2**SCALE form
...
[git-p4: depot-paths = "//Abdaw/dev_main/tracks/": change = 465286]
2014-06-03 20:24:01 -04:00
Valeriy Kamyshniy
39f09bc993
[Summary] Changing temporal zoom fader to 2**SCALE form
...
[git-p4: depot-paths = "//Abdaw/dev_main/tracks/": change = 465197]
2014-06-03 20:24:00 -04:00
Valeriy Kamyshniy
b25e95ef60
[Summary] Adding ZOOM TOOL actions.
...
[git-p4: depot-paths = "//Abdaw/dev_main/tracks/": change = 464697]
2014-06-03 20:24:00 -04:00
Grygorii Zharun
ce2a519afa
[Summary] Merging from GIT
...
[Details] Starting point:
Mar 24 2014, 11:47 PM
Commit: 87184ab80d
Target point:
Commit: 59e6694405
Apr 16 2014, 4:01 PM
[git-p4: depot-paths = "//Abdaw/dev_main/tracks/": change = 453690]
2014-04-18 04:21:54 -05:00
Valeriy Kamyshniy
516fb8ceff
[P4/git history rebuild] further changes related to this codebase missing Ardour canvas autoscroll commits. Hopefully to be undone later by commits from a merge by Paul and Grygorii. Also more questionable replacement of Stock:: items with fixed strings
2014-05-27 21:20:42 -04:00
Paul Davis
65b4308c84
first pass at quantizing vertical scroll to whole tracks.
...
Dragging regions vertically does the quantization BUT speed control is lacking and the region ends up on
a track that is still invisible ... to be fixed as the sun rises.
2014-03-21 07:02:32 -04:00
Paul Davis
977f2b35df
severe rationalization (still incomplete) of behaviour of cut + copy.
...
Quite a bit more to do here to make this as intuitive as it ought to be.
2014-02-26 10:51:38 -05:00
Paul Davis
c04285addf
convert canvas_event_frame() and window_event_frame() to canvas_event_sample() and window_event_sample() to go along with the convention adopted in cairocanvas code re: frames+samples
2014-02-26 08:43:53 -05:00
Paul Davis
3020b224fa
Merge windows+cc branch into cairocanvas branch. Not finished, need to now merge windows branch to get changes from there
2014-01-10 16:07:57 -05:00
Paul Davis
393ff40153
reduce the maximum horizontal zoom to 1 day @ 48kHz == 1600 pixels, to try to stop memory allocation issues when zoomed out further
2013-12-31 15:19:39 -05:00
Paul Davis
ea1ccb869a
fix merge with master
2013-10-31 13:16:51 -04:00
Robin Gareus
98f53d11b3
fix midi quantization - part one
...
subtract offset if region was truncated at the beginning.
2013-10-23 01:25:46 +02:00
Paul Davis
664e715a00
merge from master
2013-10-22 15:29:44 -04:00
nick_m
5b62e88fbf
Unify editor / mixer ordering.
2013-10-21 00:19:43 +11:00
Paul Davis
e5888d3983
merge with master and fix 2 conflicts
2013-10-16 22:06:56 -04:00
John Emmas
300b484cf6
Merge branch 'master' into windows+cc
...
Conflicts (hopefully resolved):
gtk2_ardour/ardour_ui.cc
gtk2_ardour/ardour_ui.h
gtk2_ardour/ardour_ui_options.cc
2013-10-06 11:56:03 +01:00
John Emmas
f8574fc39d
'gtk2_ardour' - Add namespaces + casting where necessary + general bits of 'correctness' to keep MSVC happy
2013-10-03 09:06:56 +01:00
Paul Davis
960a47330a
switch from JACK_Slave to Engine_Slave
2013-09-19 17:34:23 -04:00
Robin Gareus
59a3b797d7
fix compiler warnings.
2013-08-08 15:26:16 -04:00
Robin Gareus
cd28d62b26
fix compiler warnings.
2013-07-28 20:32:52 +02:00
Paul Davis
37743ea9b1
minor fixes for recent cairocanvas work so that it builds on OS X (64bit)
2013-07-01 12:04:02 -04:00
Paul Davis
2b74c955f1
fix zoom focus issue that was messing up zoom changes
2013-06-25 21:56:10 -04:00
Paul Davis
aaaeb958c1
switch samples_per_pixel to integer type
2013-06-18 23:02:54 -04:00
Paul Davis
e2f0c5f91e
merge resolution with master
2013-05-02 20:21:54 -04:00
Paul Davis
3973ce81b3
remove all of Gtk::Window::set_position (WIN_POS_MOUSE) for anything deriving from ArdourDialog or ArdourWindow; move the set_position() call into those classes' constructors, so that they are called before the windows are realized, and thus it actually works
2013-05-02 18:13:35 -04:00
Paul Davis
d1a05240ef
fix clamping of line and rect coordinates to avoid issues with cairo when drawing way outside a surface's dimensions; move various coordinate methods down to Canvas, because they don't require GTK information; make visible_area() a Canvas virtual method so that we don't have to cast to call it
2013-04-17 10:53:17 -04:00
Paul Davis
b05968fb4e
change frames_per_pixel to samples_per_pixel
2013-04-12 11:31:50 -04:00
Paul Davis
8877199ae0
leftmost_position => leftmost_sample, current_page_frames => current_page_samples
2013-04-12 11:21:12 -04:00
Paul Davis
ecfd2a7455
remove all unit-based methods from (Public)Editor; rationalize Editor::event_frame() to clearly identify whether the passed-in GdkEvent has window units or canvas units (the latter will be true for all events that are handled by the canvas and then passed to Editor
2013-04-12 11:09:49 -04:00
Robin Gareus
6ae4f10437
Merge branch 'master' into cairocanvas
...
Conflicts:
gtk2_ardour/editor.h
gtk2_ardour/editor_canvas.cc
gtk2_ardour/wscript
2013-04-11 22:24:05 +02:00