MCPcopy Create free account
hub / github.com/OpenOrienteering/mapper / mouseMoveEvent

Method mouseMoveEvent

src/gui/widgets/symbol_render_widget.cpp:515–555  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

513}
514
515void SymbolRenderWidget::mouseMoveEvent(QMouseEvent* event)
516{
517 if (mobile_mode)
518 {
519 if (event->buttons() & Qt::LeftButton)
520 {
521 hover(event->pos());
522
523 if ((event->pos() - last_click_pos).manhattanLength() < Settings::getInstance().getStartDragDistancePx())
524 return;
525 dragging = sort_manual_action->isChecked();
526 }
527 }
528 else
529 {
530 if (event->buttons() & Qt::LeftButton
531 && current_symbol_index >= 0
532 && sort_manual_action->isChecked())
533 {
534 if ((event->pos() - last_click_pos).manhattanLength() < Settings::getInstance().getStartDragDistancePx())
535 return;
536
537 tooltip->hide();
538
539 QDrag* drag = new QDrag(this);
540 QMimeData* mime_data = new QMimeData();
541
542 QByteArray data;
543 data.append((const char*)&current_symbol_index, sizeof(int));
544 mime_data->setData(MimeType::OpenOrienteeringSymbolIndex(), data);
545 drag->setMimeData(mime_data);
546
547 drag->exec(Qt::MoveAction);
548 }
549 else if (event->button() == Qt::NoButton)
550 {
551 hover(event->pos());
552 }
553 }
554 event->accept();
555}
556
557void SymbolRenderWidget::mousePressEvent(QMouseEvent* event)
558{

Callers

nothing calls this directly

Calls 7

posMethod · 0.80
buttonMethod · 0.80
setDataMethod · 0.45
execMethod · 0.45
acceptMethod · 0.45

Tested by

no test coverage detected