#include "folder.h" Folder::Folder(QString name) { QUuid uid = QUuid::createUuid(); this->uuid = uid.toString(QUuid::StringFormat::WithoutBraces); this->name = name; } Folder::Folder(QJsonObject obj) { QUuid uid = QUuid::createUuid(); QString newUuid = uid.toString(QUuid::StringFormat::WithoutBraces); this->uuid = obj["uuid"].toString(newUuid); this->name = obj["name"].toString(""); foreach (QJsonValue value, obj["notes"].toArray()) { this->notes.append(new Note(value.toObject())); } } Folder::~Folder() { foreach (Note *n, notes) { delete n; } } QString Folder::getName() { return name; } void Folder::setName(QString name) { this->name = name; } QString Folder::getUUID() { return uuid; } QVector Folder::getNotes() { return notes; } void Folder::append(Note *n) { notes.append(n); } int Folder::remove(QString uuid) { int res = 0; int idx = -1; for (int i = 0; i < notes.length(); i++) { if (notes[i]->getUUID() == uuid) { idx = i; res = 1; } } notes.removeAt(idx); return res; } QJsonObject Folder::toJson() { QJsonObject folder; QJsonArray arr; foreach (Note *n, notes) { arr.append(n->toJson()); } folder["name"] = this->name; folder["uuid"] = this->uuid; folder["notes"] = arr; return folder; }