diff options
| author | Silarn <jrim@rimpo.org> | 2018-04-18 03:41:53 -0500 |
|---|---|---|
| committer | Silarn <jrim@rimpo.org> | 2018-04-18 03:41:53 -0500 |
| commit | 08b56ee783131537d3f87e60819e88316ea1e062 (patch) | |
| tree | a04f27fd6cbe91cee2b09a0eb84c91c9bfa3ae79 /src/modinfodialog.cpp | |
| parent | 85faed5de109c0d5773626370bb6dbd338293f63 (diff) | |
Improve and fix handling of external links
Diffstat (limited to 'src/modinfodialog.cpp')
| -rw-r--r-- | src/modinfodialog.cpp | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/modinfodialog.cpp b/src/modinfodialog.cpp index 710b9696..a137873e 100644 --- a/src/modinfodialog.cpp +++ b/src/modinfodialog.cpp @@ -22,6 +22,7 @@ along with Mod Organizer. If not, see <http://www.gnu.org/licenses/>. #include "descriptionpage.h"
#include "mainwindow.h"
+#include "modidlineedit.h"
#include "iplugingame.h"
#include "nexusinterface.h"
#include "report.h"
@@ -93,6 +94,8 @@ ModInfoDialog::ModInfoDialog(ModInfo::Ptr modInfo, const DirectoryEntry *directo ui->modIDEdit->setValidator(new QIntValidator(modIDEdit));
ui->modIDEdit->setText(QString("%1").arg(modInfo->getNexusID()));
+ connect(ui->modIDEdit, SIGNAL(linkClicked(QString)), this, SLOT(linkClicked(QString)));
+
ui->sourceGameEdit->addItem(organizerCore->managedGame()->gameName(), organizerCore->managedGame()->gameShortName());
if (organizerCore->managedGame()->validShortNames().size() == 0) {
ui->sourceGameEdit->setDisabled(true);
@@ -724,7 +727,7 @@ void ModInfoDialog::on_deactivateESP_clicked() void ModInfoDialog::on_visitNexusLabel_linkActivated(const QString &link)
{
- emit nexusLinkActivated(link);
+ emit linkActivated(link);
}
void ModInfoDialog::linkClicked(const QUrl &url)
@@ -733,12 +736,17 @@ void ModInfoDialog::linkClicked(const QUrl &url) //and URL to the web service
if (NexusInterface::instance(m_PluginContainer)->isURLGameRelated(url)) {
- emit nexusLinkActivated(url.toString());
+ emit linkActivated(url.toString());
} else {
::ShellExecuteW(nullptr, L"open", ToWString(url.toString()).c_str(), nullptr, nullptr, SW_SHOWNORMAL);
}
}
+void ModInfoDialog::linkClicked(QString url)
+{
+ emit linkActivated(url);
+}
+
void ModInfoDialog::refreshNexusData(int modID)
{
|
