Commit graph

7299 commits

Author SHA1 Message Date
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