343b06d8d3
dramatic change in logic and naming for operations related to adding a MIDI region on demand and cloning/unlinking
...
Existing code would cause data loss due to creation of two Source objects referring the same path, one with removable flags and one without. Careful code review suggested a variety of thinkos, function naming problems and other confusion that caused this. I have tried ot extensively comment what is going on with these operations, because it is one key area in which MIDI differs from audio: with audio, capture is the only way to add a new audio region, but for MIDI there are GUI input events that can add a new region.
2014-04-14 02:17:30 -04:00
87c777450b
prepare for the day when there can be TimeAxisView's that are not RouteTimeAxisViews.
2014-03-23 03:11:08 +01:00
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
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
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
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
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
ea1ccb869a
fix merge with master
2013-10-31 13:16:51 -04:00
98f53d11b3
fix midi quantization - part one
...
subtract offset if region was truncated at the beginning.
2013-10-23 01:25:46 +02:00
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
e5888d3983
merge with master and fix 2 conflicts
2013-10-16 22:06:56 -04:00
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
f8574fc39d
'gtk2_ardour' - Add namespaces + casting where necessary + general bits of 'correctness' to keep MSVC happy
2013-10-03 09:06:56 +01:00
960a47330a
switch from JACK_Slave to Engine_Slave
2013-09-19 17:34:23 -04:00
59a3b797d7
fix compiler warnings.
2013-08-08 15:26:16 -04:00
cd28d62b26
fix compiler warnings.
2013-07-28 20:32:52 +02:00
37743ea9b1
minor fixes for recent cairocanvas work so that it builds on OS X (64bit)
2013-07-01 12:04:02 -04:00
2b74c955f1
fix zoom focus issue that was messing up zoom changes
2013-06-25 21:56:10 -04:00
aaaeb958c1
switch samples_per_pixel to integer type
2013-06-18 23:02:54 -04:00
e2f0c5f91e
merge resolution with master
2013-05-02 20:21:54 -04:00
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
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
b05968fb4e
change frames_per_pixel to samples_per_pixel
2013-04-12 11:31:50 -04:00
8877199ae0
leftmost_position => leftmost_sample, current_page_frames => current_page_samples
2013-04-12 11:21:12 -04:00
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
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
66ee2c8e59
enable videotimeline by default
2013-04-11 19:49:48 +02:00
8eef4b1904
master merge; new files not added after initial cairocanvas patch application
2013-04-05 17:16:33 -04:00
19bd641915
commit immediately post linking
2013-04-04 18:45:27 -04:00
aaea166135
initial commit of hand merging, plus getting "ancient" waf script to work correctly
2013-04-04 00:32:52 -04:00
f4a9c02b1d
Use selection->regions instead of Editor::get_regions_from_selection()
...
Remove Editor::get_regions_from_selection(), and use selection->regions
directly in the few places it was called.
2013-04-03 17:04:04 +01:00
0c3e840700
videotimline
...
squashed 694 commits from http://gareus.org/gitweb/?p=ardour3.git
2013-03-13 20:28:15 +01:00
2586dacf5b
Trim the include tree a bit.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13941 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-21 07:24:42 +00:00
4ecb07aaee
fix up Location::first_location_(after|before) to do the right thing when marks + ranges are interleaved (functions renamed)
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13869 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-17 13:19:16 +00:00
78ff7399cb
Fix three little typos.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13799 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-07 19:15:02 +00:00
17f7242ed6
fix up mistaken (accidentally) automatic cast from framepos_t to double when calling TempoMap::add_tempo(), leading to an assert failure when defining a bar from the edit range ( #4682 )
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13684 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-19 18:40:21 +00:00
Ben Loftis
f77763020b
edit operations should depend on the existence of an explicit range, NOT the mouse mode. this produces less confusion to the user. For an edit (such as delete) the selection should be based on this priority: explicit range selection, ojbect (region) selection, and then implicit range ( i.e. mouse-to-marker)
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13563 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-28 17:07:35 +00:00
Ben Loftis
e63da83c53
tweak Smart Mode to be more like Mixbus. Smart mode is just a modifier on Object mode which provides Range selection in the top half of the waveform. probably lots of corner cases to clear up before its all over, but at least we can use Mixbus as a consistent target rather than making it all up again.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13551 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-26 22:43:10 +00:00
Ben Loftis
beb3ec2d7a
Always Play Range is now Follow Edits, and is based on Mixbus implementation. Added menu item. Follow Edits button replaces Auto Play; removed the connector between play and play-range. Some Smart Mode changes came along for the ride but will be cleaned up shortly
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13537 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-20 19:43:43 +00:00
98834c0532
remove a bunch of cerr output and/or convert to use error<<
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13477 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-13 15:11:07 +00:00
3fa84d0caa
add alt-i as a binding in both the editor and mixer windows to toggle the state of MIDI input on the selected track(s); in the mixer this will also operate on the strip under the mouse. fixes #4838
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13475 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-13 02:19:04 +00:00
9707a0e827
move the external sync source selection tobe a global config parameter, not per-session, since this is likely a reflection of studio setup, h/w etc.; starting using real tooltips in the RC option editor
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13237 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-10-11 03:10:18 +00:00
97d920593f
drastic rethink of the relationship between remote control ID and route order keys. unless the user explicitly switches to UserOrdered, Route::_remote_control_id is an unallocated pointer, and Route::remote_control_id() simply returns a value based on the relevant order_key() value. Also, change the key used in the Route::order_keys std::map<> from a string to an enum, since there is no evidence that we are benefitting from the theoretical benefit of using a string. Generally tidy up allocation of order keys so that the master and monitor busses always get a "special" MixerSort key value, based on the MMC ID for master (already defined within Ardour), and all other tracks/busses start at zero. Syncing keys between editor and mixer will leave the MixerSort key for the master and monitor bus alone, reflecting the fact that we display these in their own distinct parts of the GUI and they are not orderable like other tracks or busses within the mixer window
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12923 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-25 12:46:13 +00:00
Carl Hetherington
3c7f6a4a4c
Unify clamping of frames-per-unit values during zoom; should help with #3514 .
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12796 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-20 14:14:27 +00:00
5f42daa272
do NOT call ProcessThread::init() **again** inside a freeze op, since this is a static, single-time call that sets up a per-thread (thread-private) storage key. Should fix #4722
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12736 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-16 02:52:09 +00:00
5573b6a049
fix some bugs with dragging patch/program changes around
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12692 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-13 02:00:51 +00:00
d97312d438
lots more work trying to create a common structure for accessing plugin and MIDNAME patch/preset/program names. still not done
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12665 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-11 22:59:35 +00:00
Carl Hetherington
72369f8670
Patch from epitech_user to fix crash on zooming out too
...
far (#4806 ).
git-svn-id: svn://localhost/ardour2/branches/3.0@12589 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-06 18:21:02 +00:00
Carl Hetherington
eaf58fdd50
Marginal cleanup.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12565 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-05 01:03:36 +00:00