rpcsx/rpcs3/rpcs3qt/game_list.cpp
Megamouse ee98f577e2 sceNpTrophyGetTrophyIcon: SCE_NP_TROPHY_ERROR_HIDDEN
And prevent some possible segfaults
2022-03-31 23:02:35 +02:00

48 lines
912 B
C++

#include "game_list.h"
#include "movie_item.h"
void game_list::clear_list()
{
m_last_hover_item = nullptr;
clearSelection();
clearContents();
}
void game_list::mousePressEvent(QMouseEvent *event)
{
if (QTableWidgetItem* item = itemAt(event->pos()); !item || !item->data(Qt::UserRole).isValid())
{
clearSelection();
setCurrentItem(nullptr); // Needed for currentItemChanged
}
QTableWidget::mousePressEvent(event);
}
void game_list::mouseMoveEvent(QMouseEvent *event)
{
movie_item* new_item = static_cast<movie_item*>(itemAt(event->pos()));
if (new_item != m_last_hover_item)
{
if (m_last_hover_item)
{
m_last_hover_item->set_active(false);
}
if (new_item)
{
new_item->set_active(true);
}
}
m_last_hover_item = new_item;
}
void game_list::leaveEvent(QEvent */*event*/)
{
if (m_last_hover_item)
{
m_last_hover_item->set_active(false);
m_last_hover_item = nullptr;
}
}