Beispiel #1
0
void GameScene::mouseLock()
{
    QPoint po(gView->pos().x()+gView->width()/2,gView->pos().y()+gView->height()/2);
    gView->cursor().setPos(po);
    setCenterPoint(po);
    //    gView->setCursor(Qt::BlankCursor);
    gView->viewport()->setCursor(Qt::BlankCursor);                  //使用父容器对鼠标进行改变
}
Beispiel #2
0
int QPinchGesture::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
    _id = QGesture::qt_metacall(_c, _id, _a);
    if (_id < 0)
        return _id;
    
#ifndef QT_NO_PROPERTIES
     if (_c == QMetaObject::ReadProperty) {
        void *_v = _a[0];
        switch (_id) {
        case 0: *reinterpret_cast<int*>(_v) = QFlag(totalChangeFlags()); break;
        case 1: *reinterpret_cast<int*>(_v) = QFlag(changeFlags()); break;
        case 2: *reinterpret_cast< qreal*>(_v) = totalScaleFactor(); break;
        case 3: *reinterpret_cast< qreal*>(_v) = lastScaleFactor(); break;
        case 4: *reinterpret_cast< qreal*>(_v) = scaleFactor(); break;
        case 5: *reinterpret_cast< qreal*>(_v) = totalRotationAngle(); break;
        case 6: *reinterpret_cast< qreal*>(_v) = lastRotationAngle(); break;
        case 7: *reinterpret_cast< qreal*>(_v) = rotationAngle(); break;
        case 8: *reinterpret_cast< QPointF*>(_v) = startCenterPoint(); break;
        case 9: *reinterpret_cast< QPointF*>(_v) = lastCenterPoint(); break;
        case 10: *reinterpret_cast< QPointF*>(_v) = centerPoint(); break;
        }
        _id -= 11;
    } else if (_c == QMetaObject::WriteProperty) {
        void *_v = _a[0];
        switch (_id) {
        case 0: setTotalChangeFlags(QFlag(*reinterpret_cast<int*>(_v))); break;
        case 1: setChangeFlags(QFlag(*reinterpret_cast<int*>(_v))); break;
        case 2: setTotalScaleFactor(*reinterpret_cast< qreal*>(_v)); break;
        case 3: setLastScaleFactor(*reinterpret_cast< qreal*>(_v)); break;
        case 4: setScaleFactor(*reinterpret_cast< qreal*>(_v)); break;
        case 5: setTotalRotationAngle(*reinterpret_cast< qreal*>(_v)); break;
        case 6: setLastRotationAngle(*reinterpret_cast< qreal*>(_v)); break;
        case 7: setRotationAngle(*reinterpret_cast< qreal*>(_v)); break;
        case 8: setStartCenterPoint(*reinterpret_cast< QPointF*>(_v)); break;
        case 9: setLastCenterPoint(*reinterpret_cast< QPointF*>(_v)); break;
        case 10: setCenterPoint(*reinterpret_cast< QPointF*>(_v)); break;
        }
        _id -= 11;
    } else if (_c == QMetaObject::ResetProperty) {
        _id -= 11;
    } else if (_c == QMetaObject::QueryPropertyDesignable) {
        _id -= 11;
    } else if (_c == QMetaObject::QueryPropertyScriptable) {
        _id -= 11;
    } else if (_c == QMetaObject::QueryPropertyStored) {
        _id -= 11;
    } else if (_c == QMetaObject::QueryPropertyEditable) {
        _id -= 11;
    } else if (_c == QMetaObject::QueryPropertyUser) {
        _id -= 11;
    }
