Browse Source

Tidied up a typo in an android pathname. Fixed a clipping error in audio conversion.

tags/2021-05-28
Julian Storer 14 years ago
parent
commit
883ff38bf5
7 changed files with 104 additions and 114 deletions
  1. +1
    -1
      extras/Introjucer/Source/Project/jucer_ProjectExport_Android.h
  2. +1
    -1
      extras/JuceDemo/Builds/Android/local.properties
  3. +1
    -1
      extras/JuceDemo/Juce Demo.jucer
  4. +95
    -103
      juce_amalgamated.cpp
  5. +3
    -5
      juce_amalgamated.h
  6. +2
    -2
      src/audio/dsp/juce_AudioDataConverters.h
  7. +1
    -1
      src/core/juce_StandardHeader.h

+ 1
- 1
extras/Introjucer/Source/Project/jucer_ProjectExport_Android.h View File

@@ -55,7 +55,7 @@ public:
getTargetLocation() = getDefaultBuildsRootFolder() + "Android";
if (getSDKPath().toString().isEmpty())
getSDKPath() = "${user.home}/SDKs/android-sdk-mac_86";
getSDKPath() = "${user.home}/SDKs/android-sdk-mac_x86";
if (getNDKPath().toString().isEmpty())
getNDKPath() = "${user.home}/SDKs/android-ndk-r5";


+ 1
- 1
extras/JuceDemo/Builds/Android/local.properties View File

@@ -1,6 +1,6 @@
# This file is used to override default values used by the Ant build system.
# It is automatically generated by the Jucer - DO NOT EDIT IT or your changes will be lost!.
sdk.dir=${user.home}/SDKs/android-sdk-mac_86
sdk.dir=${user.home}/SDKs/android-sdk-mac_x86
ndk.dir=${user.home}/SDKs/android-ndk-r5

+ 1
- 1
extras/JuceDemo/Juce Demo.jucer View File

@@ -21,7 +21,7 @@
<LINUX_MAKE targetFolder="Builds/Linux" vstFolder="~/SDKs/vstsdk2.4" juceFolder="../../../juce"/>
<VS2010 targetFolder="Builds/VisualStudio2010" vstFolder="c:\SDKs\vstsdk2.4"
rtasFolder="c:\SDKs\PT_80_SDK" libraryType="1" juceFolder="../../../juce"/>
<ANDROID targetFolder="Builds/Android" androidSDKPath="${user.home}/SDKs/android-sdk-mac_86"
<ANDROID targetFolder="Builds/Android" androidSDKPath="${user.home}/SDKs/android-sdk-mac_x86"
androidNDKPath="${user.home}/SDKs/android-ndk-r5" juceFolder="../../../juce"
androidInternetNeeded="1"/>
</EXPORTFORMATS>


+ 95
- 103
juce_amalgamated.cpp View File

@@ -1658,9 +1658,15 @@ SystemStats::CPUFlags SystemStats::cpuFlags;

const String SystemStats::getJUCEVersion()
{
return "JUCE v" + String (JUCE_MAJOR_VERSION)
+ "." + String (JUCE_MINOR_VERSION)
+ "." + String (JUCE_BUILDNUMBER);
#define JUCE_STRINGIFYVERSION2(a) #a
#define JUCE_STRINGIFYVERSION(a) JUCE_STRINGIFYVERSION2(a)

return "JUCE v" JUCE_STRINGIFYVERSION(JUCE_MAJOR_VERSION)
"." JUCE_STRINGIFYVERSION(JUCE_MINOR_VERSION)
"." JUCE_STRINGIFYVERSION(JUCE_BUILDNUMBER);

#undef JUCE_STRINGIFYVERSION
#undef JUCE_STRINGIFYVERSION2
}

#ifdef JUCE_DLL
@@ -1779,7 +1785,7 @@ namespace TimeHelpers
#elif JUCE_WINDOWS
HeapBlock <wchar_t> tempDest;
tempDest.calloc (maxChars + 2);
const int result = (int) wcsftime (tempDest, maxChars, format.toUTF16(), tm);
const int result = (int) wcsftime (tempDest, maxChars, format.toWideCharPointer(), tm);
if (result > 0)
dest.writeAll (CharPointer_UTF16 (tempDest.getData()));
return result;
@@ -71021,15 +71027,13 @@ public:
if (owner->shouldDropFilesWhenDraggedExternally (dragDescLocal, source, files, canMoveFiles)
&& files.size() > 0)
{
WeakReference<Component> cdw (this);
WeakReference<Component> thisWeakRef (this);
setVisible (false);

if (ModifierKeys::getCurrentModifiersRealtime().isAnyMouseButtonDown())
DragAndDropContainer::performExternalDragDropOfFiles (files, canMoveFiles);

if (cdw != 0)
delete this;

delete thisWeakRef.get();
return;
}
}
@@ -242089,7 +242093,7 @@ DynamicLibraryLoader::~DynamicLibraryLoader()
bool DynamicLibraryLoader::load (const String& name)
{
FreeLibrary ((HMODULE) libHandle);
libHandle = name.isNotEmpty() ? LoadLibrary (name.toUTF16()) : 0;
libHandle = name.isNotEmpty() ? LoadLibrary (name.toWideCharPointer()) : 0;
return libHandle != 0;
}

