aboutsummaryrefslogtreecommitdiff
path: root/libs/game_gamebryo/src/gamebryo/gamebryosavegameinfo.cpp
diff options
context:
space:
mode:
authorSulfurNitride <SulfurNitride@users.noreply.github.com>2026-04-12 02:40:00 -0500
committerSulfurNitride <SulfurNitride@users.noreply.github.com>2026-04-12 02:40:00 -0500
commite0fb66428a9b78b4c326df8d7e30429a5b271d74 (patch)
tree0fd83fe790ecb7d5cd3cfb36535e45d1b7118098 /libs/game_gamebryo/src/gamebryo/gamebryosavegameinfo.cpp
parente985dc340097831d4e5625941bded217abaa57b8 (diff)
Remove dead plugin scaffolds and duplicate lib dirs
The *_native C++ ports were replaced by bundled Python + .py plugins in de4db79, but the source dirs were left behind without any CMake wiring — causing confusion when editing them appears to do nothing. Same story for libs/dds_header (stale duplicate of libs/preview_dds, unrelated to the actively-used libs/dds-header) and libs/game_gamebryo (superseded by libs/game_bethesda/src/gamebryo). Removes: - libs/basic_games_native - libs/form43_checker_native - libs/installer_omod_native - libs/preview_dds_native - libs/rootbuilder_native - libs/script_extender_checker_native - libs/dds_header - libs/game_gamebryo
Diffstat (limited to 'libs/game_gamebryo/src/gamebryo/gamebryosavegameinfo.cpp')
-rw-r--r--libs/game_gamebryo/src/gamebryo/gamebryosavegameinfo.cpp100
1 files changed, 0 insertions, 100 deletions
diff --git a/libs/game_gamebryo/src/gamebryo/gamebryosavegameinfo.cpp b/libs/game_gamebryo/src/gamebryo/gamebryosavegameinfo.cpp
deleted file mode 100644
index 6d1289a..0000000
--- a/libs/game_gamebryo/src/gamebryo/gamebryosavegameinfo.cpp
+++ /dev/null
@@ -1,100 +0,0 @@
-#include "gamebryosavegameinfo.h"
-
-#include "gamebryosavegame.h"
-#include "gamebryosavegameinfowidget.h"
-#include "gamegamebryo.h"
-#include "imodinterface.h"
-#include "imoinfo.h"
-#include "iplugingame.h"
-#include "ipluginlist.h"
-
-#include <QDir>
-#include <QString>
-#include <QStringList>
-
-GamebryoSaveGameInfo::GamebryoSaveGameInfo(GameGamebryo const* game) : m_Game(game) {}
-
-GamebryoSaveGameInfo::~GamebryoSaveGameInfo() {}
-
-GamebryoSaveGameInfo::MissingAssets
-GamebryoSaveGameInfo::getMissingAssets(MOBase::ISaveGame const& save) const
-{
- GamebryoSaveGame const& gamebryoSave = dynamic_cast<GamebryoSaveGame const&>(save);
- MOBase::IOrganizer* organizerCore = m_Game->m_Organizer;
-
- // collect the list of missing plugins
- MissingAssets missingAssets;
-
- for (QString const& pluginName : gamebryoSave.getPlugins()) {
- switch (organizerCore->pluginList()->state(pluginName)) {
- case MOBase::IPluginList::STATE_INACTIVE:
- missingAssets[pluginName] =
- ProvidingModules{organizerCore->pluginList()->origin(pluginName)};
- break;
- case MOBase::IPluginList::STATE_MISSING:
- missingAssets[pluginName] = ProvidingModules();
- break;
- }
- }
-
- for (QString const& pluginName : gamebryoSave.getLightPlugins()) {
- switch (organizerCore->pluginList()->state(pluginName)) {
- case MOBase::IPluginList::STATE_INACTIVE:
- missingAssets[pluginName] =
- ProvidingModules{organizerCore->pluginList()->origin(pluginName)};
- break;
- case MOBase::IPluginList::STATE_MISSING:
- missingAssets[pluginName] = ProvidingModules();
- break;
- }
- }
-
- // Find out any other mods that might contain the esp/esm
- QStringList espFilter({"*.esp", "*.esl", "*.esm"});
-
- QString dataDir(organizerCore->managedGame()->dataDirectory().absolutePath());
-
- // Search normal mods. A note: This will also find mods in data.
- for (QString const& mod : organizerCore->modList()->allModsByProfilePriority()) {
- MOBase::IModInterface* modInfo = organizerCore->modList()->getMod(mod);
- QStringList esps = QDir(modInfo->absolutePath()).entryList(espFilter);
- for (QString const& esp : esps) {
- MissingAssets::iterator iter = missingAssets.find(esp);
- if (modInfo->absolutePath() == dataDir) {
- // We have to prune esps that reside in the data directory, otherwise
- // you get all the unmanaged mods listed as potential candidates for
- // enabling
- if (modInfo->name() != organizerCore->pluginList()->origin(esp)) {
- continue;
- }
- }
- if (iter != missingAssets.end()) {
- if (!iter->contains(modInfo->name())) {
- iter->push_back(modInfo->name());
- }
- }
- }
- }
-
- // search in overwrite
- {
- QDir overwriteDir(organizerCore->overwritePath());
- QStringList esps = overwriteDir.entryList(espFilter);
- for (const QString& esp : esps) {
- MissingAssets::iterator iter = missingAssets.find(esp);
- if (iter != missingAssets.end()) {
- if (!iter->contains("<overwrite>")) {
- iter->push_back("<overwrite>");
- }
- }
- }
- }
-
- return missingAssets;
-}
-
-MOBase::ISaveGameInfoWidget*
-GamebryoSaveGameInfo::getSaveGameWidget(QWidget* parent) const
-{
- return new GamebryoSaveGameInfoWidget(this, parent);
-}