mirror of https://github.com/stella-emu/stella.git
add missing file to non-VS projects
start to fill the HighScoresDialog with real data
This commit is contained in:
parent
4b116b3aef
commit
f77e9312de
|
@ -31,6 +31,7 @@
|
||||||
- variation bits (Centipede)
|
- variation bits (Centipede)
|
||||||
- player bits (Asteroids, Space Invaders)
|
- player bits (Asteroids, Space Invaders)
|
||||||
- score swaps (Asteroids)
|
- score swaps (Asteroids)
|
||||||
|
- one optional and named value extra per game (round, level...)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <cmath>
|
#include <cmath>
|
||||||
|
@ -282,6 +283,15 @@ Int32 HighScoresManager::player(uInt16 addr, uInt32 numPlayers, bool zeroBased)
|
||||||
return player;
|
return player;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Int32 HighScoresManager::numVariations() const
|
||||||
|
{
|
||||||
|
Properties props;
|
||||||
|
uInt16 vars = numVariations(properties(props));
|
||||||
|
|
||||||
|
return vars;;
|
||||||
|
}
|
||||||
|
|
||||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
Int32 HighScoresManager::player() const
|
Int32 HighScoresManager::player() const
|
||||||
{
|
{
|
||||||
|
|
|
@ -96,6 +96,7 @@ class HighScoresManager
|
||||||
const ScoreAddresses& scoreAddr) const;
|
const ScoreAddresses& scoreAddr) const;
|
||||||
|
|
||||||
// Retrieve current values (using game's properties)
|
// Retrieve current values (using game's properties)
|
||||||
|
Int32 numVariations() const;
|
||||||
Int32 player() const;
|
Int32 player() const;
|
||||||
Int32 variation() const;
|
Int32 variation() const;
|
||||||
Int32 score() const;
|
Int32 score() const;
|
||||||
|
|
|
@ -22,6 +22,7 @@
|
||||||
//#include "StringParser.hxx"
|
//#include "StringParser.hxx"
|
||||||
#include "EditTextWidget.hxx"
|
#include "EditTextWidget.hxx"
|
||||||
#include "PopUpWidget.hxx"
|
#include "PopUpWidget.hxx"
|
||||||
|
#include "HighScoresManager.hxx"
|
||||||
|
|
||||||
|
|
||||||
#include "HighScoresDialog.hxx"
|
#include "HighScoresDialog.hxx"
|
||||||
|
@ -32,16 +33,16 @@ HighScoresDialog::HighScoresDialog(OSystem& osystem, DialogContainer& parent,
|
||||||
: Dialog(osystem, parent, font, "High Scores")
|
: Dialog(osystem, parent, font, "High Scores")
|
||||||
{
|
{
|
||||||
const GUI::Font& ifont = instance().frameBuffer().infoFont();
|
const GUI::Font& ifont = instance().frameBuffer().infoFont();
|
||||||
const int lineHeight = font.getLineHeight(),
|
const int lineHeight = font.getLineHeight();
|
||||||
fontWidth = font.getMaxCharWidth(),
|
//fontWidth = font.getMaxCharWidth(),
|
||||||
fontHeight = font.getFontHeight(),
|
//fontHeight = font.getFontHeight(),
|
||||||
buttonHeight = font.getLineHeight() + 4;
|
//buttonHeight = font.getLineHeight() + 4;
|
||||||
//infoLineHeight = ifont.getLineHeight();
|
//infoLineHeight = ifont.getLineHeight();
|
||||||
const int VBORDER = 8;
|
const int VBORDER = 8;
|
||||||
const int HBORDER = 10;
|
const int HBORDER = 10;
|
||||||
const int VGAP = 4;
|
const int VGAP = 4;
|
||||||
|
|
||||||
int xpos, ypos, lwidth, fwidth, pwidth, tabID;
|
int xpos, ypos;
|
||||||
WidgetArray wid;
|
WidgetArray wid;
|
||||||
VariantList items;
|
VariantList items;
|
||||||
|
|
||||||
|
@ -55,7 +56,7 @@ HighScoresDialog::HighScoresDialog(OSystem& osystem, DialogContainer& parent,
|
||||||
|
|
||||||
StaticTextWidget* s = new StaticTextWidget(this, font, xpos, ypos + 1, "Variation ");
|
StaticTextWidget* s = new StaticTextWidget(this, font, xpos, ypos + 1, "Variation ");
|
||||||
myVariation = new PopUpWidget(this, font, s->getRight(), ypos,
|
myVariation = new PopUpWidget(this, font, s->getRight(), ypos,
|
||||||
font.getStringWidth("256"), lineHeight, items, "", 0, 0);
|
font.getStringWidth("256") - 4, lineHeight, items, "", 0, 0);
|
||||||
|
|
||||||
ypos += lineHeight + VGAP * 2;
|
ypos += lineHeight + VGAP * 2;
|
||||||
|
|
||||||
|
@ -116,10 +117,14 @@ void HighScoresDialog::loadConfig()
|
||||||
|
|
||||||
items.clear();
|
items.clear();
|
||||||
|
|
||||||
for (Int32 i = 1; i <= 10; ++i)
|
for (Int32 i = 1; i <= instance().highScores().numVariations(); ++i)
|
||||||
VarList::push_back(items, i, i);
|
{
|
||||||
|
ostringstream buf;
|
||||||
|
buf << std::setw(3) << std::setfill(' ') << i;
|
||||||
|
VarList::push_back(items, buf.str(), i);
|
||||||
|
}
|
||||||
myVariation->addItems(items);
|
myVariation->addItems(items);
|
||||||
|
myVariation->setSelected(instance().highScores().variation());
|
||||||
}
|
}
|
||||||
|
|
||||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
|
|
@ -21,6 +21,8 @@ MODULE_OBJS := \
|
||||||
src/gui/GameInfoDialog.o \
|
src/gui/GameInfoDialog.o \
|
||||||
src/gui/GlobalPropsDialog.o \
|
src/gui/GlobalPropsDialog.o \
|
||||||
src/gui/HelpDialog.o \
|
src/gui/HelpDialog.o \
|
||||||
|
src/gui/HighScoresDialog.o \
|
||||||
|
src/gui/HighScoresMenu.o \
|
||||||
src/gui/InputDialog.o \
|
src/gui/InputDialog.o \
|
||||||
src/gui/InputTextDialog.o \
|
src/gui/InputTextDialog.o \
|
||||||
src/gui/JoystickDialog.o \
|
src/gui/JoystickDialog.o \
|
||||||
|
|
Loading…
Reference in New Issue