Got instance loading working.
This commit is contained in:
@ -15,20 +15,44 @@
|
||||
|
||||
#include "stdinstancetype.h"
|
||||
|
||||
#include <QDir>
|
||||
#include <QFileInfo>
|
||||
|
||||
#include "stdinstance.h"
|
||||
|
||||
StdInstanceType::StdInstanceType(QObject *parent) :
|
||||
QObject(parent)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
InstanceLoader::InstTypeError StdInstanceType::createInstance(Instance *inst,
|
||||
InstanceLoader::InstTypeError StdInstanceType::createInstance(Instance *&inst,
|
||||
const QString &instDir) const
|
||||
{
|
||||
QFileInfo rootDir(instDir);
|
||||
|
||||
if (!rootDir.exists() && !QDir().mkdir(rootDir.path()))
|
||||
{
|
||||
return InstanceLoader::CantCreateDir;
|
||||
}
|
||||
|
||||
StdInstance *stdInst = new StdInstance(instDir);
|
||||
|
||||
// TODO: Verify that the instance is valid.
|
||||
|
||||
inst = stdInst;
|
||||
|
||||
return InstanceLoader::NoError;
|
||||
}
|
||||
|
||||
InstanceLoader::InstTypeError StdInstanceType::loadInstance(Instance *inst,
|
||||
InstanceLoader::InstTypeError StdInstanceType::loadInstance(Instance *&inst,
|
||||
const QString &instDir) const
|
||||
{
|
||||
StdInstance *stdInst = new StdInstance(instDir);
|
||||
|
||||
// TODO: Verify that the instance is valid.
|
||||
|
||||
inst = stdInst;
|
||||
|
||||
return InstanceLoader::NoError;
|
||||
}
|
||||
|
@ -34,9 +34,9 @@ public:
|
||||
|
||||
virtual QString description() const { return "A standard Minecraft instance."; }
|
||||
|
||||
virtual InstanceLoader::InstTypeError createInstance(Instance *inst, const QString &instDir) const;
|
||||
virtual InstanceLoader::InstTypeError createInstance(Instance *&inst, const QString &instDir) const;
|
||||
|
||||
virtual InstanceLoader::InstTypeError loadInstance(Instance *inst, const QString &instDir) const;
|
||||
virtual InstanceLoader::InstTypeError loadInstance(Instance *&inst, const QString &instDir) const;
|
||||
};
|
||||
|
||||
#endif // STDINSTANCETYPE_H
|
||||
|
Reference in New Issue
Block a user