Prevent x26dockwidget stealing keys from main widget

This commit is contained in:
G.K.MacGregor
2021-02-12 19:19:33 +00:00
parent 37d669a34a
commit d5bb0417af
2 changed files with 16 additions and 4 deletions

View File

@@ -497,11 +497,20 @@ X26DockWidget::X26DockWidget(TeletextWidget *parent): QDockWidget(parent)
connect(m_x26View, &QWidget::customContextMenuRequested, this, &X26DockWidget::customMenuRequested); connect(m_x26View, &QWidget::customContextMenuRequested, this, &X26DockWidget::customMenuRequested);
connect(m_x26View, &QAbstractItemView::clicked, this, &X26DockWidget::rowClicked); connect(m_x26View, &QAbstractItemView::clicked, this, &X26DockWidget::rowClicked);
}
QShortcut* insertShortcut = new QShortcut(QKeySequence(Qt::Key_Insert), m_x26View); void X26DockWidget::keyPressEvent(QKeyEvent *event)
connect(insertShortcut, &QShortcut::activated, this, &X26DockWidget::insertTriplet); {
QShortcut* deleteShortcut = new QShortcut(QKeySequence(Qt::Key_Delete), m_x26View); switch (event->key()) {
connect(deleteShortcut, &QShortcut::activated, this, &X26DockWidget::deleteTriplet); case Qt::Key_Insert:
insertTriplet();
break;
case Qt::Key_Delete:
deleteTriplet();
break;
default:
QWidget::keyPressEvent(event);
}
} }
void X26DockWidget::selectX26ListRow(int row) void X26DockWidget::selectX26ListRow(int row)

View File

@@ -61,6 +61,9 @@ public slots:
void updateModelFromCookedWidget(const int, const int); void updateModelFromCookedWidget(const int, const int);
void selectX26ListRow(int); void selectX26ListRow(int);
protected:
void keyPressEvent(QKeyEvent *event) override;
private: private:
QTableView *m_x26View; QTableView *m_x26View;
X26Model *m_x26Model; X26Model *m_x26Model;