From ac40a0d194e686db0c12dc68925b561d3b9a8364 Mon Sep 17 00:00:00 2001 From: Rafael Date: Sat, 10 Dec 2016 04:35:24 +0100 Subject: [PATCH] Rewrite of SnapmaticProperties --- PictureDialog.cpp | 14 +++---- ProfileLoader.cpp | 2 +- SnapmaticPicture.cpp | 96 ++++++++++++-------------------------------- SnapmaticPicture.h | 42 ++++++++++--------- UserInterface.cpp | 2 +- main.cpp | 2 +- 6 files changed, 58 insertions(+), 100 deletions(-) diff --git a/PictureDialog.cpp b/PictureDialog.cpp index c7442af..929b01b 100755 --- a/PictureDialog.cpp +++ b/PictureDialog.cpp @@ -265,14 +265,14 @@ void PictureDialog::setSnapmaticPicture(SnapmaticPicture *picture, QString pictu } if (picture->isJsonOk()) { - locX = QString::number(picture->getLocationX()); - locY = QString::number(picture->getLocationY()); - locZ = QString::number(picture->getLocationZ()); - crewID = crewDB->getCrewName(picture->getCrewNumber()); - created = picture->getCreatedDateTime().toString(Qt::DefaultLocaleShortDate); - plyrsList = picture->getPlayers(); + locX = QString::number(picture->getSnapmaticProperties().location.x); + locY = QString::number(picture->getSnapmaticProperties().location.y); + locZ = QString::number(picture->getSnapmaticProperties().location.z); + crewID = crewDB->getCrewName(picture->getSnapmaticProperties().crewID); + created = picture->getSnapmaticProperties().createdDateTime.toString(Qt::DefaultLocaleShortDate); + plyrsList = picture->getSnapmaticProperties().playersList; picTitl = picture->getPictureTitl(); - picArea = picture->getArea(); + picArea = picture->getSnapmaticProperties().area; if (globalMap.contains(picArea)) { picAreaStr = globalMap[picArea]; diff --git a/ProfileLoader.cpp b/ProfileLoader.cpp index c635360..6d184bb 100755 --- a/ProfileLoader.cpp +++ b/ProfileLoader.cpp @@ -74,7 +74,7 @@ void ProfileLoader::run() if (picture->readingPicture()) { emit pictureLoaded(picture, picturePath); - int crewNumber = picture->getCrewNumber(); + int crewNumber = picture->getSnapmaticProperties().crewID; if (!crewList.contains(crewNumber)) { crewList.append(crewNumber); diff --git a/SnapmaticPicture.cpp b/SnapmaticPicture.cpp index 1bc0aed..a53d860 100755 --- a/SnapmaticPicture.cpp +++ b/SnapmaticPicture.cpp @@ -60,18 +60,6 @@ SnapmaticPicture::SnapmaticPicture(const QString &fileName, QObject *parent) : Q // INIT JSON jsonOk = 0; jsonStr = ""; - jsonLocX = 0; - jsonLocY = 0; - jsonLocZ = 0; - jsonCrewID = 0; - jsonArea = ""; - jsonCreatedTimestamp = 0; - jsonPlyrsList = QStringList(); - jsonMeme = 0; - jsonMug = 0; - jsonSelfie = 0; - jsonDirector = 0; - jsonRockstarEditor = 0; } SnapmaticPicture::~SnapmaticPicture() @@ -484,54 +472,52 @@ void SnapmaticPicture::parseJsonContent() { QJsonDocument jsonDocument = QJsonDocument::fromJson(jsonStr.toLatin1()); QJsonObject jsonObject = jsonDocument.object(); - QVariantMap jsonMap = jsonObject.toVariantMap(); - if (jsonMap.contains("loc")) + if (jsonObject.contains("loc")) { QJsonObject locObject = jsonObject["loc"].toObject(); - QVariantMap locMap = locObject.toVariantMap(); - if (locMap.contains("x")) { jsonLocX = locMap["x"].toDouble(); } - if (locMap.contains("y")) { jsonLocY = locMap["y"].toDouble(); } - if (locMap.contains("z")) { jsonLocZ = locMap["z"].toDouble(); } + if (locObject.contains("x")) { localSpJson.location.x = locObject["x"].toDouble(); } + if (locObject.contains("y")) { localSpJson.location.y = locObject["y"].toDouble(); } + if (locObject.contains("z")) { localSpJson.location.z = locObject["z"].toDouble(); } } - if (jsonMap.contains("area")) + if (jsonObject.contains("area")) { - jsonArea = jsonMap["area"].toString(); + localSpJson.area = jsonObject["area"].toString(); } - if (jsonMap.contains("crewid")) + if (jsonObject.contains("crewid")) { - jsonCrewID = jsonMap["crewid"].toInt(); + localSpJson.crewID = jsonObject["crewid"].toInt(); } - if (jsonMap.contains("creat")) + if (jsonObject.contains("creat")) { QDateTime createdTimestamp; - jsonCreatedTimestamp = jsonMap["creat"].toUInt(); - createdTimestamp.setTime_t(jsonCreatedTimestamp); - jsonCreatedDateTime = createdTimestamp; + localSpJson.createdTimestamp = jsonObject["creat"].toVariant().toUInt(); + createdTimestamp.setTime_t(localSpJson.createdTimestamp); + localSpJson.createdDateTime = createdTimestamp; } - if (jsonMap.contains("plyrs")) + if (jsonObject.contains("plyrs")) { - jsonPlyrsList = jsonMap["plyrs"].toStringList(); + localSpJson.playersList = jsonObject["plyrs"].toVariant().toStringList(); } - if (jsonMap.contains("meme")) + if (jsonObject.contains("meme")) { - jsonMeme = jsonMap["meme"].toBool(); + localSpJson.isMeme = jsonObject["meme"].toBool(); } - if (jsonMap.contains("mug")) + if (jsonObject.contains("mug")) { - jsonMug = jsonMap["mug"].toBool(); + localSpJson.isMug = jsonObject["mug"].toBool(); } - if (jsonMap.contains("slf")) + if (jsonObject.contains("slf")) { - jsonSelfie = jsonMap["slf"].toBool(); + localSpJson.isSelfie = jsonObject["slf"].toBool(); } - if (jsonMap.contains("drctr")) + if (jsonObject.contains("drctr")) { - jsonDirector = jsonMap["drctr"].toBool(); + localSpJson.isFromDirector = jsonObject["drctr"].toBool(); } - if (jsonMap.contains("rsedtr")) + if (jsonObject.contains("rsedtr")) { - jsonRockstarEditor = jsonMap["rsedtr"].toBool(); + localSpJson.isFromRSEditor = jsonObject["rsedtr"].toBool(); } jsonOk = true; @@ -542,44 +528,14 @@ bool SnapmaticPicture::isJsonOk() return jsonOk; } -QString SnapmaticPicture::getArea() -{ - return jsonArea; -} - QString SnapmaticPicture::getJsonStr() { return jsonStr; } -int SnapmaticPicture::getCrewNumber() +SnapmaticProperties SnapmaticPicture::getSnapmaticProperties() { - return jsonCrewID; -} - -double SnapmaticPicture::getLocationX() -{ - return jsonLocX; -} - -double SnapmaticPicture::getLocationY() -{ - return jsonLocY; -} - -double SnapmaticPicture::getLocationZ() -{ - return jsonLocZ; -} - -QStringList SnapmaticPicture::getPlayers() -{ - return jsonPlyrsList; -} - -QDateTime SnapmaticPicture::getCreatedDateTime() -{ - return jsonCreatedDateTime; + return localSpJson; } // VISIBILITY diff --git a/SnapmaticPicture.h b/SnapmaticPicture.h index a087575..d2e5a58 100755 --- a/SnapmaticPicture.h +++ b/SnapmaticPicture.h @@ -26,6 +26,25 @@ #include #include +struct SnapmaticProperties { + struct SnapmaticLocation { + double x; + double y; + double z; + }; + int crewID; + QString area; + QStringList playersList; + uint createdTimestamp; + QDateTime createdDateTime; + bool isMeme; + bool isMug; + bool isSelfie; + bool isFromDirector; + bool isFromRSEditor; + SnapmaticLocation location; +}; + class SnapmaticPicture : public QObject { Q_OBJECT @@ -51,13 +70,8 @@ public: // JSON bool isJsonOk(); - QString getArea(); - int getCrewNumber(); QString getJsonStr(); - double getLocationX(); - double getLocationY(); - double getLocationZ(); - QStringList getPlayers(); + SnapmaticProperties getSnapmaticProperties(); // VISIBILITY bool isHidden(); @@ -98,22 +112,10 @@ private: QByteArray rawPicContent; // JSON - void parseJsonContent(); bool jsonOk; - int jsonCrewID; QString jsonStr; - double jsonLocX; - double jsonLocY; - double jsonLocZ; - QString jsonArea; - QStringList jsonPlyrsList; - uint jsonCreatedTimestamp; - QDateTime jsonCreatedDateTime; - bool jsonMeme; - bool jsonMug; - bool jsonSelfie; - bool jsonDirector; - bool jsonRockstarEditor; + void parseJsonContent(); + SnapmaticProperties localSpJson; signals: diff --git a/UserInterface.cpp b/UserInterface.cpp index 8f2c533..45f4a41 100755 --- a/UserInterface.cpp +++ b/UserInterface.cpp @@ -407,7 +407,7 @@ void UserInterface::openSnapmaticFile(SnapmaticPicture *picture) picDialog->setSnapmaticPicture(picture, true); picDialog->setModal(true); - int crewID = picture->getCrewNumber(); + int crewID = picture->getSnapmaticProperties().crewID; if (crewID != 0) { crewDB->addCrew(crewID); } QObject::connect(threadDB, SIGNAL(playerNameFound(int, QString)), profileDB, SLOT(setPlayerName(int, QString))); diff --git a/main.cpp b/main.cpp index f7cf41f..e58c35b 100755 --- a/main.cpp +++ b/main.cpp @@ -435,7 +435,7 @@ int main(int argc, char *argv[]) picDialog->setWindowIcon(IconLoader::loadingAppIcon()); picDialog->setSnapmaticPicture(&picture, readOk); - int crewID = picture.getCrewNumber(); + int crewID = picture.getSnapmaticProperties().crewID; if (crewID != 0) { crewDB->addCrew(crewID); } if (!readOk) { return 1; }