summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2015-03-16 23:58:40 +0300
committerAndrei Karas <akaras@inbox.ru>2015-03-17 14:02:30 +0300
commit3f7f55d24f8adbfaa6e534734e955fb3c37792ff (patch)
tree30c90bdab5d99a6e0e75dc5ee593f641bd1ad88f /src
parentdeec925bcd6ef5ea611082263dc0a7e4904345d2 (diff)
downloadplus-3f7f55d24f8adbfaa6e534734e955fb3c37792ff.tar.gz
plus-3f7f55d24f8adbfaa6e534734e955fb3c37792ff.tar.bz2
plus-3f7f55d24f8adbfaa6e534734e955fb3c37792ff.tar.xz
plus-3f7f55d24f8adbfaa6e534734e955fb3c37792ff.zip
Remove useless includes from .h files.
Diffstat (limited to 'src')
-rw-r--r--src/actions/actions.cpp1
-rw-r--r--src/actormanager.cpp1
-rw-r--r--src/animatedsprite.h2
-rw-r--r--src/being/actorsprite.h3
-rw-r--r--src/being/being.cpp1
-rw-r--r--src/being/being.h2
-rw-r--r--src/being/localplayer.cpp2
-rw-r--r--src/being/localplayer.h2
-rw-r--r--src/being/playerinfo.cpp1
-rw-r--r--src/beingequipbackend.cpp2
-rw-r--r--src/client.cpp1
-rw-r--r--src/client.h6
-rw-r--r--src/configuration.h4
-rw-r--r--src/effectmanager.h1
-rw-r--r--src/eventsmanager.h2
-rw-r--r--src/game.cpp4
-rw-r--r--src/graphicsmanager.h1
-rw-r--r--src/gui/dialogsmanager.cpp2
-rw-r--r--src/gui/fonts/font.h2
-rw-r--r--src/gui/fonts/textchunklist.h1
-rw-r--r--src/gui/models/avatarlistmodel.h2
-rw-r--r--src/gui/models/beingslistmodel.h2
-rw-r--r--src/gui/models/ignorechoiceslistmodel.h2
-rw-r--r--src/gui/models/itemsmodel.h2
-rw-r--r--src/gui/models/serverslistmodel.h5
-rw-r--r--src/gui/models/shopitems.h1
-rw-r--r--src/gui/models/skillmodel.h2
-rw-r--r--src/gui/models/sortlistmodelinv.h2
-rw-r--r--src/gui/models/updatelistmodel.h2
-rw-r--r--src/gui/models/userstablemodel.h1
-rw-r--r--src/gui/palette.h2
-rw-r--r--src/gui/popups/createpartypopup.h1
-rw-r--r--src/gui/popups/speechbubble.h2
-rw-r--r--src/gui/skin.h3
-rw-r--r--src/gui/theme.h2
-rw-r--r--src/gui/viewport.h2
-rw-r--r--src/gui/widgets/avatarlistbox.cpp3
-rw-r--r--src/gui/widgets/avatarlistbox.h4
-rw-r--r--src/gui/widgets/basiccontainer.h3
-rw-r--r--src/gui/widgets/browserbox.h3
-rw-r--r--src/gui/widgets/button.cpp2
-rw-r--r--src/gui/widgets/characterviewbase.h2
-rw-r--r--src/gui/widgets/emotepage.cpp2
-rw-r--r--src/gui/widgets/emoteshortcutcontainer.h2
-rw-r--r--src/gui/widgets/guitable.h2
-rw-r--r--src/gui/widgets/itemcontainer.h2
-rw-r--r--src/gui/widgets/listbox.h2
-rw-r--r--src/gui/widgets/playerbox.cpp2
-rw-r--r--src/gui/widgets/popup.cpp2
-rw-r--r--src/gui/widgets/progressbar.cpp2
-rw-r--r--src/gui/widgets/progressbar.h2
-rw-r--r--src/gui/widgets/scrollarea.cpp2
-rw-r--r--src/gui/widgets/serverslistbox.h4
-rw-r--r--src/gui/widgets/setupitem.h1
-rw-r--r--src/gui/widgets/shortcutcontainer.cpp2
-rw-r--r--src/gui/widgets/skilldata.h2
-rw-r--r--src/gui/widgets/skillinfo.h2
-rw-r--r--src/gui/widgets/skilllistbox.h7
-rw-r--r--src/gui/widgets/slider.cpp2
-rw-r--r--src/gui/widgets/statuswindowattrs.h2
-rw-r--r--src/gui/widgets/tabs/chat/chattab.cpp4
-rw-r--r--src/gui/widgets/tabs/setup_input.h2
-rw-r--r--src/gui/widgets/tabs/setup_relations.h2
-rw-r--r--src/gui/widgets/tabs/setup_video.cpp2
-rw-r--r--src/gui/widgets/tabs/setuptab.h2
-rw-r--r--src/gui/widgets/tabs/setuptabscroll.h3
-rw-r--r--src/gui/widgets/tabs/skilltab.h2
-rw-r--r--src/gui/widgets/tabs/socialattacktab.h2
-rw-r--r--src/gui/widgets/tabs/socialfriendstab.h2
-rw-r--r--src/gui/widgets/tabs/socialguildtab.h1
-rw-r--r--src/gui/widgets/tabs/socialpickuptab.h2
-rw-r--r--src/gui/widgets/tabs/socialtabbase.h2
-rw-r--r--src/gui/widgets/tabs/tab.cpp2
-rw-r--r--src/gui/widgets/vertcontainer.h2
-rw-r--r--src/gui/widgets/widget.h5
-rw-r--r--src/gui/widgets/widget2.h2
-rw-r--r--src/gui/widgets/window.cpp2
-rw-r--r--src/gui/widgets/window.h2
-rw-r--r--src/gui/widgets/windowcontainer.h2
-rw-r--r--src/gui/windowmenu.h5
-rw-r--r--src/gui/windows/botcheckerwindow.cpp1
-rw-r--r--src/gui/windows/botcheckerwindow.h2
-rw-r--r--src/gui/windows/changeemaildialog.cpp1
-rw-r--r--src/gui/windows/changepassworddialog.cpp1
-rw-r--r--src/gui/windows/charselectdialog.cpp1
-rw-r--r--src/gui/windows/charselectdialog.h2
-rw-r--r--src/gui/windows/chatwindow.h4
-rw-r--r--src/gui/windows/equipmentwindow.cpp2
-rw-r--r--src/gui/windows/equipmentwindow.h2
-rw-r--r--src/gui/windows/helpwindow.h3
-rw-r--r--src/gui/windows/inventorywindow.cpp1
-rw-r--r--src/gui/windows/itemamountwindow.cpp4
-rw-r--r--src/gui/windows/killstats.cpp4
-rw-r--r--src/gui/windows/logindialog.h2
-rw-r--r--src/gui/windows/minimap.cpp1
-rw-r--r--src/gui/windows/ministatuswindow.cpp1
-rw-r--r--src/gui/windows/ministatuswindow.h2
-rw-r--r--src/gui/windows/npcdialog.h6
-rw-r--r--src/gui/windows/questswindow.h3
-rw-r--r--src/gui/windows/quitdialog.h2
-rw-r--r--src/gui/windows/registerdialog.cpp1
-rw-r--r--src/gui/windows/serverdialog.h2
-rw-r--r--src/gui/windows/setupwindow.h2
-rw-r--r--src/gui/windows/skilldialog.cpp1
-rw-r--r--src/gui/windows/socialwindow.h3
-rw-r--r--src/gui/windows/statuswindow.cpp2
-rw-r--r--src/gui/windows/statuswindow.h2
-rw-r--r--src/gui/windows/tradewindow.h2
-rw-r--r--src/gui/windows/unregisterdialog.cpp1
-rw-r--r--src/gui/windows/updaterwindow.h3
-rw-r--r--src/gui/windows/whoisonline.h4
-rw-r--r--src/guild.h2
-rw-r--r--src/input/inputactiondata.h2
-rw-r--r--src/input/inputactionmap.h5
-rw-r--r--src/input/inputmanager.cpp1
-rw-r--r--src/input/inputmanager.h1
-rw-r--r--src/input/joystick.h3
-rw-r--r--src/input/keyboardconfig.h2
-rw-r--r--src/input/keyinput.h2
-rw-r--r--src/inventory.cpp1
-rw-r--r--src/item.h2
-rw-r--r--src/listeners/actionlistener.h2
-rw-r--r--src/listeners/focuslistener.h2
-rw-r--r--src/listeners/openurllistener.h2
-rw-r--r--src/listeners/playerlistener.h2
-rw-r--r--src/listeners/playerpostdeathlistener.h2
-rw-r--r--src/listeners/requesttradelistener.h5
-rw-r--r--src/listeners/selectionlistener.h2
-rw-r--r--src/listeners/tablemodellistener.h3
-rw-r--r--src/listeners/weightlistener.h2
-rw-r--r--src/listeners/widgetdeathlistener.h2
-rw-r--r--src/listeners/widgetlistener.h2
-rw-r--r--src/mumblemanager.h2
-rw-r--r--src/net/adminhandler.h6
-rw-r--r--src/net/charserverhandler.h3
-rw-r--r--src/net/chathandler.h2
-rw-r--r--src/net/ea/equipbackend.h2
-rw-r--r--src/net/ea/inventoryhandler.h1
-rw-r--r--src/net/ea/itemhandler.cpp2
-rw-r--r--src/net/ea/itemhandler.h2
-rw-r--r--src/net/ea/loginhandler.cpp1
-rw-r--r--src/net/ea/loginhandler.h2
-rw-r--r--src/net/ea/network.h4
-rw-r--r--src/net/ea/playerhandler.cpp1
-rw-r--r--src/net/ea/tradehandler.cpp1
-rw-r--r--src/net/eathena/adminhandler.cpp2
-rw-r--r--src/net/eathena/loginhandler.h2
-rw-r--r--src/net/eathena/messagehandler.h2
-rw-r--r--src/net/gamehandler.h2
-rw-r--r--src/net/guildhandler.h2
-rw-r--r--src/net/inventoryhandler.h4
-rw-r--r--src/net/ipc.h2
-rw-r--r--src/net/logindata.h2
-rw-r--r--src/net/loginhandler.h4
-rw-r--r--src/net/messagehandler.h4
-rw-r--r--src/net/partyhandler.h2
-rw-r--r--src/net/playerhandler.h3
-rw-r--r--src/net/questhandler.h2
-rw-r--r--src/net/serverinfo.h5
-rw-r--r--src/net/tmwa/loginhandler.h2
-rw-r--r--src/net/tmwa/messagehandler.h2
-rw-r--r--src/net/tradehandler.h2
-rw-r--r--src/particle/particle.h3
-rw-r--r--src/particle/particleemitterprop.h1
-rw-r--r--src/particle/particleinfo.h1
-rw-r--r--src/render/graphics.h1
-rw-r--r--src/render/mgl.h1
-rw-r--r--src/render/mgltypes.h1
-rw-r--r--src/render/mglx.h1
-rw-r--r--src/render/mglxtypes.h1
-rw-r--r--src/render/mobileopenglgraphics.h3
-rw-r--r--src/render/modernopenglgraphics.h3
-rw-r--r--src/render/normalopenglgraphics.h3
-rw-r--r--src/render/nullopenglgraphics.h3
-rw-r--r--src/render/rendererslistsdl2.h6
-rw-r--r--src/render/safeopenglgraphics.h1
-rw-r--r--src/resources/animation.h1
-rw-r--r--src/resources/beinginfo.h2
-rw-r--r--src/resources/beingmenuitem.h4
-rw-r--r--src/resources/chatobject.h2
-rw-r--r--src/resources/db/mapdb.h2
-rw-r--r--src/resources/db/moddb.h2
-rw-r--r--src/resources/dyecolor.h2
-rw-r--r--src/resources/fboinfo.h1
-rw-r--r--src/resources/image.h1
-rw-r--r--src/resources/imagehelper.h2
-rw-r--r--src/resources/iteminfo.h2
-rw-r--r--src/resources/itemtypemapdata.h2
-rw-r--r--src/resources/map/map.h1
-rw-r--r--src/resources/map/maplayer.cpp1
-rw-r--r--src/resources/map/maplayer.h3
-rw-r--r--src/resources/map/maprowvertexes.h2
-rw-r--r--src/resources/map/properties.h1
-rw-r--r--src/resources/mapreader.h2
-rw-r--r--src/resources/modinfo.h2
-rw-r--r--src/resources/notifications.h2
-rw-r--r--src/resources/questitem.h1
-rw-r--r--src/resources/resource.h3
-rw-r--r--src/resources/resourcemanager.h3
-rw-r--r--src/resources/subimage.h1
-rw-r--r--src/resources/wallpaper.cpp4
-rw-r--r--src/settings.h1
-rw-r--r--src/soundmanager.h2
-rw-r--r--src/spellmanager.cpp1
-rw-r--r--src/spellmanager.h3
-rw-r--r--src/test/testlauncher.h2
-rw-r--r--src/test/testmain.h1
-rw-r--r--src/text.h2
-rw-r--r--src/touchmanager.h1
-rw-r--r--src/utils/dtor.h1
-rw-r--r--src/utils/files.h2
-rw-r--r--src/utils/gettexthelper.h4
-rw-r--r--src/utils/mathutils.h1
-rw-r--r--src/utils/mutex.h2
-rw-r--r--src/utils/sdlhelper.h2
-rw-r--r--src/utils/stringutils.cpp4
-rw-r--r--src/utils/translation/podict.h2
-rw-r--r--src/utils/translation/poparser.h1
218 files changed, 113 insertions, 366 deletions
diff --git a/src/actions/actions.cpp b/src/actions/actions.cpp
index 516fa8a36..046621edc 100644
--- a/src/actions/actions.cpp
+++ b/src/actions/actions.cpp
@@ -34,6 +34,7 @@
#include "actions/actiondef.h"
#include "being/localplayer.h"
+#include "being/playerinfo.h"
#include "enums/being/attributes.h"
diff --git a/src/actormanager.cpp b/src/actormanager.cpp
index 29548fb22..d4748fce2 100644
--- a/src/actormanager.cpp
+++ b/src/actormanager.cpp
@@ -25,6 +25,7 @@
#include "configuration.h"
#include "settings.h"
+#include "being/playerinfo.h"
#include "being/playerrelations.h"
#include "enums/being/attributes.h"
diff --git a/src/animatedsprite.h b/src/animatedsprite.h
index 0d9c8e41e..d2a43fff4 100644
--- a/src/animatedsprite.h
+++ b/src/animatedsprite.h
@@ -25,8 +25,6 @@
#include "sprite.h"
-#include <string>
-
class Animation;
class AnimationDelayLoad;
struct Frame;
diff --git a/src/being/actorsprite.h b/src/being/actorsprite.h
index 9dfbef8d4..c633e8119 100644
--- a/src/being/actorsprite.h
+++ b/src/being/actorsprite.h
@@ -35,9 +35,6 @@
#include "particle/particlelist.h"
#include "particle/particlevector.h"
-#include <set>
-#include <list>
-
#include "localconsts.h"
class AnimatedSprite;
diff --git a/src/being/being.cpp b/src/being/being.cpp
index 468e2b066..e37d29fd1 100644
--- a/src/being/being.cpp
+++ b/src/being/being.cpp
@@ -36,6 +36,7 @@
#include "being/beingcacheentry.h"
#include "being/beingflag.h"
#include "being/beingspeech.h"
+#include "being/playerinfo.h"
#include "being/playerrelations.h"
#include "enums/being/attributes.h"
diff --git a/src/being/being.h b/src/being/being.h
index 8d4ec6069..06f957d61 100644
--- a/src/being/being.h
+++ b/src/being/being.h
@@ -36,8 +36,6 @@
#include "listeners/configlistener.h"
-#include <map>
-
#include "localconsts.h"
static const unsigned int FIRST_IGNORE_EMOTE = 14;
diff --git a/src/being/localplayer.cpp b/src/being/localplayer.cpp
index a588246a2..359cc0b70 100644
--- a/src/being/localplayer.cpp
+++ b/src/being/localplayer.cpp
@@ -27,6 +27,7 @@
#include "configuration.h"
#include "gamemodifiers.h"
#include "guild.h"
+#include "item.h"
#include "party.h"
#include "settings.h"
#include "soundconsts.h"
@@ -36,6 +37,7 @@
#include "being/beingflag.h"
#include "being/crazymoves.h"
+#include "being/playerinfo.h"
#include "being/playerrelations.h"
#include "enums/being/attributes.h"
diff --git a/src/being/localplayer.h b/src/being/localplayer.h
index aa297dcb1..d63e5a7e6 100644
--- a/src/being/localplayer.h
+++ b/src/being/localplayer.h
@@ -34,8 +34,6 @@
#include "listeners/playerdeathlistener.h"
#include "listeners/statlistener.h"
-#include <vector>
-
#include "localconsts.h"
class AwayListener;
diff --git a/src/being/playerinfo.cpp b/src/being/playerinfo.cpp
index ff4efb79d..cfeb56a28 100644
--- a/src/being/playerinfo.cpp
+++ b/src/being/playerinfo.cpp
@@ -22,6 +22,7 @@
#include "being/playerinfo.h"
#include "configuration.h"
+#include "item.h"
#include "itemsoundmanager.h"
#include "being/localplayer.h"
diff --git a/src/beingequipbackend.cpp b/src/beingequipbackend.cpp
index 0672ba5d3..051afcfe2 100644
--- a/src/beingequipbackend.cpp
+++ b/src/beingequipbackend.cpp
@@ -20,6 +20,8 @@
#include "beingequipbackend.h"
+#include "item.h"
+
#include "being/being.h"
#include "net/inventoryhandler.h"
diff --git a/src/client.cpp b/src/client.cpp
index 3fe4424b4..479bd3b3b 100644
--- a/src/client.cpp
+++ b/src/client.cpp
@@ -104,6 +104,7 @@
#include "resources/db/emotedb.h"
#include "resources/db/homunculusdb.h"
#include "resources/db/horsedb.h"
+#include "resources/db/itemdb.h"
#include "resources/db/sounddb.h"
#include "resources/db/mapdb.h"
#include "resources/db/mercenarydb.h"
diff --git a/src/client.h b/src/client.h
index 06c261eb2..079ed90ec 100644
--- a/src/client.h
+++ b/src/client.h
@@ -30,18 +30,12 @@
#include "net/serverinfo.h"
-#include <SDL.h>
-
#ifdef USE_SDL2
#include <SDL2_framerate.h>
#else
#include <SDL_framerate.h>
#endif
-#include <string>
-
-#include <sys/time.h>
-
#include "localconsts.h"
class Button;
diff --git a/src/configuration.h b/src/configuration.h
index 83a446f4e..0002a815b 100644
--- a/src/configuration.h
+++ b/src/configuration.h
@@ -29,10 +29,6 @@
#include "defaults.h"
#include "localconsts.h"
-#include <list>
-#include <map>
-#include <string>
-
class ConfigListener;
class ConfigurationObject;
diff --git a/src/effectmanager.h b/src/effectmanager.h
index 7bcffca58..3ebc0f805 100644
--- a/src/effectmanager.h
+++ b/src/effectmanager.h
@@ -25,7 +25,6 @@
#include "resources/effectdescription.h"
-#include <string>
#include <vector>
#include "localconsts.h"
diff --git a/src/eventsmanager.h b/src/eventsmanager.h
index 6e6b1b517..c1d98db21 100644
--- a/src/eventsmanager.h
+++ b/src/eventsmanager.h
@@ -23,8 +23,6 @@
#include "listeners/configlistener.h"
-#include <string>
-
#include <SDL_events.h>
#include "localconsts.h"
diff --git a/src/game.cpp b/src/game.cpp
index e3360ac77..f00770c39 100644
--- a/src/game.cpp
+++ b/src/game.cpp
@@ -126,6 +126,10 @@
#include "mumblemanager.h"
#endif
+#ifdef WIN32
+#include <sys/time.h>
+#endif
+
#include "debug.h"
QuitDialog *quitDialog = nullptr;
diff --git a/src/graphicsmanager.h b/src/graphicsmanager.h
index 47db93dea..0063be275 100644
--- a/src/graphicsmanager.h
+++ b/src/graphicsmanager.h
@@ -44,7 +44,6 @@
#include "utils/stringvector.h"
#include <set>
-#include <string>
#include "localconsts.h"
diff --git a/src/gui/dialogsmanager.cpp b/src/gui/dialogsmanager.cpp
index 5081ed124..599d8b815 100644
--- a/src/gui/dialogsmanager.cpp
+++ b/src/gui/dialogsmanager.cpp
@@ -29,6 +29,8 @@
#include "enums/gui/dialogtype.h"
+#include "being/playerinfo.h"
+
#include "gui/widgets/selldialog.h"
#include "gui/windows/confirmdialog.h"
diff --git a/src/gui/fonts/font.h b/src/gui/fonts/font.h
index 91128c6cd..2e0dfad7f 100644
--- a/src/gui/fonts/font.h
+++ b/src/gui/fonts/font.h
@@ -71,8 +71,6 @@
#include <SDL_ttf.h>
-#include <string>
-
#include "localconsts.h"
class Graphics;
diff --git a/src/gui/fonts/textchunklist.h b/src/gui/fonts/textchunklist.h
index d85efe75d..d89a8ab3b 100644
--- a/src/gui/fonts/textchunklist.h
+++ b/src/gui/fonts/textchunklist.h
@@ -24,7 +24,6 @@
#include "gui/fonts/textchunksmall.h"
#include <map>
-#include <string>
#include "localconsts.h"
diff --git a/src/gui/models/avatarlistmodel.h b/src/gui/models/avatarlistmodel.h
index bda7b686e..ec11b40ad 100644
--- a/src/gui/models/avatarlistmodel.h
+++ b/src/gui/models/avatarlistmodel.h
@@ -26,8 +26,6 @@
#include "gui/models/listmodel.h"
-#include <string>
-
class AvatarListModel notfinal : public ListModel
{
public:
diff --git a/src/gui/models/beingslistmodel.h b/src/gui/models/beingslistmodel.h
index 5bedc9756..7e8caced2 100644
--- a/src/gui/models/beingslistmodel.h
+++ b/src/gui/models/beingslistmodel.h
@@ -26,8 +26,6 @@
#include "utils/dtor.h"
-#include <vector>
-
class BeingsListModel final : public AvatarListModel
{
public:
diff --git a/src/gui/models/ignorechoiceslistmodel.h b/src/gui/models/ignorechoiceslistmodel.h
index eb230b4ce..c6dea9603 100644
--- a/src/gui/models/ignorechoiceslistmodel.h
+++ b/src/gui/models/ignorechoiceslistmodel.h
@@ -23,8 +23,6 @@
#ifndef GUI_MODELS_IGNORECHOICESLISTMODEL_H
#define GUI_MODELS_IGNORECHOICESLISTMODEL_H
-#include "being/playerrelations.h"
-
#include "gui/models/playerrelationlistmodel.h"
#include "being/playerignorestrategy.h"
diff --git a/src/gui/models/itemsmodel.h b/src/gui/models/itemsmodel.h
index eb026febe..1f88efe9f 100644
--- a/src/gui/models/itemsmodel.h
+++ b/src/gui/models/itemsmodel.h
@@ -29,8 +29,6 @@
#include "resources/db/itemdb.h"
-#include "utils/gettext.h"
-
#include <list>
#include "localconsts.h"
diff --git a/src/gui/models/serverslistmodel.h b/src/gui/models/serverslistmodel.h
index 743e8da07..864cc70c6 100644
--- a/src/gui/models/serverslistmodel.h
+++ b/src/gui/models/serverslistmodel.h
@@ -23,8 +23,6 @@
#ifndef GUI_MODELS_SERVERSLISTMODEL_H
#define GUI_MODELS_SERVERSLISTMODEL_H
-#include "net/serverinfo.h"
-
#include "gui/gui.h"
#include "gui/fonts/font.h"
@@ -33,9 +31,6 @@
#include "gui/models/listmodel.h"
-#include <string>
-#include <vector>
-
/**
* Server and Port List Model
*/
diff --git a/src/gui/models/shopitems.h b/src/gui/models/shopitems.h
index d3d4a44fc..880bc4f71 100644
--- a/src/gui/models/shopitems.h
+++ b/src/gui/models/shopitems.h
@@ -25,7 +25,6 @@
#include "gui/models/listmodel.h"
-#include <string>
#include <vector>
#include "localconsts.h"
diff --git a/src/gui/models/skillmodel.h b/src/gui/models/skillmodel.h
index e4a4949a5..cf5a4fb6d 100644
--- a/src/gui/models/skillmodel.h
+++ b/src/gui/models/skillmodel.h
@@ -26,8 +26,6 @@
#include "gui/widgets/skillinfo.h"
#include "gui/models/listmodel.h"
-#include <string>
-
#include "localconsts.h"
class SkillModel final : public ListModel
diff --git a/src/gui/models/sortlistmodelinv.h b/src/gui/models/sortlistmodelinv.h
index d29ff201c..4711d4607 100644
--- a/src/gui/models/sortlistmodelinv.h
+++ b/src/gui/models/sortlistmodelinv.h
@@ -26,8 +26,6 @@
#include "utils/gettext.h"
-#include <string>
-
static const char *const SORT_NAME_INVENTORY[6] =
{
// TRANSLATORS: inventory sort mode
diff --git a/src/gui/models/updatelistmodel.h b/src/gui/models/updatelistmodel.h
index 1a109f62e..08e00bf63 100644
--- a/src/gui/models/updatelistmodel.h
+++ b/src/gui/models/updatelistmodel.h
@@ -27,8 +27,6 @@
#include "net/logindata.h"
-#include "utils/gettext.h"
-
#include "localconsts.h"
class UpdateListModel final : public ListModel
diff --git a/src/gui/models/userstablemodel.h b/src/gui/models/userstablemodel.h
index 2f6201024..788fcd2d0 100644
--- a/src/gui/models/userstablemodel.h
+++ b/src/gui/models/userstablemodel.h
@@ -24,7 +24,6 @@
#include "gui/windows/botcheckerwindow.h"
-#include "gui/widgets/button.h"
#include "gui/widgets/label.h"
#include "gui/models/tablemodel.h"
diff --git a/src/gui/palette.h b/src/gui/palette.h
index 5f9a5dae9..c8bf5de47 100644
--- a/src/gui/palette.h
+++ b/src/gui/palette.h
@@ -35,9 +35,7 @@
#endif
#include <map>
-#include <string>
#include <set>
-#include <vector>
// Default Gradient Delay
#define GRADIENT_DELAY 40
diff --git a/src/gui/popups/createpartypopup.h b/src/gui/popups/createpartypopup.h
index ad44928e7..bd5899726 100644
--- a/src/gui/popups/createpartypopup.h
+++ b/src/gui/popups/createpartypopup.h
@@ -27,7 +27,6 @@
#include "gui/widgets/popup.h"
#include "gui/windows/socialwindow.h"
-#include "utils/delete2.h"
#include "utils/gettext.h"
#include "utils/stringutils.h"
diff --git a/src/gui/popups/speechbubble.h b/src/gui/popups/speechbubble.h
index 3e6cf8747..4d6d86aed 100644
--- a/src/gui/popups/speechbubble.h
+++ b/src/gui/popups/speechbubble.h
@@ -24,8 +24,6 @@
#ifndef GUI_POPUPS_SPEECHBUBBLE_H
#define GUI_POPUPS_SPEECHBUBBLE_H
-#include "gui/theme.h"
-
#include "gui/widgets/popup.h"
class Label;
diff --git a/src/gui/skin.h b/src/gui/skin.h
index 150c04eeb..c3e4e01b2 100644
--- a/src/gui/skin.h
+++ b/src/gui/skin.h
@@ -27,9 +27,6 @@
#include "utils/stringmap.h"
-#include <map>
-#include <string>
-
#include "localconsts.h"
class Image;
diff --git a/src/gui/theme.h b/src/gui/theme.h
index de995e2ef..7bb1006b3 100644
--- a/src/gui/theme.h
+++ b/src/gui/theme.h
@@ -33,8 +33,6 @@
#include "utils/stringvector.h"
-#include <map>
-
#include "localconsts.h"
class DyePalette;
diff --git a/src/gui/viewport.h b/src/gui/viewport.h
index 7d0f38501..691e02318 100644
--- a/src/gui/viewport.h
+++ b/src/gui/viewport.h
@@ -25,8 +25,6 @@
#include "position.h"
-#include "listeners/configlistener.h"
-
#include "gui/widgets/windowcontainer.h"
#include "listeners/mouselistener.h"
diff --git a/src/gui/widgets/avatarlistbox.cpp b/src/gui/widgets/avatarlistbox.cpp
index a508897d3..33d1b9331 100644
--- a/src/gui/widgets/avatarlistbox.cpp
+++ b/src/gui/widgets/avatarlistbox.cpp
@@ -40,6 +40,9 @@
#include "gui/windows/chatwindow.h"
+#include "render/renderers.h"
+
+#include "resources/image.h"
#include "resources/mapitemtype.h"
#include "resources/map/map.h"
diff --git a/src/gui/widgets/avatarlistbox.h b/src/gui/widgets/avatarlistbox.h
index 418b57a23..ad70e19dc 100644
--- a/src/gui/widgets/avatarlistbox.h
+++ b/src/gui/widgets/avatarlistbox.h
@@ -22,12 +22,8 @@
#ifndef GUI_WIDGETS_AVATARLISTBOX_H
#define GUI_WIDGETS_AVATARLISTBOX_H
-#include "listeners/configlistener.h"
-
#include "gui/widgets/listbox.h"
-#include <string>
-
class AvatarListModel;
class Image;
diff --git a/src/gui/widgets/basiccontainer.h b/src/gui/widgets/basiccontainer.h
index fcbf7f6dd..eaa354f6e 100644
--- a/src/gui/widgets/basiccontainer.h
+++ b/src/gui/widgets/basiccontainer.h
@@ -64,9 +64,6 @@
#ifndef GUI_WIDGETS_BASICCONTAINER_H
#define GUI_WIDGETS_BASICCONTAINER_H
-#include <set>
-#include <vector>
-
#include "gui/widgets/widget.h"
#include "listeners/widgetdeathlistener.h"
diff --git a/src/gui/widgets/browserbox.h b/src/gui/widgets/browserbox.h
index 0251a9895..d8e0f0748 100644
--- a/src/gui/widgets/browserbox.h
+++ b/src/gui/widgets/browserbox.h
@@ -29,9 +29,6 @@
#include "gui/widgets/linepart.h"
#include "gui/widgets/widget.h"
-#include <list>
-#include <vector>
-
#include "localconsts.h"
class LinkHandler;
diff --git a/src/gui/widgets/button.cpp b/src/gui/widgets/button.cpp
index 39b09ae0b..1d3d4427b 100644
--- a/src/gui/widgets/button.cpp
+++ b/src/gui/widgets/button.cpp
@@ -79,6 +79,8 @@
#include "gui/fonts/font.h"
+#include "render/renderers.h"
+
#include "utils/delete2.h"
#include "debug.h"
diff --git a/src/gui/widgets/characterviewbase.h b/src/gui/widgets/characterviewbase.h
index e771a677b..ef46e9abe 100644
--- a/src/gui/widgets/characterviewbase.h
+++ b/src/gui/widgets/characterviewbase.h
@@ -25,8 +25,6 @@
#include "gui/widgets/container.h"
-#include "listeners/actionlistener.h"
-
#include "localconsts.h"
class CharacterViewBase notfinal : public Container,
diff --git a/src/gui/widgets/emotepage.cpp b/src/gui/widgets/emotepage.cpp
index ef8d222dd..d167f8bd9 100644
--- a/src/gui/widgets/emotepage.cpp
+++ b/src/gui/widgets/emotepage.cpp
@@ -25,6 +25,8 @@
#include "resources/imageset.h"
#include "resources/resourcemanager.h"
+#include "render/renderers.h"
+
#include "utils/delete2.h"
#include "debug.h"
diff --git a/src/gui/widgets/emoteshortcutcontainer.h b/src/gui/widgets/emoteshortcutcontainer.h
index 5cdd28ab1..8c58b793d 100644
--- a/src/gui/widgets/emoteshortcutcontainer.h
+++ b/src/gui/widgets/emoteshortcutcontainer.h
@@ -24,8 +24,6 @@
#include "gui/widgets/shortcutcontainer.h"
-#include <vector>
-
struct EmoteSprite;
/**
diff --git a/src/gui/widgets/guitable.h b/src/gui/widgets/guitable.h
index 3b9e19a65..2257a8cb0 100644
--- a/src/gui/widgets/guitable.h
+++ b/src/gui/widgets/guitable.h
@@ -31,8 +31,6 @@
#include "gui/widgets/widget.h"
-#include <vector>
-
class GuiTableActionListener;
class TableModel;
diff --git a/src/gui/widgets/itemcontainer.h b/src/gui/widgets/itemcontainer.h
index e506f68cc..302eeaea7 100644
--- a/src/gui/widgets/itemcontainer.h
+++ b/src/gui/widgets/itemcontainer.h
@@ -29,8 +29,6 @@
#include "gui/widgets/widget.h"
-#include <list>
-
#include "localconsts.h"
class Image;
diff --git a/src/gui/widgets/listbox.h b/src/gui/widgets/listbox.h
index 0c39066a5..105f569cf 100644
--- a/src/gui/widgets/listbox.h
+++ b/src/gui/widgets/listbox.h
@@ -66,8 +66,6 @@
#ifndef GUI_WIDGETS_LISTBOX_H
#define GUI_WIDGETS_LISTBOX_H
-#include "gui/color.h"
-
#include "gui/widgets/widget.h"
#include "listeners/keylistener.h"
diff --git a/src/gui/widgets/playerbox.cpp b/src/gui/widgets/playerbox.cpp
index 2d07460c4..4775e266f 100644
--- a/src/gui/widgets/playerbox.cpp
+++ b/src/gui/widgets/playerbox.cpp
@@ -29,6 +29,8 @@
#include "gui/gui.h"
#include "gui/skin.h"
+#include "resources/image.h"
+
#include "debug.h"
PlayerBox::PlayerBox(Widget2 *const widget,
diff --git a/src/gui/widgets/popup.cpp b/src/gui/widgets/popup.cpp
index d887d75cf..a2c441225 100644
--- a/src/gui/widgets/popup.cpp
+++ b/src/gui/widgets/popup.cpp
@@ -30,6 +30,8 @@
#include "gui/widgets/windowcontainer.h"
+#include "render/renderers.h"
+
#include "utils/delete2.h"
#include "debug.h"
diff --git a/src/gui/widgets/progressbar.cpp b/src/gui/widgets/progressbar.cpp
index 850748eee..2692363f4 100644
--- a/src/gui/widgets/progressbar.cpp
+++ b/src/gui/widgets/progressbar.cpp
@@ -30,6 +30,8 @@
#include "gui/fonts/font.h"
+#include "render/renderers.h"
+
#include "utils/delete2.h"
#include "debug.h"
diff --git a/src/gui/widgets/progressbar.h b/src/gui/widgets/progressbar.h
index 99f920ab6..2a379a998 100644
--- a/src/gui/widgets/progressbar.h
+++ b/src/gui/widgets/progressbar.h
@@ -29,8 +29,6 @@
#include "resources/imagerect.h"
-#include <string>
-
#include "localconsts.h"
class ImageCollection;
diff --git a/src/gui/widgets/scrollarea.cpp b/src/gui/widgets/scrollarea.cpp
index ddf0fd21f..924546329 100644
--- a/src/gui/widgets/scrollarea.cpp
+++ b/src/gui/widgets/scrollarea.cpp
@@ -74,6 +74,8 @@
#include "resources/image.h"
#include "resources/imagerect.h"
+#include "render/renderers.h"
+
#include "utils/delete2.h"
#include "utils/stringutils.h"
diff --git a/src/gui/widgets/serverslistbox.h b/src/gui/widgets/serverslistbox.h
index 5e2696411..a16547cd1 100644
--- a/src/gui/widgets/serverslistbox.h
+++ b/src/gui/widgets/serverslistbox.h
@@ -23,10 +23,6 @@
#ifndef GUI_WIDGETS_SERVERSLISTBOX_H
#define GUI_WIDGETS_SERVERSLISTBOX_H
-#include "gui/fonts/font.h"
-
-#include "gui/theme.h"
-
#include "gui/widgets/listbox.h"
#include "gui/models/serverslistmodel.h"
diff --git a/src/gui/widgets/setupitem.h b/src/gui/widgets/setupitem.h
index f5657c48e..4fbb81e23 100644
--- a/src/gui/widgets/setupitem.h
+++ b/src/gui/widgets/setupitem.h
@@ -26,7 +26,6 @@
#include "listeners/actionlistener.h"
#include <list>
-#include <vector>
class Button;
class CheckBox;
diff --git a/src/gui/widgets/shortcutcontainer.cpp b/src/gui/widgets/shortcutcontainer.cpp
index 5ac740eb2..1ac9a9d69 100644
--- a/src/gui/widgets/shortcutcontainer.cpp
+++ b/src/gui/widgets/shortcutcontainer.cpp
@@ -27,6 +27,8 @@
#include "gui/gui.h"
+#include "render/renderers.h"
+
#include "resources/image.h"
#include "utils/delete2.h"
diff --git a/src/gui/widgets/skilldata.h b/src/gui/widgets/skilldata.h
index a90ef926a..943aa929c 100644
--- a/src/gui/widgets/skilldata.h
+++ b/src/gui/widgets/skilldata.h
@@ -25,6 +25,8 @@
#include "resources/soundinfo.h"
+#include <string>
+
class Image;
struct SkillData final
diff --git a/src/gui/widgets/skillinfo.h b/src/gui/widgets/skillinfo.h
index 26b82ce25..4ab0331af 100644
--- a/src/gui/widgets/skillinfo.h
+++ b/src/gui/widgets/skillinfo.h
@@ -28,9 +28,9 @@
#include "resources/skillowner.h"
#include "resources/skilltype.h"
+#include <string>
#include <vector>
#include <map>
-#include <string>
#include "localconsts.h"
diff --git a/src/gui/widgets/skilllistbox.h b/src/gui/widgets/skilllistbox.h
index 387bde055..344bffa59 100644
--- a/src/gui/widgets/skilllistbox.h
+++ b/src/gui/widgets/skilllistbox.h
@@ -23,17 +23,16 @@
#ifndef GUI_WIDGETS_SKILLLISTBOX_H
#define GUI_WIDGETS_SKILLLISTBOX_H
-#include "gui/widgets/listbox.h"
-
#include "dragdrop.h"
#include "gui/skin.h"
#include "gui/viewport.h"
-#include "gui/fonts/font.h"
-
+#include "gui/widgets/listbox.h"
#include "gui/widgets/skilldata.h"
+#include "gui/fonts/font.h"
+
#include "gui/models/skillmodel.h"
#include "gui/popups/skillpopup.h"
diff --git a/src/gui/widgets/slider.cpp b/src/gui/widgets/slider.cpp
index 4ea34209c..e867c9528 100644
--- a/src/gui/widgets/slider.cpp
+++ b/src/gui/widgets/slider.cpp
@@ -72,6 +72,8 @@
#include "gui/gui.h"
+#include "render/renderers.h"
+
#include "resources/image.h"
#include "resources/imagerect.h"
diff --git a/src/gui/widgets/statuswindowattrs.h b/src/gui/widgets/statuswindowattrs.h
index b28c1cfba..ee336c616 100644
--- a/src/gui/widgets/statuswindowattrs.h
+++ b/src/gui/widgets/statuswindowattrs.h
@@ -27,8 +27,6 @@
#include "gui/widgets/label.h"
-#include "events/actionevent.h"
-
#include "listeners/actionlistener.h"
#include "localconsts.h"
diff --git a/src/gui/widgets/tabs/chat/chattab.cpp b/src/gui/widgets/tabs/chat/chattab.cpp
index 727d12de2..eef6cfd5d 100644
--- a/src/gui/widgets/tabs/chat/chattab.cpp
+++ b/src/gui/widgets/tabs/chat/chattab.cpp
@@ -53,6 +53,10 @@
#include "utils/delete2.h"
#include "utils/gettext.h"
+#ifdef WIN32
+#include <sys/time.h>
+#endif
+
#include "debug.h"
ChatTab *localChatTab = nullptr;
diff --git a/src/gui/widgets/tabs/setup_input.h b/src/gui/widgets/tabs/setup_input.h
index f6cfd7828..569c21e2b 100644
--- a/src/gui/widgets/tabs/setup_input.h
+++ b/src/gui/widgets/tabs/setup_input.h
@@ -26,8 +26,6 @@
#include "gui/widgets/tabs/setuptab.h"
-#include <string>
-
class Button;
class ListBox;
class KeyListModel;
diff --git a/src/gui/widgets/tabs/setup_relations.h b/src/gui/widgets/tabs/setup_relations.h
index 5a023be9f..2d446452e 100644
--- a/src/gui/widgets/tabs/setup_relations.h
+++ b/src/gui/widgets/tabs/setup_relations.h
@@ -23,8 +23,6 @@
#ifndef GUI_WIDGETS_TABS_SETUP_RELATIONS_H
#define GUI_WIDGETS_TABS_SETUP_RELATIONS_H
-#include "being/playerrelations.h"
-
#include "gui/widgets/tabs/setuptab.h"
#include "listeners/playerrelationslistener.h"
diff --git a/src/gui/widgets/tabs/setup_video.cpp b/src/gui/widgets/tabs/setup_video.cpp
index 3f88316c8..caf12e4cd 100644
--- a/src/gui/widgets/tabs/setup_video.cpp
+++ b/src/gui/widgets/tabs/setup_video.cpp
@@ -41,6 +41,8 @@
#include "gui/widgets/slider.h"
#include "gui/widgets/dropdown.h"
+#include "render/renderers.h"
+
#include "utils/delete2.h"
#if defined(USE_OPENGL) && !defined(ANDROID) && !defined(__APPLE__)
diff --git a/src/gui/widgets/tabs/setuptab.h b/src/gui/widgets/tabs/setuptab.h
index 7c46ea66c..a9fd785ef 100644
--- a/src/gui/widgets/tabs/setuptab.h
+++ b/src/gui/widgets/tabs/setuptab.h
@@ -28,8 +28,6 @@
#include "listeners/actionlistener.h"
#include "listeners/widgetlistener.h"
-#include <string>
-
#include "localconsts.h"
/**
diff --git a/src/gui/widgets/tabs/setuptabscroll.h b/src/gui/widgets/tabs/setuptabscroll.h
index 8c2c2f590..f701ea6ed 100644
--- a/src/gui/widgets/tabs/setuptabscroll.h
+++ b/src/gui/widgets/tabs/setuptabscroll.h
@@ -23,9 +23,6 @@
#include "gui/widgets/tabs/setuptab.h"
-#include <map>
-#include <set>
-
#include "localconsts.h"
class SetupItem;
diff --git a/src/gui/widgets/tabs/skilltab.h b/src/gui/widgets/tabs/skilltab.h
index fdc3c9df7..3cacb5ca9 100644
--- a/src/gui/widgets/tabs/skilltab.h
+++ b/src/gui/widgets/tabs/skilltab.h
@@ -29,8 +29,6 @@
#include "gui/widgets/tabs/tab.h"
-#include "utils/delete2.h"
-
#include "localconsts.h"
class SkillTab final : public Tab
diff --git a/src/gui/widgets/tabs/socialattacktab.h b/src/gui/widgets/tabs/socialattacktab.h
index 6ef13cfb7..e3311c5ba 100644
--- a/src/gui/widgets/tabs/socialattacktab.h
+++ b/src/gui/widgets/tabs/socialattacktab.h
@@ -23,8 +23,6 @@
#include "gui/widgets/tabs/socialtab.h"
-#include "actormanager.h"
-
#include "being/localplayer.h"
#include "gui/models/beingslistmodel.h"
diff --git a/src/gui/widgets/tabs/socialfriendstab.h b/src/gui/widgets/tabs/socialfriendstab.h
index b14bac2b2..229591096 100644
--- a/src/gui/widgets/tabs/socialfriendstab.h
+++ b/src/gui/widgets/tabs/socialfriendstab.h
@@ -36,8 +36,6 @@
#include "utils/delete2.h"
#include "utils/gettext.h"
-#include <algorithm>
-
#include "localconsts.h"
class SocialFriendsTab final : public SocialTab
diff --git a/src/gui/widgets/tabs/socialguildtab.h b/src/gui/widgets/tabs/socialguildtab.h
index 4c966b2ca..88354bb50 100644
--- a/src/gui/widgets/tabs/socialguildtab.h
+++ b/src/gui/widgets/tabs/socialguildtab.h
@@ -30,7 +30,6 @@
#include "utils/gettext.h"
#include "utils/stringutils.h"
-#include "net/net.h"
#include "net/guildhandler.h"
#include "localconsts.h"
diff --git a/src/gui/widgets/tabs/socialpickuptab.h b/src/gui/widgets/tabs/socialpickuptab.h
index f5e2d7ae0..1274bdcfa 100644
--- a/src/gui/widgets/tabs/socialpickuptab.h
+++ b/src/gui/widgets/tabs/socialpickuptab.h
@@ -23,8 +23,6 @@
#include "gui/widgets/tabs/socialtab.h"
-#include "actormanager.h"
-
#include "being/localplayer.h"
#include "gui/models/beingslistmodel.h"
diff --git a/src/gui/widgets/tabs/socialtabbase.h b/src/gui/widgets/tabs/socialtabbase.h
index bcc02b449..24d11eaf1 100644
--- a/src/gui/widgets/tabs/socialtabbase.h
+++ b/src/gui/widgets/tabs/socialtabbase.h
@@ -25,8 +25,6 @@
#include "resources/mapitemtype.h"
-#include "resources/map/mapitem.h"
-
#define addAvatars(mob, str, type) \
{\
ava = new Avatar(str);\
diff --git a/src/gui/widgets/tabs/tab.cpp b/src/gui/widgets/tabs/tab.cpp
index 174478eb1..2f300fb5f 100644
--- a/src/gui/widgets/tabs/tab.cpp
+++ b/src/gui/widgets/tabs/tab.cpp
@@ -74,6 +74,8 @@
#include "gui/widgets/label.h"
#include "gui/widgets/tabbedarea.h"
+#include "render/renderers.h"
+
#include "resources/image.h"
#include "resources/imagerect.h"
diff --git a/src/gui/widgets/vertcontainer.h b/src/gui/widgets/vertcontainer.h
index 6a0192a32..bb7e49633 100644
--- a/src/gui/widgets/vertcontainer.h
+++ b/src/gui/widgets/vertcontainer.h
@@ -26,8 +26,6 @@
#include "listeners/widgetlistener.h"
-#include <vector>
-
#include "localconsts.h"
/**
diff --git a/src/gui/widgets/widget.h b/src/gui/widgets/widget.h
index a66fcc030..8191754e5 100644
--- a/src/gui/widgets/widget.h
+++ b/src/gui/widgets/widget.h
@@ -65,11 +65,6 @@
#define GUI_WIDGETS_WIDGET_H
#include <list>
-#include <set>
-#include <string>
-
-#include "gui/color.h"
-#include "gui/rect.h"
#include "gui/widgets/widget2.h"
diff --git a/src/gui/widgets/widget2.h b/src/gui/widgets/widget2.h
index 31e47034d..c8ee90406 100644
--- a/src/gui/widgets/widget2.h
+++ b/src/gui/widgets/widget2.h
@@ -23,8 +23,6 @@
#include "gui/theme.h"
-#include "render/renderers.h"
-
class Widget2 notfinal
{
public:
diff --git a/src/gui/widgets/window.cpp b/src/gui/widgets/window.cpp
index 82cd77a0d..f29027566 100644
--- a/src/gui/widgets/window.cpp
+++ b/src/gui/widgets/window.cpp
@@ -87,6 +87,8 @@
#include "gui/widgets/containerplacer.h"
#include "gui/widgets/layout.h"
+#include "render/renderers.h"
+
#include "utils/delete2.h"
#include "debug.h"
diff --git a/src/gui/widgets/window.h b/src/gui/widgets/window.h
index 17db9778f..dd59242e8 100644
--- a/src/gui/widgets/window.h
+++ b/src/gui/widgets/window.h
@@ -66,8 +66,6 @@
#ifndef GUI_WIDGETS_WINDOW_H
#define GUI_WIDGETS_WINDOW_H
-#include "render/graphics.h"
-
#include "listeners/mouselistener.h"
#include "listeners/widgetlistener.h"
diff --git a/src/gui/widgets/windowcontainer.h b/src/gui/widgets/windowcontainer.h
index 299624d93..9ca92c9f6 100644
--- a/src/gui/widgets/windowcontainer.h
+++ b/src/gui/widgets/windowcontainer.h
@@ -25,8 +25,6 @@
#include "gui/widgets/container.h"
-#include <vector>
-
/**
* A window container. This container adds functionality for more convenient
* widget (windows in particular) destruction.
diff --git a/src/gui/windowmenu.h b/src/gui/windowmenu.h
index cc101aff8..e68665aac 100644
--- a/src/gui/windowmenu.h
+++ b/src/gui/windowmenu.h
@@ -23,8 +23,6 @@
#ifndef GUI_WINDOWMENU_H
#define GUI_WINDOWMENU_H
-#include "listeners/configlistener.h"
-
#include "gui/widgets/container.h"
#include "listeners/actionlistener.h"
@@ -33,9 +31,6 @@
#include "localconsts.h"
-#include <map>
-#include <vector>
-
class Button;
struct ButtonInfo;
diff --git a/src/gui/windows/botcheckerwindow.cpp b/src/gui/windows/botcheckerwindow.cpp
index a7fd4ea44..9f1973426 100644
--- a/src/gui/windows/botcheckerwindow.cpp
+++ b/src/gui/windows/botcheckerwindow.cpp
@@ -24,6 +24,7 @@
#include "gui/windows/setupwindow.h"
+#include "gui/widgets/button.h"
#include "gui/widgets/scrollarea.h"
#include "gui/widgets/guitable.h"
diff --git a/src/gui/windows/botcheckerwindow.h b/src/gui/windows/botcheckerwindow.h
index 64aab4bca..76f06af4c 100644
--- a/src/gui/windows/botcheckerwindow.h
+++ b/src/gui/windows/botcheckerwindow.h
@@ -23,8 +23,6 @@
#ifndef GUI_WINDOWS_BOTCHECKERWINDOW_H
#define GUI_WINDOWS_BOTCHECKERWINDOW_H
-#include "listeners/configlistener.h"
-
#include "gui/widgets/window.h"
#include "listeners/actionlistener.h"
diff --git a/src/gui/windows/changeemaildialog.cpp b/src/gui/windows/changeemaildialog.cpp
index 822947c22..80ffea7ae 100644
--- a/src/gui/windows/changeemaildialog.cpp
+++ b/src/gui/windows/changeemaildialog.cpp
@@ -34,6 +34,7 @@
#include "listeners/wrongdatanoticelistener.h"
+#include "net/logindata.h"
#include "net/loginhandler.h"
#include "utils/delete2.h"
diff --git a/src/gui/windows/changepassworddialog.cpp b/src/gui/windows/changepassworddialog.cpp
index 049f00a5e..9fe950211 100644
--- a/src/gui/windows/changepassworddialog.cpp
+++ b/src/gui/windows/changepassworddialog.cpp
@@ -35,6 +35,7 @@
#include "listeners/wrongdatanoticelistener.h"
+#include "net/logindata.h"
#include "net/loginhandler.h"
#include "utils/delete2.h"
diff --git a/src/gui/windows/charselectdialog.cpp b/src/gui/windows/charselectdialog.cpp
index 85a23ed64..9468fa29a 100644
--- a/src/gui/windows/charselectdialog.cpp
+++ b/src/gui/windows/charselectdialog.cpp
@@ -51,6 +51,7 @@
#include "gui/widgets/containerplacer.h"
#include "net/character.h"
+#include "net/logindata.h"
#include "net/loginhandler.h"
#include "net/registrationoptions.h"
#include "net/serverfeatures.h"
diff --git a/src/gui/windows/charselectdialog.h b/src/gui/windows/charselectdialog.h
index ca7d6111c..9e9871c5a 100644
--- a/src/gui/windows/charselectdialog.h
+++ b/src/gui/windows/charselectdialog.h
@@ -23,8 +23,6 @@
#ifndef GUI_WINDOWS_CHARSELECTDIALOG_H
#define GUI_WINDOWS_CHARSELECTDIALOG_H
-#include "main.h"
-
#include "gui/widgets/window.h"
#include "net/charserverhandler.h"
diff --git a/src/gui/windows/chatwindow.h b/src/gui/windows/chatwindow.h
index 7dbe104c6..3bbb40e5e 100644
--- a/src/gui/windows/chatwindow.h
+++ b/src/gui/windows/chatwindow.h
@@ -35,10 +35,6 @@
#include "listeners/keylistener.h"
#include "listeners/statlistener.h"
-#include <list>
-#include <map>
-#include <set>
-
class Button;
class ChannelTab;
class ChatTab;
diff --git a/src/gui/windows/equipmentwindow.cpp b/src/gui/windows/equipmentwindow.cpp
index 0b5fe10f1..3320f9e1e 100644
--- a/src/gui/windows/equipmentwindow.cpp
+++ b/src/gui/windows/equipmentwindow.cpp
@@ -42,6 +42,8 @@
#include "gui/widgets/playerbox.h"
#include "gui/widgets/tabstrip.h"
+#include "render/renderers.h"
+
#include "resources/equipmentslots.h"
#include "resources/imageset.h"
diff --git a/src/gui/windows/equipmentwindow.h b/src/gui/windows/equipmentwindow.h
index 27526486a..a8073b3c4 100644
--- a/src/gui/windows/equipmentwindow.h
+++ b/src/gui/windows/equipmentwindow.h
@@ -33,8 +33,6 @@
#include "listeners/actionlistener.h"
-#include <vector>
-
class Being;
class Button;
class Image;
diff --git a/src/gui/windows/helpwindow.h b/src/gui/windows/helpwindow.h
index 661c7013c..b1f09b60f 100644
--- a/src/gui/windows/helpwindow.h
+++ b/src/gui/windows/helpwindow.h
@@ -30,9 +30,6 @@
#include "localconsts.h"
-#include <map>
-#include <set>
-
class Button;
class BrowserBox;
class ScrollArea;
diff --git a/src/gui/windows/inventorywindow.cpp b/src/gui/windows/inventorywindow.cpp
index bf3077c1d..568da1cc1 100644
--- a/src/gui/windows/inventorywindow.cpp
+++ b/src/gui/windows/inventorywindow.cpp
@@ -23,6 +23,7 @@
#include "gui/windows/inventorywindow.h"
#include "configuration.h"
+#include "item.h"
#include "units.h"
#include "being/playerinfo.h"
diff --git a/src/gui/windows/itemamountwindow.cpp b/src/gui/windows/itemamountwindow.cpp
index 01289a4c3..7198d087a 100644
--- a/src/gui/windows/itemamountwindow.cpp
+++ b/src/gui/windows/itemamountwindow.cpp
@@ -22,6 +22,8 @@
#include "gui/windows/itemamountwindow.h"
+#include "item.h"
+
#include "being/playerinfo.h"
#include "input/keyboardconfig.h"
@@ -44,6 +46,8 @@
#include "gui/widgets/label.h"
#include "gui/widgets/slider.h"
+#include "utils/gettext.h"
+
#include <cmath>
#include "debug.h"
diff --git a/src/gui/windows/killstats.cpp b/src/gui/windows/killstats.cpp
index 89626598e..cd40d5d41 100644
--- a/src/gui/windows/killstats.cpp
+++ b/src/gui/windows/killstats.cpp
@@ -41,6 +41,10 @@
#include "utils/gettext.h"
+#ifdef WIN32
+#include <sys/time.h>
+#endif
+
#include "debug.h"
KillStats *killStats = nullptr;
diff --git a/src/gui/windows/logindialog.h b/src/gui/windows/logindialog.h
index 593bca63d..6e53304ce 100644
--- a/src/gui/windows/logindialog.h
+++ b/src/gui/windows/logindialog.h
@@ -28,8 +28,6 @@
#include "listeners/actionlistener.h"
#include "listeners/keylistener.h"
-#include <string>
-
class Button;
class CheckBox;
class DropDown;
diff --git a/src/gui/windows/minimap.cpp b/src/gui/windows/minimap.cpp
index 965f1d71c..8fcb175ef 100644
--- a/src/gui/windows/minimap.cpp
+++ b/src/gui/windows/minimap.cpp
@@ -37,6 +37,7 @@
#include "gui/windows/setupwindow.h"
+#include "resources/image.h"
#include "resources/imagehelper.h"
#include "resources/resourcemanager.h"
diff --git a/src/gui/windows/ministatuswindow.cpp b/src/gui/windows/ministatuswindow.cpp
index 7051465c6..ec2cf05b2 100644
--- a/src/gui/windows/ministatuswindow.cpp
+++ b/src/gui/windows/ministatuswindow.cpp
@@ -27,6 +27,7 @@
#include "inventory.h"
#include "being/localplayer.h"
+#include "being/playerinfo.h"
#include "enums/being/attributes.h"
diff --git a/src/gui/windows/ministatuswindow.h b/src/gui/windows/ministatuswindow.h
index 548344728..923e74696 100644
--- a/src/gui/windows/ministatuswindow.h
+++ b/src/gui/windows/ministatuswindow.h
@@ -31,8 +31,6 @@
#include "gui/widgets/window.h"
-#include <vector>
-
class AnimatedSprite;
class Graphics;
class Inventory;
diff --git a/src/gui/windows/npcdialog.h b/src/gui/windows/npcdialog.h
index 72a42701b..c74721b87 100644
--- a/src/gui/windows/npcdialog.h
+++ b/src/gui/windows/npcdialog.h
@@ -23,18 +23,12 @@
#ifndef GUI_WINDOWS_NPCDIALOG_H
#define GUI_WINDOWS_NPCDIALOG_H
-#include "listeners/configlistener.h"
-
#include "gui/models/extendedlistmodel.h"
#include "gui/widgets/window.h"
-#include "utils/stringvector.h"
-
#include "listeners/actionlistener.h"
-#include <list>
-
class Being;
class Button;
class BrowserBox;
diff --git a/src/gui/windows/questswindow.h b/src/gui/windows/questswindow.h
index f06e2a2ef..927b32540 100644
--- a/src/gui/windows/questswindow.h
+++ b/src/gui/windows/questswindow.h
@@ -29,9 +29,6 @@
#include "listeners/actionlistener.h"
-#include <map>
-#include <vector>
-
class Being;
class Button;
class BrowserBox;
diff --git a/src/gui/windows/quitdialog.h b/src/gui/windows/quitdialog.h
index 9ff6dd763..96614401f 100644
--- a/src/gui/windows/quitdialog.h
+++ b/src/gui/windows/quitdialog.h
@@ -28,8 +28,6 @@
#include "listeners/actionlistener.h"
#include "listeners/keylistener.h"
-#include <vector>
-
class Button;
class RadioButton;
diff --git a/src/gui/windows/registerdialog.cpp b/src/gui/windows/registerdialog.cpp
index 8d7d84480..fdddfec6f 100644
--- a/src/gui/windows/registerdialog.cpp
+++ b/src/gui/windows/registerdialog.cpp
@@ -39,6 +39,7 @@
#include "gui/widgets/passwordfield.h"
#include "gui/widgets/radiobutton.h"
+#include "net/logindata.h"
#include "net/loginhandler.h"
#include "net/registrationoptions.h"
#include "net/serverfeatures.h"
diff --git a/src/gui/windows/serverdialog.h b/src/gui/windows/serverdialog.h
index f59ff4ab7..e64177591 100644
--- a/src/gui/windows/serverdialog.h
+++ b/src/gui/windows/serverdialog.h
@@ -35,8 +35,6 @@
#include "listeners/keylistener.h"
#include "listeners/selectionlistener.h"
-#include <string>
-
class Button;
class CheckBox;
class Label;
diff --git a/src/gui/windows/setupwindow.h b/src/gui/windows/setupwindow.h
index 53bfae9cc..d890f3f02 100644
--- a/src/gui/windows/setupwindow.h
+++ b/src/gui/windows/setupwindow.h
@@ -27,8 +27,6 @@
#include "listeners/actionlistener.h"
-#include <list>
-
class Button;
class Label;
class SetupTab;
diff --git a/src/gui/windows/skilldialog.cpp b/src/gui/windows/skilldialog.cpp
index 48ab6bba4..65134aac1 100644
--- a/src/gui/windows/skilldialog.cpp
+++ b/src/gui/windows/skilldialog.cpp
@@ -28,6 +28,7 @@
#include "spellmanager.h"
#include "being/localplayer.h"
+#include "being/playerinfo.h"
#include "enums/being/attributes.h"
diff --git a/src/gui/windows/socialwindow.h b/src/gui/windows/socialwindow.h
index d5f015e5d..a3a10101e 100644
--- a/src/gui/windows/socialwindow.h
+++ b/src/gui/windows/socialwindow.h
@@ -27,9 +27,6 @@
#include "listeners/actionlistener.h"
#include "listeners/playerrelationslistener.h"
-#include <string>
-#include <map>
-
class Button;
class ConfirmDialog;
class CreatePartyPopup;
diff --git a/src/gui/windows/statuswindow.cpp b/src/gui/windows/statuswindow.cpp
index 2c66884ae..14a81b003 100644
--- a/src/gui/windows/statuswindow.cpp
+++ b/src/gui/windows/statuswindow.cpp
@@ -24,12 +24,14 @@
#include "configuration.h"
#include "gamemodifiers.h"
+#include "item.h"
#include "settings.h"
#include "units.h"
#include "gui/windows/chatwindow.h"
#include "being/localplayer.h"
+#include "being/playerinfo.h"
#include "enums/being/attributes.h"
diff --git a/src/gui/windows/statuswindow.h b/src/gui/windows/statuswindow.h
index 34462498b..bde444fe5 100644
--- a/src/gui/windows/statuswindow.h
+++ b/src/gui/windows/statuswindow.h
@@ -29,8 +29,6 @@
#include "listeners/attributelistener.h"
#include "listeners/statlistener.h"
-#include <map>
-
class AttrDisplay;
class Button;
class Label;
diff --git a/src/gui/windows/tradewindow.h b/src/gui/windows/tradewindow.h
index f08d88963..b93c53507 100644
--- a/src/gui/windows/tradewindow.h
+++ b/src/gui/windows/tradewindow.h
@@ -30,8 +30,6 @@
#include "listeners/actionlistener.h"
#include "listeners/selectionlistener.h"
-#include <memory>
-
class Button;
class Inventory;
class Item;
diff --git a/src/gui/windows/unregisterdialog.cpp b/src/gui/windows/unregisterdialog.cpp
index 5dc99f720..24ce90108 100644
--- a/src/gui/windows/unregisterdialog.cpp
+++ b/src/gui/windows/unregisterdialog.cpp
@@ -34,6 +34,7 @@
#include "listeners/wrongdatanoticelistener.h"
+#include "net/logindata.h"
#include "net/loginhandler.h"
#include "utils/delete2.h"
diff --git a/src/gui/windows/updaterwindow.h b/src/gui/windows/updaterwindow.h
index 6d3d7f49b..93922a7a9 100644
--- a/src/gui/windows/updaterwindow.h
+++ b/src/gui/windows/updaterwindow.h
@@ -35,9 +35,6 @@
#include "listeners/actionlistener.h"
#include "listeners/keylistener.h"
-#include <string>
-#include <vector>
-
class BrowserBox;
class Button;
class Label;
diff --git a/src/gui/windows/whoisonline.h b/src/gui/windows/whoisonline.h
index 1a8f1c1c9..8ec7d3c2d 100644
--- a/src/gui/windows/whoisonline.h
+++ b/src/gui/windows/whoisonline.h
@@ -23,13 +23,9 @@
#ifndef GUI_WINDOWS_WHOISONLINE_H
#define GUI_WINDOWS_WHOISONLINE_H
-#include "listeners/configlistener.h"
-
#include "gui/widgets/linkhandler.h"
#include "gui/widgets/window.h"
-#include <set>
-
#include "listeners/actionlistener.h"
class BrowserBox;
diff --git a/src/guild.h b/src/guild.h
index 359948f1e..2ed9db5b2 100644
--- a/src/guild.h
+++ b/src/guild.h
@@ -23,8 +23,6 @@
#ifndef GUILD_H
#define GUILD_H
-#include "avatar.h"
-
#include "gui/models/avatarlistmodel.h"
#include "utils/dtor.h"
diff --git a/src/input/inputactiondata.h b/src/input/inputactiondata.h
index a0f4c6279..76a04afc1 100644
--- a/src/input/inputactiondata.h
+++ b/src/input/inputactiondata.h
@@ -25,8 +25,6 @@
#include "actions/actionfuncptr.h"
-#include <string>
-
struct InputActionData final
{
const char *const configField;
diff --git a/src/input/inputactionmap.h b/src/input/inputactionmap.h
index ae75d2b2d..a8d3853ac 100644
--- a/src/input/inputactionmap.h
+++ b/src/input/inputactionmap.h
@@ -35,16 +35,11 @@
#include "actions/target.h"
#include "actions/windows.h"
-#include "input/inputaction.h"
#include "input/inputactiondata.h"
#include "input/inputcondition.h"
#include "input/inputmanager.h"
#include "input/inputtype.h"
-#include "utils/gettext.h"
-
-#include <string>
-
#include "localconsts.h"
#define defaultAction(name) \
diff --git a/src/input/inputmanager.cpp b/src/input/inputmanager.cpp
index dcb4b57a7..11ff7f291 100644
--- a/src/input/inputmanager.cpp
+++ b/src/input/inputmanager.cpp
@@ -53,6 +53,7 @@
#include "gui/windows/textdialog.h"
#include "gui/windows/tradewindow.h"
+#include "utils/gettext.h"
#include "utils/timer.h"
#include "gui/focushandler.h"
diff --git a/src/input/inputmanager.h b/src/input/inputmanager.h
index 672060a72..11757b630 100644
--- a/src/input/inputmanager.h
+++ b/src/input/inputmanager.h
@@ -29,7 +29,6 @@
#include "utils/stringmap.h"
#include <list>
-#include <string>
#include <SDL_events.h>
diff --git a/src/input/joystick.h b/src/input/joystick.h
index 2276006a7..01937c829 100644
--- a/src/input/joystick.h
+++ b/src/input/joystick.h
@@ -27,9 +27,6 @@
#include <SDL_events.h>
-#include <string>
-#include <vector>
-
class Joystick final
{
public:
diff --git a/src/input/keyboardconfig.h b/src/input/keyboardconfig.h
index 7465de669..7b1d09e33 100644
--- a/src/input/keyboardconfig.h
+++ b/src/input/keyboardconfig.h
@@ -29,8 +29,6 @@
#include "events/inputevent.h"
-#include <string>
-
union SDL_Event;
class KeyboardConfig final
diff --git a/src/input/keyinput.h b/src/input/keyinput.h
index 775ef98dd..f308af244 100644
--- a/src/input/keyinput.h
+++ b/src/input/keyinput.h
@@ -68,8 +68,6 @@
#include "input/key.h"
-#include <string>
-
#include "localconsts.h"
class KeyInput final
diff --git a/src/inventory.cpp b/src/inventory.cpp
index 0129e7593..7f05a2472 100644
--- a/src/inventory.cpp
+++ b/src/inventory.cpp
@@ -22,6 +22,7 @@
#include "inventory.h"
+#include "item.h"
#include "logger.h"
#include "net/inventoryhandler.h"
diff --git a/src/item.h b/src/item.h
index f5adf31c8..2b624d6ea 100644
--- a/src/item.h
+++ b/src/item.h
@@ -27,8 +27,6 @@
#include "resources/db/itemdb.h"
-#include <map>
-
#include "localconsts.h"
class Image;
diff --git a/src/listeners/actionlistener.h b/src/listeners/actionlistener.h
index 0d5698d17..d715c9620 100644
--- a/src/listeners/actionlistener.h
+++ b/src/listeners/actionlistener.h
@@ -64,8 +64,6 @@
#ifndef LISTENERS_ACTIONLISTENER_H
#define LISTENERS_ACTIONLISTENER_H
-#include <string>
-
#include "events/actionevent.h"
/**
diff --git a/src/listeners/focuslistener.h b/src/listeners/focuslistener.h
index 2646fb406..8deb3ad96 100644
--- a/src/listeners/focuslistener.h
+++ b/src/listeners/focuslistener.h
@@ -64,8 +64,6 @@
#ifndef LISTENERS_FOCUSLISTENER_H
#define LISTENERS_FOCUSLISTENER_H
-#include <string>
-
#include "events/event.h"
#include "localconsts.h"
diff --git a/src/listeners/openurllistener.h b/src/listeners/openurllistener.h
index ccc50753b..72085dadb 100644
--- a/src/listeners/openurllistener.h
+++ b/src/listeners/openurllistener.h
@@ -27,8 +27,6 @@
#include "utils/process.h"
-#include <string>
-
#include "localconsts.h"
struct OpenUrlListener final : public ActionListener
diff --git a/src/listeners/playerlistener.h b/src/listeners/playerlistener.h
index aaca92bc4..3364f44f5 100644
--- a/src/listeners/playerlistener.h
+++ b/src/listeners/playerlistener.h
@@ -23,8 +23,6 @@
#include "listeners/actionlistener.h"
-#include <string>
-
#include "localconsts.h"
class TextDialog;
diff --git a/src/listeners/playerpostdeathlistener.h b/src/listeners/playerpostdeathlistener.h
index 015b8320e..8b960e7eb 100644
--- a/src/listeners/playerpostdeathlistener.h
+++ b/src/listeners/playerpostdeathlistener.h
@@ -28,10 +28,8 @@
#include "gui/dialogsmanager.h"
#include "gui/popupmanager.h"
-#include "gui/windows/okdialog.h"
#include "gui/windows/npcdialog.h"
-#include "net/net.h"
#include "net/playerhandler.h"
#include "localconsts.h"
diff --git a/src/listeners/requesttradelistener.h b/src/listeners/requesttradelistener.h
index b1f5ed620..7a024dfb2 100644
--- a/src/listeners/requesttradelistener.h
+++ b/src/listeners/requesttradelistener.h
@@ -27,13 +27,8 @@
#include "gui/windows/confirmdialog.h"
-#include "net/net.h"
#include "net/tradehandler.h"
-#include "listeners/actionlistener.h"
-
-#include <string>
-
#include "localconsts.h"
extern std::string tradePartnerName;
diff --git a/src/listeners/selectionlistener.h b/src/listeners/selectionlistener.h
index b8e6e99f8..9abd06470 100644
--- a/src/listeners/selectionlistener.h
+++ b/src/listeners/selectionlistener.h
@@ -64,8 +64,6 @@
#ifndef LISTENERS_SELECTIONLISTENER_H
#define LISTENERS_SELECTIONLISTENER_H
-#include <string>
-
#include "events/selectionevent.h"
#include "localconsts.h"
diff --git a/src/listeners/tablemodellistener.h b/src/listeners/tablemodellistener.h
index 5d38c7864..a46a9cb22 100644
--- a/src/listeners/tablemodellistener.h
+++ b/src/listeners/tablemodellistener.h
@@ -23,9 +23,6 @@
#ifndef LISTENERS_TABLEMODELLISTENER_H
#define LISTENERS_TABLEMODELLISTENER_H
-#include <set>
-#include <vector>
-
#include "localconsts.h"
class Widget;
diff --git a/src/listeners/weightlistener.h b/src/listeners/weightlistener.h
index c24591065..ad4c0bd8f 100644
--- a/src/listeners/weightlistener.h
+++ b/src/listeners/weightlistener.h
@@ -25,8 +25,6 @@
#include "gui/windows/okdialog.h"
-#include "listeners/actionlistener.h"
-
#include "localconsts.h"
extern OkDialog *weightNotice;
diff --git a/src/listeners/widgetdeathlistener.h b/src/listeners/widgetdeathlistener.h
index 951881a4d..5be4dc8d0 100644
--- a/src/listeners/widgetdeathlistener.h
+++ b/src/listeners/widgetdeathlistener.h
@@ -64,8 +64,6 @@
#ifndef LISTENERS_WIDGETDEATHLISTENER_H
#define LISTENERS_WIDGETDEATHLISTENER_H
-#include <string>
-
#include "events/event.h"
/**
diff --git a/src/listeners/widgetlistener.h b/src/listeners/widgetlistener.h
index ee234a824..5edb9bbe8 100644
--- a/src/listeners/widgetlistener.h
+++ b/src/listeners/widgetlistener.h
@@ -64,8 +64,6 @@
#ifndef LISTENERS_WIDGETLISTENER_H
#define LISTENERS_WIDGETLISTENER_H
-#include <string>
-
#include "events/event.h"
#include "localconsts.h"
diff --git a/src/mumblemanager.h b/src/mumblemanager.h
index d81ce7628..7e8d11d0e 100644
--- a/src/mumblemanager.h
+++ b/src/mumblemanager.h
@@ -10,8 +10,6 @@
#ifndef MUMBLEMANAGER_H
#define MUMBLEMANAGER_H
-#include "main.h"
-
#ifdef USE_MUMBLE
#include <string>
diff --git a/src/net/adminhandler.h b/src/net/adminhandler.h
index 5207d677d..70e683769 100644
--- a/src/net/adminhandler.h
+++ b/src/net/adminhandler.h
@@ -23,11 +23,11 @@
#ifndef NET_ADMINHANDLER_H
#define NET_ADMINHANDLER_H
-#include "being/being.h"
-#include <iosfwd>
+#include "localconsts.h"
+
#include <string>
-#include "localconsts.h"
+class Being;
namespace Net
{
diff --git a/src/net/charserverhandler.h b/src/net/charserverhandler.h
index 31077d851..d8c14a4de 100644
--- a/src/net/charserverhandler.h
+++ b/src/net/charserverhandler.h
@@ -25,9 +25,6 @@
#include "being/localplayer.h"
-#include <string>
-#include <vector>
-
class CharCreateDialog;
class CharSelectDialog;
diff --git a/src/net/chathandler.h b/src/net/chathandler.h
index e0567f23c..dad30b676 100644
--- a/src/net/chathandler.h
+++ b/src/net/chathandler.h
@@ -23,8 +23,6 @@
#ifndef NET_CHATHANDLER_H
#define NET_CHATHANDLER_H
-
-#include <iosfwd>
#include <string>
#include "localconsts.h"
diff --git a/src/net/ea/equipbackend.h b/src/net/ea/equipbackend.h
index 5aa56bf6b..c264724a8 100644
--- a/src/net/ea/equipbackend.h
+++ b/src/net/ea/equipbackend.h
@@ -23,8 +23,6 @@
#ifndef NET_EA_EQUIPBACKEND_H
#define NET_EA_EQUIPBACKEND_H
-#include "equipment.h"
-#include "inventory.h"
#include "item.h"
#include "being/playerinfo.h"
diff --git a/src/net/ea/inventoryhandler.h b/src/net/ea/inventoryhandler.h
index 77cf40a56..26d74d56a 100644
--- a/src/net/ea/inventoryhandler.h
+++ b/src/net/ea/inventoryhandler.h
@@ -30,7 +30,6 @@
#include "net/ea/equipbackend.h"
#include "net/ea/inventoryitem.h"
-#include <vector>
#include <queue>
namespace Net
diff --git a/src/net/ea/itemhandler.cpp b/src/net/ea/itemhandler.cpp
index f09dc57d5..a4c1a164b 100644
--- a/src/net/ea/itemhandler.cpp
+++ b/src/net/ea/itemhandler.cpp
@@ -24,6 +24,8 @@
#include "actormanager.h"
+#include "net/messagein.h"
+
#include "debug.h"
namespace Ea
diff --git a/src/net/ea/itemhandler.h b/src/net/ea/itemhandler.h
index 37cd097ff..a67f701a4 100644
--- a/src/net/ea/itemhandler.h
+++ b/src/net/ea/itemhandler.h
@@ -23,8 +23,6 @@
#ifndef NET_EA_ITEMHANDLER_H
#define NET_EA_ITEMHANDLER_H
-#include "net/messagein.h"
-
#include "localconsts.h"
namespace Net
diff --git a/src/net/ea/loginhandler.cpp b/src/net/ea/loginhandler.cpp
index c182d7065..8b8077cde 100644
--- a/src/net/ea/loginhandler.cpp
+++ b/src/net/ea/loginhandler.cpp
@@ -34,6 +34,7 @@
#include "utils/gettext.h"
#include "utils/paths.h"
+#include "net/logindata.h"
#include "net/messagein.h"
#include "debug.h"
diff --git a/src/net/ea/loginhandler.h b/src/net/ea/loginhandler.h
index 111aa5965..b2d57574d 100644
--- a/src/net/ea/loginhandler.h
+++ b/src/net/ea/loginhandler.h
@@ -29,8 +29,6 @@
#include "net/ea/token.h"
-#include <string>
-
class LoginData;
namespace Net
diff --git a/src/net/ea/network.h b/src/net/ea/network.h
index 95bb6c456..52693ef30 100644
--- a/src/net/ea/network.h
+++ b/src/net/ea/network.h
@@ -26,10 +26,6 @@
#include "net/serverinfo.h"
#include "net/sdltcpnet.h"
-#include <SDL_thread.h>
-
-#include <string>
-
namespace Ea
{
diff --git a/src/net/ea/playerhandler.cpp b/src/net/ea/playerhandler.cpp
index a2833eee3..eb6f8d0af 100644
--- a/src/net/ea/playerhandler.cpp
+++ b/src/net/ea/playerhandler.cpp
@@ -31,6 +31,7 @@
#include "being/beingflag.h"
#include "being/localplayer.h"
+#include "being/playerinfo.h"
#include "enums/being/attributes.h"
diff --git a/src/net/ea/tradehandler.cpp b/src/net/ea/tradehandler.cpp
index 683654d61..5bdf42775 100644
--- a/src/net/ea/tradehandler.cpp
+++ b/src/net/ea/tradehandler.cpp
@@ -31,6 +31,7 @@
#include "net/messagein.h"
#include "utils/gettext.h"
+#include "utils/stringutils.h"
#include "resources/notifytypes.h"
diff --git a/src/net/eathena/adminhandler.cpp b/src/net/eathena/adminhandler.cpp
index 1e394d300..75250d2b7 100644
--- a/src/net/eathena/adminhandler.cpp
+++ b/src/net/eathena/adminhandler.cpp
@@ -24,6 +24,8 @@
#include "logger.h"
+#include "being/being.h"
+
#include "net/eathena/messageout.h"
#include "net/eathena/protocol.h"
diff --git a/src/net/eathena/loginhandler.h b/src/net/eathena/loginhandler.h
index 38cacc380..918d5c66d 100644
--- a/src/net/eathena/loginhandler.h
+++ b/src/net/eathena/loginhandler.h
@@ -27,8 +27,6 @@
#include "net/eathena/messagehandler.h"
-#include <string>
-
namespace EAthena
{
diff --git a/src/net/eathena/messagehandler.h b/src/net/eathena/messagehandler.h
index 10bd228a6..1bf84f449 100644
--- a/src/net/eathena/messagehandler.h
+++ b/src/net/eathena/messagehandler.h
@@ -25,8 +25,6 @@
#include "net/messagehandler.h"
-#include <memory>
-
namespace EAthena
{
diff --git a/src/net/gamehandler.h b/src/net/gamehandler.h
index 2a4f23246..1b1e3b560 100644
--- a/src/net/gamehandler.h
+++ b/src/net/gamehandler.h
@@ -25,8 +25,6 @@
#include "net/logindata.h"
-#include <iosfwd>
-
namespace Net
{
diff --git a/src/net/guildhandler.h b/src/net/guildhandler.h
index 5869eac80..bbc7554fd 100644
--- a/src/net/guildhandler.h
+++ b/src/net/guildhandler.h
@@ -27,8 +27,6 @@
#include "gui/widgets/tabs/chat/chattab.h"
-#include <iosfwd>
-
class Being;
namespace Net
diff --git a/src/net/inventoryhandler.h b/src/net/inventoryhandler.h
index d22bcd4e1..fc1365898 100644
--- a/src/net/inventoryhandler.h
+++ b/src/net/inventoryhandler.h
@@ -23,12 +23,8 @@
#ifndef NET_INVENTORYHANDLER_H
#define NET_INVENTORYHANDLER_H
-#include "item.h"
-
#include "inventory.h"
-#include <iosfwd>
-
namespace Net
{
diff --git a/src/net/ipc.h b/src/net/ipc.h
index aca398e52..463d5ea83 100644
--- a/src/net/ipc.h
+++ b/src/net/ipc.h
@@ -26,8 +26,6 @@
#include <string>
#include <vector>
-#include <SDL_thread.h>
-
class IPC final
{
public:
diff --git a/src/net/logindata.h b/src/net/logindata.h
index 514b8fd6e..ddd3685be 100644
--- a/src/net/logindata.h
+++ b/src/net/logindata.h
@@ -29,8 +29,6 @@
#include "utils/stringvector.h"
-#include <string>
-
#include "localconsts.h"
class LoginData final
diff --git a/src/net/loginhandler.h b/src/net/loginhandler.h
index c75004a70..c7dee1fcc 100644
--- a/src/net/loginhandler.h
+++ b/src/net/loginhandler.h
@@ -23,12 +23,10 @@
#ifndef NET_LOGINHANDLER_H
#define NET_LOGINHANDLER_H
-#include "net/logindata.h"
#include "net/serverinfo.h"
#include "net/worldinfo.h"
-#include <iosfwd>
-#include <vector>
+class LoginData;
namespace Net
{
diff --git a/src/net/messagehandler.h b/src/net/messagehandler.h
index 347d27d04..0d13053c5 100644
--- a/src/net/messagehandler.h
+++ b/src/net/messagehandler.h
@@ -25,10 +25,6 @@
#include "net/messagein.h"
-#include <SDL_types.h>
-
-#include <memory>
-
namespace Net
{
diff --git a/src/net/partyhandler.h b/src/net/partyhandler.h
index 4bd27d15b..2d148d247 100644
--- a/src/net/partyhandler.h
+++ b/src/net/partyhandler.h
@@ -29,8 +29,6 @@
#include "gui/widgets/tabs/chat/chattab.h"
-#include <string>
-
class Being;
namespace Net
diff --git a/src/net/playerhandler.h b/src/net/playerhandler.h
index 020eda605..10eac7462 100644
--- a/src/net/playerhandler.h
+++ b/src/net/playerhandler.h
@@ -25,8 +25,7 @@
#include "flooritem.h"
-#include "being/being.h"
-#include "being/playerinfo.h"
+#include "enums/being/beingaction.h"
namespace Net
{
diff --git a/src/net/questhandler.h b/src/net/questhandler.h
index fa64500f9..5ca3f563e 100644
--- a/src/net/questhandler.h
+++ b/src/net/questhandler.h
@@ -21,8 +21,6 @@
#ifndef NET_QUESTHANDLER_H
#define NET_QUESTHANDLER_H
-#include <string>
-
#include "localconsts.h"
namespace Net
diff --git a/src/net/serverinfo.h b/src/net/serverinfo.h
index a1b0c5b41..a17e5b3b2 100644
--- a/src/net/serverinfo.h
+++ b/src/net/serverinfo.h
@@ -27,11 +27,6 @@
#include "utils/stringutils.h"
-#include <SDL_stdinc.h>
-
-#include <string>
-#include <vector>
-
#include "localconsts.h"
class ServerInfo final
diff --git a/src/net/tmwa/loginhandler.h b/src/net/tmwa/loginhandler.h
index 5a1b11707..fa27859c7 100644
--- a/src/net/tmwa/loginhandler.h
+++ b/src/net/tmwa/loginhandler.h
@@ -27,8 +27,6 @@
#include "net/tmwa/messagehandler.h"
-#include <string>
-
namespace TmwAthena
{
diff --git a/src/net/tmwa/messagehandler.h b/src/net/tmwa/messagehandler.h
index 43b551692..047dd82ff 100644
--- a/src/net/tmwa/messagehandler.h
+++ b/src/net/tmwa/messagehandler.h
@@ -25,8 +25,6 @@
#include "net/messagehandler.h"
-#include <memory>
-
namespace TmwAthena
{
diff --git a/src/net/tradehandler.h b/src/net/tradehandler.h
index 09074c139..78cfdf17f 100644
--- a/src/net/tradehandler.h
+++ b/src/net/tradehandler.h
@@ -25,8 +25,6 @@
#include "being/being.h"
-#include <iosfwd>
-
#include "localconsts.h"
class Item;
diff --git a/src/particle/particle.h b/src/particle/particle.h
index f5b2e561d..9925a40a9 100644
--- a/src/particle/particle.h
+++ b/src/particle/particle.h
@@ -27,9 +27,6 @@
#include "localconsts.h"
-#include <list>
-#include <string>
-
class Color;
class Font;
class Particle;
diff --git a/src/particle/particleemitterprop.h b/src/particle/particleemitterprop.h
index 06c80e3f4..8e0716f2e 100644
--- a/src/particle/particleemitterprop.h
+++ b/src/particle/particleemitterprop.h
@@ -24,7 +24,6 @@
#define PARTICLE_PARTICLEEMITTERPROP_H
#include <cmath>
-#include <cstdlib>
#include "localconsts.h"
diff --git a/src/particle/particleinfo.h b/src/particle/particleinfo.h
index 36b3b2aeb..39acc2a12 100644
--- a/src/particle/particleinfo.h
+++ b/src/particle/particleinfo.h
@@ -23,7 +23,6 @@
#include "particle/particle.h"
-#include <string>
#include <vector>
struct ParticleInfo final
diff --git a/src/render/graphics.h b/src/render/graphics.h
index 33ab2954e..c803b7746 100644
--- a/src/render/graphics.h
+++ b/src/render/graphics.h
@@ -67,6 +67,7 @@
#define RENDER_GRAPHICS_H
#include "sdlshared.h"
+#include "main.h"
#include "enums/render/rendertype.h"
diff --git a/src/render/mgl.h b/src/render/mgl.h
index 8ae0d9f67..d8de629a5 100644
--- a/src/render/mgl.h
+++ b/src/render/mgl.h
@@ -22,6 +22,7 @@
#define RENDER_MGL_H
#include "main.h"
+
#ifdef USE_OPENGL
#include "render/mgldefines.h"
diff --git a/src/render/mgltypes.h b/src/render/mgltypes.h
index 510e77354..330524232 100644
--- a/src/render/mgltypes.h
+++ b/src/render/mgltypes.h
@@ -22,6 +22,7 @@
#define RENDER_MGLTYPES_H
#include "main.h"
+
#ifdef USE_OPENGL
#include "render/mgldefines.h"
diff --git a/src/render/mglx.h b/src/render/mglx.h
index 094520e76..575041a94 100644
--- a/src/render/mglx.h
+++ b/src/render/mglx.h
@@ -22,6 +22,7 @@
#define RENDER_MGLX_H
#include "main.h"
+
#if defined(USE_OPENGL) && defined(USE_X11)
#include "render/mglxtypes.h"
diff --git a/src/render/mglxtypes.h b/src/render/mglxtypes.h
index 427c0f202..c639a7d80 100644
--- a/src/render/mglxtypes.h
+++ b/src/render/mglxtypes.h
@@ -22,6 +22,7 @@
#define RENDER_MGLXTYPES_H
#include "main.h"
+
#if defined(USE_OPENGL) && defined(USE_X11)
#include <X11/Xlib.h>
diff --git a/src/render/mobileopenglgraphics.h b/src/render/mobileopenglgraphics.h
index 304481a39..16442bbc3 100644
--- a/src/render/mobileopenglgraphics.h
+++ b/src/render/mobileopenglgraphics.h
@@ -23,7 +23,6 @@
#ifndef RENDER_MOBILEOPENGLGRAPHICS_H
#define RENDER_MOBILEOPENGLGRAPHICS_H
-#include "main.h"
#ifdef USE_OPENGL
#include "localconsts.h"
@@ -43,8 +42,6 @@
#include <GL/glext.h>
#endif
-#include <set>
-
class OpenGLGraphicsVertexes;
class MobileOpenGLGraphics final : public Graphics
diff --git a/src/render/modernopenglgraphics.h b/src/render/modernopenglgraphics.h
index e395afb9c..db20aa2fb 100644
--- a/src/render/modernopenglgraphics.h
+++ b/src/render/modernopenglgraphics.h
@@ -23,7 +23,6 @@
#ifndef RENDER_MODERNOPENGLGRAPHICS_H
#define RENDER_MODERNOPENGLGRAPHICS_H
-#include "main.h"
#if defined USE_OPENGL && !defined ANDROID
#include "localconsts.h"
@@ -43,8 +42,6 @@
#include <GL/glext.h>
#endif
-#include <set>
-
class OpenGLGraphicsVertexes;
class ShaderProgram;
diff --git a/src/render/normalopenglgraphics.h b/src/render/normalopenglgraphics.h
index 29145115d..a3fbdc1fb 100644
--- a/src/render/normalopenglgraphics.h
+++ b/src/render/normalopenglgraphics.h
@@ -23,7 +23,6 @@
#ifndef RENDER_NORMALOPENGLGRAPHICS_H
#define RENDER_NORMALOPENGLGRAPHICS_H
-#include "main.h"
#if defined USE_OPENGL && !defined ANDROID
#include "localconsts.h"
@@ -43,8 +42,6 @@
#include <GL/glext.h>
#endif
-#include <set>
-
class OpenGLGraphicsVertexes;
class NormalOpenGLGraphics final : public Graphics
diff --git a/src/render/nullopenglgraphics.h b/src/render/nullopenglgraphics.h
index 5a5137f3d..f159fc7de 100644
--- a/src/render/nullopenglgraphics.h
+++ b/src/render/nullopenglgraphics.h
@@ -23,7 +23,6 @@
#ifndef RENDER_NULLOPENGLGRAPHICS_H
#define RENDER_NULLOPENGLGRAPHICS_H
-#include "main.h"
#if defined USE_OPENGL
#include "localconsts.h"
@@ -43,8 +42,6 @@
#include <GL/glext.h>
#endif
-#include <set>
-
class OpenGLGraphicsVertexes;
class NullOpenGLGraphics final : public Graphics
diff --git a/src/render/rendererslistsdl2.h b/src/render/rendererslistsdl2.h
index 15e307dba..f97228856 100644
--- a/src/render/rendererslistsdl2.h
+++ b/src/render/rendererslistsdl2.h
@@ -21,12 +21,10 @@
#ifndef RENDER_RENDERERSLISTSDL2_H
#define RENDER_RENDERERSLISTSDL2_H
-#include "utils/gettext.h"
-
-#include "render/renderers.h"
-
#ifdef USE_SDL2
+#include "utils/gettext.h"
+
#ifdef USE_OPENGL
#ifdef ANDROID
// defined OPENGL ANDROID
diff --git a/src/render/safeopenglgraphics.h b/src/render/safeopenglgraphics.h
index 04bf478a3..440ba7a39 100644
--- a/src/render/safeopenglgraphics.h
+++ b/src/render/safeopenglgraphics.h
@@ -23,7 +23,6 @@
#ifndef RENDER_SAFEOPENGLGRAPHICS_H
#define RENDER_SAFEOPENGLGRAPHICS_H
-#include "main.h"
#if defined USE_OPENGL && !defined ANDROID
#include "render/graphics.h"
diff --git a/src/resources/animation.h b/src/resources/animation.h
index 3a737a0c8..763818e4b 100644
--- a/src/resources/animation.h
+++ b/src/resources/animation.h
@@ -26,7 +26,6 @@
#include "resources/frame.h"
#include <vector>
-#include <string>
#include "localconsts.h"
diff --git a/src/resources/beinginfo.h b/src/resources/beinginfo.h
index c0d00e1c6..43c711524 100644
--- a/src/resources/beinginfo.h
+++ b/src/resources/beinginfo.h
@@ -32,8 +32,6 @@
#include "resources/map/blocktype.h"
-#include <map>
-
struct Attack;
namespace ColorDB
diff --git a/src/resources/beingmenuitem.h b/src/resources/beingmenuitem.h
index 78f4a6d84..7f0b43f01 100644
--- a/src/resources/beingmenuitem.h
+++ b/src/resources/beingmenuitem.h
@@ -21,10 +21,10 @@
#ifndef RESOURCES_BEINGMENUITEM_H
#define RESOURCES_BEINGMENUITEM_H
-#include "resources/image.h"
-
#include <string>
+#include "localconsts.h"
+
struct BeingMenuItem final
{
BeingMenuItem(const std::string &name0, const std::string &command0) :
diff --git a/src/resources/chatobject.h b/src/resources/chatobject.h
index 6095f37eb..b3945ec5f 100644
--- a/src/resources/chatobject.h
+++ b/src/resources/chatobject.h
@@ -23,8 +23,6 @@
#include "resources/image.h"
-#include <string>
-
struct ChatObject final
{
ChatObject() :
diff --git a/src/resources/db/mapdb.h b/src/resources/db/mapdb.h
index 120fcf289..e44c3e651 100644
--- a/src/resources/db/mapdb.h
+++ b/src/resources/db/mapdb.h
@@ -22,8 +22,6 @@
#ifndef RESOURCES_DB_MAPDB_H
#define RESOURCES_DB_MAPDB_H
-#include "utils/stringvector.h"
-
#include "resources/mapinfo.h"
#include <map>
diff --git a/src/resources/db/moddb.h b/src/resources/db/moddb.h
index 0333f9fd5..3af47255d 100644
--- a/src/resources/db/moddb.h
+++ b/src/resources/db/moddb.h
@@ -25,8 +25,6 @@
#include "resources/modinfo.h"
-#include <string>
-
#include "localconsts.h"
class ModInfo;
diff --git a/src/resources/dyecolor.h b/src/resources/dyecolor.h
index 90571b5fb..2a3b32968 100644
--- a/src/resources/dyecolor.h
+++ b/src/resources/dyecolor.h
@@ -21,8 +21,6 @@
#ifndef RESOURCES_DYECOLOR_H
#define RESOURCES_DYECOLOR_H
-#include <SDL_stdinc.h>
-
#include "localconsts.h"
struct DyeColor final
diff --git a/src/resources/fboinfo.h b/src/resources/fboinfo.h
index 28b26b7b5..0898666e5 100644
--- a/src/resources/fboinfo.h
+++ b/src/resources/fboinfo.h
@@ -21,7 +21,6 @@
#ifndef RESOURCES_FBOINFO_H
#define RESOURCES_FBOINFO_H
-#include "main.h"
#ifdef USE_OPENGL
#include "render/graphics.h"
diff --git a/src/resources/image.h b/src/resources/image.h
index 568999b33..0484f52b7 100644
--- a/src/resources/image.h
+++ b/src/resources/image.h
@@ -24,7 +24,6 @@
#define RESOURCES_IMAGE_H
#include "localconsts.h"
-#include "main.h"
#include "resources/resource.h"
diff --git a/src/resources/imagehelper.h b/src/resources/imagehelper.h
index afbfc25b4..5c33e8207 100644
--- a/src/resources/imagehelper.h
+++ b/src/resources/imagehelper.h
@@ -27,8 +27,6 @@
#include "enums/render/rendertype.h"
-#include "resources/resource.h"
-
#include <SDL_video.h>
class Dye;
diff --git a/src/resources/iteminfo.h b/src/resources/iteminfo.h
index 4d69b5c36..55e35ea22 100644
--- a/src/resources/iteminfo.h
+++ b/src/resources/iteminfo.h
@@ -30,8 +30,6 @@
#include "resources/soundinfo.h"
#include "resources/spritedisplay.h"
-#include <map>
-
namespace ColorDB
{
class ItemColor;
diff --git a/src/resources/itemtypemapdata.h b/src/resources/itemtypemapdata.h
index 77dd8c9aa..952329a24 100644
--- a/src/resources/itemtypemapdata.h
+++ b/src/resources/itemtypemapdata.h
@@ -25,8 +25,6 @@
#include "resources/itemtypemap.h"
-#include <string>
-
#include "localconsts.h"
ItemTypeMap itemTypeMap[] =
diff --git a/src/resources/map/map.h b/src/resources/map/map.h
index a6bc81560..ade7de0be 100644
--- a/src/resources/map/map.h
+++ b/src/resources/map/map.h
@@ -36,7 +36,6 @@
#include "listeners/configlistener.h"
-#include <string>
#include <vector>
class AmbientLayer;
diff --git a/src/resources/map/maplayer.cpp b/src/resources/map/maplayer.cpp
index 2c0f050b5..5f3c29586 100644
--- a/src/resources/map/maplayer.cpp
+++ b/src/resources/map/maplayer.cpp
@@ -32,6 +32,7 @@
#include "render/graphics.h"
+#include "resources/image.h"
#include "resources/mapitemtype.h"
#include "resources/map/mapitem.h"
diff --git a/src/resources/map/maplayer.h b/src/resources/map/maplayer.h
index a5d789d11..4f06cddef 100644
--- a/src/resources/map/maplayer.h
+++ b/src/resources/map/maplayer.h
@@ -23,13 +23,10 @@
#ifndef RESOURCES_MAP_MAPLAYER_H
#define RESOURCES_MAP_MAPLAYER_H
-#include "main.h"
-
#include "listeners/configlistener.h"
#include "being/actor.h"
-#include <string>
#include <vector>
class Image;
diff --git a/src/resources/map/maprowvertexes.h b/src/resources/map/maprowvertexes.h
index ffd00b33f..e586f5530 100644
--- a/src/resources/map/maprowvertexes.h
+++ b/src/resources/map/maprowvertexes.h
@@ -25,8 +25,6 @@
#include "graphicsvertexes.h"
-#include <vector>
-
#include "localconsts.h"
typedef std::vector<ImageVertexes*> MapRowImages;
diff --git a/src/resources/map/properties.h b/src/resources/map/properties.h
index e4a9ff3b9..d09a27aa3 100644
--- a/src/resources/map/properties.h
+++ b/src/resources/map/properties.h
@@ -27,7 +27,6 @@
#include <map>
#include <sstream>
-#include <string>
/**
* A class holding a set of properties.
diff --git a/src/resources/mapreader.h b/src/resources/mapreader.h
index d0e39ece4..c427a75b3 100644
--- a/src/resources/mapreader.h
+++ b/src/resources/mapreader.h
@@ -27,8 +27,6 @@
#include "resources/map/maplayer.h"
-#include <string>
-
class Map;
class MapHeights;
class MapLayer;
diff --git a/src/resources/modinfo.h b/src/resources/modinfo.h
index de13e6885..496489d28 100644
--- a/src/resources/modinfo.h
+++ b/src/resources/modinfo.h
@@ -21,8 +21,8 @@
#ifndef RESOURCES_MODINFO_H
#define RESOURCES_MODINFO_H
-#include <string>
#include <map>
+#include <string>
#include "localconsts.h"
diff --git a/src/resources/notifications.h b/src/resources/notifications.h
index 428b0da0c..78b19b7e9 100644
--- a/src/resources/notifications.h
+++ b/src/resources/notifications.h
@@ -23,8 +23,6 @@
#include "localconsts.h"
-#include "enums/resources/notifyflags.h"
-
#include "resources/notificationinfo.h"
#include "utils/gettext.h"
diff --git a/src/resources/questitem.h b/src/resources/questitem.h
index af32ec06d..49186c29a 100644
--- a/src/resources/questitem.h
+++ b/src/resources/questitem.h
@@ -24,7 +24,6 @@
#include "resources/questitemtext.h"
#include <set>
-#include <string>
#include <vector>
#include "localconsts.h"
diff --git a/src/resources/resource.h b/src/resources/resource.h
index 01bd4f276..21117b5ef 100644
--- a/src/resources/resource.h
+++ b/src/resources/resource.h
@@ -23,9 +23,6 @@
#ifndef RESOURCES_RESOURCE_H
#define RESOURCES_RESOURCE_H
-#include "main.h"
-
-#include <ctime>
#include <string>
#include "localconsts.h"
diff --git a/src/resources/resourcemanager.h b/src/resources/resourcemanager.h
index 39fc47761..c98d7957f 100644
--- a/src/resources/resourcemanager.h
+++ b/src/resources/resourcemanager.h
@@ -23,11 +23,8 @@
#ifndef RESOURCES_RESOURCEMANAGER_H
#define RESOURCES_RESOURCEMANAGER_H
-#include "main.h"
-
#include "utils/stringvector.h"
-#include <ctime>
#include <map>
#include <set>
diff --git a/src/resources/subimage.h b/src/resources/subimage.h
index 3282e1d1a..7edd546ee 100644
--- a/src/resources/subimage.h
+++ b/src/resources/subimage.h
@@ -24,7 +24,6 @@
#define RESOURCES_SUBIMAGE_H
#include "localconsts.h"
-#include "main.h"
#ifdef USE_OPENGL
diff --git a/src/resources/wallpaper.cpp b/src/resources/wallpaper.cpp
index dc251f013..8dbccf8cc 100644
--- a/src/resources/wallpaper.cpp
+++ b/src/resources/wallpaper.cpp
@@ -30,6 +30,10 @@
#include <algorithm>
+#ifdef WIN32
+#include <sys/time.h>
+#endif
+
#include "debug.h"
static bool wallpaperCompare(const WallpaperData &a, const WallpaperData &b);
diff --git a/src/settings.h b/src/settings.h
index 0721d57a9..f1c087038 100644
--- a/src/settings.h
+++ b/src/settings.h
@@ -25,7 +25,6 @@
#include "resources/map/maptype.h"
-#include <string>
#include <vector>
#include "localconsts.h"
diff --git a/src/soundmanager.h b/src/soundmanager.h
index 364a4c1a9..f91a7ba10 100644
--- a/src/soundmanager.h
+++ b/src/soundmanager.h
@@ -27,8 +27,6 @@
#include "listeners/configlistener.h"
-#include <string>
-
#include "localconsts.h"
class SDLMusic;
diff --git a/src/spellmanager.cpp b/src/spellmanager.cpp
index 90da0b06a..4b627ffde 100644
--- a/src/spellmanager.cpp
+++ b/src/spellmanager.cpp
@@ -25,6 +25,7 @@
#include "configuration.h"
#include "being/localplayer.h"
+#include "being/playerinfo.h"
#include "enums/being/attributes.h"
diff --git a/src/spellmanager.h b/src/spellmanager.h
index c8aefe2f3..b80ff77cc 100644
--- a/src/spellmanager.h
+++ b/src/spellmanager.h
@@ -23,9 +23,6 @@
#ifndef SPELLMANAGER_H
#define SPELLMANAGER_H
-#include <string>
-#include <vector>
-
#include "textcommand.h"
#include "being/being.h"
diff --git a/src/test/testlauncher.h b/src/test/testlauncher.h
index 5047dfc8b..61ba168b8 100644
--- a/src/test/testlauncher.h
+++ b/src/test/testlauncher.h
@@ -21,8 +21,6 @@
#ifndef TEST_TESTLAUNCHER_H
#define TEST_TESTLAUNCHER_H
-#include "main.h"
-
#ifdef USE_OPENGL
#include <fstream>
diff --git a/src/test/testmain.h b/src/test/testmain.h
index 20251b8b9..b4e31fb19 100644
--- a/src/test/testmain.h
+++ b/src/test/testmain.h
@@ -23,7 +23,6 @@
#include "configuration.h"
#include "logger.h"
-#include "main.h"
#include "render/renderers.h"
diff --git a/src/text.h b/src/text.h
index 8d04edbca..fbb36050b 100644
--- a/src/text.h
+++ b/src/text.h
@@ -26,8 +26,6 @@
#include "render/graphics.h"
-#include "gui/color.h"
-
#include "localconsts.h"
class Font;
diff --git a/src/touchmanager.h b/src/touchmanager.h
index 4a31654bb..6a8e74627 100644
--- a/src/touchmanager.h
+++ b/src/touchmanager.h
@@ -27,7 +27,6 @@
#include "gui/rect.h"
-#include <string>
#include <vector>
#include "localconsts.h"
diff --git a/src/utils/dtor.h b/src/utils/dtor.h
index 85bec5650..ad86253a2 100644
--- a/src/utils/dtor.h
+++ b/src/utils/dtor.h
@@ -25,7 +25,6 @@
#include <algorithm>
#include <functional>
-#include <utility>
#include "localconsts.h"
diff --git a/src/utils/files.h b/src/utils/files.h
index 1addab440..42af06874 100644
--- a/src/utils/files.h
+++ b/src/utils/files.h
@@ -23,8 +23,6 @@
#include "utils/stringvector.h"
-#include <string>
-
#include "localconsts.h"
namespace Files
diff --git a/src/utils/gettexthelper.h b/src/utils/gettexthelper.h
index f233dc236..49d45c55b 100644
--- a/src/utils/gettexthelper.h
+++ b/src/utils/gettexthelper.h
@@ -21,6 +21,10 @@
#ifndef UTILS_GETTEXTHELPER_H
#define UTILS_GETTEXTHELPER_H
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
#include "localconsts.h"
class GettextHelper final
diff --git a/src/utils/mathutils.h b/src/utils/mathutils.h
index 759049c42..69267186c 100644
--- a/src/utils/mathutils.h
+++ b/src/utils/mathutils.h
@@ -24,7 +24,6 @@
#define UTILS_MATHUTILS_H
#include <string>
-#include <cstring>
#include "localconsts.h"
diff --git a/src/utils/mutex.h b/src/utils/mutex.h
index b3549a770..7fe3ad69c 100644
--- a/src/utils/mutex.h
+++ b/src/utils/mutex.h
@@ -25,8 +25,6 @@
#include "logger.h"
-#include <SDL_thread.h>
-
/**
* A mutex provides mutual exclusion of access to certain data that is
* accessed by multiple threads.
diff --git a/src/utils/sdlhelper.h b/src/utils/sdlhelper.h
index 87c01e159..3b3069ca7 100644
--- a/src/utils/sdlhelper.h
+++ b/src/utils/sdlhelper.h
@@ -21,6 +21,8 @@
#ifndef UTILS_SDLHELPER_H
#define UTILS_SDLHELPER_H
+#include "main.h"
+
#ifdef USE_SDL2
#include "utils/sdl2helper.h"
diff --git a/src/utils/stringutils.cpp b/src/utils/stringutils.cpp
index dac6dd7f2..cde03d1b1 100644
--- a/src/utils/stringutils.cpp
+++ b/src/utils/stringutils.cpp
@@ -24,6 +24,10 @@
#include <algorithm>
+#ifdef WIN32
+#include <sys/time.h>
+#endif
+
#include "debug.h"
static size_t UTF8_MAX_SIZE = 10;
diff --git a/src/utils/translation/podict.h b/src/utils/translation/podict.h
index 395428098..991a6934c 100644
--- a/src/utils/translation/podict.h
+++ b/src/utils/translation/podict.h
@@ -21,8 +21,8 @@
#ifndef UTILS_TRANSLATION_PODICT_H
#define UTILS_TRANSLATION_PODICT_H
-#include <string>
#include <map>
+#include <string>
#include "localconsts.h"
diff --git a/src/utils/translation/poparser.h b/src/utils/translation/poparser.h
index a51dba13d..bb7816161 100644
--- a/src/utils/translation/poparser.h
+++ b/src/utils/translation/poparser.h
@@ -24,7 +24,6 @@
#include "localconsts.h"
#include <sstream>
-#include <string>
class PoDict;