blob: 10edaad9c133465960757f266130127a6ef29cdf (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
#ifndef SAVEGAMEINFO_H
#define SAVEGAMEINFO_H
namespace MOBase { class ISaveGame; }
namespace MOBase { class ISaveGameInfoWidget; }
#include <QMap>
class QString;
class QStringList;
class QWidget;
/** Feature to get hold of stuff to do with save games */
class SaveGameInfo
{
public:
virtual ~SaveGameInfo() {}
typedef QStringList ProvidingModules;
typedef QMap<QString, ProvidingModules> MissingAssets;
/**
* @brief Get missing items from a save.
*
* @param save The save to retrieve missing assets from.
*
* @returns a collection of missing assets and the modules that can supply those
* assets.
*
* Note that in the situation where 'module' and 'asset' are indistinguishable,
* both still have to be supplied.
*/
virtual MissingAssets getMissingAssets(MOBase::ISaveGame const& save) const = 0;
/**
* @brief Get a widget to display over the save game list.
*
* @param parent The parent widget.
*
* @returns a Qt widget to display saves Widget.
*
* It is permitted to return a null pointer to indicate the plugin does not have a
* nice visual way of displaying save game contents.
*/
virtual MOBase::ISaveGameInfoWidget *getSaveGameWidget(QWidget *parent = 0) const = 0;
};
#endif // SAVEGAMEINFO_H
|