Пример #1
0
bool Button::triggerEvent(XEvent& event, Pointer* pointer) {
    switch (event.type) {
        case ButtonPress:
            if (mouseInArea(pointer)) {
                active = true;
                draw();
            }
            break;
        case ButtonRelease:
            if (active && mouseInArea(pointer)) {
                active = false;
                draw();
                (*action)(this);
                (*taggedAction)(text);
                (*referencedAction)(this);
                return true;
            }
            break;
        case MotionNotify:
            if (active && !mouseInArea(pointer)) {
                active = false;
                draw();
            }
    }
    return false;
}
Пример #2
0
int MyWidget::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
    _id = QWidget::qt_metacall(_c, _id, _a);
    if (_id < 0)
        return _id;
    if (_c == QMetaObject::InvokeMetaMethod) {
        switch (_id) {
        case 0: sizeChanged(); break;
        case 1: doubleClick(); break;
        case 2: mouseInArea((*reinterpret_cast< bool(*)>(_a[1]))); break;
        default: ;
        }
        _id -= 3;
    }
    return _id;
}