CCEditBox/CCEditBoxImplMac
2014-05-27 09:11
302 查看
#ifndef __CCEditBoxIMPLMAC_H__
#define __CCEditBoxIMPLMAC_H__
#include "cocos2d.h"
#if (CC_TARGET_PLATFORM == CC_PLATFORM_MAC)
#import <Foundation/Foundation.h>
#import <AppKit/AppKit.h>
#include "ExtensionMacros.h"
#include "CCEditBoxImpl.h"
@interface CustomNSTextField : NSTextField
{
}
@end
@interface EditBoxImplMac : NSObject <NSTextFieldDelegate>
{
CustomNSTextField* textField_;
void* editBox_;
BOOL editState_;
}
@property(nonatomic, retain) NSTextField* textField;
@property(nonatomic, readonly, getter = isEditState) BOOL editState;
@property(nonatomic, assign) void* editBox;
-(id) initWithFrame: (NSRect) frameRect editBox: (void*) editBox;
-(void) doAnimationWhenKeyboardMoveWithDuration:(float)duration distance:(float)distance;
-(void) setPosition:(NSPoint) pos;
-(void) setContentSize:(NSSize) size;
-(void) visit;
-(void) openKeyboard;
-(void) closeKeyboard;
@end
NS_CC_EXT_BEGIN
class CCEditBox;
class CCEditBoxImplMac : public CCEditBoxImpl
{
public:
CCEditBoxImplMac(CCEditBox* pEditText);
virtual ~CCEditBoxImplMac();
virtual bool initWithSize(const CCSize& size);
virtual void setFont(const char* pFontName, int fontSize);
virtual void setFontColor(const ccColor3B& color);
virtual void setPlaceholderFont(const char* pFontName, int fontSize);
virtual void setPlaceholderFontColor(const ccColor3B& color);
virtual void setInputMode(EditBoxInputMode inputMode);
virtual void setInputFlag(EditBoxInputFlag inputFlag);
virtual void setMaxLength(int maxLength);
virtual int getMaxLength();
virtual void setReturnType(KeyboardReturnType returnType);
virtual bool isEditing();
virtual void setText(const char* pText);
virtual const char* getText(void);
virtual void setPlaceHolder(const char* pText);
virtual void setPosition(const CCPoint& pos);
virtual void setVisible(bool visible);
virtual void setContentSize(const CCSize& size);
virtual void setAnchorPoint(const CCPoint& anchorPoint);
virtual void visit(void);
virtual void doAnimationWhenKeyboardMove(float duration, float distance);
virtual void openKeyboard();
virtual void closeKeyboard();
virtual void onEnter(void);
private:
NSPoint convertDesignCoordToScreenCoord(const CCPoint& designCoord, bool bInRetinaMode);
void adjustTextFieldPosition();
CCSize m_tContentSize;
CCPoint m_obPosition;
CCPoint m_obAnchorPoint;
int m_nMaxTextLength;
bool m_bInRetinaMode;
EditBoxImplMac* m_pSysEdit;
};
NS_CC_EXT_END
#endif // #if (CC_TARGET_PLATFORM == CC_PLATFORM_MAC)
#endif /* __CCEditBoxIMPLMAC_H__ */
#define __CCEditBoxIMPLMAC_H__
#include "cocos2d.h"
#if (CC_TARGET_PLATFORM == CC_PLATFORM_MAC)
#import <Foundation/Foundation.h>
#import <AppKit/AppKit.h>
#include "ExtensionMacros.h"
#include "CCEditBoxImpl.h"
@interface CustomNSTextField : NSTextField
{
}
@end
@interface EditBoxImplMac : NSObject <NSTextFieldDelegate>
{
CustomNSTextField* textField_;
void* editBox_;
BOOL editState_;
}
@property(nonatomic, retain) NSTextField* textField;
@property(nonatomic, readonly, getter = isEditState) BOOL editState;
@property(nonatomic, assign) void* editBox;
-(id) initWithFrame: (NSRect) frameRect editBox: (void*) editBox;
-(void) doAnimationWhenKeyboardMoveWithDuration:(float)duration distance:(float)distance;
-(void) setPosition:(NSPoint) pos;
-(void) setContentSize:(NSSize) size;
-(void) visit;
-(void) openKeyboard;
-(void) closeKeyboard;
@end
NS_CC_EXT_BEGIN
class CCEditBox;
class CCEditBoxImplMac : public CCEditBoxImpl
{
public:
CCEditBoxImplMac(CCEditBox* pEditText);
virtual ~CCEditBoxImplMac();
virtual bool initWithSize(const CCSize& size);
virtual void setFont(const char* pFontName, int fontSize);
virtual void setFontColor(const ccColor3B& color);
virtual void setPlaceholderFont(const char* pFontName, int fontSize);
virtual void setPlaceholderFontColor(const ccColor3B& color);
virtual void setInputMode(EditBoxInputMode inputMode);
virtual void setInputFlag(EditBoxInputFlag inputFlag);
virtual void setMaxLength(int maxLength);
virtual int getMaxLength();
virtual void setReturnType(KeyboardReturnType returnType);
virtual bool isEditing();
virtual void setText(const char* pText);
virtual const char* getText(void);
virtual void setPlaceHolder(const char* pText);
virtual void setPosition(const CCPoint& pos);
virtual void setVisible(bool visible);
virtual void setContentSize(const CCSize& size);
virtual void setAnchorPoint(const CCPoint& anchorPoint);
virtual void visit(void);
virtual void doAnimationWhenKeyboardMove(float duration, float distance);
virtual void openKeyboard();
virtual void closeKeyboard();
virtual void onEnter(void);
private:
NSPoint convertDesignCoordToScreenCoord(const CCPoint& designCoord, bool bInRetinaMode);
void adjustTextFieldPosition();
CCSize m_tContentSize;
CCPoint m_obPosition;
CCPoint m_obAnchorPoint;
int m_nMaxTextLength;
bool m_bInRetinaMode;
EditBoxImplMac* m_pSysEdit;
};
NS_CC_EXT_END
#endif // #if (CC_TARGET_PLATFORM == CC_PLATFORM_MAC)
#endif /* __CCEditBoxIMPLMAC_H__ */
相关文章推荐
- CCEditBox/CCEditBoxImplMac
- CCEditBox/CCEditBoxImplIOS
- CCEditBox/CCEditBoxImpl
- CCEditBox/CCEditBoxImplNone
- CCEditBox/CCEditBoxImpl
- CCEditBox/CCEditBoxImplIOS
- CCEditBox/CCEditBoxImplWin
- CCEditBox/CCEditBoxImplAndroid
- CCEditBox/CCEditBox
- CCEditBox/CCEditBoxImplTizen
- CCEditBox/CCEditBoxImplAndroid
- Cocos2d-x中CCEditBox文本输入框的使用实例
- Cocos2d-x CCEditBox & CCTextFieldTTF
- 解决 cocos2d-js 中 cc.EditBox 或 cc.Scale9Sprite is not a constructor 的问题
- Cocos2d-x CCEditBox & CCTextFieldTTF
- cocos2d-x 常用代码、高频使用代码【CCLayer、CCEditBox编辑框、CCControlButton按钮、CCLabelTTF标签、CCSpriteBatchNode渲染、CCMen】
- 关于修改cc.EditBox的背景图片问题
- 解决 cocos2d-js 中 cc.EditBox 或 cc.Scale9Sprite is not a constructor 的问题
- cocos2d-x中CCEditBox 在iOS和安卓平台下 位置偏移的问题解决方法
- 错误 2 error C1083: 无法打开源文件:“..\UIEditBox\UIEditBoxImplWin.cpp”: No