#endif // QT_NO_PROPERTIES
    return _id;
}
void AnimationViewerPanel::mouseMoveEvent(QMouseEvent *event)
{
    QPoint centerPoint = getCenterPoint();
    int newPosX = event->x() - centerPoint.x() + mSelectedOffset.x();
    int newPosY = event->y() - centerPoint.y() + mSelectedOffset.y();
    KeyFrameData* pKeyFrameData = mpSelectedCelModel->getKeyFrameDataReference();

    if (event->modifiers() & Qt::ControlModifier)
    {
        setCenterPoint(event);
    }
    else if (mCelGrabbed)
    {
        // Move cel if it is selected
        if (pKeyFrameData)
        {
            const KeyFrame::KeyFramePosition& keyframePosition = mpAnimationModel->getCurrentKeyFramePosition();
            if (pKeyFrameData->mSpriteDescriptor.mPositionType != GLSprite::PositionType_None)
            {
                newPosX -= (int)mpAnimationModel->getTargetSprite()->mSpriteDescriptor.mPosition.mX;
                newPosY -= (int)mpAnimationModel->getTargetSprite()->mSpriteDescriptor.mPosition.mY;
            }

            if(keyframePosition.mLineNo == AnimationModel::LINE_target)
            {
                newPosX -= AnimationModel::TARGET_originX;
                newPosY -= AnimationModel::TARGET_originY;
            }
            mpSelectedCelModel->setPositionX(newPosX);
            mpSelectedCelModel->setPositionY(newPosY);
        }
    }
    else if (mTargetGrabbed)
    {
        mpAnimationModel->setTargetSpritePosition(newPosX, newPosY);
        refresh();
    }
}
Beispiel #4
0
void Circle::makeMove(DirectionMoveType direction)
{
	Point centerPoint = getCenterPoint();
	bool needUpdate = true;
	switch (direction)
	{
		case kUpDirectionMove:
		{
			centerPoint.y++;
			break;
		}
		case kDownDirectionMove:
		{
			centerPoint.y--;
			break;
		}
		case kRightDirectionMove:
		{
			centerPoint.x++;
			break;
		}
		case kLeftDirectionMove:
		{
			centerPoint.x--;
			break;
		}
		default:
		{
			needUpdate = false;
			break;
		}
	}
	if (needUpdate)
	{
		setCenterPoint(centerPoint);
	}
}
Beispiel #5
0
//������ͼ��ĵ������Ϊ���ĵ�
void				swMapClientView::setCenterPoint(const swViewPoint& point){
	swGeoPoint  gpt;
	gpt = convertPointView2Geo(point);
	setCenterPoint(gpt);
}
Beispiel #6
0
bool	swMapClientView::create(swMapView* sview){
	_sview = sview;
	setBuffer(1);
	setCenterPoint(swGeoPoint(121.345f,31.45f))	;
	return true;
}
void AnimationViewerPanel::mousePressEvent(QMouseEvent *event)
{
    this->setFocus();

    // Get center point here
    QPoint centerPoint = getCenterPoint();
    // Calculate pressed position relative from center
    QPoint relativePressedPosition = QPoint(event->x(), event->y()) - centerPoint;

    mTargetGrabbed  = false;
    mCelGrabbed = false;

    // only for edit mode
    if (!mIsAnimationPlaying)
    {
        // center point mode
        if (event->modifiers() & Qt::ControlModifier)
        {
            setCenterPoint(event);
            return;
        }

        grabCel(relativePressedPosition);

        if(!mCelGrabbed)
        {
            QString path1 = mpAnimationModel->getLoadedAnimationPath();
            QString path2 = mpAnimationModel->getSelectedSourcePath();
          if (mpAnimationModel->getLoadedAnimationPath() == mpAnimationModel->getSelectedSourcePath())
          {
              QMessageBox::information(window(), tr("Animation nest error"),
                     tr("You cannot nest the same animation"));
          }
          else
          {
            KeyFrame::KeyFramePosition currentPosition = mpAnimationModel->getCurrentKeyFramePosition();
            switch(ResourceManager::getFileType(mpAnimationModel->getSelectedSourcePath()))
            {
                case ResourceManager::FileType_Animation:
                case ResourceManager::FileType_Image:
                    if (mpAnimationModel->getKeyFrameIndex(currentPosition.mLineNo, currentPosition.mFrameNo) == -1)
                    {
                        GLSprite::Point2 pt;
                        pt.mX = relativePressedPosition.x();
                        pt.mY = relativePressedPosition.y();

                        mpAnimationModel->setKeyFrame(currentPosition.mLineNo, currentPosition.mFrameNo, pt);
                    }
                    else
                    {
                        if (event->modifiers() & Qt::ShiftModifier)
                        {
                            swapSourceTexture();
                        }
                    }
                break;

                default:
                break;
            }
          }
        }
    }

    if (!mCelGrabbed)
    {
        grabTarget(relativePressedPosition);
    }
}
void CircleObject::ccTouchEnded(cocos2d::CCTouch *pTouch, cocos2d::CCEvent *pEvent)
{
	setCenterPoint(getCenterPoint() + pTouch->getDelta());
	drawCircle(false);
}