summaryrefslogtreecommitdiffstats
path: root/gui/MCModInfoFrame.cpp
diff options
context:
space:
mode:
authorPetr Mrázek <peterix@gmail.com>2013-10-09 00:24:14 +0200
committerPetr Mrázek <peterix@gmail.com>2013-10-09 00:24:14 +0200
commit36edf6cbc6f0b329e0b8f96dc5543cff0acb8aec (patch)
treead127020649817ef6203fbea22d3eff954b5b110 /gui/MCModInfoFrame.cpp
parent05e2da51d8d25374140dce3c1646a2a1a0a2a553 (diff)
parent9edc486f137c9719bd62c8c63ecc3d195f9dc79e (diff)
downloadMultiMC-36edf6cbc6f0b329e0b8f96dc5543cff0acb8aec.tar
MultiMC-36edf6cbc6f0b329e0b8f96dc5543cff0acb8aec.tar.gz
MultiMC-36edf6cbc6f0b329e0b8f96dc5543cff0acb8aec.tar.lz
MultiMC-36edf6cbc6f0b329e0b8f96dc5543cff0acb8aec.tar.xz
MultiMC-36edf6cbc6f0b329e0b8f96dc5543cff0acb8aec.zip
Merge branch 'feature_mcmod_info' into develop
Diffstat (limited to 'gui/MCModInfoFrame.cpp')
-rw-r--r--gui/MCModInfoFrame.cpp92
1 files changed, 92 insertions, 0 deletions
diff --git a/gui/MCModInfoFrame.cpp b/gui/MCModInfoFrame.cpp
new file mode 100644
index 00000000..70cfd46a
--- /dev/null
+++ b/gui/MCModInfoFrame.cpp
@@ -0,0 +1,92 @@
+/* Copyright 2013 MultiMC Contributors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include "MCModInfoFrame.h"
+#include "ui_MCModInfoFrame.h"
+
+void handleModInfoUpdate(Mod &m, MCModInfoFrame *frame)
+{
+ if(m.type() == m.MOD_FOLDER)
+ {
+ frame->setName("<p><span style=\" font-size:9pt; font-weight:600; font-style:italic;\">Select a mod to view information...</span></p>");
+ frame->setDescription("<p><span style=\" font-style:italic;\">Mod description</span></p>");
+ frame->setAuthors("<p><span style=\" font-style:italic; color:#4a4a4a;\">Mod authors</span></p>");
+ frame->setCredits("<p><span style=\" font-style:italic; color:#4a4a4a;\">Mod credits</span></p>");
+ frame->setWebsite("<p><span style=\" font-style:italic; color:#4a4a4a;\">Mod website</span></p>");
+
+ return;
+ }
+
+ QString missing = "<p><span style=\" font-style:italic; color:#4a4a4a;\">Missing from mcmod.info</span></p>";
+
+ QString name = m.name();
+ if(name.isEmpty()) name = missing;
+ QString description = m.description();
+ if(description.isEmpty()) description = missing;
+ QString authors = m.authors();
+ if(authors.isEmpty()) authors = missing;
+ QString credits = m.credits();
+ if(credits.isEmpty()) credits = missing;
+ QString website = m.homeurl();
+ if(website.isEmpty()) website = missing;
+ else website = "<a href=\"" + website + "\">" + website + "</a>";
+
+ frame->setName("<p><span style=\" font-size:9pt; font-weight:600;\">" + name + "</span></p>");
+ frame->setDescription(description);
+ frame->setAuthors(authors);
+ frame->setCredits(credits);
+ frame->setWebsite(website);
+}
+
+MCModInfoFrame::MCModInfoFrame(QWidget *parent) :
+ QFrame(parent),
+ ui(new Ui::MCModInfoFrame)
+{
+ ui->setupUi(this);
+}
+
+MCModInfoFrame::~MCModInfoFrame()
+{
+ delete ui;
+}
+
+void MCModInfoFrame::setName(QString name)
+{
+ ui->label_Name->setText(name);
+ ui->label_Name->setToolTip(name);
+}
+
+void MCModInfoFrame::setDescription(QString description)
+{
+ ui->label_Description->setText(description);
+ ui->label_Description->setToolTip(description);
+}
+
+void MCModInfoFrame::setAuthors(QString authors)
+{
+ ui->label_Authors->setText(authors);
+ ui->label_Authors->setToolTip(authors);
+}
+
+void MCModInfoFrame::setCredits(QString credits)
+{
+ ui->label_Credits->setText(credits);
+ ui->label_Credits->setToolTip(credits);
+}
+
+void MCModInfoFrame::setWebsite(QString website)
+{
+ ui->label_Website->setText(website);
+}