/** * This implementation contains a special handler to display * custom what's this entries for items. All other events are * passed on. */ bool UserView::event(QEvent *evt) { if (evt->type() == QEvent::WhatsThisClicked) { QWhatsThisClickedEvent *qwtce = static_cast<QWhatsThisClickedEvent *>(evt); QDesktopServices::openUrl(qwtce->href()); evt->accept(); return true; } return QTreeView::event(evt); }
bool LinkFilter::eventFilter(QObject *object, QEvent *event) { if(event->type() == QEvent::WhatsThisClicked) { QWhatsThisClickedEvent *wtcEvent = static_cast<QWhatsThisClickedEvent*>(event); emit linkClicked(wtcEvent->href()); return true; } return false; }
static PyObject *meth_QWhatsThisClickedEvent_href(PyObject *sipSelf, PyObject *sipArgs) { PyObject *sipParseErr = NULL; { QWhatsThisClickedEvent *sipCpp; if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QWhatsThisClickedEvent, &sipCpp)) { QString *sipRes; Py_BEGIN_ALLOW_THREADS sipRes = new QString(sipCpp->href()); Py_END_ALLOW_THREADS return sipConvertFromNewType(sipRes,sipType_QString,NULL); } }
bool HelpWhatsThis::eventFilter ( QObject *object, QEvent *event) { if( event->type() == QEvent::WhatsThisClicked ) { QWhatsThisClickedEvent *helpEvent = static_cast<QWhatsThisClickedEvent*>(event); QUrl url; url.setUrl(helpEvent->href()); if (!QDesktopServices::openUrl( url )) { // if not successful, try default URL QDesktopServices::openUrl(QUrl("https://github.com/GoldenCheetah/GoldenCheetah/wiki")); }; // anyway the event was successfully processed - don't go on return true; } // pass it on return QObject::eventFilter( object, event ); }