1
0
Fork 0
mirror of https://github.com/juce-framework/JUCE.git synced 2026-01-18 00:54:19 +00:00

whitespace clean-up

This commit is contained in:
Julian Storer 2009-10-12 13:40:26 +01:00
parent 1fc8f483e2
commit 9a82129507
14 changed files with 81 additions and 497 deletions

View file

@ -62,7 +62,7 @@ public:
{
// just create the main window...
theMainWindow = new MainDemoWindow();
#if JUCE_IPHONE
theMainWindow->setVisible (true);
theMainWindow->setBounds (0, 20, 320, 460);

View file

@ -34,7 +34,7 @@
// Endianness conversions..
#if JUCE_IPHONE
// a gcc compiler error seems to mean that these functions only work properly
// a gcc compiler error seems to mean that these functions only work properly
// on the iPhone if they are declared static..
static forcedinline uint32 swapByteOrder (uint32 n) throw();
static inline uint16 swapByteOrder (const uint16 n) throw();

View file

@ -147,7 +147,7 @@ public:
@param addresses an array into which the MAC addresses should be copied
@param maxNum the number of elements in this array
@param littleEndian the endianness of the numbers to return. If this is true,
@param littleEndian the endianness of the numbers to return. If this is true,
the least-significant byte of each number is the first byte
of the mac address. If false, the least significant byte is
the last number. Note that the default values of this parameter

View file

@ -166,4 +166,4 @@
#endif
#endif // __JUCE_PLATFORMDEFS_JUCEHEADER__
#endif // __JUCE_TARGETPLATFORM_JUCEHEADER__

View file

@ -72,7 +72,7 @@ DocumentWindow::~DocumentWindow()
void DocumentWindow::repaintTitleBar()
{
const Rectangle titleBarArea (getTitleBarArea());
repaint (titleBarArea.getX(), titleBarArea.getY(),
repaint (titleBarArea.getX(), titleBarArea.getY(),
titleBarArea.getWidth(), titleBarArea.getHeight());
}
@ -178,9 +178,9 @@ void DocumentWindow::paint (Graphics& g)
if (resizableBorder == 0)
{
g.setColour (getBackgroundColour().overlaidWith (Colour (0x80000000)));
const BorderSize border (getBorderThickness());
g.fillRect (0, 0, getWidth(), border.getTop());
g.fillRect (0, border.getTop(), border.getLeft(), getHeight() - border.getTopAndBottom());
g.fillRect (getWidth() - border.getRight(), border.getTop(), border.getRight(), getHeight() - border.getTopAndBottom());
@ -208,9 +208,9 @@ void DocumentWindow::paint (Graphics& g)
getLookAndFeel().drawDocumentWindowTitleBar (*this, g,
titleBarArea.getWidth(),
titleBarArea.getHeight(),
titleSpaceX1,
titleSpaceX1,
jmax (1, titleSpaceX2 - titleSpaceX1),
titleBarIcon,
titleBarIcon,
! drawTitleTextCentred);
}
@ -222,7 +222,7 @@ void DocumentWindow::resized()
titleBarButtons[1]->setToggleState (isFullScreen(), false);
const Rectangle titleBarArea (getTitleBarArea());
getLookAndFeel()
.positionDocumentWindowButtons (*this,
titleBarArea.getX(), titleBarArea.getY(),
@ -250,7 +250,7 @@ const BorderSize DocumentWindow::getContentComponentBorder()
border.setTop (border.getTop()
+ (isUsingNativeTitleBar() ? 0 : titleBarHeight)
+ (menuBar != 0 ? menuBarHeight : 0));
return border;
}
@ -264,7 +264,7 @@ const Rectangle DocumentWindow::getTitleBarArea()
const BorderSize border (getBorderThickness());
return Rectangle (border.getLeft(), border.getTop(),
getWidth() - border.getLeftAndRight(),
getWidth() - border.getLeftAndRight(),
getTitleBarHeight());
}

View file

@ -188,9 +188,6 @@
#ifndef __JUCE_AUDIOCDBURNER_JUCEHEADER__
#include "audio/audio_file_formats/juce_AudioCDBurner.h"
#endif
#ifndef __JUCE_AUDIOCDREADER_JUCEHEADER__
#include "audio/audio_file_formats/juce_AudioCDReader.h"
#endif
#ifndef __JUCE_AUDIOFORMAT_JUCEHEADER__
#include "audio/audio_file_formats/juce_AudioFormat.h"
#endif
@ -209,15 +206,18 @@
#ifndef __JUCE_FLACAUDIOFORMAT_JUCEHEADER__
#include "audio/audio_file_formats/juce_FlacAudioFormat.h"
#endif
#ifndef __JUCE_AUDIOSUBSECTIONREADER_JUCEHEADER__
#include "audio/audio_file_formats/juce_AudioSubsectionReader.h"
#endif
#ifndef __JUCE_WAVAUDIOFORMAT_JUCEHEADER__
#include "audio/audio_file_formats/juce_WavAudioFormat.h"
#endif
#ifndef __JUCE_AUDIOSUBSECTIONREADER_JUCEHEADER__
#include "audio/audio_file_formats/juce_AudioSubsectionReader.h"
#endif
#ifndef __JUCE_AUDIOTHUMBNAIL_JUCEHEADER__
#include "audio/audio_file_formats/juce_AudioThumbnail.h"
#endif
#ifndef __JUCE_AUDIOCDREADER_JUCEHEADER__
#include "audio/audio_file_formats/juce_AudioCDReader.h"
#endif
#ifndef __JUCE_OGGVORBISAUDIOFORMAT_JUCEHEADER__
#include "audio/audio_file_formats/juce_OggVorbisAudioFormat.h"
#endif
@ -629,12 +629,12 @@
#ifndef __JUCE_FILEPREVIEWCOMPONENT_JUCEHEADER__
#include "gui/components/filebrowser/juce_FilePreviewComponent.h"
#endif
#ifndef __JUCE_FILESEARCHPATHLISTCOMPONENT_JUCEHEADER__
#include "gui/components/filebrowser/juce_FileSearchPathListComponent.h"
#endif
#ifndef __JUCE_FILETREECOMPONENT_JUCEHEADER__
#include "gui/components/filebrowser/juce_FileTreeComponent.h"
#endif
#ifndef __JUCE_FILESEARCHPATHLISTCOMPONENT_JUCEHEADER__
#include "gui/components/filebrowser/juce_FileSearchPathListComponent.h"
#endif
#ifndef __JUCE_FILENAMECOMPONENT_JUCEHEADER__
#include "gui/components/filebrowser/juce_FilenameComponent.h"
#endif
@ -662,17 +662,14 @@
#ifndef __JUCE_SPLASHSCREEN_JUCEHEADER__
#include "gui/components/windows/juce_SplashScreen.h"
#endif
#ifndef __JUCE_THREADWITHPROGRESSWINDOW_JUCEHEADER__
#include "gui/components/windows/juce_ThreadWithProgressWindow.h"
#endif
#ifndef __JUCE_TOOLTIPWINDOW_JUCEHEADER__
#include "gui/components/windows/juce_TooltipWindow.h"
#endif
#ifndef __JUCE_TOPLEVELWINDOW_JUCEHEADER__
#include "gui/components/windows/juce_TopLevelWindow.h"
#endif
#ifndef __JUCE_ACTIVEXCONTROLCOMPONENT_JUCEHEADER__
#include "gui/components/special/juce_ActiveXControlComponent.h"
#ifndef __JUCE_THREADWITHPROGRESSWINDOW_JUCEHEADER__
#include "gui/components/windows/juce_ThreadWithProgressWindow.h"
#endif
#ifndef __JUCE_AUDIODEVICESELECTORCOMPONENT_JUCEHEADER__
#include "gui/components/special/juce_AudioDeviceSelectorComponent.h"
@ -683,12 +680,12 @@
#ifndef __JUCE_COLOURSELECTOR_JUCEHEADER__
#include "gui/components/special/juce_ColourSelector.h"
#endif
#ifndef __JUCE_BUBBLEMESSAGECOMPONENT_JUCEHEADER__
#include "gui/components/special/juce_BubbleMessageComponent.h"
#endif
#ifndef __JUCE_DROPSHADOWER_JUCEHEADER__
#include "gui/components/special/juce_DropShadower.h"
#endif
#ifndef __JUCE_BUBBLEMESSAGECOMPONENT_JUCEHEADER__
#include "gui/components/special/juce_BubbleMessageComponent.h"
#endif
#ifndef __JUCE_WEBBROWSERCOMPONENT_JUCEHEADER__
#include "gui/components/special/juce_WebBrowserComponent.h"
#endif
@ -698,12 +695,12 @@
#ifndef __JUCE_NSVIEWCOMPONENT_JUCEHEADER__
#include "gui/components/special/juce_NSViewComponent.h"
#endif
#ifndef __JUCE_MIDIKEYBOARDCOMPONENT_JUCEHEADER__
#include "gui/components/special/juce_MidiKeyboardComponent.h"
#endif
#ifndef __JUCE_OPENGLCOMPONENT_JUCEHEADER__
#include "gui/components/special/juce_OpenGLComponent.h"
#endif
#ifndef __JUCE_MIDIKEYBOARDCOMPONENT_JUCEHEADER__
#include "gui/components/special/juce_MidiKeyboardComponent.h"
#endif
#ifndef __JUCE_PREFERENCESPANEL_JUCEHEADER__
#include "gui/components/special/juce_PreferencesPanel.h"
#endif
@ -713,6 +710,9 @@
#ifndef __JUCE_SYSTEMTRAYICONCOMPONENT_JUCEHEADER__
#include "gui/components/special/juce_SystemTrayIconComponent.h"
#endif
#ifndef __JUCE_ACTIVEXCONTROLCOMPONENT_JUCEHEADER__
#include "gui/components/special/juce_ActiveXControlComponent.h"
#endif
#ifndef __JUCE_LOOKANDFEEL_JUCEHEADER__
#include "gui/components/lookandfeel/juce_LookAndFeel.h"
#endif

View file

@ -29,9 +29,6 @@
#ifndef __JUCE_ATOMIC_JUCEHEADER__
#include "core/juce_Atomic.h"
#endif
#ifndef __JUCE_DATACONVERSIONS_JUCEHEADER__
#include "core/juce_DataConversions.h"
#endif
#ifndef __JUCE_FILELOGGER_JUCEHEADER__
#include "core/juce_FileLogger.h"
#endif
@ -41,42 +38,48 @@
#ifndef __JUCE_LOGGER_JUCEHEADER__
#include "core/juce_Logger.h"
#endif
#ifndef __JUCE_MATHSFUNCTIONS_JUCEHEADER__
#include "core/juce_MathsFunctions.h"
#endif
#ifndef __JUCE_MEMORY_JUCEHEADER__
#include "core/juce_Memory.h"
#endif
#ifndef __JUCE_PERFORMANCECOUNTER_JUCEHEADER__
#include "core/juce_PerformanceCounter.h"
#endif
#ifndef __JUCE_PLATFORMDEFS_JUCEHEADER__
#include "core/juce_PlatformDefs.h"
#endif
#ifndef __JUCE_PLATFORMUTILITIES_JUCEHEADER__
#include "core/juce_PlatformUtilities.h"
#endif
#ifndef __JUCE_RANDOM_JUCEHEADER__
#include "core/juce_Random.h"
#endif
#ifndef __JUCE_DATACONVERSIONS_JUCEHEADER__
#include "core/juce_DataConversions.h"
#endif
#ifndef __JUCE_RELATIVETIME_JUCEHEADER__
#include "core/juce_RelativeTime.h"
#endif
#ifndef __JUCE_SINGLETON_JUCEHEADER__
#include "core/juce_Singleton.h"
#endif
#ifndef __JUCE_STANDARDHEADER_JUCEHEADER__
#include "core/juce_StandardHeader.h"
#ifndef __JUCE_TIME_JUCEHEADER__
#include "core/juce_Time.h"
#endif
#ifndef __JUCE_SYSTEMSTATS_JUCEHEADER__
#include "core/juce_SystemStats.h"
#endif
#ifndef __JUCE_TIME_JUCEHEADER__
#include "core/juce_Time.h"
#endif
#ifndef __JUCE_UUID_JUCEHEADER__
#include "core/juce_Uuid.h"
#endif
#ifndef __JUCE_TARGETPLATFORM_JUCEHEADER__
#include "core/juce_TargetPlatform.h"
#endif
#ifndef __JUCE_STANDARDHEADER_JUCEHEADER__
#include "core/juce_StandardHeader.h"
#endif
#ifndef __JUCE_PLATFORMUTILITIES_JUCEHEADER__
#include "core/juce_PlatformUtilities.h"
#endif
#ifndef __JUCE_PLATFORMDEFS_JUCEHEADER__
#include "core/juce_PlatformDefs.h"
#endif
#ifndef __JUCE_MATHSFUNCTIONS_JUCEHEADER__
#include "core/juce_MathsFunctions.h"
#endif
#ifndef __JUCE_ARRAY_JUCEHEADER__
#include "containers/juce_Array.h"
#endif

View file

@ -104,8 +104,7 @@ BEGIN_JUCE_NAMESPACE
#include "mac/juce_mac_OpenGLComponent.mm"
#include "mac/juce_mac_MouseCursor.mm"
#include "mac/juce_mac_WebBrowserComponent.mm"
//#include "mac/juce_mac_CoreAudio.cpp"
//#include "mac/juce_mac_CameraDevice.mm"
#include "mac/juce_iphone_Audio.cpp"
#include "mac/juce_mac_CoreMidi.cpp"
#else
#include "mac/juce_mac_NSViewComponentPeer.mm"

View file

@ -28,422 +28,5 @@
#ifdef JUCE_INCLUDED_FILE
@interface UIKitAUIOHost : UIViewController
{
@public
/** READONLY The audio format of the data stream. */
AudioStreamBasicDescription format;
AURenderCallbackStruct inputProc;
Float64 hwSampleRate;
AudioUnit rioUnit;
UGen rawInput;
UGen postFadeOutput;
UGen preFadeOutput;
int bufferSize;
float *floatBuffer;
UInt32 audioInputIsAvailable;
UInt32 numInputChannels;
UInt32 numOutputChannels;
bool isRunning;
float fadeInTime;
UGenArray others;
NSLock* nsLock;
}
/** Initialises the AudioUnit framework and structures.
Do not call this method, it is called automatically when the application launches. */
- (void)initAudio;
/** Construct a UGen graph.
You must implement this in your subclass. You should return a UGen which will be the UGen graph which is
performed and rendered to the host. The input parameter may be ignored if only signal generation is required
or may be used if a processing algorithm is being implemented (e.g., filtering incoming audio data).
@param input The input UGen which will contain audio data from the host.
@return the UGen graph which will be performed */
- (UGen)constructGraph:(UGen)input;
- (void)addOther:(UGen)ugen;
- (void)lock;
- (void)unlock;
- (BOOL)tryLock;
@end
#define NUM_CHANNELS 2
void SetFormat(AudioStreamBasicDescription& format)
{
memset(&format, 0, sizeof(AudioStreamBasicDescription));
format.mFormatID = kAudioFormatLinearPCM;
int sampleSize = sizeof(AudioSampleType);
format.mFormatFlags = kAudioFormatFlagsCanonical;
format.mBitsPerChannel = 8 * sampleSize;
format.mChannelsPerFrame = NUM_CHANNELS;
format.mFramesPerPacket = 1;
format.mBytesPerPacket = format.mBytesPerFrame = sampleSize;
format.mFormatFlags |= kAudioFormatFlagIsNonInterleaved;
}
int SetupRemoteIO (AudioUnit& inRemoteIOUnit, AURenderCallbackStruct inRenderProc, AudioStreamBasicDescription& outFormat)
{
// Open the output unit
AudioComponentDescription desc;
desc.componentType = kAudioUnitType_Output;
desc.componentSubType = kAudioUnitSubType_RemoteIO;
desc.componentManufacturer = kAudioUnitManufacturer_Apple;
desc.componentFlags = 0;
desc.componentFlagsMask = 0;
AudioComponent comp = AudioComponentFindNext (NULL, &desc);
AudioComponentInstanceNew (comp, &inRemoteIOUnit);
const UInt32 one = 1;
AudioUnitSetProperty(inRemoteIOUnit, kAudioOutputUnitProperty_EnableIO, kAudioUnitScope_Input, 1, &one, sizeof(one));
AudioUnitSetProperty(inRemoteIOUnit, kAudioUnitProperty_SetRenderCallback, kAudioUnitScope_Input, 0, &inRenderProc, sizeof(inRenderProc));
AudioUnitSetProperty(inRemoteIOUnit, kAudioUnitProperty_StreamFormat, kAudioUnitScope_Input, 0, &outFormat, sizeof(outFormat));
AudioUnitSetProperty(inRemoteIOUnit, kAudioUnitProperty_StreamFormat, kAudioUnitScope_Output, 1, &outFormat, sizeof(outFormat));
AudioUnitInitialize(inRemoteIOUnit);
return 0;
}
static const float FloatToFixed824_Factor = 16777216.f;
static const float Fixed824ToFloat_Factor = 5.960464477539e-08f;
static const float FloatToPCM16Bit_Factor = 32767.f;
static const float PCM16BitToFloat_Factor = 3.051850947600e-05f;
static OSStatus PerformThru(void *inRefCon,
AudioUnitRenderActionFlags *ioActionFlags,
const AudioTimeStamp *inTimeStamp,
UInt32 inBusNumber,
UInt32 inNumberFrames,
AudioBufferList *ioData)
{
OSStatus err = 0;
UIKitAUIOHost *x = (UIKitAUIOHost *)inRefCon;
[x lock];
if(x->audioInputIsAvailable)
{
err = AudioUnitRender(x->rioUnit, ioActionFlags, inTimeStamp, 1, inNumberFrames, ioData);
if (err) { printf("PerformThru: error %d\n", (int)err); return err; }
}
if(inNumberFrames > x->bufferSize)
{
delete [] x->floatBuffer;
x->bufferSize = inNumberFrames;
x->floatBuffer = new float[inNumberFrames * NUM_CHANNELS];
}
long blockID = UGen::getNextBlockID(inNumberFrames);
float *floatBufferData[2];
floatBufferData[0] = x->floatBuffer;
floatBufferData[1] = floatBufferData[0] + inNumberFrames;
if(x->audioInputIsAvailable)
{
for (UInt32 channel = 0; channel < x->numInputChannels; channel++)
{
AudioSampleType *audioUnitBuffer = (AudioSampleType*)ioData->mBuffers[0].mData;
float *floatBuffer = floatBufferData[channel];
for(int sample = 0; sample < inNumberFrames; sample++)
{
floatBuffer[sample] = (float)audioUnitBuffer[sample] * PCM16BitToFloat_Factor;
}
}
x->rawInput.getSource().setInputs((const float**)floatBufferData, inNumberFrames, x->numInputChannels);
}
else
{
memset(x->floatBuffer, 0, x->numInputChannels * inNumberFrames * sizeof(float));
}
x->postFadeOutput.setOutputs(floatBufferData, inNumberFrames, 2);
x->postFadeOutput.prepareAndProcessBlock(inNumberFrames, blockID);
for (UInt32 channel = 0; channel < ioData->mNumberBuffers; channel++)
{
AudioSampleType *audioUnitBuffer = (AudioSampleType*)ioData->mBuffers[channel].mData;
float *floatBuffer = floatBufferData[channel];
for(int sample = 0; sample < inNumberFrames; sample++)
{
audioUnitBuffer[sample] = (AudioSampleType)(floatBuffer[sample] * FloatToPCM16Bit_Factor);
}
}
for(int i = 0; i < x->others.size(); i++)
{
x->others[i].prepareAndProcessBlock(inNumberFrames, blockID);
}
[x unlock];
return err;
}
void propListener(void * inClientData,
AudioSessionPropertyID inID,
UInt32 inDataSize,
const void * inPropertyValue)
{
printf("Property changed!\n");
UIKitAUIOHost *x = (UIKitAUIOHost *)inClientData;
if(!x->isRunning) return;
if(inPropertyValue)
{
CFDictionaryRef routeChangeDictionary = (CFDictionaryRef)inPropertyValue;
CFNumberRef routeChangeReasonRef =
(CFNumberRef)CFDictionaryGetValue (routeChangeDictionary,
CFSTR (kAudioSession_AudioRouteChangeKey_Reason));
SInt32 routeChangeReason;
CFNumberGetValue(routeChangeReasonRef, kCFNumberSInt32Type, &routeChangeReason);
CFStringRef newAudioRoute;
UInt32 propertySize = sizeof (CFStringRef);
AudioSessionGetProperty(kAudioSessionProperty_AudioRoute, &propertySize, &newAudioRoute);
printf("route=%s\n", CFStringGetCStringPtr(newAudioRoute, CFStringGetSystemEncoding()));
}
UInt32 size = sizeof(UInt32);
AudioSessionGetProperty(kAudioSessionProperty_CurrentHardwareInputNumberChannels, &size, &x->numInputChannels);
AudioSessionGetProperty(kAudioSessionProperty_CurrentHardwareOutputNumberChannels, &size, &x->numOutputChannels);
AudioSessionGetProperty(kAudioSessionProperty_AudioInputAvailable, &size, &x->audioInputIsAvailable);
printf("inputs=%d outputs=%d audioInputIsAvailable=%d\n", x->numInputChannels, x->numOutputChannels, x->audioInputIsAvailable);
if(x->rioUnit)
{
AudioComponentInstanceDispose(x->rioUnit);
}
SetFormat(x->format);
SetupRemoteIO(x->rioUnit, x->inputProc, x->format);
x->rawInput.setSource(AudioIn::AR(x->numInputChannels), true);
x->postFadeOutput = Plug::AR(UGen::emptyChannels(x->preFadeOutput.getNumChannels()));
x->postFadeOutput.fadeSourceAndRelease(x->preFadeOutput, x->fadeInTime);
AudioSessionSetActive(true);
AudioOutputUnitStart(x->rioUnit);
}
void rioInterruptionListener(void *inClientData, UInt32 inInterruption)
{
printf("Session interrupted! --- %s ---\n", inInterruption == kAudioSessionBeginInterruption ? "Begin Interruption" : "End Interruption");
UIKitAUIOHost *x = (UIKitAUIOHost *)inClientData;
if (inInterruption == kAudioSessionEndInterruption) {
// make sure we are again the active session
//AudioSessionSetActive(false);
AudioSessionSetActive(true);
x->isRunning = true;
AudioOutputUnitStart(x->rioUnit);
}
if (inInterruption == kAudioSessionBeginInterruption) {
x->isRunning = false;
AudioOutputUnitStop(x->rioUnit);
printf("rioInterruptionListener audioInputIsAvailable=%d\n", x->audioInputIsAvailable);
UIAlertView *baseAlert = [[UIAlertView alloc] initWithTitle:@"Audio interrupted"
message:@"This could have been interrupted by another application or due to unplugging a headset:"
delegate:x
cancelButtonTitle:nil
otherButtonTitles:@"Resume", @"Cancel", nil];
[baseAlert show];
}
}
@implementation UIKitAUIOHost
- (id)init
{
if (self = [super init])
{
nsLock = [[NSLock alloc] init];
fadeInTime = 1.0;
[self performSelector:@selector(initAudio) withObject:nil afterDelay:1.0];
}
return self;
}
- (void)initAudio
{
// render proc
inputProc.inputProc = PerformThru;
inputProc.inputProcRefCon = self;
// session
AudioSessionInitialize (NULL, NULL, rioInterruptionListener, self);
AudioSessionSetActive (true);
UInt32 audioCategory = kAudioSessionCategory_PlayAndRecord;
AudioSessionSetProperty(kAudioSessionProperty_AudioCategory, sizeof(audioCategory), &audioCategory);
AudioSessionAddPropertyListener(kAudioSessionProperty_AudioRouteChange, propListener, self);
UInt32 size = sizeof(hwSampleRate);
AudioSessionGetProperty(kAudioSessionProperty_CurrentHardwareSampleRate, &size, &hwSampleRate);
Float32 bufferDuration = 512 / hwSampleRate;
AudioSessionSetProperty(kAudioSessionProperty_PreferredHardwareIOBufferDuration, sizeof(bufferDuration), &bufferDuration);
UGen::initialise();
UGen::prepareToPlay(hwSampleRate, 512);
rawInput = Plug::AR(UGen::emptyChannels(2));
preFadeOutput = [self constructGraph: rawInput];
rioUnit = NULL;
isRunning = true;
propListener((void*)self, 0,0,0);
size = sizeof(format);
AudioUnitGetProperty(rioUnit, kAudioUnitProperty_StreamFormat, kAudioUnitScope_Output, 1, &format, &size);
//Float32 bufferDuration;
size = sizeof(bufferDuration);
AudioSessionGetProperty(kAudioSessionProperty_CurrentHardwareIOBufferDuration, &size, &bufferDuration);
bufferSize = (int)(hwSampleRate*bufferDuration+0.5);
floatBuffer = new float[bufferSize * NUM_CHANNELS];
}
- (UGen)constructGraph:(UGen)input
{
return UGen::emptyChannels(NUM_CHANNELS);
}
- (void)addOther:(UGen)ugen
{
[self lock];
others <<= ugen;
[self unlock];
}
- (void)lock
{
[nsLock lock];
}
- (void)unlock
{
[nsLock unlock];
}
- (BOOL)tryLock
{
return [nsLock tryLock];
}
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
printf("buttonIndex=%d\n", buttonIndex);
if(buttonIndex == 0)
{
// resume
isRunning = true;
propListener((void*)self, 0,0,0);
}
[alertView release];
}
-(void) dealloc
{
UGen::shutdown();
delete [] floatBuffer;
[nsLock release];
[super dealloc];
}
@end
//==============================================================================
class IPhoneAudioIODeviceType : public AudioIODeviceType
{
public:
//==============================================================================
IPhoneAudioIODeviceType()
: AudioIODeviceType (T("iPhone Audio")),
hasScanned (false)
{
}
~IPhoneAudioIODeviceType()
{
}
//==============================================================================
void scanForDevices()
{
}
const StringArray getDeviceNames (const bool wantInputNames) const
{
StringArray s;
return s;
}
int getDefaultDeviceIndex (const bool forInput) const
{
return 0;
}
int getIndexOfDevice (AudioIODevice* device, const bool asInput) const
{
return 0;
}
bool hasSeparateInputsAndOutputs() const { return true; }
AudioIODevice* createDevice (const String& outputDeviceName,
const String& inputDeviceName)
{
if (outputDeviceName.isNotEmpty() && inputDeviceName.isNotEmpty())
return new CoreAudioIODevice (deviceName,
inputIds [inputIndex],
inputIndex,
outputIds [outputIndex],
outputIndex);
return 0;
}
//==============================================================================
juce_UseDebuggingNewOperator
private:
IPhoneAudioIODeviceType (const IPhoneAudioIODeviceType&);
const IPhoneAudioIODeviceType& operator= (const IPhoneAudioIODeviceType&);
};
//==============================================================================
AudioIODeviceType* juce_createAudioIODeviceType_iPhoneAudio()
{
return new IPhoneAudioIODeviceType();
}
#endif

