当前位置: 首页>>代码示例>>C++>>正文


C++ EventHandler::handleMouseReleaseEvent方法代码示例

本文整理汇总了C++中EventHandler::handleMouseReleaseEvent方法的典型用法代码示例。如果您正苦于以下问题:C++ EventHandler::handleMouseReleaseEvent方法的具体用法?C++ EventHandler::handleMouseReleaseEvent怎么用?C++ EventHandler::handleMouseReleaseEvent使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在EventHandler的用法示例。


在下文中一共展示了EventHandler::handleMouseReleaseEvent方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: handleMouseEvent

bool InspectorOverlay::handleMouseEvent(const PlatformMouseEvent& event)
{
    if (isEmpty())
        return false;

    EventHandler* eventHandler = overlayPage()->mainFrame()->eventHandler();
    switch (event.type()) {
    case PlatformEvent::MouseMoved: return eventHandler->mouseMoved(event);
    case PlatformEvent::MousePressed: return eventHandler->handleMousePressEvent(event);
    case PlatformEvent::MouseReleased: return eventHandler->handleMouseReleaseEvent(event);
    default: return false;
    }
}
开发者ID:,项目名称:,代码行数:13,代码来源:

示例2: dispatchMouseEvent

void InspectorInputAgent::dispatchMouseEvent(ErrorString* error, const String& type, int x, int y, const int* modifiers, const double* timestamp, const String* button, const int* clickCount)
{
    PlatformEvent::Type convertedType;
    if (type == "mousePressed")
        convertedType = PlatformEvent::MousePressed;
    else if (type == "mouseReleased")
        convertedType = PlatformEvent::MouseReleased;
    else if (type == "mouseMoved")
        convertedType = PlatformEvent::MouseMoved;
    else {
        *error = "Unrecognized type: " + type;
        return;
    }

    int convertedModifiers = modifiers ? *modifiers : 0;

    MouseButton convertedButton = NoButton;
    if (button) {
        if (*button == "left")
            convertedButton = LeftButton;
        else if (*button == "middle")
            convertedButton = MiddleButton;
        else if (*button == "right")
            convertedButton = RightButton;
        else if (*button != "none") {
            *error = "Unrecognized button: " + *button;
            return;
        }
    }

    // Some platforms may have flipped coordinate systems, but the given coordinates
    // assume the origin is in the top-left of the window. Convert.
    IntPoint convertedPoint = m_page->mainFrame()->view()->convertToContainingWindow(IntPoint(x, y));
    IntPoint globalPoint = m_page->chrome()->rootViewToScreen(IntRect(IntPoint(x, y), IntSize(0, 0))).location();

    PlatformMouseEvent event(
        convertedPoint,
        globalPoint,
        convertedButton,
        convertedType,
        clickCount ? *clickCount : 0,
        convertedModifiers & PlatformEvent::ShiftKey,
        convertedModifiers & PlatformEvent::CtrlKey,
        convertedModifiers & PlatformEvent::AltKey,
        convertedModifiers & PlatformEvent::MetaKey,
        timestamp ? *timestamp : currentTime());

    EventHandler* handler = m_page->mainFrame()->eventHandler();
    switch (convertedType) {
    case PlatformEvent::MousePressed:
        handler->handleMousePressEvent(event);
        break;
    case PlatformEvent::MouseReleased:
        handler->handleMouseReleaseEvent(event);
        break;
    case PlatformEvent::MouseMoved:
        handler->handleMouseMoveEvent(event);
        break;
    default:
        *error = "Unhandled type: " + type;
    }
}
开发者ID:,项目名称:,代码行数:62,代码来源:


注:本文中的EventHandler::handleMouseReleaseEvent方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。