Commit graph

7168 commits

Author SHA1 Message Date
Tim Mayberry
2ef5cefa6b Rename internal class to stop the wrong destructor from being called 2014-06-25 12:40:11 -04:00
Tim Mayberry
7262e16216 Add a PBD::TextReceiver in pbd testrunner 2014-06-25 12:40:11 -04:00
Tim Mayberry
24c40c0e88 Add simple test for PBD::find_files_matching_pattern
This helped fix a silly cut and paste error in pbd/file_utils.cc so
might as well included it.
2014-06-25 12:40:11 -04:00
Tim Mayberry
31bceb7570 Use PBD::FdFileDescriptor in PBD::copy_file 2014-06-25 12:40:11 -04:00
Tim Mayberry
8da304be09 Fix PBD::copy_file so it works with non-ASCII filenames on windows 2014-06-25 12:40:11 -04:00
Tim Mayberry
4ced10bfe5 Add test utility function to PBD tests to return some utf-8 strings
This is currently unused
2014-06-25 12:40:11 -04:00
Tim Mayberry
53c959ad8f Add a test for PBD::copy_file using test files with utf-8 encoded filenames 2014-06-25 12:40:11 -04:00
Tim Mayberry
de4fc4843b Fix PBD::copy_files so that it uses O_BINARY on windows and doesn't add line endings to copied files 2014-06-25 12:40:11 -04:00
Tim Mayberry
3000399ce1 Use PLATFORM_WINDOWS define instead of WIN32 in PBD::FileManager 2014-06-25 12:40:11 -04:00
Tim Mayberry
7bf392060e Call PBD::init and PBD::cleanup in pbd test executable 2014-06-25 12:40:11 -04:00
Tim Mayberry
7338c4e242 Add test for PBD::copy_file
From this I can see that PBD::copy_file is not working correctly on windows
as it is adding windows style line endings. Adding O_BINARY to ::open flags
would fix it, but perhaps there is a better way...
2014-06-25 12:40:11 -04:00
Tim Mayberry
94d8dfa256 Add utility function to test lib to create a test directory
There is an identical function in libardour test support lib so we
should probably find a better place to put this at some point
2014-06-25 12:40:11 -04:00
Tim Mayberry
3b1a98f0ec Change PBD::get_files and PBD::get_paths to take a Searchpath instead of directory path
Both these functions use the internal function run_functor_for_paths
which takes a Searchpath so this avoids a temporary variable in cases
where a Searchpath is passed directly.

The usage is the same as the compiler will generate a temporary Searchpath
from a string(directory path) if necessary.
2014-06-25 12:40:11 -04:00
Tim Mayberry
6d0cce528e Add/Update docs in pbd/file_utils.h 2014-06-25 12:40:11 -04:00
Tim Mayberry
851db83fc4 Use run_functor_for_paths in PBD::get_paths 2014-06-25 12:40:10 -04:00
Tim Mayberry
04434f2b88 Rename PBD::get_files_in_directory to just PBD::get_files, change parameter order and fix docs 2014-06-25 12:40:10 -04:00
Tim Mayberry
84d190b7cc Rename PBD::get_directory_contents to PBD::get_paths
shorter name and change order of parameters to match other functions
2014-06-25 12:40:10 -04:00
Tim Mayberry
26ec4038af Use run_functor_for_paths in PBD::find_files_matching_pattern 2014-06-25 12:40:10 -04:00
Tim Mayberry
a7ce765b0b Fix finding of bundled LV2 plugins 2014-06-25 12:40:10 -04:00
Tim Mayberry
24599c552d Add function PBD::find_paths_matching_filter 2014-06-25 12:40:10 -04:00
Tim Mayberry
54c0a0144c Use run_functor_for_paths in PBD::find_files_matching_filter 2014-06-25 12:40:10 -04:00
Tim Mayberry
e7141d2b80 Add function to file_utils intended to be used internally 2014-06-25 12:40:10 -04:00
Tim Mayberry
ab6837665f Add some debug output in file_utils.cc 2014-06-25 12:40:10 -04:00
Tim Mayberry
e6c4b0e9e4 Remove reference to strtok_r now that it isn't used 2014-06-25 12:40:10 -04:00
Tim Mayberry
a226068959 Change formatting of DEBUG_TRACE calls to match style guide 2014-06-25 12:40:10 -04:00
Tim Mayberry
cb3a604936 Move functions in pbd/clear_dir.h/cc into pbd/file_utils.h/cc 2014-06-25 12:40:10 -04:00
Tim Mayberry
257897392a Add remove_directory_internal function and use it in PBD::clear_directory and PBD::remove_directory 2014-06-25 12:40:10 -04:00
Tim Mayberry
64856a5862 Reimplement PBD::clear_dir using PBD::get_directory_contents 2014-06-25 12:40:10 -04:00
Tim Mayberry
cd12698b9c Rename PBD::find_file_in_search_path to just PBD::find_file
saves a bit of typing and not necessary if you look at how it is used.
2014-06-25 12:40:10 -04:00
Tim Mayberry
8d0cba3384 Use PBD::find_files_matching_pattern instead of other variations 2014-06-25 12:40:10 -04:00
Tim Mayberry
36fd67ab72 Add a variation of PBD::find_files_matching_pattern for convenience 2014-06-25 12:40:10 -04:00
Tim Mayberry
077c09b105 Add new function PBD::find_files_matching_pattern
This new function is intended to replace the three existing
PBD::find_matching_files_* functions.

