Mercurial > hg > orthanc-stone
comparison Applications/Qt/QCairoWidget.cpp @ 284:38b0ac8055b9 am-2
Qt: catch and forward keyboard events
author | am@osimis.io |
---|---|
date | Tue, 28 Aug 2018 11:09:37 +0200 |
parents | 829163c6efc1 |
children | 87376a645ee1 |
comparison
equal
deleted
inserted
replaced
281:300d8b8c48b3 | 284:38b0ac8055b9 |
---|---|
27 | 27 |
28 QCairoWidget::QCairoWidget(QWidget *parent) : | 28 QCairoWidget::QCairoWidget(QWidget *parent) : |
29 QWidget(parent), | 29 QWidget(parent), |
30 context_(NULL) | 30 context_(NULL) |
31 { | 31 { |
32 setFocusPolicy(Qt::StrongFocus); // catch keyPressEvents | |
32 } | 33 } |
33 | 34 |
34 QCairoWidget::~QCairoWidget() | 35 QCairoWidget::~QCairoWidget() |
35 { | 36 { |
36 } | 37 } |
132 context_->GetCentralViewport().MouseWheel(OrthancStone::MouseWheelDirection_Down, event->pos().x(), event->pos().y(), stoneModifiers); | 133 context_->GetCentralViewport().MouseWheel(OrthancStone::MouseWheelDirection_Down, event->pos().x(), event->pos().y(), stoneModifiers); |
133 } | 134 } |
134 } | 135 } |
135 } | 136 } |
136 | 137 |
138 void QCairoWidget::keyPressEvent(QKeyEvent *event) | |
139 { | |
140 OrthancStone::KeyboardModifiers stoneModifiers = GetKeyboardModifiers(event); | |
141 | |
142 context_->GetCentralViewport().KeyPressed(event->text()[0].toLatin1(), stoneModifiers); | |
143 } | |
137 | 144 |
138 | 145 |
139 void QCairoWidget::resizeEvent(QResizeEvent* event) | 146 void QCairoWidget::resizeEvent(QResizeEvent* event) |
140 { | 147 { |
141 grabGesture(Qt::PanGesture); | 148 grabGesture(Qt::PanGesture); |