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);