mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-06-11 16:44:48 -07:00
Fix a crash (#3011)
This commit is contained in:
parent
7a150c558d
commit
dcc632e0d4
4 changed files with 46 additions and 28 deletions
|
|
@ -10,8 +10,7 @@
|
|||
#include <QSplitter>
|
||||
#include <QVBoxLayout>
|
||||
|
||||
CardFrame::CardFrame(const QString &cardName, QWidget *parent)
|
||||
: QTabWidget(parent), info(nullptr), cardTextOnly(false)
|
||||
CardFrame::CardFrame(const QString &cardName, QWidget *parent) : QTabWidget(parent), info(nullptr), cardTextOnly(false)
|
||||
{
|
||||
setContentsMargins(3, 3, 3, 3);
|
||||
pic = new CardInfoPicture();
|
||||
|
|
@ -72,7 +71,7 @@ void CardFrame::setViewMode(int mode)
|
|||
if(currentIndex() != mode)
|
||||
setCurrentIndex(mode);
|
||||
|
||||
switch(mode)
|
||||
switch (mode)
|
||||
{
|
||||
case ImageOnlyView:
|
||||
case TextOnlyView:
|
||||
|
|
@ -83,6 +82,8 @@ void CardFrame::setViewMode(int mode)
|
|||
splitter->addWidget(pic);
|
||||
splitter->addWidget(text);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
settingsCache->setCardInfoViewMode(mode);
|
||||
|
|
@ -91,10 +92,16 @@ void CardFrame::setViewMode(int mode)
|
|||
void CardFrame::setCard(CardInfo *card)
|
||||
{
|
||||
if (info)
|
||||
{
|
||||
disconnect(info, nullptr, this, nullptr);
|
||||
}
|
||||
|
||||
info = card;
|
||||
if(info)
|
||||
|
||||
if (info)
|
||||
{
|
||||
connect(info, SIGNAL(destroyed()), this, SLOT(clear()));
|
||||
}
|
||||
|
||||
text->setCard(info);
|
||||
pic->setCard(info);
|
||||
|
|
@ -107,7 +114,10 @@ void CardFrame::setCard(const QString &cardName)
|
|||
|
||||
void CardFrame::setCard(AbstractCardItem *card)
|
||||
{
|
||||
setCard(card->getInfo());
|
||||
if (card)
|
||||
{
|
||||
setCard(card->getInfo());
|
||||
}
|
||||
}
|
||||
|
||||
void CardFrame::clear()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue