void Q3TitleBar::contextMenuEvent(QContextMenuEvent *e) { Q_D(Q3TitleBar); QStyleOptionTitleBar opt = d->getStyleOption(); QStyle::SubControl ctrl = style()->hitTestComplexControl(QStyle::CC_TitleBar, &opt, e->pos(), this); if(ctrl == QStyle::SC_TitleBarLabel || ctrl == QStyle::SC_TitleBarSysMenu) { e->accept(); emit popupOperationMenu(e->globalPos()); } else { e->ignore(); } }
bool QWorkspace::qt_invoke( int _id, QUObject* _o ) { switch ( _id - staticMetaObject()->slotOffset() ) { case 0: cascade(); break; case 1: tile(); break; case 2: closeActiveWindow(); break; case 3: closeAllWindows(); break; case 4: activateNextWindow(); break; case 5: activatePrevWindow(); break; case 6: normalizeActiveWindow(); break; case 7: minimizeActiveWindow(); break; case 8: showOperationMenu(); break; case 9: popupOperationMenu((const QPoint&)*((const QPoint*)static_QUType_ptr.get(_o+1))); break; case 10: operationMenuActivated((int)static_QUType_int.get(_o+1)); break; case 11: operationMenuAboutToShow(); break; case 12: toolMenuAboutToShow(); break; case 13: activatePreviousWindow(); break; case 14: dockWindowsShow(); break; case 15: scrollBarChanged(); break; default: return QWidget::qt_invoke( _id, _o ); } return TRUE; }