|
cocos2d for iPhone 1.0.0
2D engine for iOS and OS X
|
00001 /* 00002 * cocos2d for iPhone: http://www.cocos2d-iphone.org 00003 * 00004 * Copyright (c) 2010 Ricardo Quesada 00005 * Copyright (c) 2011 Zynga Inc. 00006 * 00007 * Permission is hereby granted, free of charge, to any person obtaining a copy 00008 * of this software and associated documentation files (the "Software"), to deal 00009 * in the Software without restriction, including without limitation the rights 00010 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 00011 * copies of the Software, and to permit persons to whom the Software is 00012 * furnished to do so, subject to the following conditions: 00013 * 00014 * The above copyright notice and this permission notice shall be included in 00015 * all copies or substantial portions of the Software. 00016 * 00017 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 00018 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 00019 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 00020 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 00021 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 00022 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 00023 * THE SOFTWARE. 00024 */ 00025 00026 00027 // Only compile this code on Mac. These files should not be included on your iOS project. 00028 // But in case they are included, it won't be compiled. 00029 #import <Availability.h> 00030 #ifdef __IPHONE_OS_VERSION_MAX_ALLOWED 00031 #elif defined(__MAC_OS_X_VERSION_MAX_ALLOWED) 00032 00033 #import <QuartzCore/CVDisplayLink.h> 00034 #import "../../CCDirector.h" 00035 00036 enum { 00038 kCCDirectorResize_NoScale, 00040 kCCDirectorResize_AutoScale, 00041 }; 00042 00043 @interface CCDirector (MacExtension) 00045 -(CGPoint) convertEventToGL:(NSEvent*)event; 00046 @end 00047 00051 @interface CCDirectorMac : CCDirector 00052 { 00053 BOOL isFullScreen_; 00054 int resizeMode_; 00055 CGPoint winOffset_; 00056 CGSize originalWinSize_; 00057 00058 NSWindow *fullScreenWindow_; 00059 00060 // cache 00061 NSWindow *windowGLView_; 00062 NSView *superViewGLView_; 00063 NSRect originalWinRect_; // Original size and position 00064 } 00065 00066 // whether or not the view is in fullscreen mode 00067 @property (nonatomic, readonly) BOOL isFullScreen; 00068 00069 // resize mode: with or without scaling 00070 @property (nonatomic, readwrite) int resizeMode; 00071 00072 @property (nonatomic, readwrite) CGSize originalWinSize; 00073 00075 - (void) setFullScreen:(BOOL)fullscreen; 00076 00081 - (CGPoint) convertToLogicalCoordinates:(CGPoint)coordinates; 00082 @end 00083 00084 00096 @interface CCDirectorDisplayLink : CCDirectorMac 00097 { 00098 CVDisplayLinkRef displayLink; 00099 } 00100 @end 00101 00102 #endif // __MAC_OS_X_VERSION_MAX_ALLOWED 00103