X-Git-Url: https://sigrok.org/gitweb/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fwidgets%2Fwellarray.cpp;h=a9418317b072fceae3cf45f25f3656113578cfbf;hp=6776e34f6b110dc7c2f457b528f6573cd08e387d;hb=ebad870b71f3eec4a08873040524bb9e57768364;hpb=0c0e1888d11fd2135e439f82993b56b2323703ec diff --git a/pv/widgets/wellarray.cpp b/pv/widgets/wellarray.cpp index 6776e34f..a9418317 100644 --- a/pv/widgets/wellarray.cpp +++ b/pv/widgets/wellarray.cpp @@ -39,16 +39,17 @@ ** ****************************************************************************/ -#define QT_NO_MENU - #include #include #include #include -#include "wellarray.h" +#include "wellarray.hpp" + +namespace pv { +namespace widgets { -void QWellArray::paintEvent(QPaintEvent *e) +void WellArray::paintEvent(QPaintEvent *e) { QRect r = e->rect(); int cx = r.x(); @@ -95,11 +96,11 @@ void QWellArray::paintEvent(QPaintEvent *e) } } -struct QWellArrayData { +struct WellArrayData { QBrush *brush; }; -QWellArray::QWellArray(int rows, int cols, QWidget *parent) +WellArray::WellArray(int rows, int cols, QWidget *parent) : QWidget(parent) ,nrows(rows), ncols(cols) { @@ -113,14 +114,14 @@ QWellArray::QWellArray(int rows, int cols, QWidget *parent) selRow = -1; } -QSize QWellArray::sizeHint() const +QSize WellArray::sizeHint() const { ensurePolished(); return gridSize().boundedTo(QSize(640, 480)); } -void QWellArray::paintCell(QPainter* p, int row, int col, const QRect &rect) +void WellArray::paintCell(QPainter* p, int row, int col, const QRect &rect) { int b = 3; //margin @@ -150,7 +151,7 @@ void QWellArray::paintCell(QPainter* p, int row, int col, const QRect &rect) /*! Reimplement this function to change the contents of the well array. */ -void QWellArray::paintCellContents(QPainter *p, int row, int col, const QRect &r) +void WellArray::paintCellContents(QPainter *p, int row, int col, const QRect &r) { if (d) { p->fillRect(r, d->brush[row*numCols()+col]); @@ -162,14 +163,14 @@ void QWellArray::paintCellContents(QPainter *p, int row, int col, const QRect &r } } -void QWellArray::mousePressEvent(QMouseEvent *e) +void WellArray::mousePressEvent(QMouseEvent *e) { // The current cell marker is set to the cell the mouse is pressed in QPoint pos = e->pos(); setCurrent(rowAt(pos.y()), columnAt(pos.x())); } -void QWellArray::mouseReleaseEvent(QMouseEvent * /* event */) +void WellArray::mouseReleaseEvent(QMouseEvent * /* event */) { // The current cell marker is set to the cell the mouse is clicked in setSelected(curRow, curCol); @@ -181,7 +182,7 @@ void QWellArray::mouseReleaseEvent(QMouseEvent * /* event */) the same as the currently selected cell. */ -void QWellArray::setCurrent(int row, int col) +void WellArray::setCurrent(int row, int col) { if ((curRow == row) && (curCol == col)) return; @@ -205,7 +206,7 @@ void QWellArray::setCurrent(int row, int col) Does not set the position of the focus indicator. */ -void QWellArray::setSelected(int row, int col) +void WellArray::setSelected(int row, int col) { int oldRow = selRow; int oldCol = selCol; @@ -219,23 +220,18 @@ void QWellArray::setSelected(int row, int col) updateCell(oldRow, oldCol); updateCell(selRow, selCol); if (row >= 0) - emit selected(row, col); - -#ifndef QT_NO_MENU - if (isVisible() && qobject_cast(parentWidget())) - parentWidget()->close(); -#endif + Q_EMIT selected(row, col); } -void QWellArray::focusInEvent(QFocusEvent*) +void WellArray::focusInEvent(QFocusEvent*) { updateCell(curRow, curCol); } -void QWellArray::setCellBrush(int row, int col, const QBrush &b) +void WellArray::setCellBrush(int row, int col, const QBrush &b) { if (!d) { - d = new QWellArrayData; + d = new WellArrayData; int i = numRows()*numCols(); d->brush = new QBrush[i]; } @@ -248,7 +244,7 @@ void QWellArray::setCellBrush(int row, int col, const QBrush &b) set, Qt::NoBrush is returned. */ -QBrush QWellArray::cellBrush(int row, int col) +QBrush WellArray::cellBrush(int row, int col) { if (d && row >= 0 && row < numRows() && col >= 0 && col < numCols()) return d->brush[row*numCols()+col]; @@ -260,14 +256,14 @@ QBrush QWellArray::cellBrush(int row, int col) /*!\reimp */ -void QWellArray::focusOutEvent(QFocusEvent*) +void WellArray::focusOutEvent(QFocusEvent*) { updateCell(curRow, curCol); } /*\reimp */ -void QWellArray::keyPressEvent(QKeyEvent* e) +void WellArray::keyPressEvent(QKeyEvent* e) { switch(e->key()) { // Look at the key code case Qt::Key_Left: // If 'left arrow'-key, @@ -286,17 +282,6 @@ void QWellArray::keyPressEvent(QKeyEvent* e) if(curRow < numRows()-1) setCurrent(curRow + 1, curCol); break; -#if 0 - // bad idea that shouldn't have been implemented; very counterintuitive - case Qt::Key_Return: - case Qt::Key_Enter: - /* - ignore the key, so that the dialog get it, but still select - the current row/col - */ - e->ignore(); - // fallthrough intended -#endif case Qt::Key_Space: setSelected(curRow, curCol); break; @@ -306,3 +291,6 @@ void QWellArray::keyPressEvent(QKeyEvent* e) } } + +} // namespace wellarray +} // namespace pv