File indexing completed on 2024-04-14 03:40:30

0001 /***************************************************************************
0002  *   Copyright (C) 2004-2007 by Albert Astals Cid                          *
0003  *   aacid@kde.org                                                         *
0004  *                                                                         *
0005  *   This program is free software; you can redistribute it and/or modify  *
0006  *   it under the terms of the GNU General Public License as published by  *
0007  *   the Free Software Foundation; either version 2 of the License, or     *
0008  *   (at your option) any later version.                                   *
0009  ***************************************************************************/
0010 
0011 #ifndef MAP_H
0012 #define MAP_H
0013 
0014 #include <KLocalizedString>
0015 
0016 #include <QColor>
0017 #include <QMap>
0018 
0019 #include "division.h"
0020 
0021 class KGmap
0022 {
0023     public:
0024         KGmap();
0025         ~KGmap();
0026         
0027         bool addDivision(division *d);
0028         
0029         void setFile(const QString &s);
0030         bool setMapFile(const QString &s);
0031         void setName(const QString &s);
0032         void setDivisionsString(const QString &s);
0033         void setAuthor(const QString &s);
0034         void setCapitalToDivisionQuestionPattern(const QString &str);
0035         void setDivisionToCapitalQuestionPattern(const QString &str);
0036         void setCapitalToDivisionTitle(const QString &str);
0037         void setDivisionToCapitalTitle(const QString &str);
0038         
0039         // return the number of askable divisions
0040         uint count(division::askMode am) const;
0041         QString getFile() const;
0042         QString getFileName() const;
0043         QString getMapFile() const;
0044         QString getName() const;
0045         QString getDivisionsString() const;
0046         division *getRandomDivision(division::askMode am) const;
0047         QString getWhatIs(QRgb c, bool all) const;
0048         QString getAuthor() const;
0049         QColor getColor(const QString &s) const;
0050         QList<const division*> getIgnoredDivisions(division::askMode am) const;
0051         QList<const division*> getAllDivisionsOrdered() const;
0052         KLocalizedString getCapitalToDivisionQuestionPattern() const;
0053         KLocalizedString getDivisionToCapitalQuestionPattern() const;
0054         QString getCapitalToDivisionTitle() const;
0055         QString getDivisionToCapitalTitle() const;
0056         division *getDivision(QRgb c) const;
0057         division *getDivision(const QString &divisionName) const;
0058         
0059     private:
0060         QList<division*> p_divisions;
0061         
0062         QString p_name, p_file, p_mapFile;
0063         QString p_divisionsString;
0064         QString p_capitalToDivisionPattern;
0065         QString p_divisionToCapitalPattern;
0066         QString p_capitalToDivisionTitle;
0067         QString p_divisionToCapitalTitle;
0068         QString p_author;
0069 };
0070 
0071 #endif