summaryrefslogtreecommitdiffstats
path: root/src/save_restore_session.cpp
blob: a9f31f17210323cee4a65109f24569c61a55ec1a (plain) (blame)
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
#include "save_restore_session.h"
#include <QDir>
#include <QIODevice>
#include <QString>
#include "globals.h"

void writeSessionName(QString name) {
    QDir saveFileDir(QDir::homePath() + "/" + VMCHOOSER_USER_PATH);
    QString saveFileName(VMCHOOSER_PREVIOUS_SESSION_FILE);

    if (!saveFileDir.exists()) {
        if (!saveFileDir.mkpath(saveFileDir.path())) {
            // TODO: error
            return;
        }
    }

    QFile saveFile(saveFileDir.path() + "/" + saveFileName);
    if (!saveFile.open(QIODevice::WriteOnly) ||
        saveFile.write(name.toUtf8().data()) == -1) {
        // TODO: error
    }
}

QString readSessionName() {
    QDir saveFileDir(QDir::homePath() + "/" + VMCHOOSER_USER_PATH);
    QString saveFileName(VMCHOOSER_PREVIOUS_SESSION_FILE);

    QFile saveFile(saveFileDir.path() + "/" + saveFileName);

    if (saveFile.open(QIODevice::ReadOnly)) {
        return QString(saveFile.readAll());
    } else {
        return QString();
    }
}