Exemplo n.º 1
0
void ImageArea::dropEvent( QDropEvent * de )
{
    //printf("Contents: %s\n", de->mimeData()->text().toLatin1().data());

    QString text = de->mimeData()->text();
    if ( !text.startsWith("file://") ) return;
    text = text.mid(7);

    emit dragFile( text );
}
Exemplo n.º 2
0
/**
 *\fn           void mouseMove(int x, int y, int type)
 *\brief        鼠标移动
 *\param[in]    int x X位置
 *\param[in]    int y Y位置
 *\param[in]    int type 0-正常,1-鼠标按下,2-鼠标抬起
 *\return       void 无
 */
void CBrowseWnd::mouseMove(int x, int y, int type)
{
    switch (type)
    {
    case MOUSE_NORMAL:
    {
        if (inDragWndRect(x, y) && !dragFile_ && !dragWnd_)
        {
            SetCursor(hCursorDragWnd_);
        }

        break;
    }
    case MOUSE_DOWN:
    {
        if (inDragWndRect(x, y) && !dragFile_ && !dragWnd_)
        {
            dragWnd_ = true;
            SetCapture(wnd_);
        }

        if (dragWnd_)
        {
            SetCursor(hCursorDragWnd_);
        }
        else if (dragFile_)
        {
            SetCursor(hCursorDragFile_);
        }

        break;
    }
    case MOUSE_UP:
    {
        if (dragWnd_)
        {
            treeWidth_ = x - x_;
            setWndRect(x_, y_, wndWidth_, wndHeight_);
            ReleaseCapture();
            dragWnd_ = false;
        }

        if (dragFile_)
        {
            dragFile(x, y);
            ReleaseCapture();
            dragFile_ = false;
        }

        break;
    }
    }
}