View file

@ -108,7 +108,7 @@ bool AlertWindow::showNativeDialogBox (const String& title,
otherButtonTitles: (isOkCancel ? @"Cancel" : nil), nil] autorelease];
alert.cancelButtonIndex = alert.firstOtherButtonIndex;
[alert show];
// xxx need to use a delegate to find which button was clicked
return false;
}

View file

@ -189,12 +189,12 @@ static int64 getMouseTime (UIEvent* e) { return (int64) [e timestamp] * 1000.0;
//==============================================================================
- (void) touchesBegan: (NSSet*) touches withEvent: (UIEvent*) event
{
NSArray* const t = [[event touchesForView: self] allObjects];
NSArray* const t = [[event touchesForView: self] allObjects];
switch ([t count])
{
case 1: // One finger..
{
switch ([t count])
{
case 1: // One finger..
{
CGPoint p = [[t objectAtIndex: 0] locationInView: self];
currentModifiers |= getModifierForButtonNumber (0);
@ -209,12 +209,12 @@ static int64 getMouseTime (UIEvent* e) { return (int64) [e timestamp] * 1000.0;
- (void) touchesMoved: (NSSet*) touches withEvent: (UIEvent*) event
{
NSArray* const t = [[event touchesForView: self] allObjects];
NSArray* const t = [[event touchesForView: self] allObjects];
switch ([t count])
{
case 1: // One finger..
{
switch ([t count])
{
case 1: // One finger..
{
CGPoint p = [[t objectAtIndex: 0] locationInView: self];
owner->handleMouseDrag (p.x, p.y, getMouseTime (event));
}
@ -227,12 +227,12 @@ static int64 getMouseTime (UIEvent* e) { return (int64) [e timestamp] * 1000.0;
- (void) touchesEnded: (NSSet*) touches withEvent: (UIEvent*) event
{
NSArray* const t = [[event touchesForView: self] allObjects];
NSArray* const t = [[event touchesForView: self] allObjects];
switch ([t count])
{
case 1: // One finger..
{
switch ([t count])
{
case 1: // One finger..
{
CGPoint p = [[t objectAtIndex: 0] locationInView: self];
const int oldMods = currentModifiers;
currentModifiers &= ~getModifierForButtonNumber (0);
@ -312,9 +312,9 @@ public:
lineStride, pixelStride);
CGDataProviderRef provider = CGDataProviderCreateWithData (0, imageData, lineStride * pixelStride, 0);
imageRef = CGImageCreate (width, height,
8, pixelStride * 8, lineStride,
imageRef = CGImageCreate (width, height,
8, pixelStride * 8, lineStride,
CGColorSpaceCreateDeviceRGB(),
hasAlpha ? (kCGImageAlphaFirst | kCGBitmapByteOrder32Little) : kCGBitmapByteOrderDefault,
provider,
@ -322,7 +322,7 @@ public:
true, kCGRenderingIntentDefault);
juceImage.releasePixelDataReadWrite (imageData);
uiImage = [[UIImage imageWithCGImage: imageRef] retain];
}
@ -360,7 +360,7 @@ public:
if (juceImage.hasAlphaChannel())
swapRGBOrder (0, 0, juceImage.getWidth(), juceImage.getHeight());*/
}
private:
@ -793,7 +793,7 @@ void UIViewComponentPeer::drawRect (CGRect r)
return;
DBG (Rectangle (r.origin.x, r.origin.y, r.size.width, r.size.height).toString());
const float y = r.origin.y;//[view frame].size.height - (r.origin.y + r.size.height);
JuceUIImage temp ((int) (r.size.width + 0.5f),
@ -806,7 +806,7 @@ void UIViewComponentPeer::drawRect (CGRect r)
context.setOrigin (originX, originY);
handlePaint (context);
//CGContextClipToRect (UIGraphicsGetCurrentContext(), r);
temp.draw (r.origin.x, r.origin.y);
}

View file

@ -163,7 +163,7 @@ void FileChooser::showPlatformDialog (OwnedArray<File>& results,
FilePreviewComponent* extraInfoComponent)
{
const ScopedAutoReleasePool pool;
jassertfalse //xxx to do
}

View file

@ -301,7 +301,7 @@ const File File::getLinkedTarget() const throw()
#else
NSString* dest = [[NSFileManager defaultManager] pathContentOfSymbolicLinkAtPath: juceStringToNS (getFullPathName())];
#endif
if (dest != nil)
return File (nsStringToJuce (dest));
@ -348,7 +348,7 @@ bool juce_findFileNext (void* handle, String& resultFile,
[ff->enumerator skipDescendents];
resultFile = nsStringToJuce (file);
const String path (ff->parentDir + resultFile);
if (isDir != 0 || fileSize != 0)
@ -380,7 +380,7 @@ bool juce_findFileNext (void* handle, String& resultFile,
if (isReadOnly != 0)
*isReadOnly = ! juce_canWriteToFile (path);
return true;
}
@ -507,7 +507,7 @@ const String PlatformUtilities::makePathFromFSRef (FSRef* file)
OSType PlatformUtilities::getTypeOfFile (const String& filename)
{
const ScopedAutoReleasePool pool;
#if JUCE_IPHONE || (defined (MAC_OS_X_VERSION_10_5) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5)
NSDictionary* fileDict = [[NSFileManager defaultManager] attributesOfItemAtPath: juceStringToNS (filename) error: nil];
#else

View file

@ -23,7 +23,6 @@
==============================================================================
*/
/** This suffix is used for naming all Obj-C classes that are used inside juce.
Because of the flat naming structure used by Obj-C, you can get horrible situations where