summaryrefslogtreecommitdiff
path: root/src/nexusinterface.cpp
diff options
context:
space:
mode:
authorTannin <devnull@localhost>2013-05-10 10:57:35 +0200
committerTannin <devnull@localhost>2013-05-10 10:57:35 +0200
commit9bc123e8e2dbd17508a68e4afc2eb881873601bd (patch)
tree9e082b7cfca4069d4f47f2a639b570b9ad0a167a /src/nexusinterface.cpp
parentd161e1a0d61181185323fcb547d9e0651d546fb2 (diff)
- initial support for exposing the nexusbridge to python
- started improving usability of nexus bridge - support for installers implemented in python
Diffstat (limited to 'src/nexusinterface.cpp')
-rw-r--r--src/nexusinterface.cpp54
1 files changed, 37 insertions, 17 deletions
diff --git a/src/nexusinterface.cpp b/src/nexusinterface.cpp
index 49cf595e..56752ca5 100644
--- a/src/nexusinterface.cpp
+++ b/src/nexusinterface.cpp
@@ -32,34 +32,35 @@ using namespace MOShared;
NexusBridge::NexusBridge()
+ : m_Interface(NexusInterface::instance())
+ , m_Url(MOBase::ToQString(MOShared::GameInfo::instance().getNexusInfoUrl()))
{
- m_Interface = NexusInterface::instance();
}
-void NexusBridge::requestDescription(int modID, QVariant userData, const QString &url)
+void NexusBridge::requestDescription(int modID, QVariant userData)
{
- m_RequestIDs.insert(m_Interface->requestDescription(modID, this, userData, url));
+ m_RequestIDs.insert(m_Interface->requestDescription(modID, this, userData, m_Url));
}
-void NexusBridge::requestFiles(int modID, QVariant userData, const QString &url)
+void NexusBridge::requestFiles(int modID, QVariant userData)
{
- m_RequestIDs.insert(m_Interface->requestFiles(modID, this, userData, url));
+ m_RequestIDs.insert(m_Interface->requestFiles(modID, this, userData, m_Url));
}
-void NexusBridge::requestFileInfo(int modID, int fileID, QVariant userData, const QString &url)
+void NexusBridge::requestFileInfo(int modID, int fileID, QVariant userData)
{
- m_RequestIDs.insert(m_Interface->requestFileInfo(modID, fileID, this, userData, url));
+ m_RequestIDs.insert(m_Interface->requestFileInfo(modID, fileID, this, userData, m_Url));
}
-void NexusBridge::requestDownloadURL(int modID, int fileID, QVariant userData, const QString &url)
+void NexusBridge::requestDownloadURL(int modID, int fileID, QVariant userData)
{
- m_RequestIDs.insert(m_Interface->requestDownloadURL(modID, fileID, this, userData, url));
+ m_RequestIDs.insert(m_Interface->requestDownloadURL(modID, fileID, this, userData, m_Url));
}
-void NexusBridge::requestToggleEndorsement(int modID, bool endorse, QVariant userData, const QString &url)
+void NexusBridge::requestToggleEndorsement(int modID, bool endorse, QVariant userData)
{
- m_RequestIDs.insert(m_Interface->requestToggleEndorsement(modID, endorse, this, userData, url));
+ m_RequestIDs.insert(m_Interface->requestToggleEndorsement(modID, endorse, this, userData, m_Url));
}
void NexusBridge::nxmDescriptionAvailable(int modID, QVariant userData, QVariant resultData, int requestID)
@@ -67,7 +68,7 @@ void NexusBridge::nxmDescriptionAvailable(int modID, QVariant userData, QVariant
std::set<int>::iterator iter = m_RequestIDs.find(requestID);
if (iter != m_RequestIDs.end()) {
m_RequestIDs.erase(iter);
- emit nxmDescriptionAvailable(modID, userData, resultData);
+ emit descriptionAvailable(modID, userData, resultData);
}
}
@@ -76,7 +77,26 @@ void NexusBridge::nxmFilesAvailable(int modID, QVariant userData, QVariant resul
std::set<int>::iterator iter = m_RequestIDs.find(requestID);
if (iter != m_RequestIDs.end()) {
m_RequestIDs.erase(iter);
- emit nxmFilesAvailable(modID, userData, resultData);
+
+ QList<ModRepositoryFileInfo*> fileInfoList;
+
+ QVariantList resultList = resultData.toList();
+
+ foreach(QVariant file, resultList) {
+ ModRepositoryFileInfo *temp = new ModRepositoryFileInfo(NULL);
+ QVariantMap fileInfo = file.toMap();
+ temp->uri = fileInfo["uri"].toString();
+ temp->name = fileInfo["name"].toString();
+ temp->description = fileInfo["description"].toString();
+ temp->version = VersionInfo(fileInfo["version"].toString());
+ temp->categoryID = fileInfo["category_id"].toInt();
+ temp->fileID = fileInfo["id"].toInt();
+ temp->fileSize = fileInfo["size"].toInt();
+ fileInfoList.append(temp);
+ }
+
+ emit bla(userData.toString());
+ emit filesAvailable(modID, userData, fileInfoList);
}
}
@@ -85,7 +105,7 @@ void NexusBridge::nxmFileInfoAvailable(int modID, int fileID, QVariant userData,
std::set<int>::iterator iter = m_RequestIDs.find(requestID);
if (iter != m_RequestIDs.end()) {
m_RequestIDs.erase(iter);
- emit nxmFileInfoAvailable(modID, fileID, userData, resultData);
+ emit fileInfoAvailable(modID, fileID, userData, resultData);
}
}
@@ -94,7 +114,7 @@ void NexusBridge::nxmDownloadURLsAvailable(int modID, int fileID, QVariant userD
std::set<int>::iterator iter = m_RequestIDs.find(requestID);
if (iter != m_RequestIDs.end()) {
m_RequestIDs.erase(iter);
- emit nxmDownloadURLsAvailable(modID, fileID, userData, resultData);
+ //emit downloadURLsAvailable(modID, fileID, userData, resultData);
}
}
@@ -103,7 +123,7 @@ void NexusBridge::nxmEndorsementToggled(int modID, QVariant userData, QVariant r
std::set<int>::iterator iter = m_RequestIDs.find(requestID);
if (iter != m_RequestIDs.end()) {
m_RequestIDs.erase(iter);
- emit nxmEndorsementToggled(modID, userData, resultData);
+ //emit endorsementToggled(modID, userData, resultData);
}
}
@@ -112,7 +132,7 @@ void NexusBridge::nxmRequestFailed(int modID, QVariant userData, int requestID,
std::set<int>::iterator iter = m_RequestIDs.find(requestID);
if (iter != m_RequestIDs.end()) {
m_RequestIDs.erase(iter);
- emit nxmRequestFailed(modID, userData, errorMessage);
+ //emit requestFailed(modID, userData, errorMessage);
}
}