mirror of https://github.com/axmolengine/axmol.git
kCCResolutionXXX -> kResolutionXXX and estimate whether touch point is contained in GL viewport rectangle.
This commit is contained in:
parent
7eb5d85298
commit
0861877594
|
@ -71,12 +71,12 @@ void CCEGLViewProtocol::setDesignResolutionSize(float width, float height, Resol
|
|||
m_fScaleX = (float)m_obScreenSize.width / m_obDesignResolutionSize.width;
|
||||
m_fScaleY = (float)m_obScreenSize.height / m_obDesignResolutionSize.height;
|
||||
|
||||
if (resolutionPolicy == kCCResolutionNoBorder)
|
||||
if (resolutionPolicy == kResolutionNoBorder)
|
||||
{
|
||||
m_fScaleX = m_fScaleY = MAX(m_fScaleX, m_fScaleY);
|
||||
}
|
||||
|
||||
if (resolutionPolicy == kCCResolutionShowAll)
|
||||
if (resolutionPolicy == kResolutionShowAll)
|
||||
{
|
||||
m_fScaleX = m_fScaleY = MIN(m_fScaleX, m_fScaleY);
|
||||
}
|
||||
|
@ -119,7 +119,7 @@ void CCEGLViewProtocol::setFrameSize(float width, float height)
|
|||
|
||||
CCSize CCEGLViewProtocol::getVisibleSize() const
|
||||
{
|
||||
if (m_eResolutionPolicy == kCCResolutionNoBorder)
|
||||
if (m_eResolutionPolicy == kResolutionNoBorder)
|
||||
{
|
||||
return CCSizeMake(m_obScreenSize.width/m_fScaleX, m_obScreenSize.height/m_fScaleY);
|
||||
}
|
||||
|
@ -131,7 +131,7 @@ CCSize CCEGLViewProtocol::getVisibleSize() const
|
|||
|
||||
CCPoint CCEGLViewProtocol::getVisibleOrigin() const
|
||||
{
|
||||
if (m_eResolutionPolicy == kCCResolutionNoBorder)
|
||||
if (m_eResolutionPolicy == kResolutionNoBorder)
|
||||
{
|
||||
return CCPointMake((m_obDesignResolutionSize.width - m_obScreenSize.width/m_fScaleX)/2,
|
||||
(m_obDesignResolutionSize.height - m_obScreenSize.height/m_fScaleY)/2);
|
||||
|
|
|
@ -7,13 +7,13 @@ enum ResolutionPolicy
|
|||
{
|
||||
// The entire application is visible in the specified area without trying to preserve the original aspect ratio.
|
||||
// Distortion can occur, and the application may appear stretched or compressed.
|
||||
kCCResolutionExactFit,
|
||||
kResolutionExactFit,
|
||||
// The entire application fills the specified area, without distortion but possibly with some cropping,
|
||||
// while maintaining the original aspect ratio of the application.
|
||||
kCCResolutionNoBorder,
|
||||
kResolutionNoBorder,
|
||||
// The entire application is visible in the specified area without distortion while maintaining the original
|
||||
// aspect ratio of the application. Borders can appear on two sides of the application.
|
||||
kCCResolutionShowAll,
|
||||
kResolutionShowAll,
|
||||
|
||||
kResolutionUnKnown,
|
||||
};
|
||||
|
|
|
@ -30,6 +30,7 @@ THE SOFTWARE.
|
|||
#include "touch_dispatcher/CCTouchDispatcher.h"
|
||||
#include "text_input_node/CCIMEDispatcher.h"
|
||||
#include "keypad_dispatcher/CCKeypadDispatcher.h"
|
||||
#include "support/CCPointExtension.h"
|
||||
#include "CCApplication.h"
|
||||
|
||||
NS_CC_BEGIN
|
||||
|
@ -210,7 +211,8 @@ LRESULT CCEGLView::WindowProc(UINT message, WPARAM wParam, LPARAM lParam)
|
|||
{
|
||||
POINT point = {(short)LOWORD(lParam), (short)HIWORD(lParam)};
|
||||
CCPoint pt(point.x/CC_CONTENT_SCALE_FACTOR(), point.y/CC_CONTENT_SCALE_FACTOR());
|
||||
//if (CCRect::CCRectContainsPoint(m_obViewPortRect, pt))
|
||||
CCPoint tmp = ccp(pt.x, m_obScreenSize.height - pt.y);
|
||||
if (m_obViewPortRect.containsPoint(tmp))
|
||||
{
|
||||
m_bCaptured = true;
|
||||
SetCapture(m_hWnd);
|
||||
|
|
|
@ -26,7 +26,7 @@ bool AppDelegate::applicationDidFinishLaunching() {
|
|||
CCFileUtils::sharedFileUtils()->setResourceDirectory("iphonehd");
|
||||
|
||||
// don't enable retina because we don't have ipad hd resource
|
||||
CCEGLView::sharedOpenGLView().setDesignResolutionSize(960, 640, kCCResolutionNoBorder);
|
||||
CCEGLView::sharedOpenGLView().setDesignResolutionSize(960, 640, kResolutionNoBorder);
|
||||
}
|
||||
else if (target == kTargetIphone)
|
||||
{
|
||||
|
@ -47,7 +47,7 @@ bool AppDelegate::applicationDidFinishLaunching() {
|
|||
// android, windows, blackberry, linux or mac
|
||||
// use 960*640 resources as design resolution size
|
||||
CCFileUtils::sharedFileUtils()->setResourceDirectory("iphonehd");
|
||||
CCEGLView::sharedOpenGLView().setDesignResolutionSize(960, 640, kCCResolutionNoBorder);
|
||||
CCEGLView::sharedOpenGLView().setDesignResolutionSize(960, 640, kResolutionNoBorder);
|
||||
}
|
||||
|
||||
// turn on display FPS
|
||||
|
|
Loading…
Reference in New Issue