From 7b45d807d6c2c8b5663ec53183e81e16a5baf739 Mon Sep 17 00:00:00 2001 From: Jeremy Rimpo Date: Fri, 15 Dec 2017 15:01:39 -0600 Subject: Restore archive tab and partial functionality --- src/organizercore.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'src/organizercore.cpp') diff --git a/src/organizercore.cpp b/src/organizercore.cpp index dd77f19a..1a336d91 100644 --- a/src/organizercore.cpp +++ b/src/organizercore.cpp @@ -1494,6 +1494,10 @@ void OrganizerCore::refreshBSAList() if (m_ActiveArchives.isEmpty()) { m_ActiveArchives = m_DefaultArchives; } + + if (m_UserInterface != nullptr) { + m_UserInterface->updateBSAList(m_DefaultArchives, m_ActiveArchives); + } m_ArchivesInit = true; } @@ -1572,6 +1576,9 @@ void OrganizerCore::updateModInDirectoryStructure(unsigned int index, // now we need to refresh the bsa list and save it so there is no confusion // about what archives are avaiable and active refreshBSAList(); + if (m_UserInterface != nullptr) { + m_UserInterface->archivesWriter().writeImmediately(false); + } std::vector archives = enabledArchives(); m_DirectoryRefresher.setMods( @@ -1729,6 +1736,9 @@ void OrganizerCore::modStatusChanged(unsigned int index) = m_DirectoryStructure->getOriginByName(ToWString(modInfo->name())); origin.enable(false); } + if (m_UserInterface != nullptr) { + m_UserInterface->archivesWriter().write(); + } } modInfo->clearCaches(); @@ -1885,6 +1895,9 @@ bool OrganizerCore::saveCurrentLists() try { savePluginList(); + if (m_UserInterface != nullptr) { + m_UserInterface->archivesWriter().write(); + } } catch (const std::exception &e) { reportError(tr("failed to save load order: %1").arg(e.what())); } -- cgit v1.3.1