Retired Document
Important: This sample code may not represent best practices for current development. The project may use deprecated symbols and illustrate technologies and techniques that are no longer recommended.
Audio_Units/Audio_Unit_Effect_with_Carbon_View/Source/CarbonUI/StarterAUView.cpp
/* |
* File: ÇPROJECTNAMEÈView.cpp |
** |
* Version: 1.0 |
* |
* Created: ÇDATEÈ |
* |
* Copyright: Copyright © ÇYEARÈ ÇORGANIZATIONNAMEÈ, All Rights Reserved |
* |
* Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple Computer, Inc. ("Apple") in |
* consideration of your agreement to the following terms, and your use, installation, modification |
* or redistribution of this Apple software constitutes acceptance of these terms. If you do |
* not agree with these terms, please do not use, install, modify or redistribute this Apple |
* software. |
* |
* In consideration of your agreement to abide by the following terms, and subject to these terms, |
* Apple grants you a personal, non-exclusive license, under Apple's copyrights in this |
* original Apple software (the "Apple Software"), to use, reproduce, modify and redistribute the |
* Apple Software, with or without modifications, in source and/or binary forms; provided that if you |
* redistribute the Apple Software in its entirety and without modifications, you must retain this |
* notice and the following text and disclaimers in all such redistributions of the Apple Software. |
* Neither the name, trademarks, service marks or logos of Apple Computer, Inc. may be used to |
* endorse or promote products derived from the Apple Software without specific prior written |
* permission from Apple. Except as expressly stated in this notice, no other rights or |
* licenses, express or implied, are granted by Apple herein, including but not limited to any |
* patent rights that may be infringed by your derivative works or by other works in which the |
* Apple Software may be incorporated. |
* |
* The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO WARRANTIES, EXPRESS OR |
* IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY |
* AND FITNESS FOR A PARTICULAR PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE |
* OR IN COMBINATION WITH YOUR PRODUCTS. |
* |
* IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR CONSEQUENTIAL |
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS |
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ARISING IN ANY WAY OUT OF THE USE, |
* REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER |
* UNDER THEORY OF CONTRACT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN |
* IF APPLE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
* |
*/ |
#include "ÇPROJECTNAMEÈView.h" |
#include "AUCarbonViewBase.h" |
#include "AUControlGroup.h" |
COMPONENT_ENTRY(ÇPROJECTNAMEÈView) |
ÇPROJECTNAMEÈView::ÇPROJECTNAMEÈView(AudioUnitCarbonView auv) : AUCarbonViewBase(auv) |
{ |
} |
// ____________________________________________________________________________ |
// |
OSStatus ÇPROJECTNAMEÈView::CreateUI(Float32 xoffset, Float32 yoffset) |
{ |
// need offsets as int's: |
int xoff = (int)xoffset; |
int yoff = (int)yoffset; |
// for each parameter, create controls |
// inside mCarbonWindow, embedded in mCarbonPane |
#define kLabelWidth 80 |
#define kLabelHeight 16 |
#define kEditTextWidth 40 |
#define kMinMaxWidth 32 |
ControlRef newControl; |
ControlFontStyleRec fontStyle; |
fontStyle.flags = kControlUseFontMask | kControlUseJustMask; |
fontStyle.font = kControlFontSmallSystemFont; |
fontStyle.just = teFlushRight; |
Rect r; |
Point labelSize, textSize; |
labelSize.v = textSize.v = kLabelHeight; |
labelSize.h = kMinMaxWidth; |
textSize.h = kEditTextWidth; |
// wet/dry mix at top |
{ |
CAAUParameter auvp(mEditAudioUnit, 0, kAudioUnitScope_Global, 0); |
// text label |
r.top = 10 + yoff; |
r.bottom = r.top + kLabelHeight; |
r.left = 10 +xoff; |
r.right = r.left + kLabelWidth; |
verify_noerr(CreateStaticTextControl(mCarbonWindow, &r, auvp.GetName(), &fontStyle, &newControl)); |
verify_noerr(EmbedControl(newControl)); |
r.left = r.right + 4; |
r.right = r.left + 240; |
AUControlGroup::CreateLabelledSliderAndEditText(this, auvp, r, labelSize, textSize, fontStyle); |
} |
// set size of overall pane |
SizeControl(mCarbonPane, mBottomRight.h + 8, mBottomRight.v + 8); |
return noErr; |
} |
Copyright © 2005 Apple Computer, Inc. All Rights Reserved. Terms of Use | Privacy Policy | Updated: 2005-06-06