diff options
author | Petr Mrázek <peterix@gmail.com> | 2013-10-09 00:24:14 +0200 |
---|---|---|
committer | Petr Mrázek <peterix@gmail.com> | 2013-10-09 00:24:14 +0200 |
commit | 36edf6cbc6f0b329e0b8f96dc5543cff0acb8aec (patch) | |
tree | ad127020649817ef6203fbea22d3eff954b5b110 /gui/MCModInfoFrame.cpp | |
parent | 05e2da51d8d25374140dce3c1646a2a1a0a2a553 (diff) | |
parent | 9edc486f137c9719bd62c8c63ecc3d195f9dc79e (diff) | |
download | PrismLauncher-36edf6cbc6f0b329e0b8f96dc5543cff0acb8aec.tar.gz PrismLauncher-36edf6cbc6f0b329e0b8f96dc5543cff0acb8aec.tar.bz2 PrismLauncher-36edf6cbc6f0b329e0b8f96dc5543cff0acb8aec.zip |
Merge branch 'feature_mcmod_info' into develop
Diffstat (limited to 'gui/MCModInfoFrame.cpp')
-rw-r--r-- | gui/MCModInfoFrame.cpp | 92 |
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); +} |