summaryrefslogtreecommitdiff
path: root/src/modinfoseparator.h
blob: a7a6cb5f841c5e5557e9c13d3f7f2b35588bb649 (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
50
51
52
53
54
55
56
57
58
59
60
61
62
#ifndef MODINFOSEPARATOR_H
#define MODINFOSEPARATOR_H

#include "modinforegular.h"

class ModInfoSeparator:
    public ModInfoRegular
{
  Q_OBJECT;

  friend class ModInfo;

public:

  virtual bool updateAvailable() const override { return false; }
  virtual bool updateIgnored() const override { return false; }
  virtual bool downgradeAvailable() const override { return false; }
  virtual bool updateNXMInfo() override { return false; }
  virtual bool isValid() const override { return true; }
  //TODO: Fix renaming method to avoid priority reset
  virtual bool setName(const QString& name);

  virtual int getNexusID() const override { return -1; }
  virtual void setGameName(const QString& gameName) override {}
  virtual void setNexusID(int /*modID*/) override {}
  virtual void endorse(bool /*doEndorse*/) override {}
  virtual void ignoreUpdate(bool /*ignore*/) override {}
  virtual bool canBeUpdated() const override { return false; }
  virtual QDateTime getExpires() const override { return QDateTime(); }
  virtual bool canBeEnabled() const override { return false; }
  virtual std::vector<QString> getIniTweaks() const override { return std::vector<QString>(); }
  virtual std::vector<EFlag> getFlags() const override;
  virtual int getHighlight() const override;
  virtual QString getDescription() const override;
  virtual QString name() const override;
  virtual QString getGameName() const override { return ""; }
  virtual QString getInstallationFile() const override { return ""; }
  virtual QString repository() const override { return ""; }
  virtual int getNexusFileStatus() const override { return 0; }
  virtual void setNexusFileStatus(int) override {}
  virtual QDateTime getLastNexusUpdate() const override { return QDateTime(); }
  virtual void setLastNexusUpdate(QDateTime) override {}
  virtual QDateTime getLastNexusQuery() const override { return QDateTime(); }
  virtual void setLastNexusQuery(QDateTime) override {}
  virtual QDateTime getNexusLastModified() const override { return QDateTime(); }
  virtual void setNexusLastModified(QDateTime) override {}
  virtual QDateTime creationTime() const override { return QDateTime(); }
  virtual QString getNexusDescription() const override { return QString(); }
  virtual void addInstalledFile(int /*modId*/, int /*fileId*/) override { }

protected:
  virtual bool doIsValid() const override { return true; }

private:

  ModInfoSeparator(
    PluginContainer* pluginContainer, 
    const MOBase::IPluginGame* game, const QDir& path,
    MOShared::DirectoryEntry** directoryStructure);
};

#endif