The order of parameters matches find_files_matching_regex and
find_files_matching_filter
2014-06-25 12:40:10 -04:00
Tim Mayberry
d9a7d419b2 Change PBD::find_files_matching_regex and PBD::find_files_matching_filter to take a Searchpath 2014-06-25 12:40:10 -04:00
Tim Mayberry
613162df6b Reimplement PBD::find_files_matching_filter using SearchPath and get_directory_contents 2014-06-25 12:40:10 -04:00
Tim Mayberry
56337eade4 Remove limit parameter from PBD::find_files_matching_regex
This limit was not used or documented. The same functionality can be
performed when iterating through the results.
2014-06-25 12:40:10 -04:00
Tim Mayberry
0189ad7e29 Remove parameters from PBD::find_files_matching_regex
The only users of this API always used the same options so just remove
them.
2014-06-25 12:40:09 -04:00
Tim Mayberry
769ee5c1f2 Change PBD::get_files_in_directory to return full paths in result
get_files_in_directory uses get_directory_contents internally now
2014-06-25 12:40:09 -04:00
Tim Mayberry
d1dd5d3ee7 Add PBD::get_directory_contents to pbd/file_utils.h 2014-06-25 12:40:09 -04:00
Paul Davis
3f776ce7d9 fix incorrect cut-n-paste across synergy 2014-06-25 12:30:57 -04:00
Paul Davis
9b7b5fc9bc wscript fix for wavesaudio backend - use correct name for CoreM[iI][dD][iI] framework on Lion and other versions 2014-06-25 08:29:23 -04:00
Ben Loftis
663f9827f9 last piece of scroll-wheel checkin, oops 2014-06-24 10:46:53 -05:00
Ben Loftis
2cc25a9d79 add scroll wheel handler to canvas 2014-06-24 10:33:28 -05:00
Paul Davis
f147846863 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.
2014-06-24 09:56:16 -04:00
Robin Gareus
5b5e8df627 fix f6aaa16 (boost shared pointer) 2014-06-24 01:09:12 +02:00
Paul Davis
199ac89d40 return of the zero line 2014-06-23 15:24:08 -04:00
Paul Davis
a743e68a0c revert drawing of rectified waves back to previous approach since it (might be) slightly more efficient and is simpler to understand; add comments 2014-06-23 15:12:30 -04:00
Paul Davis
437099fff9 completely rethink waveform rendering (again)
There are 3 possible components to draw at each x-axis position: the waveform "line", the zero line and an outline/clip indicator.
We have to decide which of the 3 to draw at each position, pixel by pixel. This makes the rendering less efficient but it is
the only way I can see to do this correctly.
2014-06-23 14:57:55 -04:00
Paul Davis
71c417948e fix logic error that meant one side of the waveform outline is not drawn; draw zero line before outline, for better effects with low amplitude waves 2014-06-23 10:06:59 -04:00
Robin Gareus
07fafac36e don't let enumerated device list strings go out of scope. 2014-06-23 12:16:35 +02:00
Robin Gareus
fb51bdb892 statically allocate midi-options
fixes possible segfault when the data in the vector
goes out of scope due to RVO.
2014-06-23 11:56:58 +02:00