static inline void addPointsFromArc (QVector<QPointF> & list, const QPointF & center, const QPointF & radius, const int startAngle, const int endAngle) { int angle = startAngle; while (angle != endAngle) { list.append (center + multiplyPoints (radius, trigo (angle))); angle = ((angle +1) % 360); } }
void KisInputManager::Private::saveTabletEvent(const QTabletEvent *event) { delete lastTabletEvent; #if HAVE_X11 /** * There is a bug in Qt-x11 when working in 2 tablets + 2 monitors * setup. The hiResGlobalPos() value gets scaled wrongly somehow. * Happily, the error is linear (without the offset) so we can simply * scale it a bit. */ if (event->type() == QEvent::TabletPress) { if ((event->globalPos() - event->hiResGlobalPos()).manhattanLength() > 4) { hiResEventsWorkaroundCoeff = dividePoints(event->globalPos(), event->hiResGlobalPos()); } else { hiResEventsWorkaroundCoeff = QPointF(1.0, 1.0); } } #endif lastTabletEvent = <<<<<<< HEAD new QTabletEvent(event->type(), event->pos(), event->globalPos(), #if HAVE_X11 multiplyPoints(event->hiResGlobalPos(), hiResEventsWorkaroundCoeff), #else event->hiResGlobalPos(), #endif event->device(), event->pointerType(), event->pressure(), event->xTilt(), event->yTilt(), event->tangentialPressure(), event->rotation(), event->z(), event->modifiers(), event->uniqueId()); ======= new QTabletEvent(event->type(),
event->device(), event->pointerType(), event->pressure(), event->xTilt(), event->yTilt(), event->tangentialPressure(), event->rotation(), event->z(), event->modifiers(), event->uniqueId()); ======= new QTabletEvent(event->type(), event->pos(), event->globalPos(), #ifdef Q_WS_X11 multiplyPoints(event->hiResGlobalPos(), hiResEventsWorkaroundCoeff), #else event->hiResGlobalPos(), #endif event->device(), event->pointerType(), event->pressure(), event->xTilt(), event->yTilt(), event->tangentialPressure(), event->rotation(), event->z(), event->modifiers(), event->uniqueId()); >>>>>>> origin/master }