summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2013-10-17 21:16:13 +0300
committerAndrei Karas <akaras@inbox.ru>2013-10-17 21:17:12 +0300
commit1e80a56b8444373997f3f7458bf0547c298c7abd (patch)
treed6007f8e1570ce82935d101e3658cbcee5e52084
parent2d78c7477a7289f63a9709a616c2f49e4b795fa5 (diff)
downloadmanaverse-1e80a56b8444373997f3f7458bf0547c298c7abd.tar.gz
manaverse-1e80a56b8444373997f3f7458bf0547c298c7abd.tar.bz2
manaverse-1e80a56b8444373997f3f7458bf0547c298c7abd.tar.xz
manaverse-1e80a56b8444373997f3f7458bf0547c298c7abd.zip
dont call virtual functions in characterview constructor.
-rw-r--r--src/gui/widgets/characterviewnormal.cpp6
-rw-r--r--src/gui/widgets/characterviewsmall.cpp7
2 files changed, 11 insertions, 2 deletions
diff --git a/src/gui/widgets/characterviewnormal.cpp b/src/gui/widgets/characterviewnormal.cpp
index 7e6fe380d..b24828fcc 100644
--- a/src/gui/widgets/characterviewnormal.cpp
+++ b/src/gui/widgets/characterviewnormal.cpp
@@ -44,7 +44,11 @@ CharacterViewNormal::CharacterViewNormal(CharSelectDialog *const widget,
add(character);
character->setVisible(true);
}
- show(0);
+ if (mSelected >= 0)
+ (*mCharacterEntries)[mSelected]->setSelect(false);
+ mSelected = 0;
+ (*mCharacterEntries)[0]->setSelect(true);
+
const CharacterDisplay *const firtChar = (*mCharacterEntries)[0];
setWidth(firtChar->getWidth() * 5 + mPadding * 2);
}
diff --git a/src/gui/widgets/characterviewsmall.cpp b/src/gui/widgets/characterviewsmall.cpp
index 6cdb01c7e..010bb3bba 100644
--- a/src/gui/widgets/characterviewsmall.cpp
+++ b/src/gui/widgets/characterviewsmall.cpp
@@ -45,7 +45,12 @@ CharacterViewSmall::CharacterViewSmall(CharSelectDialog *const widget,
{
add(*it);
}
- show(0);
+ const int sz = static_cast<signed>(mCharacterEntries->size());
+ mSelected = 0;
+ mSelectedEntry = (*mCharacterEntries)[mSelected];
+ mSelectedEntry->setVisible(true);
+ mNumber->setCaption(strprintf("%d / %d", mSelected + 1, sz));
+ mNumber->adjustSize();
}
add(mPrevious);
add(mNext);