diff options
author | Petr Mrázek <peterix@gmail.com> | 2013-08-18 20:52:17 +0200 |
---|---|---|
committer | Petr Mrázek <peterix@gmail.com> | 2013-08-18 20:52:17 +0200 |
commit | c92ad7dcf86f2e5e71d71a68e24e79fbdeceb56d (patch) | |
tree | 7be301a5123e216a41646f9639ec887609497a87 /gui/LegacyModEditDialog.cpp | |
parent | 253067c782955380bbf66ac0475dc954375b1ff4 (diff) | |
download | MultiMC-c92ad7dcf86f2e5e71d71a68e24e79fbdeceb56d.tar MultiMC-c92ad7dcf86f2e5e71d71a68e24e79fbdeceb56d.tar.gz MultiMC-c92ad7dcf86f2e5e71d71a68e24e79fbdeceb56d.tar.lz MultiMC-c92ad7dcf86f2e5e71d71a68e24e79fbdeceb56d.tar.xz MultiMC-c92ad7dcf86f2e5e71d71a68e24e79fbdeceb56d.zip |
Drag and Drop, mod management.
Diffstat (limited to 'gui/LegacyModEditDialog.cpp')
-rw-r--r-- | gui/LegacyModEditDialog.cpp | 92 |
1 files changed, 92 insertions, 0 deletions
diff --git a/gui/LegacyModEditDialog.cpp b/gui/LegacyModEditDialog.cpp index a6becd7d..61e3872e 100644 --- a/gui/LegacyModEditDialog.cpp +++ b/gui/LegacyModEditDialog.cpp @@ -15,6 +15,9 @@ #include "LegacyModEditDialog.h" #include "ui_LegacyModEditDialog.h" +#include <logic/ModList.h> +#include <pathutils.h> +#include <QFileDialog> LegacyModEditDialog::LegacyModEditDialog( LegacyInstance* inst, QWidget* parent ) : m_inst(inst), @@ -22,7 +25,22 @@ LegacyModEditDialog::LegacyModEditDialog( LegacyInstance* inst, QWidget* parent ui(new Ui::LegacyModEditDialog) { ui->setupUi(this); + ensurePathExists(m_inst->coreModsDir()); + ensurePathExists(m_inst->mlModsDir()); + ensurePathExists(m_inst->jarModsDir()); + m_mods = m_inst->loaderModList(); + m_coremods = m_inst->coreModList(); + m_jarmods = m_inst->jarModList(); + /* + m_mods->startWatching(); + m_coremods->startWatching(); + m_jarmods->startWatching(); + */ + + ui->jarModsTreeView->setModel(m_jarmods.data()); + ui->coreModsTreeView->setModel(m_coremods.data()); + ui->mlModTreeView->setModel(m_mods.data()); } LegacyModEditDialog::~LegacyModEditDialog() @@ -30,6 +48,80 @@ LegacyModEditDialog::~LegacyModEditDialog() delete ui; } +void LegacyModEditDialog::on_addCoreBtn_clicked() +{ + QStringList fileNames = QFileDialog::getOpenFileNames(this, "Select Core Mods"); + for(auto filename:fileNames) + { + m_coremods->installMod(QFileInfo(filename)); + } +} +void LegacyModEditDialog::on_addForgeBtn_clicked() +{ + +} +void LegacyModEditDialog::on_addJarBtn_clicked() +{ + +} +void LegacyModEditDialog::on_addModBtn_clicked() +{ + +} +void LegacyModEditDialog::on_addTexPackBtn_clicked() +{ + +} +void LegacyModEditDialog::on_moveJarDownBtn_clicked() +{ + +} +void LegacyModEditDialog::on_moveJarUpBtn_clicked() +{ + +} +void LegacyModEditDialog::on_rmCoreBtn_clicked() +{ + auto sm = ui->coreModsTreeView->selectionModel(); + auto selection = sm->selectedRows(); + if(!selection.size()) + return; + m_coremods->deleteMod(selection[0].row()); +} +void LegacyModEditDialog::on_rmJarBtn_clicked() +{ + auto sm = ui->jarModsTreeView->selectionModel(); + auto selection = sm->selectedRows(); + if(!selection.size()) + return; + m_jarmods->deleteMod(selection[0].row()); +} +void LegacyModEditDialog::on_rmModBtn_clicked() +{ + auto sm = ui->mlModTreeView->selectionModel(); + auto selection = sm->selectedRows(); + if(!selection.size()) + return; + m_mods->deleteMod(selection[0].row()); +} +void LegacyModEditDialog::on_rmTexPackBtn_clicked() +{ + +} +void LegacyModEditDialog::on_viewCoreBtn_clicked() +{ + openDirInDefaultProgram(m_inst->coreModsDir(), true); +} +void LegacyModEditDialog::on_viewModBtn_clicked() +{ + openDirInDefaultProgram(m_inst->mlModsDir(), true); +} +void LegacyModEditDialog::on_viewTexPackBtn_clicked() +{ + //openDirInDefaultProgram(m_inst->mlModsDir(), true); +} + + void LegacyModEditDialog::on_buttonBox_rejected() { close(); |