+ const int itemCount = m_model->count();
+ const int itemsPerRow = m_view->itemsPerOffset();
+
+ // For horizontal scroll orientation, transform
+ // the arrow keys to simplify the event handling.
+ int key = event->key();
+ if (m_view->scrollOrientation() == Qt::Horizontal) {
+ switch (key) {
+ case Qt::Key_Up: key = Qt::Key_Left; break;
+ case Qt::Key_Down: key = Qt::Key_Right; break;
+ case Qt::Key_Left: key = Qt::Key_Up; break;
+ case Qt::Key_Right: key = Qt::Key_Down; break;
+ default: break;
+ }
+ }