Ejemplo n.º 1
0
void ScreenshotsWidget::contextMenuEvent(QContextMenuEvent *event)
{
    initSelectedMenu();

    if(isInSelectedRect(event->pos())){
        contextMenu->addAction(sendPixmapAction);
        contextMenu->addAction(savePixmapAction);
    }
    else{
        contextMenu->addAction(cancelAction);
        contextMenu->addAction(quitAction);
    }

    contextMenu->exec(event->pos());
}
Ejemplo n.º 2
0
void ScreenshotsWidget::mousePressEvent(QMouseEvent *event)
{
    //当开始进行拖动进行选择区域时,确定开始选取的beginPoint坐标
    if(event->button() == Qt::LeftButton && currentShotState == initShot){
        currentShotState = beginShot; //设置当前状态为beginShot状态
        beginPoint = event->pos();
    }

    //移动选区改变选区的所在位置
    if(event->button() == Qt::LeftButton && isInSelectedRect(event->pos()) &&
            getMoveControlState(event->pos()) == moveControl0){
        currentShotState = beginMoveShot; //启用开始移动选取选项,beginMoveShot状态
        moveBeginPoint = event->pos();
    }
    //移动控制点改变选区大小
    if(event->button() == Qt::LeftButton && getMoveControlState(event->pos()) != moveControl0){
        currentShotState = beginControl; //开始移动控制点
        controlValue = getMoveControlState(event->pos());
        moveBeginPoint = event->pos();
    }
}
Ejemplo n.º 3
0
void WizScreenShotWidget::mousePressEvent(QMouseEvent *event)
{
    if (event->button() == Qt::LeftButton && currentShotState == initShot)
    {
        currentShotState = beginShot;
        beginPoint = event->pos();
    }

    if (event->button() == Qt::LeftButton && isInSelectedRect(event->pos()) &&
            getMoveControlState(event->pos()) == moveControl0)
    {
        currentShotState = beginMoveShot;
        moveBeginPoint = event->pos();
    }

    if (event->button() == Qt::LeftButton && getMoveControlState(event->pos()) != moveControl0)
    {
        currentShotState = beginControl;
        controlValue = getMoveControlState(event->pos());
        moveBeginPoint = event->pos();
    }
}