Ben Loftis
849d80bfcc
Group the Rec and Monitor buttons together. Group the Solo Isolate and Lock buttons together. And add a method to show/hide each group in the Preferences
2014-07-14 10:08:55 -05:00
Robin Gareus
4af088c251
DummyBackend: add Uniform White Noise Generator.
2014-07-11 18:05:59 +02:00
Robin Gareus
12025d4ffa
possible fix for win SystemExec::wait()
...
if it does not help, use CREATE_NO_WINDOW and/or peek/pump messages :(
2014-07-11 17:03:55 +02:00
Robin Gareus
c83b7ebc3c
fatal error if vfork-exec-wrapper cannot be found (on unix systems).
2014-07-11 16:43:50 +02:00
Paul Davis
6990c31ed5
Merge branch 'cairocanvas' of git.ardour.org:ardour/ardour into cairocanvas
2014-07-11 09:59:59 -04:00
Paul Davis
94e0841625
catch null vfork_exec_wrapper before it is too late
2014-07-11 09:58:45 -04:00
John Emmas
15de7aa433
Make our 'libs/timecode' project dependent on libpbd
...
This is needed because one of its source modules now references 'rint()' (which isn't available in MSVC, although we already simulate it in libbd).
2014-07-11 12:56:18 +01:00
John Emmas
c81604bc18
Add newly introduced (MD5) sources to our MSVC project (also, add visibility stuff to the new MD5 class)
2014-07-11 12:56:17 +01:00
Paul Davis
8859ebe56e
add Gtkmm2ext::Keyboard::reset_bindings()
2014-07-10 11:04:04 -04:00
Paul Davis
0622a0cc30
add libardour infrastructure for "fade range" edit operation
2014-07-10 08:16:55 -04:00
Paul Davis
94c8b672c4
do not call basename_nosuffix() before using matching_unsuffixed_filename_exists_in() because the latter does that call itself.
...
As the code used to be, if we are testing for a candidate filename of aaa.bbb.ccc, the call strips .ccc and matching_... strips .bbb
resulting in a match with aaa, which is not intended at all.
2014-07-10 08:16:27 -04:00
Paul Davis
b9c53ea395
add std::string variant of set_size_request_to_display_given_string()
2014-07-09 16:48:36 -04:00
Ben Loftis
9f4a00fa89
add mixbus profile which removes the tearoffs
2014-07-09 15:12:05 -05:00
Paul Davis
cfca056f19
make sure that copy constructors and operator= for ControlList pass along the _interpolation value
2014-07-09 14:30:38 -04:00
Paul Davis
9e8b50f075
make AutomationList::operator==() private and abort() as its core, because it should never be called/used.
...
Also make AutomationList::operator=() use ControlList::operator=() rather than try to reimplement it
2014-07-09 14:30:38 -04:00
Paul Davis
9bfe716239
remove debug output
2014-07-09 12:06:36 -04:00
Paul Davis
3fae5f15af
fix crash initiated by never configuring track write sources when reloading a session, caused by earlier commits to avoid unnecessary write source resets
2014-07-09 12:03:22 -04:00
Paul Davis
f2699194d3
do not return auditioner as part of Session::get_tracks()
2014-07-09 12:02:22 -04:00
Paul Davis
73d98df3d2
add Session::get_tracks()
2014-07-09 11:29:26 -04:00
Paul Davis
1fd4d40dbb
add mutex to prevent concurrent session state saves.
...
Why wasn't this done 10 years ago?
2014-07-09 10:18:28 -04:00
Paul Davis
7364ca213a
do not attempt to save undo history if it is empty, and do not do any part of history save if we're not going to write a new file
2014-07-09 10:10:44 -04:00
Paul Davis
0e5d86a825
don't save state when removing sources during session loading (though this should no longer happen)
2014-07-09 10:09:49 -04:00
Paul Davis
b37e3229f7
only reset AudioDiskstream write sources if the I/O configuration changed. Do not do this for connection changes etc.
2014-07-09 10:09:14 -04:00
Robin Gareus
2d63489196
Dummy Backend: optimize random-number implementation
2014-07-08 18:40:51 +02:00
Robin Gareus
941701574e
fix and optimize DummyBackend generators
...
* use Wavetable for sine
* lock generator (concurrency issue)
* always initialize variables
2014-07-08 18:40:51 +02:00
Paul Davis
b7f918bdb7
when merging external source files into session folder, if a collision occurs, use the original file suffix in conjunction with md5 hash
2014-07-08 12:25:36 -04:00
Paul Davis
66684c6690
Add PBD::get_suffix() for ripping file suffixes from paths
2014-07-08 12:24:56 -04:00
Paul Davis
fcabd5d8ee
initial implementation of "bring all media into session folder". Incomplete but basically functional for audio files
2014-07-08 00:53:13 -04:00
Paul Davis
d3e3f5f005
add operator-= variants for PBD::Searchpath
2014-07-08 00:53:13 -04:00
Paul Davis
f4a84a0272
add MD5 implementation to wscript
2014-07-08 00:53:13 -04:00
Paul Davis
6b9ef29597
add cleaned up MD5 C++ implementation for general use
2014-07-08 00:53:13 -04:00
Robin Gareus
185f06e7f7
add signal generator modules to Dummy Backend.
2014-07-07 16:31:58 +02:00
Paul Davis
a1bc2cb10e
fix potential crash if certain Canvas methods are used before its window is realized
2014-07-07 08:00:20 -04:00
Paul Davis
69a92e67f0
Add Canvas::re_enter() which picks the current item again based on mouse pointer position and generates an enter event for it
2014-07-07 07:53:17 -04:00
Robin Gareus
4b0933938f
optimize SystemExec::output_interposer()
2014-07-06 23:44:48 +02:00
Robin Gareus
cabed6ffce
fix timecode > 2^31 samples calculation on 32bit systems
2014-07-06 22:44:22 +02:00
Ben Loftis
6d97d72999
remove some cruft with previous commits. remove option link-region-and-track-selection since they are now exclusive, and rename select-all-regions to select-all-objects to match the implementation
2014-07-06 14:02:13 -05:00
Robin Gareus
7d13a49761
remove cruft.
...
periodic save is done with maybe_write_autosave()
2014-07-06 14:43:07 +02:00
Robin Gareus
36135baaac
change reasonable-synth to be sample accurate (note on/off)
...
at expense of slightly increased CPU load.
2014-07-06 13:24:53 +02:00
Colin Fletcher
c03034b7d6
Make $PATH search in SystemExec actually work
...
Make searching of $PATH work when a SystemExec is created from a
command-line, by making sure that argv[0] is set to the discovered path.
2014-07-05 21:47:49 +01:00
Colin Fletcher
5edca6c96e
Report an error when post-export hook fails.
2014-07-05 21:47:49 +01:00
Robin Gareus
c9b0f0fcb7
debug info to trace down "cannot rename temp session file" errors
...
..but actually, the real error may be concurrent
calls to Session::save_state()
2014-07-05 20:53:22 +02:00
Robin Gareus
8fa0f7bc0b
disable latency-compensation preparations for now
...
Don't add delaylines to tracks by default just yet,
currently only sends are aligned with delaylines
2014-07-04 13:57:35 +02:00
Paul Davis
08b1a9d520
add ActionManager::enable_accelerators(), which takes all known Actions and registers them via the UIManager as accelerators.
...
This makes them available for use with key bindings/shortcuts/accelerators even if they have no proxy widget
2014-07-04 07:48:41 -04:00
Ben Loftis
043b76569d
fix the naming and behavior of always-play-range to match the button, which is follow-edits. when you select a range, the playhead should jump to the start of the range and begin to play the selection. BUT (unlike previous implementation) if the user wants to relocate the playhead, then that should be allowed. The user should always remain in charge of the playhead location. NOTE: your previous config setting will be invalidated. You must re-save a session to overwrite with the new config variable
2014-07-03 12:56:33 -05:00
Paul Davis
53a5f5d8ca
actually do something in WaveView::region_resized() which is called whenever the region is resized; implement WaveView::set_region_start() which could be used by an xfade editor etc.
2014-07-03 10:00:12 -04:00
Ben Loftis
a1c8e67e50
add a method to cancel a pending play_range. this is needed when we are modifying the range with keyboard commands.
2014-07-02 17:35:38 -05:00
Robin Gareus
007664c3db
unique filenames across all searched folders
2014-07-02 23:36:06 +02:00
Ben Loftis
190542c1d0
splice mode is undefined, undocumented, and buggy. ripple does most of what we want. remove splice for now. leave code because it may be revived later
2014-07-01 16:43:00 -05:00
Paul Davis
3f112f17c0
remove debug output
2014-07-01 15:11:09 -04:00