Select the first entry when the model has been reset.

This avoids overriding setEntryList().
This commit is contained in:
Felix Geyer 2012-08-05 18:51:19 +02:00
parent 6e206704f9
commit 138ca8d3a3
2 changed files with 13 additions and 7 deletions

View File

@ -26,13 +26,8 @@ AutoTypeSelectView::AutoTypeSelectView(QWidget* parent)
setMouseTracking(true);
setAllColumnsShowFocus(true);
setDragEnabled(false);
}
void AutoTypeSelectView::setEntryList(const QList<Entry*>& entries)
{
EntryView::setEntryList(entries);
setCurrentIndex(model()->index(0, 0));
connect(model(), SIGNAL(modelReset()), SLOT(selectFirstEntry()));
}
void AutoTypeSelectView::mouseMoveEvent(QMouseEvent* event)
@ -49,3 +44,12 @@ void AutoTypeSelectView::mouseMoveEvent(QMouseEvent* event)
EntryView::mouseMoveEvent(event);
}
void AutoTypeSelectView::selectFirstEntry()
{
QModelIndex index = model()->index(0, 0);
if (index.isValid()) {
setCurrentIndex(index);
}
}

View File

@ -29,10 +29,12 @@ class AutoTypeSelectView : public EntryView
public:
explicit AutoTypeSelectView(QWidget* parent = Q_NULLPTR);
void setEntryList(const QList<Entry*>& entries) Q_DECL_OVERRIDE;
protected:
void mouseMoveEvent(QMouseEvent* event) Q_DECL_OVERRIDE;
private Q_SLOTS:
void selectFirstEntry();
};
#endif // KEEPASSX_AUTOTYPESELECTVIEW_H