20#ifndef KEXTHIGHSCORE_ITEM_H
21#define KEXTHIGHSCORE_ITEM_H
24#include <tqnamespace.h>
26#include <tqvaluevector.h>
31namespace KExtHighscore
55 enum Format { NoFormat, OneDecimal, Percentage, MinuteTime,
72 enum Special { NoSpecial, ZeroNotDefined, NegativeNotDefined,
73 DefaultNotDefined, Anonymous };
84 Item(
const TQVariant &def = TQVariant::Invalid,
85 const TQString &label = TQString(),
int alignment = TQt::AlignRight);
93 void setPrettyFormat(Format format);
99 void setPrettySpecial(Special special);
114 TQString
label()
const {
return _label; }
138 virtual TQVariant read(uint i,
const TQVariant &value)
const;
147 virtual TQString pretty(uint i,
const TQVariant &value)
const;
159 static TQString timeFormat(uint);
169enum ScoreType { Won = 0, Lost = -1, Draw = -2 };
175class TDE_EXPORT Score
178 Score(ScoreType
type = Won);
185 ScoreType
type()
const {
return _type; }
195 const TQVariant &data(
const TQString &name)
const;
202 void setData(
const TQString &name,
const TQVariant &value);
222 bool isTheWorst()
const;
229 bool operator <(
const Score &score);
233 TQStringVariantMap _data;
240 friend TQDataStream &operator <<(TQDataStream &stream,
const Score &score);
241 friend TQDataStream &operator >>(TQDataStream &stream,
Score &score);
244TDE_EXPORT TQDataStream &operator <<(TQDataStream &stream,
const Score &score);
245TDE_EXPORT TQDataStream &operator >>(TQDataStream &stream, Score &score);
267class TDE_EXPORT MultiplayerScores
272 ~MultiplayerScores();
282 void setName(uint player,
const TQString &name);
297 void show(TQWidget *parent);
300 TQValueVector<uint> _nbGames;
301 TQValueVector<Score> _scores;
303 class MultiplayerScoresPrivate;
304 MultiplayerScoresPrivate *d;
306 friend TQDataStream &operator <<(TQDataStream &stream,
307 const MultiplayerScores &score);
308 friend TQDataStream &operator >>(TQDataStream &stream,
309 MultiplayerScores &score);
312TDE_EXPORT TQDataStream &operator <<(TQDataStream &stream,
const MultiplayerScores &score);
313TDE_EXPORT TQDataStream &operator >>(TQDataStream &stream,
MultiplayerScores &score);
This class defines how to convert and how to display a highscore element (such as the score,...
Format
Possible display format.
Special
Possible special value for display format.
void setDefaultValue(const TQVariant &value)
Set default value.
const TQVariant & defaultValue() const
Item(const TQVariant &def=TQVariant::Invalid, const TQString &label=TQString(), int alignment=TQt::AlignRight)
Constructor.
void setLabel(const TQString &label)
Set the label.
This class is used to store and show scores for multiplayer games.
void clear()
Clear all scores.
void setPlayerCount(uint nb)
Set the number of players and clear the scores.
void setName(uint player, const TQString &name)
Set the name of player.
void addScore(uint player, const Score &score)
Add the score of player.
void show(TQWidget *parent)
Show scores.
This class contains data for a score.
void setType(ScoreType type)
Set the game type.
void setScore(uint score)
Set the score value.
const TQVariant & data(const TQString &name) const
void setData(const TQString &name, const TQVariant &value)
Set the data associated with the named Item.