@@ -242110,7 +242114,7 @@ void* DynamicLibraryLoader::findProcAddress (const String& functionName)

void Logger::outputDebugString (const String& text)
{
OutputDebugString ((text + "\n").toUTF16());
OutputDebugString ((text + "\n").toWideCharPointer());
}

static int64 hiResTicksPerSecond;
@@ -242698,9 +242702,9 @@ void Process::lowerPrivilege()

void Process::terminate()
{
#if JUCE_MSVC && JUCE_CHECK_MEMORY_LEAKS
#if JUCE_MSVC && JUCE_CHECK_MEMORY_LEAKS
_CrtDumpMemoryLeaks();
#endif
#endif

// bullet in the head in case there's a problem shutting down..
ExitProcess (0);
@@ -242712,7 +242716,7 @@ void* PlatformUtilities::loadDynamicLibrary (const String& name)

JUCE_TRY
{
result = LoadLibrary (name.toUTF16());
result = LoadLibrary (name.toWideCharPointer());
}
JUCE_CATCH_ALL

@@ -242880,7 +242884,7 @@ namespace WindowsFileHelpers
{
ULARGE_INTEGER spc, tot, totFree;

if (GetDiskFreeSpaceEx (getDriveFromPath (path).toUTF16(), &spc, &tot, &totFree))
if (GetDiskFreeSpaceEx (getDriveFromPath (path).toWideCharPointer(), &spc, &tot, &totFree))
return total ? (int64) tot.QuadPart
: (int64) spc.QuadPart;

@@ -242889,7 +242893,7 @@ namespace WindowsFileHelpers

unsigned int getWindowsDriveType (const String& path)
{
return GetDriveType (getDriveFromPath (path).toUTF16());
return GetDriveType (getDriveFromPath (path).toWideCharPointer());
}

const File getSpecialFolderPath (int type)
@@ -242909,25 +242913,25 @@ const String File::separatorString ("\\");
bool File::exists() const
{
return fullPath.isNotEmpty()
&& GetFileAttributes (fullPath.toUTF16()) != INVALID_FILE_ATTRIBUTES;
&& GetFileAttributes (fullPath.toWideCharPointer()) != INVALID_FILE_ATTRIBUTES;
}

bool File::existsAsFile() const
{
return fullPath.isNotEmpty()
&& (GetFileAttributes (fullPath.toUTF16()) & FILE_ATTRIBUTE_DIRECTORY) == 0;
&& (GetFileAttributes (fullPath.toWideCharPointer()) & FILE_ATTRIBUTE_DIRECTORY) == 0;
}

bool File::isDirectory() const
{
const DWORD attr = GetFileAttributes (fullPath.toUTF16());
const DWORD attr = GetFileAttributes (fullPath.toWideCharPointer());
return ((attr & FILE_ATTRIBUTE_DIRECTORY) != 0) && (attr != INVALID_FILE_ATTRIBUTES);
}

bool File::hasWriteAccess() const
{
if (exists())
return (GetFileAttributes (fullPath.toUTF16()) & FILE_ATTRIBUTE_READONLY) == 0;
return (GetFileAttributes (fullPath.toWideCharPointer()) & FILE_ATTRIBUTE_READONLY) == 0;

// on windows, it seems that even read-only directories can still be written into,
// so checking the parent directory's permissions would return the wrong result..
@@ -242936,7 +242940,7 @@ bool File::hasWriteAccess() const

bool File::setFileReadOnlyInternal (const bool shouldBeReadOnly) const
{
DWORD attr = GetFileAttributes (fullPath.toUTF16());
DWORD attr = GetFileAttributes (fullPath.toWideCharPointer());

if (attr == INVALID_FILE_ATTRIBUTES)
return false;
@@ -242949,22 +242953,21 @@ bool File::setFileReadOnlyInternal (const bool shouldBeReadOnly) const
else
attr &= ~FILE_ATTRIBUTE_READONLY;

return SetFileAttributes (fullPath.toUTF16(), attr) != FALSE;
return SetFileAttributes (fullPath.toWideCharPointer(), attr) != FALSE;
}

bool File::isHidden() const
{
return (GetFileAttributes (getFullPathName().toUTF16()) & FILE_ATTRIBUTE_HIDDEN) != 0;
return (GetFileAttributes (getFullPathName().toWideCharPointer()) & FILE_ATTRIBUTE_HIDDEN) != 0;
}

bool File::deleteFile() const
{
if (! exists())
return true;
else if (isDirectory())
return RemoveDirectory (fullPath.toUTF16()) != 0;
else
return DeleteFile (fullPath.toUTF16()) != 0;

return isDirectory() ? RemoveDirectory (fullPath.toWideCharPointer()) != 0
: DeleteFile (fullPath.toWideCharPointer()) != 0;
}

bool File::moveToTrash() const
@@ -242990,17 +242993,17 @@ bool File::moveToTrash() const

bool File::copyInternal (const File& dest) const
{
return CopyFile (fullPath.toUTF16(), dest.getFullPathName().toUTF16(), false) != 0;
return CopyFile (fullPath.toWideCharPointer(), dest.getFullPathName().toWideCharPointer(), false) != 0;
}

bool File::moveInternal (const File& dest) const
{
return MoveFile (fullPath.toUTF16(), dest.getFullPathName().toUTF16()) != 0;
return MoveFile (fullPath.toWideCharPointer(), dest.getFullPathName().toWideCharPointer()) != 0;
}

void File::createDirectoryInternal (const String& fileName) const
{
CreateDirectory (fileName.toUTF16(), 0);
CreateDirectory (fileName.toWideCharPointer(), 0);
}

int64 juce_fileSetPosition (void* handle, int64 pos)
@@ -243015,7 +243018,7 @@ void FileInputStream::openHandle()
{
totalSize = file.getSize();

HANDLE h = CreateFile (file.getFullPathName().toUTF16(), GENERIC_READ, FILE_SHARE_READ | FILE_SHARE_WRITE, 0,
HANDLE h = CreateFile (file.getFullPathName().toWideCharPointer(), GENERIC_READ, FILE_SHARE_READ | FILE_SHARE_WRITE, 0,
OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL | FILE_FLAG_SEQUENTIAL_SCAN, 0);

if (h != INVALID_HANDLE_VALUE)
@@ -243041,7 +243044,7 @@ size_t FileInputStream::readInternal (void* buffer, size_t numBytes)

void FileOutputStream::openHandle()
{
HANDLE h = CreateFile (file.getFullPathName().toUTF16(), GENERIC_WRITE, FILE_SHARE_READ, 0,
HANDLE h = CreateFile (file.getFullPathName().toWideCharPointer(), GENERIC_WRITE, FILE_SHARE_READ, 0,
OPEN_ALWAYS, FILE_ATTRIBUTE_NORMAL, 0);

if (h != INVALID_HANDLE_VALUE)
@@ -243085,7 +243088,7 @@ int64 File::getSize() const
{
WIN32_FILE_ATTRIBUTE_DATA attributes;

if (GetFileAttributesEx (fullPath.toUTF16(), GetFileExInfoStandard, &attributes))
if (GetFileAttributesEx (fullPath.toWideCharPointer(), GetFileExInfoStandard, &attributes))
return (((int64) attributes.nFileSizeHigh) << 32) | attributes.nFileSizeLow;

return 0;
@@ -243096,7 +243099,7 @@ void File::getFileTimesInternal (int64& modificationTime, int64& accessTime, int
using namespace WindowsFileHelpers;
WIN32_FILE_ATTRIBUTE_DATA attributes;

if (GetFileAttributesEx (fullPath.toUTF16(), GetFileExInfoStandard, &attributes))
if (GetFileAttributesEx (fullPath.toWideCharPointer(), GetFileExInfoStandard, &attributes))
{
modificationTime = fileTimeToTime (&attributes.ftLastWriteTime);
creationTime = fileTimeToTime (&attributes.ftCreationTime);
@@ -243113,7 +243116,7 @@ bool File::setFileTimesInternal (int64 modificationTime, int64 accessTime, int64
using namespace WindowsFileHelpers;

bool ok = false;
HANDLE h = CreateFile (fullPath.toUTF16(), GENERIC_WRITE, FILE_SHARE_READ, 0,
HANDLE h = CreateFile (fullPath.toWideCharPointer(), GENERIC_WRITE, FILE_SHARE_READ, 0,
OPEN_ALWAYS, FILE_ATTRIBUTE_NORMAL, 0);

if (h != INVALID_HANDLE_VALUE)
@@ -243161,7 +243164,7 @@ void File::findFileSystemRoots (Array<File>& destArray)
const String File::getVolumeLabel() const
{
TCHAR dest[64];
if (! GetVolumeInformation (WindowsFileHelpers::getDriveFromPath (getFullPathName()).toUTF16(), dest,
if (! GetVolumeInformation (WindowsFileHelpers::getDriveFromPath (getFullPathName()).toWideCharPointer(), dest,
numElementsInArray (dest), 0, 0, 0, 0, 0))
dest[0] = 0;

@@ -243173,7 +243176,7 @@ int File::getVolumeSerialNumber() const
TCHAR dest[64];
DWORD serialNum;

if (! GetVolumeInformation (WindowsFileHelpers::getDriveFromPath (getFullPathName()).toUTF16(), dest,
if (! GetVolumeInformation (WindowsFileHelpers::getDriveFromPath (getFullPathName()).toWideCharPointer(), dest,
numElementsInArray (dest), &serialNum, 0, 0, 0, 0))
return 0;

@@ -243282,7 +243285,7 @@ const File File::getCurrentWorkingDirectory()

bool File::setAsCurrentWorkingDirectory() const
{
return SetCurrentDirectory (getFullPathName().toUTF16()) != FALSE;
return SetCurrentDirectory (getFullPathName().toWideCharPointer()) != FALSE;
}

const String File::getVersion() const
@@ -243290,11 +243293,11 @@ const String File::getVersion() const
String result;

DWORD handle = 0;
DWORD bufferSize = GetFileVersionInfoSize (getFullPathName().toUTF16(), &handle);
DWORD bufferSize = GetFileVersionInfoSize (getFullPathName().toWideCharPointer(), &handle);
HeapBlock<char> buffer;
buffer.calloc (bufferSize);

if (GetFileVersionInfo (getFullPathName().toUTF16(), 0, bufferSize, buffer))
if (GetFileVersionInfo (getFullPathName().toWideCharPointer(), 0, bufferSize, buffer))
{
VS_FIXEDFILEINFO* vffi;
UINT len = 0;
@@ -243327,7 +243330,7 @@ const File File::getLinkedTarget() const
ComSmartPtr <IPersistFile> persistFile;
if (SUCCEEDED (shellLink.QueryInterface (IID_IPersistFile, persistFile)))
{
if (SUCCEEDED (persistFile->Load (p.toUTF16(), STGM_READ))
if (SUCCEEDED (persistFile->Load (p.toWideCharPointer(), STGM_READ))
&& SUCCEEDED (shellLink->Resolve (0, SLR_ANY_MATCH | SLR_NO_UI)))
{
WIN32_FIND_DATA winFindData;
@@ -243366,7 +243369,7 @@ public:

if (handle == INVALID_HANDLE_VALUE)
{
handle = FindFirstFile (directoryWithWildCard.toUTF16(), &findData);
handle = FindFirstFile (directoryWithWildCard.toWideCharPointer(), &findData);

if (handle == INVALID_HANDLE_VALUE)
return false;
@@ -243418,7 +243421,7 @@ bool PlatformUtilities::openDocument (const String& fileName, const String& para

JUCE_TRY
{
hInstance = ShellExecute (0, 0, fileName.toUTF16(), parameters.toUTF16(), 0, SW_SHOWDEFAULT);
hInstance = ShellExecute (0, 0, fileName.toWideCharPointer(), parameters.toWideCharPointer(), 0, SW_SHOWDEFAULT);
}
JUCE_CATCH_ALL

@@ -243444,9 +243447,9 @@ public:
{
cancelEvent = CreateEvent (0, FALSE, FALSE, 0);

pipeH = isPipe ? CreateNamedPipe (file.toUTF16(), PIPE_ACCESS_DUPLEX | FILE_FLAG_OVERLAPPED, 0,
pipeH = isPipe ? CreateNamedPipe (file.toWideCharPointer(), PIPE_ACCESS_DUPLEX | FILE_FLAG_OVERLAPPED, 0,
PIPE_UNLIMITED_INSTANCES, 4096, 4096, 0, 0)
: CreateFile (file.toUTF16(), GENERIC_READ | GENERIC_WRITE, 0, 0,
: CreateFile (file.toWideCharPointer(), GENERIC_READ | GENERIC_WRITE, 0, 0,
OPEN_EXISTING, FILE_FLAG_OVERLAPPED, 0);
}

@@ -243870,7 +243873,7 @@ private:
uc.lpszUrlPath = file;
uc.lpszHostName = server;

if (InternetCrackUrl (address.toUTF16(), 0, 0, &uc))
if (InternetCrackUrl (address.toWideCharPointer(), 0, 0, &uc))
{
int disable = 1;
InternetSetOption (sessionHandle, INTERNET_OPTION_DISABLE_AUTODIAL, &disable, sizeof (disable));
@@ -243930,7 +243933,7 @@ private:
INTERNET_BUFFERS buffers;
zerostruct (buffers);
buffers.dwStructSize = sizeof (INTERNET_BUFFERS);
buffers.lpcszHeader = headers.toUTF16();
buffers.lpcszHeader = headers.toWideCharPointer();
buffers.dwHeadersLength = headers.length();
buffers.dwBufferTotal = (DWORD) postData.getSize();

@@ -244158,13 +244161,13 @@ namespace

if (createForWriting)
{
if (RegCreateKeyEx (rootKey, name.toUTF16(), 0, 0, REG_OPTION_NON_VOLATILE,
if (RegCreateKeyEx (rootKey, name.toWideCharPointer(), 0, 0, REG_OPTION_NON_VOLATILE,
(KEY_WRITE | KEY_QUERY_VALUE), 0, &key, &result) == ERROR_SUCCESS)
return key;
}
else
{
if (RegOpenKeyEx (rootKey, name.toUTF16(), 0, KEY_READ, &key) == ERROR_SUCCESS)
if (RegOpenKeyEx (rootKey, name.toWideCharPointer(), 0, KEY_READ, &key) == ERROR_SUCCESS)
return key;
}
}
@@ -244185,7 +244188,7 @@ const String PlatformUtilities::getRegistryValue (const String& regValuePath,
unsigned long bufferSize = sizeof (buffer);
DWORD type = REG_SZ;

if (RegQueryValueEx (k, valueName.toUTF16(), 0, &type, (LPBYTE) buffer, &bufferSize) == ERROR_SUCCESS)
if (RegQueryValueEx (k, valueName.toWideCharPointer(), 0, &type, (LPBYTE) buffer, &bufferSize) == ERROR_SUCCESS)
{
if (type == REG_SZ)
result = buffer;
@@ -244207,7 +244210,7 @@ void PlatformUtilities::setRegistryValue (const String& regValuePath,

if (k != 0)
{
RegSetValueEx (k, valueName.toUTF16(), 0, REG_SZ,
RegSetValueEx (k, valueName.toWideCharPointer(), 0, REG_SZ,
(const BYTE*) value.toWideCharPointer(),
CharPointer_UTF16::getBytesRequiredFor (value.getCharPointer()));

@@ -244227,7 +244230,7 @@ bool PlatformUtilities::registryValueExists (const String& regValuePath)
unsigned long bufferSize = sizeof (buffer);
DWORD type = 0;

if (RegQueryValueEx (k, valueName.toUTF16(), 0, &type, buffer, &bufferSize) == ERROR_SUCCESS)
if (RegQueryValueEx (k, valueName.toWideCharPointer(), 0, &type, buffer, &bufferSize) == ERROR_SUCCESS)
exists = true;

RegCloseKey (k);
@@ -244243,7 +244246,7 @@ void PlatformUtilities::deleteRegistryValue (const String& regValuePath)

if (k != 0)
{
RegDeleteValue (k, valueName.toUTF16());
RegDeleteValue (k, valueName.toWideCharPointer());
RegCloseKey (k);
}
}
@@ -244255,7 +244258,7 @@ void PlatformUtilities::deleteRegistryKey (const String& regKeyPath)

if (k != 0)
{
RegDeleteKey (k, valueName.toUTF16());
RegDeleteKey (k, valueName.toWideCharPointer());
RegCloseKey (k);
}
}
@@ -244319,9 +244322,9 @@ void PlatformUtilities::setCurrentModuleInstanceHandle (void* const newHandle) t

void PlatformUtilities::fpuReset()
{
#if JUCE_MSVC
#if JUCE_MSVC
_clearfp();
#endif
#endif
}

void PlatformUtilities::beep()
@@ -244589,7 +244592,7 @@ void MessageManager::doPlatformSpecificInitialisation()
wc.lpfnWndProc = (WNDPROC) juce_MessageWndProc;
wc.cbWndExtra = 4;
wc.hInstance = hmod;
wc.lpszClassName = className.toUTF16();
wc.lpszClassName = className.toWideCharPointer();

RegisterClassEx (&wc);

@@ -244602,7 +244605,7 @@ void MessageManager::doPlatformSpecificInitialisation()
void MessageManager::doPlatformSpecificShutdown()
{
DestroyWindow (juce_messageWindowHandle);
UnregisterClass (getMessageWindowClassName().toUTF16(), 0);
UnregisterClass (getMessageWindowClassName().toWideCharPointer(), 0);
OleUninitialize();
}

@@ -245901,8 +245904,6 @@ static bool shouldDeactivateTitleBar = true;

#define WM_TRAYNOTIFY WM_USER + 100

using ::abs;

typedef BOOL (WINAPI* UpdateLayeredWinFunc) (HWND, HDC, POINT*, SIZE*, HDC, POINT*, COLORREF, BLENDFUNCTION*, DWORD);
static UpdateLayeredWinFunc updateLayeredWindow = 0;

@@ -246027,7 +246028,7 @@ public:
previousBitmap = SelectObject (hdc, hBitmap);

if (format_ == Image::ARGB && clearImage)
zeromem (bitmapData, abs (h * lineStride));
zeromem (bitmapData, std::abs (h * lineStride));

imageData = bitmapData - (lineStride * (h - 1));
}
@@ -246303,11 +246304,7 @@ public:
HWND parentToAddTo_)
: ComponentPeer (component, windowStyleFlags),
dontRepaint (false),
#if JUCE_DIRECT2D
currentRenderingEngine (direct2DRenderingEngine),
#else
currentRenderingEngine (softwareRenderingEngine),
#endif
fullScreen (false),
isDragging (false),
isMouseOver (false),
@@ -246374,7 +246371,7 @@ public:

void setTitle (const String& title)
{
SetWindowText (hwnd, title.toUTF16());
SetWindowText (hwnd, title.toWideCharPointer());
}

void setPosition (int x, int y)
@@ -246905,7 +246902,7 @@ private:
wcex.cbSize = sizeof (wcex);
wcex.style = CS_OWNDC;
wcex.lpfnWndProc = (WNDPROC) windowProc;
wcex.lpszClassName = windowClassName.toUTF16();
wcex.lpszClassName = windowClassName.toWideCharPointer();
wcex.cbClsExtra = 0;
wcex.cbWndExtra = 32;
wcex.hInstance = moduleHandle;
@@ -246922,7 +246919,7 @@ private:
~WindowClassHolder()
{
if (ComponentPeer::getNumPeers() == 0)
UnregisterClass (windowClassName.toUTF16(), (HINSTANCE) PlatformUtilities::getCurrentModuleInstanceHandle());
UnregisterClass (windowClassName.toWideCharPointer(), (HINSTANCE) PlatformUtilities::getCurrentModuleInstanceHandle());

clearSingletonInstance();
}
@@ -246987,12 +246984,12 @@ private:
&& Desktop::canUseSemiTransparentWindows())
exstyle |= WS_EX_LAYERED;

hwnd = CreateWindowEx (exstyle, WindowClassHolder::getInstance()->windowClassName.toUTF16(), L"", type, 0, 0, 0, 0,
hwnd = CreateWindowEx (exstyle, WindowClassHolder::getInstance()->windowClassName.toWideCharPointer(), L"", type, 0, 0, 0, 0,
parentToAddTo, 0, (HINSTANCE) PlatformUtilities::getCurrentModuleInstanceHandle(), 0);

#if JUCE_DIRECT2D
updateDirect2DContext();
#endif
#if JUCE_DIRECT2D
setCurrentRenderingEngine (1);
#endif

if (hwnd != 0)
{
@@ -247092,7 +247089,7 @@ private:

void handlePaintMessage()
{
#if JUCE_DIRECT2D
#if JUCE_DIRECT2D
if (direct2DContext != 0)
{
RECT r;
@@ -247106,7 +247103,8 @@ private:
}
}
else
#endif
#endif

{
HRGN rgn = CreateRectRgn (0, 0, 0, 0);
const int regionType = GetUpdateRgn (hwnd, rgn, false);
@@ -247231,9 +247229,9 @@ private:
EndPaint (hwnd, &paintStruct);
}

#ifndef JUCE_GCC //xxx should add this fn for gcc..
#ifndef JUCE_GCC
_fpreset(); // because some graphics cards can unmask FP exceptions
#endif
#endif

lastPaintTime = Time::getMillisecondCounter();
}
@@ -247247,15 +247245,11 @@ private:
{
StringArray s (ComponentPeer::getAvailableRenderingEngines());

#if JUCE_DIRECT2D
// xxx is this correct? Seems to enable it on Vista too??
OSVERSIONINFO info;
zerostruct (info);
info.dwOSVersionInfoSize = sizeof (OSVERSIONINFO);
GetVersionEx (&info);
if (info.dwMajorVersion >= 6)
#if JUCE_DIRECT2D
if (SystemStats::getOperatingSystemType() >= SystemStats::Windows7)
s.add ("Direct2D");
#endif
#endif

return s;
}

@@ -247264,7 +247258,7 @@ private:
return currentRenderingEngine;
}

#if JUCE_DIRECT2D
#if JUCE_DIRECT2D
void updateDirect2DContext()
{
if (currentRenderingEngine != direct2DRenderingEngine)
@@ -247272,17 +247266,20 @@ private:
else if (direct2DContext == 0)
direct2DContext = new Direct2DLowLevelGraphicsContext (hwnd);
}
#endif
#endif

void setCurrentRenderingEngine (int index)
{
(void) index;

#if JUCE_DIRECT2D
currentRenderingEngine = index == 1 ? direct2DRenderingEngine : softwareRenderingEngine;
updateDirect2DContext();
repaint (component->getLocalBounds());
#endif
#if JUCE_DIRECT2D
if (getAvailableRenderingEngines().size() > 1)
{
currentRenderingEngine = index == 1 ? direct2DRenderingEngine : softwareRenderingEngine;
updateDirect2DContext();
repaint (component->getLocalBounds());
}
#endif
}

void doMouseMove (const Point<int>& position)
@@ -248246,7 +248243,7 @@ bool AlertWindow::showNativeDialogBox (const String& title,
const String& bodyText,
bool isOkCancel)
{
return MessageBox (0, bodyText.toUTF16(), title.toUTF16(),
return MessageBox (0, bodyText.toWideCharPointer(), title.toWideCharPointer(),
MB_SETFOREGROUND | (isOkCancel ? MB_OKCANCEL
: MB_OK)) == IDOK;
}
@@ -248513,7 +248510,6 @@ class JuceDropSource : public ComBaseClassHelper <IDropSource>
{
public:
JuceDropSource() {}
~JuceDropSource() {}

HRESULT __stdcall QueryContinueDrag (BOOL escapePressed, DWORD keys)
{
@@ -248541,8 +248537,6 @@ public:
{
}

~JuceEnumFormatEtc() {}

HRESULT __stdcall Clone (IEnumFORMATETC** result)
{
if (result == 0)
@@ -248939,7 +248933,7 @@ void FileChooser::showPlatformDialog (Array<File>& results, const String& title_

bi.hwndOwner = (HWND) parentWindow.getWindowHandle();
bi.pszDisplayName = files;
bi.lpszTitle = title.toUTF16();
bi.lpszTitle = title.toWideCharPointer();
bi.lParam = (LPARAM) &info;
bi.lpfn = browseCallbackProc;
#ifdef BIF_USENEWUI
@@ -249006,8 +249000,8 @@ void FileChooser::showPlatformDialog (Array<File>& results, const String& title_
of.nFilterIndex = 1;
of.lpstrFile = files;
of.nMaxFile = charsAvailableForResult;
of.lpstrInitialDir = localPath.toUTF16();
of.lpstrTitle = title.toUTF16();
of.lpstrInitialDir = localPath.toWideCharPointer();
of.lpstrTitle = title.toWideCharPointer();
of.Flags = flags;
of.lCustData = (LPARAM) &info;

@@ -249115,7 +249109,6 @@ namespace ActiveXHelpers
{
public:
JuceIStorage() {}
~JuceIStorage() {}

HRESULT __stdcall CreateStream (const WCHAR*, DWORD, DWORD, DWORD, IStream**) { return E_NOTIMPL; }
HRESULT __stdcall OpenStream (const WCHAR*, void*, DWORD, DWORD, IStream**) { return E_NOTIMPL; }
@@ -249140,7 +249133,6 @@ namespace ActiveXHelpers

public:
JuceOleInPlaceFrame (HWND window_) : window (window_) {}
~JuceOleInPlaceFrame() {}

HRESULT __stdcall GetWindow (HWND* lphwnd) { *lphwnd = window; return S_OK; }
HRESULT __stdcall ContextSensitiveHelp (BOOL) { return E_NOTIMPL; }
@@ -253710,7 +253702,7 @@ private:
// doing a direct load of the COM object (only available via the juce_createASIOAudioIODeviceForGUID function).
if (optionalDllForDirectLoading.isNotEmpty())
{
HMODULE h = LoadLibrary (optionalDllForDirectLoading.toUTF16());
HMODULE h = LoadLibrary (optionalDllForDirectLoading.toWideCharPointer());

if (h != 0)
{
@@ -254690,7 +254682,7 @@ private:
{
HKEY subKey;

if (RegOpenKeyEx (hk, keyName.toUTF16(), 0, KEY_READ, &subKey) == ERROR_SUCCESS)
if (RegOpenKeyEx (hk, keyName.toWideCharPointer(), 0, KEY_READ, &subKey) == ERROR_SUCCESS)
{
TCHAR buf [256] = { 0 };
DWORD dtype = REG_SZ;
@@ -257455,7 +257447,7 @@ public:

if (SUCCEEDED (hr))
{
hr = fileSink->SetFileName (file.getFullPathName().toUTF16(), 0);
hr = fileSink->SetFileName (file.getFullPathName().toWideCharPointer(), 0);

if (SUCCEEDED (hr))
{
@@ -257499,7 +257491,7 @@ public:
.replace ("$AVGTIMEPERFRAME", String (10000000 / maxFramesPerSecond));

ComSmartPtr <IWMProfile> currentProfile;
hr = profileManager->LoadProfileByData (prof.toUTF16(), currentProfile.resetAndGetPointerAddress());
hr = profileManager->LoadProfileByData (prof.toWideCharPointer(), currentProfile.resetAndGetPointerAddress());
hr = asfConfig->ConfigureFilterUsingProfile (currentProfile);

if (SUCCEEDED (hr))


+ 3
- 5
juce_amalgamated.h View File

@@ -73,7 +73,7 @@ namespace JuceDummyNamespace {}
*/
#define JUCE_MAJOR_VERSION 1
#define JUCE_MINOR_VERSION 53
#define JUCE_BUILDNUMBER 48
#define JUCE_BUILDNUMBER 49

/** Current Juce version number.

@@ -17390,8 +17390,6 @@ public:

/** Returns the current version of JUCE,

(just in case you didn't already know at compile-time.)

See also the JUCE_VERSION, JUCE_MAJOR_VERSION and JUCE_MINOR_VERSION macros.
*/
static const String getJUCEVersion();
@@ -34172,8 +34170,8 @@ public:
inline void skip (int numSamples) throw() { data += numSamples; }
inline float getAsFloatLE() const throw() { return (float) ((1.0 / (1.0 + maxValue)) * (int16) ByteOrder::swapIfBigEndian (*data)); }
inline float getAsFloatBE() const throw() { return (float) ((1.0 / (1.0 + maxValue)) * (int16) ByteOrder::swapIfLittleEndian (*data)); }
inline void setAsFloatLE (float newValue) throw() { *data = ByteOrder::swapIfBigEndian ((uint16) jlimit ((int16) -maxValue, (int16) maxValue, (int16) roundToInt (newValue * (1.0 + maxValue)))); }
inline void setAsFloatBE (float newValue) throw() { *data = ByteOrder::swapIfLittleEndian ((uint16) jlimit ((int16) -maxValue, (int16) maxValue, (int16) roundToInt (newValue * (1.0 + maxValue)))); }
inline void setAsFloatLE (float newValue) throw() { *data = ByteOrder::swapIfBigEndian ((uint16) jlimit ((int) -maxValue, (int) maxValue, roundToInt (newValue * (1.0 + maxValue)))); }
inline void setAsFloatBE (float newValue) throw() { *data = ByteOrder::swapIfLittleEndian ((uint16) jlimit ((int) -maxValue, (int) maxValue, roundToInt (newValue * (1.0 + maxValue)))); }
inline int32 getAsInt32LE() const throw() { return (int32) (ByteOrder::swapIfBigEndian ((uint16) *data) << 16); }
inline int32 getAsInt32BE() const throw() { return (int32) (ByteOrder::swapIfLittleEndian ((uint16) *data) << 16); }
inline void setAsInt32LE (int32 newValue) throw() { *data = ByteOrder::swapIfBigEndian ((uint16) (newValue >> 16)); }


+ 2
- 2
src/audio/dsp/juce_AudioDataConverters.h View File

@@ -156,8 +156,8 @@ public:
inline void skip (int numSamples) throw() { data += numSamples; }
inline float getAsFloatLE() const throw() { return (float) ((1.0 / (1.0 + maxValue)) * (int16) ByteOrder::swapIfBigEndian (*data)); }
inline float getAsFloatBE() const throw() { return (float) ((1.0 / (1.0 + maxValue)) * (int16) ByteOrder::swapIfLittleEndian (*data)); }
inline void setAsFloatLE (float newValue) throw() { *data = ByteOrder::swapIfBigEndian ((uint16) jlimit ((int16) -maxValue, (int16) maxValue, (int16) roundToInt (newValue * (1.0 + maxValue)))); }
inline void setAsFloatBE (float newValue) throw() { *data = ByteOrder::swapIfLittleEndian ((uint16) jlimit ((int16) -maxValue, (int16) maxValue, (int16) roundToInt (newValue * (1.0 + maxValue)))); }
inline void setAsFloatLE (float newValue) throw() { *data = ByteOrder::swapIfBigEndian ((uint16) jlimit ((int) -maxValue, (int) maxValue, roundToInt (newValue * (1.0 + maxValue)))); }
inline void setAsFloatBE (float newValue) throw() { *data = ByteOrder::swapIfLittleEndian ((uint16) jlimit ((int) -maxValue, (int) maxValue, roundToInt (newValue * (1.0 + maxValue)))); }
inline int32 getAsInt32LE() const throw() { return (int32) (ByteOrder::swapIfBigEndian ((uint16) *data) << 16); }
inline int32 getAsInt32BE() const throw() { return (int32) (ByteOrder::swapIfLittleEndian ((uint16) *data) << 16); }
inline void setAsInt32LE (int32 newValue) throw() { *data = ByteOrder::swapIfBigEndian ((uint16) (newValue >> 16)); }


+ 1
- 1
src/core/juce_StandardHeader.h View File

@@ -33,7 +33,7 @@
*/
#define JUCE_MAJOR_VERSION 1
#define JUCE_MINOR_VERSION 53
#define JUCE_BUILDNUMBER 48
#define JUCE_BUILDNUMBER 49
/** Current Juce version number.


Loading…
Cancel
Save