diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/defaults.cpp | 1 | ||||
-rw-r--r-- | src/gui/widgets/tabs/setup_players.cpp | 4 | ||||
-rw-r--r-- | src/gui/windows/tradewindow.cpp | 9 | ||||
-rw-r--r-- | src/gui/windows/tradewindow.h | 2 | ||||
-rw-r--r-- | src/net/ea/traderecv.cpp | 5 |
5 files changed, 17 insertions, 4 deletions
diff --git a/src/defaults.cpp b/src/defaults.cpp index ca2b31e04..9e178014d 100644 --- a/src/defaults.cpp +++ b/src/defaults.cpp @@ -381,6 +381,7 @@ DefaultsData* getConfigDefaults() AddDEF("disableLoggingInGame", false); AddDEF("sellShopName", "unnamed"); AddDEF("showBadges", 1); + AddDEF("tradescreenshot", false); return configData; } diff --git a/src/gui/widgets/tabs/setup_players.cpp b/src/gui/widgets/tabs/setup_players.cpp index 4b04568ee..2f8039b6a 100644 --- a/src/gui/widgets/tabs/setup_players.cpp +++ b/src/gui/widgets/tabs/setup_players.cpp @@ -125,6 +125,10 @@ Setup_Players::Setup_Players(const Widget2 *const widget) : "", "useDiagonalSpeed", this, "useDiagonalSpeedEvent"); // TRANSLATORS: settings option + new SetupItemCheckBox(_("Create screenshots for each complete trades"), + "", "tradescreenshot", this, "tradescreenshotEvent"); + + // TRANSLATORS: settings option new SetupItemCheckBox(_("Emulate right mouse button by long mouse click" " (useful for touch interfaces)"), "", "longmouseclick", this, "longmouseclickEvent"); diff --git a/src/gui/windows/tradewindow.cpp b/src/gui/windows/tradewindow.cpp index 7a835b686..edd685f30 100644 --- a/src/gui/windows/tradewindow.cpp +++ b/src/gui/windows/tradewindow.cpp @@ -23,6 +23,7 @@ #include "gui/windows/tradewindow.h" #include "configuration.h" +#include "game.h" #include "item.h" #include "units.h" @@ -296,6 +297,14 @@ void TradeWindow::receivedOk(const bool own) setStatus(ACCEPTING); } +void TradeWindow::completeTrade() +{ + if (config.getBoolValue("tradescreenshot")) + Game::createScreenshot(); + setVisible(Visible_false); + reset(); +} + void TradeWindow::tradeItem(const Item *const item, const int quantity, const bool check) const { diff --git a/src/gui/windows/tradewindow.h b/src/gui/windows/tradewindow.h index d82714816..8ad021cd6 100644 --- a/src/gui/windows/tradewindow.h +++ b/src/gui/windows/tradewindow.h @@ -164,6 +164,8 @@ class TradeWindow final : public Window, bool isInpupFocused() const A_WARN_UNUSED; + void completeTrade(); + private: enum Status { diff --git a/src/net/ea/traderecv.cpp b/src/net/ea/traderecv.cpp index 006c3a41f..df9ed0531 100644 --- a/src/net/ea/traderecv.cpp +++ b/src/net/ea/traderecv.cpp @@ -135,10 +135,7 @@ void TradeRecv::processTradeComplete(Net::MessageIn &msg A_UNUSED) { NotifyManager::notify(NotifyTypes::TRADE_COMPLETE); if (tradeWindow) - { - tradeWindow->setVisible(Visible_false); - tradeWindow->reset(); - } + tradeWindow->completeTrade(); PlayerInfo::setTrading(Trading_false); } |