This commit removes the various compiler-specific JUCE_DEPRECATED macros and replaces them with C++14's deprecated attribute. It also removes the JUCE_CATCH_DEPRECATED_CODE_MISUSE flag as we can rely on the override specifier catching usage of these old virtual methods, and tidies up the DOXYGEN preprocessor checks as they were inconsistent across the codebase.
File::getContainerForSecurityApplicationGroupIdentifier will return the
path to a container which is shared between all apps using the specified
app group ID. This might be useful if you need to share resources
between a standalone app and an AUv3 plugin, for example.
The previous implementation would fail to open directories with names
that contained spaces, as the space would be escaped and then quoted.
I don't think it's particularly meaningful to supply parameters when
opening a file in this way (especially not quoting the parameters too!)
so I've removed that functionality.
The previously used getUserDefaultUILanguage() was based on the deprecated
LCID/LANGID concept. It had an increasing number of corner cases as not
every locale had associated LCIDs. The new solution is based on locale
names (string based) and will return reasonable names in more situations.
- Added a new URL::createInputStream() overload that takes an InputStreamOptions helper class to simplify stream creation.
- Modified the internals of URL and WebInputStream so that parameters are only added to the request body when ParameterHandling is set to inPostData. This allows POST data to be added via URL::withPOSTData() and sent with URL-encoded parameters.
The values in mach_timebase_info_data_t should be specified in terms of
'ticks'. On some machines, ticks may correspond to nanoseconds, but this
is not guaranteed.