From f55a5f2b21664ccd2af1c24ef68f14f73e418b1c Mon Sep 17 00:00:00 2001 From: Thomas Tanner Date: Sun, 20 Dec 2015 21:08:14 +0000 Subject: Managed to remove SaveGame and SaveGameGamebryo classes from organizer --- src/savegameinfowidget.cpp | 38 ++++++++++++++++++++++++++++---------- 1 file changed, 28 insertions(+), 10 deletions(-) (limited to 'src/savegameinfowidget.cpp') diff --git a/src/savegameinfowidget.cpp b/src/savegameinfowidget.cpp index 63eefb93..bf4a9598 100644 --- a/src/savegameinfowidget.cpp +++ b/src/savegameinfowidget.cpp @@ -19,9 +19,22 @@ along with Mod Organizer. If not, see . #include "savegameinfowidget.h" #include "ui_savegameinfowidget.h" -#include "utility.h" -#include "savegame.h" -#include + +#include "isavegame.h" +#include "gamebryosavegame.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include SaveGameInfoWidget::SaveGameInfoWidget(QWidget *parent) @@ -41,14 +54,19 @@ SaveGameInfoWidget::~SaveGameInfoWidget() } -void SaveGameInfoWidget::setSave(const SaveGame *saveGame) +void SaveGameInfoWidget::setSave(MOBase::ISaveGame const *saveGame) { - ui->saveNumLabel->setText(QString("%1").arg(saveGame->saveNumber())); - ui->characterLabel->setText(saveGame->pcName()); - ui->locationLabel->setText(saveGame->pcLocation()); - ui->levelLabel->setText(QString("%1").arg(saveGame->pcLevel())); - ui->dateLabel->setText(MOBase::ToString(saveGame->creationTime())); - ui->screenshotLabel->setPixmap(QPixmap::fromImage(saveGame->screenshot())); + GamebryoSaveGame const *game = dynamic_cast(saveGame); + ui->saveNumLabel->setText(QString("%1").arg(game->getSaveNumber())); + ui->characterLabel->setText(game->getPCName()); + ui->locationLabel->setText(game->getPCLocation()); + ui->levelLabel->setText(QString("%1").arg(game->getPCLevel())); + //This somewhat contorted code is because on my system at least, the + //old way of doing this appears to give short date and long time. + QDateTime t = saveGame->getCreationTime(); + ui->dateLabel->setText(t.date().toString(Qt::DefaultLocaleShortDate) + " " + + t.time().toString(Qt::DefaultLocaleLongDate)); + ui->screenshotLabel->setPixmap(QPixmap::fromImage(game->getScreenshot())); if (ui->gameFrame->layout() != nullptr) { QLayoutItem *item = nullptr; while ((item = ui->gameFrame->layout()->takeAt(0)) != nullptr) { -- cgit v1.3.1 From ae6bb99c521af611989439b6db8a14a1b27866fc Mon Sep 17 00:00:00 2001 From: Thomas Tanner Date: Sat, 26 Dec 2015 08:23:43 +0000 Subject: Remove savegameinfowidget from organizer core --- src/CMakeLists.txt | 5 - src/mainwindow.cpp | 3 - src/mainwindow.h | 1 - src/organizer.pro | 5 - src/savegameinfowidget.cpp | 83 --------------- src/savegameinfowidget.h | 63 ----------- src/savegameinfowidget.ui | 209 ------------------------------------- src/savegameinfowidgetgamebryo.cpp | 86 --------------- src/savegameinfowidgetgamebryo.h | 42 -------- 9 files changed, 497 deletions(-) delete mode 100644 src/savegameinfowidget.cpp delete mode 100644 src/savegameinfowidget.h delete mode 100644 src/savegameinfowidget.ui delete mode 100644 src/savegameinfowidgetgamebryo.cpp delete mode 100644 src/savegameinfowidgetgamebryo.h (limited to 'src/savegameinfowidget.cpp') diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 428f18f9..b80283af 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -18,8 +18,6 @@ SET(organizer_SRCS settings.cpp selfupdater.cpp selectiondialog.cpp - savegameinfowidgetgamebryo.cpp - savegameinfowidget.cpp queryoverwritedialog.cpp profilesdialog.cpp profile.cpp @@ -110,8 +108,6 @@ SET(organizer_HDRS settings.h selfupdater.h selectiondialog.h - savegameinfowidgetgamebryo.h - savegameinfowidget.h queryoverwritedialog.h profilesdialog.h profile.h @@ -200,7 +196,6 @@ SET(organizer_UIS simpleinstalldialog.ui settingsdialog.ui selectiondialog.ui - savegameinfowidget.ui queryoverwritedialog.ui profilesdialog.ui overwriteinfodialog.ui diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp index 0a690a8e..4d608d59 100644 --- a/src/mainwindow.cpp +++ b/src/mainwindow.cpp @@ -72,8 +72,6 @@ along with Mod Organizer. If not, see . #include "browserdialog.h" #include "aboutdialog.h" #include "safewritefile.h" -#include "savegameinfowidget.h" -#include "savegameinfowidgetgamebryo.h" #include "nxmaccessmanager.h" #include "appconfig.h" #include @@ -869,7 +867,6 @@ void MainWindow::displaySaveGameInfo(QListWidgetItem *newItem) { QString const &save = newItem->data(Qt::UserRole).toString(); if (m_CurrentSaveView == nullptr) { - //FIXME Is this the right place? IPluginGame const *game = m_OrganizerCore.managedGame(); SaveGameInfo const *info = game->feature(); if (info != nullptr) { diff --git a/src/mainwindow.h b/src/mainwindow.h index 0fd15d85..177048b4 100644 --- a/src/mainwindow.h +++ b/src/mainwindow.h @@ -39,7 +39,6 @@ class LockedDialog; class OrganizerCore; #include "plugincontainer.h" //class PluginContainer; class PluginListSortProxy; -class SaveGameInfoWidget; namespace BSA { class Archive; } #include "iplugingame.h" //namespace MOBase { class IPluginGame; } namespace MOBase { class IPluginModPage; } diff --git a/src/organizer.pro b/src/organizer.pro index ee0526ed..0ef2638b 100644 --- a/src/organizer.pro +++ b/src/organizer.pro @@ -27,8 +27,6 @@ SOURCES += \ settings.cpp \ selfupdater.cpp \ selectiondialog.cpp \ - savegameinfowidgetgamebryo.cpp \ - savegameinfowidget.cpp \ queryoverwritedialog.cpp \ profilesdialog.cpp \ profile.cpp \ @@ -105,8 +103,6 @@ HEADERS += \ settings.h \ selfupdater.h \ selectiondialog.h \ - savegameinfowidgetgamebryo.h \ - savegameinfowidget.h \ queryoverwritedialog.h \ profilesdialog.h \ profile.h \ @@ -179,7 +175,6 @@ FORMS += \ simpleinstalldialog.ui \ settingsdialog.ui \ selectiondialog.ui \ - savegameinfowidget.ui \ queryoverwritedialog.ui \ profilesdialog.ui \ overwriteinfodialog.ui \ diff --git a/src/savegameinfowidget.cpp b/src/savegameinfowidget.cpp deleted file mode 100644 index bf4a9598..00000000 --- a/src/savegameinfowidget.cpp +++ /dev/null @@ -1,83 +0,0 @@ -/* -Copyright (C) 2012 Sebastian Herbord. All rights reserved. - -This file is part of Mod Organizer. - -Mod Organizer is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. - -Mod Organizer is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with Mod Organizer. If not, see . -*/ - -#include "savegameinfowidget.h" -#include "ui_savegameinfowidget.h" - -#include "isavegame.h" -#include "gamebryosavegame.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include - - -SaveGameInfoWidget::SaveGameInfoWidget(QWidget *parent) - : QWidget(parent) - , ui(new Ui::SaveGameInfoWidget) -{ - ui->setupUi(this); - this->setWindowFlags(Qt::ToolTip | Qt::BypassGraphicsProxyWidget); - setWindowOpacity(style()->styleHint(QStyle::SH_ToolTipLabel_Opacity, 0, this) / qreal(255.0)); - ui->gameFrame->setStyleSheet("background-color: transparent;"); -// installEventFilter(this); -} - -SaveGameInfoWidget::~SaveGameInfoWidget() -{ - delete ui; -} - - -void SaveGameInfoWidget::setSave(MOBase::ISaveGame const *saveGame) -{ - GamebryoSaveGame const *game = dynamic_cast(saveGame); - ui->saveNumLabel->setText(QString("%1").arg(game->getSaveNumber())); - ui->characterLabel->setText(game->getPCName()); - ui->locationLabel->setText(game->getPCLocation()); - ui->levelLabel->setText(QString("%1").arg(game->getPCLevel())); - //This somewhat contorted code is because on my system at least, the - //old way of doing this appears to give short date and long time. - QDateTime t = saveGame->getCreationTime(); - ui->dateLabel->setText(t.date().toString(Qt::DefaultLocaleShortDate) + " " + - t.time().toString(Qt::DefaultLocaleLongDate)); - ui->screenshotLabel->setPixmap(QPixmap::fromImage(game->getScreenshot())); - if (ui->gameFrame->layout() != nullptr) { - QLayoutItem *item = nullptr; - while ((item = ui->gameFrame->layout()->takeAt(0)) != nullptr) { - delete item->widget(); - delete item; - } - ui->gameFrame->layout()->setSizeConstraint(QLayout::SetFixedSize); - } -} - -QFrame *SaveGameInfoWidget::getGameFrame() -{ - return ui->gameFrame; -} diff --git a/src/savegameinfowidget.h b/src/savegameinfowidget.h deleted file mode 100644 index c811313c..00000000 --- a/src/savegameinfowidget.h +++ /dev/null @@ -1,63 +0,0 @@ -/* -Copyright (C) 2012 Sebastian Herbord. All rights reserved. - -This file is part of Mod Organizer. - -Mod Organizer is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. - -Mod Organizer is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with Mod Organizer. If not, see . -*/ - -#ifndef SAVEGAMEINFOWIDGET_H -#define SAVEGAMEINFOWIDGET_H - -#include -#include - -class QFrame; - -namespace Ui { -class SaveGameInfoWidget; -} - -namespace MOBase { class ISaveGame; } - -class SaveGameInfoWidget : public QWidget -{ - Q_OBJECT - -public: - - explicit SaveGameInfoWidget(QWidget *parent = 0); - ~SaveGameInfoWidget(); - - virtual void setSave(MOBase::ISaveGame const *saveGame); - -signals: - - void closeSaveInfo(); - -protected: - -// virtual bool eventFilter(QObject *object, QEvent *event); - - QFrame *getGameFrame(); - -private: - -private: - - Ui::SaveGameInfoWidget *ui; - -}; - -#endif // SAVEGAMEINFOWIDGET_H diff --git a/src/savegameinfowidget.ui b/src/savegameinfowidget.ui deleted file mode 100644 index e2e9588c..00000000 --- a/src/savegameinfowidget.ui +++ /dev/null @@ -1,209 +0,0 @@ - - - SaveGameInfoWidget - - - - 0 - 0 - 400 - 300 - - - - - 0 - 0 - - - - - - - - - - - - - QFormLayout::AllNonFixedFieldsGrow - - - - - - true - - - - Save # - - - - - - - - true - - - - Character - - - - - - - - true - - - - Level - - - - - - - - true - - - - Location - - - - - - - - true - - - - Date - - - - - - - - 75 - true - - - - - - - - - - - - 75 - true - - - - - - - - - - - - 75 - true - - - - - - - - - - - - 75 - true - - - - - - - - - - - - 75 - true - - - - - - - - - - - - - - 0 - 0 - - - - - 0 - 0 - - - - QFrame::StyledPanel - - - QFrame::Raised - - - - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - false - - - - - - Qt::AlignCenter - - - - - - - - diff --git a/src/savegameinfowidgetgamebryo.cpp b/src/savegameinfowidgetgamebryo.cpp deleted file mode 100644 index 1836a8f2..00000000 --- a/src/savegameinfowidgetgamebryo.cpp +++ /dev/null @@ -1,86 +0,0 @@ -/* -Copyright (C) 2012 Sebastian Herbord. All rights reserved. - -This file is part of Mod Organizer. - -Mod Organizer is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. - -Mod Organizer is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with Mod Organizer. If not, see . -*/ - -#include "savegameinfowidgetgamebryo.h" - -#include "pluginlist.h" -#include "gamebryosavegame.h" - -#include -#include -#include -#include - - -SaveGameInfoWidgetGamebryo::SaveGameInfoWidgetGamebryo(MOBase::ISaveGame const *saveGame, PluginList *pluginList, QWidget *parent) - : SaveGameInfoWidget(parent), m_PluginList(pluginList) -{ - QVBoxLayout *gameLayout = new QVBoxLayout(); - gameLayout->setMargin(0); - gameLayout->setSpacing(2); - getGameFrame()->setLayout(gameLayout); - setSave(saveGame); -} - - -void SaveGameInfoWidgetGamebryo::setSave(MOBase::ISaveGame const *saveGame) -{ - SaveGameInfoWidget::setSave(saveGame); - GamebryoSaveGame const *gamebryoSave = dynamic_cast(saveGame); - QLayout *layout = getGameFrame()->layout(); - QLabel *header = new QLabel(tr("Missing ESPs")); - QFont headerFont = header->font(); - QFont contentFont = headerFont; - headerFont.setItalic(true); - contentFont.setBold(true); - contentFont.setPointSize(7); - header->setFont(headerFont); - layout->addWidget(header); - int count = 0; - for (QString const &pluginName : gamebryoSave->getPlugins()) { - //if (m_PluginList->isEnabled(pluginName)) { - //should use IPluginList * in interface - if (m_PluginList->state(pluginName) == MOBase::IPluginList::STATE_ACTIVE) { - continue; - } - - ++count; - - if (count > 10) { - break; - } - - QLabel *pluginLabel = new QLabel(pluginName); - pluginLabel->setIndent(10); - pluginLabel->setFont(contentFont); - layout->addWidget(pluginLabel); - } - if (count > 10) { - QLabel *dotDotLabel = new QLabel("..."); - dotDotLabel->setIndent(10); - dotDotLabel->setFont(contentFont); - layout->addWidget(dotDotLabel); - } - if (count == 0) { - QLabel *dotDotLabel = new QLabel(tr("None")); - dotDotLabel->setIndent(10); - dotDotLabel->setFont(contentFont); - layout->addWidget(dotDotLabel); - } -} diff --git a/src/savegameinfowidgetgamebryo.h b/src/savegameinfowidgetgamebryo.h deleted file mode 100644 index db6c91df..00000000 --- a/src/savegameinfowidgetgamebryo.h +++ /dev/null @@ -1,42 +0,0 @@ -/* -Copyright (C) 2012 Sebastian Herbord. All rights reserved. - -This file is part of Mod Organizer. - -Mod Organizer is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. - -Mod Organizer is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with Mod Organizer. If not, see . -*/ - -#ifndef SAVEGAMEINFOWIDGETGAMEBRYO_H -#define SAVEGAMEINFOWIDGETGAMEBRYO_H - - -#include "savegameinfowidget.h" - -class PluginList; - -class SaveGameInfoWidgetGamebryo : public SaveGameInfoWidget -{ -public: - - explicit SaveGameInfoWidgetGamebryo(MOBase::ISaveGame const *saveGame, PluginList *pluginList, QWidget *parent = 0); - - virtual void setSave(MOBase::ISaveGame const *saveGame); - -private: - - PluginList *m_PluginList; - -}; - -#endif // SAVEGAMEINFOWIDGETGAMEBRYO_H -- cgit v1.3.1