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
Paul Davis
0a87bbc37b
add partial support for mute automation (playback does not work, data is not recorded in the session)
2014-07-01 14:37:05 -04:00
Colin Fletcher
e5e12acc56
Merge branch 'ripple-mode-cc' into cairocanvas
...
Fix up merge conflicts in
gtk2_ardour/editor_mouse.cc
gtk2_ardour/editor_ops.cc
Also fix up compile errors.
2014-07-01 19:10:47 +01:00
Paul Davis
23e7cf1019
merge with master.
...
Manually resolved conflicts in import.cc and session.cc
2014-07-01 09:46:18 -04:00
Robin Gareus
d790881a84
remove cruft
2014-06-30 22:58:09 +02:00
Robin Gareus
0ec4784c2b
change default take-name
2014-06-30 22:58:08 +02:00
Paul Davis
d816c225a4
more extensive canvas debug message for canvas-enter-leave tracing
2014-06-30 16:32:01 -04:00
Paul Davis
79b9a044b8
add event-insensitivity to the list of conditions that causes a container to NOT add its children to the list of items-at-point
2014-06-30 16:31:31 -04:00
Robin Gareus
bae86a2d90
Disallow empty names for Groups, automatically enumerate them
2014-06-30 18:33:05 +02:00