diff options
139 files changed, 221 insertions, 14 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 6cd1c3a25..57eca194d 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -869,6 +869,7 @@ SET(SRCS utils/dumplibs.h utils/env.cpp utils/env.h + utils/foreach.h fs/files.cpp fs/files.h utils/fuzzer.cpp diff --git a/src/Makefile.am b/src/Makefile.am index e02aa0972..8c52ba399 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -565,6 +565,7 @@ BASE_SRC += events/actionevent.h \ utils/dumplibs.h \ utils/env.cpp \ utils/env.h \ + utils/foreach.h \ fs/files.cpp \ fs/files.h \ utils/fuzzer.cpp \ diff --git a/src/actormanager.cpp b/src/actormanager.cpp index bef691a71..66fc5485d 100644 --- a/src/actormanager.cpp +++ b/src/actormanager.cpp @@ -45,6 +45,7 @@ #include "input/inputmanager.h" #include "utils/checkutils.h" +#include "utils/foreach.h" #include "utils/mathutils.h" #include "utils/gettext.h" diff --git a/src/being/actorsprite.cpp b/src/being/actorsprite.cpp index 71970b7ff..626020ba0 100644 --- a/src/being/actorsprite.cpp +++ b/src/being/actorsprite.cpp @@ -45,6 +45,7 @@ #include "utils/checkutils.h" #include "utils/delete2.h" +#include "utils/foreach.h" #include "utils/timer.h" #include "debug.h" diff --git a/src/being/being.cpp b/src/being/being.cpp index e954a5e97..db70e2ab8 100644 --- a/src/being/being.cpp +++ b/src/being/being.cpp @@ -114,6 +114,7 @@ #include "utils/checkutils.h" #include "utils/delete2.h" +#include "utils/foreach.h" #include "utils/gettext.h" #include "utils/timer.h" diff --git a/src/being/compoundsprite.cpp b/src/being/compoundsprite.cpp index f8738b44e..2bc1d555c 100644 --- a/src/being/compoundsprite.cpp +++ b/src/being/compoundsprite.cpp @@ -36,6 +36,7 @@ #include "utils/delete2.h" #include "utils/dtor.h" +#include "utils/foreach.h" #include "utils/sdlcheckutils.h" #ifndef USE_SDL2 diff --git a/src/being/localplayer.cpp b/src/being/localplayer.cpp index ea64bb0a3..3ba0ffc70 100644 --- a/src/being/localplayer.cpp +++ b/src/being/localplayer.cpp @@ -88,6 +88,7 @@ #include "resources/sprite/animatedsprite.h" #include "utils/delete2.h" +#include "utils/foreach.h" #include "utils/gettext.h" #include "utils/timer.h" diff --git a/src/being/playerrelations.cpp b/src/being/playerrelations.cpp index 690665b15..8911ef3e7 100644 --- a/src/being/playerrelations.cpp +++ b/src/being/playerrelations.cpp @@ -31,6 +31,7 @@ #include "being/playerrelation.h" #include "utils/dtor.h" +#include "utils/foreach.h" #include "utils/gettext.h" #include "listeners/playerrelationslistener.h" diff --git a/src/configuration.cpp b/src/configuration.cpp index 9e0fd1412..f0436707d 100644 --- a/src/configuration.cpp +++ b/src/configuration.cpp @@ -33,6 +33,7 @@ #include "utils/checkutils.h" #include "utils/delete2.h" +#include "utils/foreach.h" #ifdef DEBUG_CONFIG #include "utils/stringmap.h" #endif // DEBUG_CONFIG diff --git a/src/fs/paths.cpp b/src/fs/paths.cpp index 659fc49e4..46eae158e 100644 --- a/src/fs/paths.cpp +++ b/src/fs/paths.cpp @@ -35,6 +35,8 @@ #include "fs/files.h" #endif // USE_X11 +#include "utils/foreach.h" + #ifdef __native_client__ #include <limits.h> #define realpath(N, R) strcpy(R, N) diff --git a/src/fs/virtfs/fs.cpp b/src/fs/virtfs/fs.cpp index b4847ad13..d9973d79b 100644 --- a/src/fs/virtfs/fs.cpp +++ b/src/fs/virtfs/fs.cpp @@ -33,6 +33,7 @@ #include "fs/virtfs/zipreader.h" #include "utils/checkutils.h" +#include "utils/foreach.h" #include "utils/stringutils.h" #include "debug.h" diff --git a/src/fs/virtfs/fsdir.cpp b/src/fs/virtfs/fsdir.cpp index 08879da5d..d4e9ce900 100644 --- a/src/fs/virtfs/fsdir.cpp +++ b/src/fs/virtfs/fsdir.cpp @@ -31,6 +31,7 @@ #include "fs/virtfs/list.h" #include "utils/checkutils.h" +#include "utils/foreach.h" #include "utils/stringutils.h" #include <dirent.h> diff --git a/src/fs/virtfs/fszip.cpp b/src/fs/virtfs/fszip.cpp index 43891c783..d3821b5b9 100644 --- a/src/fs/virtfs/fszip.cpp +++ b/src/fs/virtfs/fszip.cpp @@ -29,6 +29,7 @@ #include "fs/virtfs/ziplocalheader.h" #include "utils/checkutils.h" +#include "utils/foreach.h" #include "utils/stringutils.h" #include "debug.h" diff --git a/src/fs/virtfs/tools.cpp b/src/fs/virtfs/tools.cpp index 7e572ecc3..64153fc52 100644 --- a/src/fs/virtfs/tools.cpp +++ b/src/fs/virtfs/tools.cpp @@ -27,6 +27,7 @@ #include "fs/virtfs/fs.h" #include "fs/virtfs/list.h" +#include "utils/foreach.h" #include "utils/stringutils.h" #include <algorithm> diff --git a/src/fs/virtfs/virtfs1_unittest.cc b/src/fs/virtfs/virtfs1_unittest.cc index d098d5765..69d40b9b3 100644 --- a/src/fs/virtfs/virtfs1_unittest.cc +++ b/src/fs/virtfs/virtfs1_unittest.cc @@ -29,6 +29,7 @@ #include "utils/checkutils.h" #include "utils/delete2.h" +#include "utils/foreach.h" #include "utils/stringutils.h" PRAGMA48(GCC diagnostic push) diff --git a/src/fs/virtfs/virtfs_unittest.cc b/src/fs/virtfs/virtfs_unittest.cc index 3305c0264..f31157f35 100644 --- a/src/fs/virtfs/virtfs_unittest.cc +++ b/src/fs/virtfs/virtfs_unittest.cc @@ -28,6 +28,7 @@ #include "utils/checkutils.h" #include "utils/delete2.h" +#include "utils/foreach.h" #ifndef UNITTESTS_CATCH #include <algorithm> diff --git a/src/gui/focushandler.cpp b/src/gui/focushandler.cpp index 21b80d9bf..ebfc988ac 100644 --- a/src/gui/focushandler.cpp +++ b/src/gui/focushandler.cpp @@ -71,6 +71,8 @@ #include "listeners/focuslistener.h" +#include "utils/foreach.h" + #include "debug.h" FocusHandler::FocusHandler() : diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index 8063207c6..d1424b445 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -98,6 +98,7 @@ #include "resources/resourcemanager/resourcemanager.h" #include "utils/delete2.h" +#include "utils/foreach.h" #include "utils/langs.h" #include "utils/sdlsharedhelper.h" #include "utils/timer.h" diff --git a/src/gui/models/extendedlistmodel.h b/src/gui/models/extendedlistmodel.h index 981a96897..307b4af80 100644 --- a/src/gui/models/extendedlistmodel.h +++ b/src/gui/models/extendedlistmodel.h @@ -23,6 +23,8 @@ #include "gui/models/listmodel.h" +#include "utils/foreach.h" + #include "resources/image/image.h" class ExtendedListModel notfinal : public ListModel diff --git a/src/gui/models/iconsmodel.h b/src/gui/models/iconsmodel.h index 1e4709554..4028895fb 100644 --- a/src/gui/models/iconsmodel.h +++ b/src/gui/models/iconsmodel.h @@ -25,6 +25,8 @@ #include "gui/models/listmodel.h" +#include "utils/foreach.h" + #include "resources/iteminfo.h" #include "resources/db/itemdb.h" diff --git a/src/gui/models/itemsmodel.h b/src/gui/models/itemsmodel.h index 8be90ab12..a49a7cfc5 100644 --- a/src/gui/models/itemsmodel.h +++ b/src/gui/models/itemsmodel.h @@ -29,6 +29,8 @@ #include "resources/db/itemdb.h" +#include "utils/foreach.h" + #include <list> #include "localconsts.h" diff --git a/src/gui/models/shopitems.cpp b/src/gui/models/shopitems.cpp index a5c05388b..763b75390 100644 --- a/src/gui/models/shopitems.cpp +++ b/src/gui/models/shopitems.cpp @@ -25,6 +25,7 @@ #include "resources/item/shopitem.h" #include "utils/dtor.h" +#include "utils/foreach.h" #include "debug.h" diff --git a/src/gui/models/skillmodel.cpp b/src/gui/models/skillmodel.cpp index 102956897..0dcf9cedd 100644 --- a/src/gui/models/skillmodel.cpp +++ b/src/gui/models/skillmodel.cpp @@ -22,6 +22,8 @@ #include "gui/models/skillmodel.h" +#include "utils/foreach.h" + #include "resources/skill/skilldata.h" #include "debug.h" diff --git a/src/gui/models/touchactionmodel.cpp b/src/gui/models/touchactionmodel.cpp index 983fc7065..7f6b68ef7 100644 --- a/src/gui/models/touchactionmodel.cpp +++ b/src/gui/models/touchactionmodel.cpp @@ -23,6 +23,8 @@ #include "gui/models/touchactionmodel.h" +#include "utils/foreach.h" + #include <algorithm> #include "debug.h" diff --git a/src/gui/models/updatelistmodel.h b/src/gui/models/updatelistmodel.h index 8156ec145..74bd44af1 100644 --- a/src/gui/models/updatelistmodel.h +++ b/src/gui/models/updatelistmodel.h @@ -27,6 +27,8 @@ #include "net/serverinfo.h" +#include "utils/foreach.h" + #include "localconsts.h" class UpdateListModel final : public ListModel diff --git a/src/gui/palette.cpp b/src/gui/palette.cpp index 25f8084e9..c7bd7612e 100644 --- a/src/gui/palette.cpp +++ b/src/gui/palette.cpp @@ -23,6 +23,7 @@ #include "gui/palette.h" +#include "utils/foreach.h" #include "utils/timer.h" #ifndef USE_SDL2 diff --git a/src/gui/popups/beingpopup.cpp b/src/gui/popups/beingpopup.cpp index 4cafcca27..015134c9f 100644 --- a/src/gui/popups/beingpopup.cpp +++ b/src/gui/popups/beingpopup.cpp @@ -36,6 +36,7 @@ #include "resources/chatobject.h" #include "utils/gettext.h" +#include "utils/foreach.h" #include "utils/stringutils.h" #include "debug.h" diff --git a/src/gui/popups/itempopup.cpp b/src/gui/popups/itempopup.cpp index 4b35b7118..5c5dfd19e 100644 --- a/src/gui/popups/itempopup.cpp +++ b/src/gui/popups/itempopup.cpp @@ -52,6 +52,8 @@ #include "net/beinghandler.h" #include "net/net.h" +#include "utils/foreach.h" + #include "utils/translation/podict.h" #include "debug.h" diff --git a/src/gui/theme.cpp b/src/gui/theme.cpp index 9150ad1a7..1ce1b7e30 100644 --- a/src/gui/theme.cpp +++ b/src/gui/theme.cpp @@ -48,6 +48,7 @@ #include "resources/loaders/xmlloader.h" #include "utils/dtor.h" +#include "utils/foreach.h" #include "debug.h" diff --git a/src/gui/userpalette.cpp b/src/gui/userpalette.cpp index ce48fea70..79e3758ac 100644 --- a/src/gui/userpalette.cpp +++ b/src/gui/userpalette.cpp @@ -25,6 +25,7 @@ #include "configuration.h" +#include "utils/foreach.h" #include "utils/gettext.h" #include "debug.h" diff --git a/src/gui/viewport.cpp b/src/gui/viewport.cpp index db236c5c8..1e9035cee 100644 --- a/src/gui/viewport.cpp +++ b/src/gui/viewport.cpp @@ -51,6 +51,7 @@ #include "input/inputmanager.h" #include "utils/checkutils.h" +#include "utils/foreach.h" #include "resources/map/map.h" #include "resources/map/mapitem.h" diff --git a/src/gui/widgets/basiccontainer.cpp b/src/gui/widgets/basiccontainer.cpp index 771ba83f4..768733ae5 100644 --- a/src/gui/widgets/basiccontainer.cpp +++ b/src/gui/widgets/basiccontainer.cpp @@ -63,6 +63,8 @@ #include "gui/widgets/basiccontainer.h" +#include "utils/foreach.h" + #include "render/graphics.h" #include <algorithm> diff --git a/src/gui/widgets/browserbox.cpp b/src/gui/widgets/browserbox.cpp index 08db7e3bf..7687737b5 100644 --- a/src/gui/widgets/browserbox.cpp +++ b/src/gui/widgets/browserbox.cpp @@ -45,6 +45,7 @@ #include "utils/browserboxtools.h" #include "utils/checkutils.h" +#include "utils/foreach.h" #include "utils/stringutils.h" #include "utils/timer.h" #include "utils/translation/podict.h" diff --git a/src/gui/widgets/characterviewnormal.cpp b/src/gui/widgets/characterviewnormal.cpp index c92ad7477..288428d60 100644 --- a/src/gui/widgets/characterviewnormal.cpp +++ b/src/gui/widgets/characterviewnormal.cpp @@ -24,6 +24,8 @@ #include "gui/widgets/characterdisplay.h" +#include "utils/foreach.h" + #include "debug.h" CharacterViewNormal::CharacterViewNormal(CharSelectDialog *const widget, diff --git a/src/gui/widgets/characterviewsmall.cpp b/src/gui/widgets/characterviewsmall.cpp index a861e5033..81580f9e1 100644 --- a/src/gui/widgets/characterviewsmall.cpp +++ b/src/gui/widgets/characterviewsmall.cpp @@ -24,6 +24,7 @@ #include "gui/widgets/characterdisplay.h" #include "gui/widgets/label.h" +#include "utils/foreach.h" #include "utils/stringutils.h" #include "debug.h" diff --git a/src/gui/widgets/emotepage.cpp b/src/gui/widgets/emotepage.cpp index 88f4addd4..afd165219 100644 --- a/src/gui/widgets/emotepage.cpp +++ b/src/gui/widgets/emotepage.cpp @@ -29,6 +29,7 @@ #include "resources/loaders/imagesetloader.h" #include "utils/delete2.h" +#include "utils/foreach.h" #include "debug.h" diff --git a/src/gui/widgets/listbox.cpp b/src/gui/widgets/listbox.cpp index 9628c2764..0bf590f6b 100644 --- a/src/gui/widgets/listbox.cpp +++ b/src/gui/widgets/listbox.cpp @@ -77,6 +77,8 @@ #include "listeners/selectionlistener.h" +#include "utils/foreach.h" + #include "render/graphics.h" #include "debug.h" diff --git a/src/gui/widgets/selldialog.cpp b/src/gui/widgets/selldialog.cpp index 2d613fae8..68b9a039f 100644 --- a/src/gui/widgets/selldialog.cpp +++ b/src/gui/widgets/selldialog.cpp @@ -40,6 +40,7 @@ #include "gui/widgets/slider.h" #include "utils/delete2.h" +#include "utils/foreach.h" #include "utils/gettext.h" #include "utils/stringutils.h" diff --git a/src/gui/widgets/staticbrowserbox.cpp b/src/gui/widgets/staticbrowserbox.cpp index ed9e1e17d..ef51660c0 100644 --- a/src/gui/widgets/staticbrowserbox.cpp +++ b/src/gui/widgets/staticbrowserbox.cpp @@ -45,6 +45,7 @@ #include "utils/browserboxtools.h" #include "utils/checkutils.h" +#include "utils/foreach.h" #include "utils/stringutils.h" #include "utils/translation/podict.h" diff --git a/src/gui/widgets/statspage.cpp b/src/gui/widgets/statspage.cpp index eca98b1c4..65d322c05 100644 --- a/src/gui/widgets/statspage.cpp +++ b/src/gui/widgets/statspage.cpp @@ -25,6 +25,8 @@ #include "gui/widgets/attrs/derdisplay.h" +#include "utils/foreach.h" + #include "resources/db/statdb.h" #include "debug.h" diff --git a/src/gui/widgets/statspagebasic.cpp b/src/gui/widgets/statspagebasic.cpp index bdf90e14f..2996e5f12 100644 --- a/src/gui/widgets/statspagebasic.cpp +++ b/src/gui/widgets/statspagebasic.cpp @@ -28,6 +28,7 @@ #include "gui/widgets/attrs/changedisplay.h" #include "utils/gettext.h" +#include "utils/foreach.h" #include "utils/stringutils.h" #include "resources/db/statdb.h" diff --git a/src/gui/widgets/tabbedarea.cpp b/src/gui/widgets/tabbedarea.cpp index 95ea305d6..f63772907 100644 --- a/src/gui/widgets/tabbedarea.cpp +++ b/src/gui/widgets/tabbedarea.cpp @@ -72,6 +72,7 @@ #include "gui/widgets/tabs/tab.h" #include "utils/delete2.h" +#include "utils/foreach.h" #include "debug.h" diff --git a/src/gui/widgets/tabs/setup_mods.cpp b/src/gui/widgets/tabs/setup_mods.cpp index 7ee8f2f34..c3ca23245 100644 --- a/src/gui/widgets/tabs/setup_mods.cpp +++ b/src/gui/widgets/tabs/setup_mods.cpp @@ -31,6 +31,7 @@ #include "resources/db/moddb.h" +#include "utils/foreach.h" #include "utils/gettext.h" #include "debug.h" diff --git a/src/gui/widgets/tabs/socialfriendstab.h b/src/gui/widgets/tabs/socialfriendstab.h index 5bd13220b..017f465c7 100644 --- a/src/gui/widgets/tabs/socialfriendstab.h +++ b/src/gui/widgets/tabs/socialfriendstab.h @@ -34,6 +34,7 @@ #include "gui/widgets/tabs/socialfriendsfunctor.h" #include "utils/delete2.h" +#include "utils/foreach.h" #include "utils/gettext.h" #include "localconsts.h" diff --git a/src/gui/widgets/tabs/socialguildtab.h b/src/gui/widgets/tabs/socialguildtab.h index 775e22c6f..8652a54fe 100644 --- a/src/gui/widgets/tabs/socialguildtab.h +++ b/src/gui/widgets/tabs/socialguildtab.h @@ -27,6 +27,7 @@ #include "being/localplayer.h" #include "utils/delete2.h" +#include "utils/foreach.h" #include "utils/gettext.h" #include "utils/stringutils.h" diff --git a/src/gui/widgets/tabs/socialguildtab2.h b/src/gui/widgets/tabs/socialguildtab2.h index f26e99421..ff8544232 100644 --- a/src/gui/widgets/tabs/socialguildtab2.h +++ b/src/gui/widgets/tabs/socialguildtab2.h @@ -29,6 +29,7 @@ #include "being/localplayer.h" #include "utils/delete2.h" +#include "utils/foreach.h" #include "utils/gettext.h" #include "utils/stringutils.h" diff --git a/src/gui/widgets/tabs/socialpartytab.h b/src/gui/widgets/tabs/socialpartytab.h index b24f8f411..d7f22c1f7 100644 --- a/src/gui/widgets/tabs/socialpartytab.h +++ b/src/gui/widgets/tabs/socialpartytab.h @@ -31,6 +31,7 @@ #include "net/partyhandler.h" #include "utils/delete2.h" +#include "utils/foreach.h" #include "utils/gettext.h" #include "utils/stringutils.h" diff --git a/src/gui/widgets/tabstrip.cpp b/src/gui/widgets/tabstrip.cpp index 2a8299ea1..6b3dbe417 100644 --- a/src/gui/widgets/tabstrip.cpp +++ b/src/gui/widgets/tabstrip.cpp @@ -22,6 +22,8 @@ #include "gui/widgets/button.h" +#include "utils/foreach.h" + #include "debug.h" TabStrip::TabStrip(const Widget2 *const widget, diff --git a/src/gui/widgets/vertcontainer.cpp b/src/gui/widgets/vertcontainer.cpp index e15dc2481..714daae23 100644 --- a/src/gui/widgets/vertcontainer.cpp +++ b/src/gui/widgets/vertcontainer.cpp @@ -21,6 +21,8 @@ #include "gui/widgets/vertcontainer.h" +#include "utils/foreach.h" + #include "debug.h" VertContainer::VertContainer(const Widget2 *const widget, diff --git a/src/gui/widgets/widget.cpp b/src/gui/widgets/widget.cpp index 260272936..8b49fddfd 100644 --- a/src/gui/widgets/widget.cpp +++ b/src/gui/widgets/widget.cpp @@ -73,6 +73,8 @@ #include "listeners/widgetdeathlistener.h" #include "listeners/widgetlistener.h" +#include "utils/foreach.h" + #include "debug.h" Font* Widget::mGlobalFont = nullptr; diff --git a/src/gui/widgets/windowcontainer.cpp b/src/gui/widgets/windowcontainer.cpp index 38efd1a77..e054e27ad 100644 --- a/src/gui/widgets/windowcontainer.cpp +++ b/src/gui/widgets/windowcontainer.cpp @@ -25,6 +25,7 @@ #include "gui/widgets/window.h" #include "utils/dtor.h" +#include "utils/foreach.h" #include "debug.h" diff --git a/src/gui/windowmenu.cpp b/src/gui/windowmenu.cpp index 41640a458..73a40531a 100644 --- a/src/gui/windowmenu.cpp +++ b/src/gui/windowmenu.cpp @@ -39,6 +39,7 @@ #include "gui/widgets/button.h" #include "utils/dtor.h" +#include "utils/foreach.h" #include "utils/gettext.h" #include "debug.h" diff --git a/src/gui/windows/buydialog.cpp b/src/gui/windows/buydialog.cpp index edac6293d..b2249f66c 100644 --- a/src/gui/windows/buydialog.cpp +++ b/src/gui/windows/buydialog.cpp @@ -59,6 +59,7 @@ #include "resources/db/unitsdb.h" #include "utils/delete2.h" +#include "utils/foreach.h" #include <algorithm> diff --git a/src/gui/windows/buyselldialog.cpp b/src/gui/windows/buyselldialog.cpp index 009a24839..26cf2af17 100644 --- a/src/gui/windows/buyselldialog.cpp +++ b/src/gui/windows/buyselldialog.cpp @@ -31,6 +31,7 @@ #include "gui/widgets/button.h" +#include "utils/foreach.h" #include "utils/gettext.h" #include "debug.h" diff --git a/src/gui/windows/charselectdialog.cpp b/src/gui/windows/charselectdialog.cpp index cd801f61d..00fafdf1f 100644 --- a/src/gui/windows/charselectdialog.cpp +++ b/src/gui/windows/charselectdialog.cpp @@ -48,6 +48,8 @@ #include "net/net.h" #include "net/serverfeatures.h" +#include "utils/foreach.h" + #include "resources/db/unitsdb.h" #include "debug.h" diff --git a/src/gui/windows/chatwindow.cpp b/src/gui/windows/chatwindow.cpp index 80c24af0a..eea0905cf 100644 --- a/src/gui/windows/chatwindow.cpp +++ b/src/gui/windows/chatwindow.cpp @@ -75,6 +75,7 @@ #include "utils/copynpaste.h" #include "utils/delete2.h" +#include "utils/foreach.h" #include "utils/translation/podict.h" diff --git a/src/gui/windows/editdialog.cpp b/src/gui/windows/editdialog.cpp index be62c13b5..e14b96191 100644 --- a/src/gui/windows/editdialog.cpp +++ b/src/gui/windows/editdialog.cpp @@ -24,6 +24,7 @@ #include "gui/widgets/button.h" +#include "utils/foreach.h" #include "utils/gettext.h" #include "debug.h" diff --git a/src/gui/windows/emotewindow.cpp b/src/gui/windows/emotewindow.cpp index 0125177b1..981fb0b11 100644 --- a/src/gui/windows/emotewindow.cpp +++ b/src/gui/windows/emotewindow.cpp @@ -32,6 +32,7 @@ #include "gui/widgets/tabbedarea.h" #include "utils/delete2.h" +#include "utils/foreach.h" #include "utils/gettext.h" #include "utils/translation/podict.h" diff --git a/src/gui/windows/equipmentwindow.cpp b/src/gui/windows/equipmentwindow.cpp index d77302035..1a95f4eee 100644 --- a/src/gui/windows/equipmentwindow.cpp +++ b/src/gui/windows/equipmentwindow.cpp @@ -48,6 +48,7 @@ #include "utils/checkutils.h" #include "utils/delete2.h" #include "utils/dtor.h" +#include "utils/foreach.h" #include "utils/gettext.h" #include "net/inventoryhandler.h" diff --git a/src/gui/windows/helpwindow.cpp b/src/gui/windows/helpwindow.cpp index ce121a98f..cd6e37941 100644 --- a/src/gui/windows/helpwindow.cpp +++ b/src/gui/windows/helpwindow.cpp @@ -41,6 +41,7 @@ #include "input/inputmanager.h" +#include "utils/foreach.h" #include "utils/gettext.h" #include "utils/process.h" diff --git a/src/gui/windows/minimap.cpp b/src/gui/windows/minimap.cpp index 869fede55..95d606618 100644 --- a/src/gui/windows/minimap.cpp +++ b/src/gui/windows/minimap.cpp @@ -52,6 +52,7 @@ #include "resources/loaders/imageloader.h" #include "utils/gettext.h" +#include "utils/foreach.h" #include "utils/sdlcheckutils.h" #include "debug.h" diff --git a/src/gui/windows/ministatuswindow.cpp b/src/gui/windows/ministatuswindow.cpp index b3e63c226..312dd488a 100644 --- a/src/gui/windows/ministatuswindow.cpp +++ b/src/gui/windows/ministatuswindow.cpp @@ -47,6 +47,7 @@ #include "utils/delete2.h" #include "utils/dtor.h" +#include "utils/foreach.h" #include "utils/gettext.h" #include "debug.h" diff --git a/src/gui/windows/questswindow.cpp b/src/gui/windows/questswindow.cpp index 615c23d64..af9f19369 100644 --- a/src/gui/windows/questswindow.cpp +++ b/src/gui/windows/questswindow.cpp @@ -46,6 +46,7 @@ #include "gui/widgets/staticbrowserbox.h" #include "utils/delete2.h" +#include "utils/foreach.h" #include "utils/gettext.h" #include "resources/questeffect.h" diff --git a/src/gui/windows/serverdialog.cpp b/src/gui/windows/serverdialog.cpp index ee5300d7d..6093b67b4 100644 --- a/src/gui/windows/serverdialog.cpp +++ b/src/gui/windows/serverdialog.cpp @@ -46,6 +46,7 @@ #include "gui/widgets/scrollarea.h" #include "utils/delete2.h" +#include "utils/foreach.h" #include "utils/langs.h" #include "debug.h" diff --git a/src/gui/windows/serverinfowindow.cpp b/src/gui/windows/serverinfowindow.cpp index dcede8063..d1eb8cb44 100644 --- a/src/gui/windows/serverinfowindow.cpp +++ b/src/gui/windows/serverinfowindow.cpp @@ -28,6 +28,7 @@ #include "gui/widgets/scrollarea.h" #include "gui/widgets/staticbrowserbox.h" +#include "utils/foreach.h" #include "utils/gettext.h" #include "utils/process.h" diff --git a/src/gui/windows/setupwindow.cpp b/src/gui/windows/setupwindow.cpp index bf5272d24..40354f62a 100644 --- a/src/gui/windows/setupwindow.cpp +++ b/src/gui/windows/setupwindow.cpp @@ -55,6 +55,7 @@ #include "utils/delete2.h" #include "utils/dtor.h" +#include "utils/foreach.h" #include "utils/gettext.h" #include "debug.h" diff --git a/src/gui/windows/shopwindow.cpp b/src/gui/windows/shopwindow.cpp index 54656a66b..9ff15b024 100644 --- a/src/gui/windows/shopwindow.cpp +++ b/src/gui/windows/shopwindow.cpp @@ -77,6 +77,7 @@ #include "utils/checkutils.h" #include "utils/delete2.h" +#include "utils/foreach.h" #include "utils/gettext.h" #ifdef TMWA_SUPPORT diff --git a/src/gui/windows/shortcutwindow.cpp b/src/gui/windows/shortcutwindow.cpp index ffac3d320..61a7e6b45 100644 --- a/src/gui/windows/shortcutwindow.cpp +++ b/src/gui/windows/shortcutwindow.cpp @@ -36,6 +36,7 @@ #include "gui/widgets/tabs/shortcuttab.h" #include "utils/delete2.h" +#include "utils/foreach.h" #include "debug.h" diff --git a/src/gui/windows/statuswindow.cpp b/src/gui/windows/statuswindow.cpp index 3ec369b93..9fe112f78 100644 --- a/src/gui/windows/statuswindow.cpp +++ b/src/gui/windows/statuswindow.cpp @@ -55,6 +55,7 @@ #include "utils/delete2.h" #include "utils/dtor.h" +#include "utils/foreach.h" #include "utils/gettext.h" #include "debug.h" diff --git a/src/gui/windows/updaterwindow.cpp b/src/gui/windows/updaterwindow.cpp index 86045c62d..db7d48c36 100644 --- a/src/gui/windows/updaterwindow.cpp +++ b/src/gui/windows/updaterwindow.cpp @@ -50,6 +50,7 @@ #include "resources/db/moddb.h" #include "utils/delete2.h" +#include "utils/foreach.h" #include "utils/gettext.h" #include <sys/stat.h> diff --git a/src/gui/windows/whoisonline.cpp b/src/gui/windows/whoisonline.cpp index 697e3a0d5..3f253abc2 100644 --- a/src/gui/windows/whoisonline.cpp +++ b/src/gui/windows/whoisonline.cpp @@ -55,6 +55,7 @@ #include "net/playerhandler.h" #include "net/serverfeatures.h" +#include "utils/foreach.h" #include "utils/gettext.h" #include "utils/sdlhelper.h" diff --git a/src/input/joystick.cpp b/src/input/joystick.cpp index 4ad887461..5e0392c8e 100644 --- a/src/input/joystick.cpp +++ b/src/input/joystick.cpp @@ -29,6 +29,7 @@ #include "input/inputmanager.h" +#include "utils/foreach.h" #include "utils/timer.h" PRAGMA48(GCC diagnostic push) diff --git a/src/input/keyboardconfig.cpp b/src/input/keyboardconfig.cpp index 794d4d377..1ce317db7 100644 --- a/src/input/keyboardconfig.cpp +++ b/src/input/keyboardconfig.cpp @@ -26,6 +26,7 @@ #include "input/inputmanager.h" +#include "utils/foreach.h" #include "utils/gettext.h" #include "debug.h" diff --git a/src/input/touch/touchmanager.cpp b/src/input/touch/touchmanager.cpp index e9c378ef7..df98e667f 100644 --- a/src/input/touch/touchmanager.cpp +++ b/src/input/touch/touchmanager.cpp @@ -34,6 +34,7 @@ #include "input/touch/touchactions.h" #include "utils/delete2.h" +#include "utils/foreach.h" #include "render/graphics.h" diff --git a/src/integrity_unittest.cc b/src/integrity_unittest.cc index a4cbc7c48..130716ce6 100644 --- a/src/integrity_unittest.cc +++ b/src/integrity_unittest.cc @@ -48,6 +48,7 @@ #include "utils/env.h" #include "utils/delete2.h" +#include "utils/foreach.h" PRAGMA48(GCC diagnostic push) PRAGMA48(GCC diagnostic ignored "-Wshadow") diff --git a/src/listeners/arrowslistener.cpp b/src/listeners/arrowslistener.cpp index 4a9074b74..9ae92b93d 100644 --- a/src/listeners/arrowslistener.cpp +++ b/src/listeners/arrowslistener.cpp @@ -20,6 +20,8 @@ #include "listeners/arrowslistener.h" +#include "utils/foreach.h" + #include "debug.h" defineListener(ArrowsListener) diff --git a/src/listeners/attributelistener.cpp b/src/listeners/attributelistener.cpp index dd6fc145c..0e12052e9 100644 --- a/src/listeners/attributelistener.cpp +++ b/src/listeners/attributelistener.cpp @@ -20,6 +20,8 @@ #include "listeners/attributelistener.h" +#include "utils/foreach.h" + #include "debug.h" defineListener(AttributeListener) diff --git a/src/listeners/banklistener.cpp b/src/listeners/banklistener.cpp index c308ece27..e3cac0067 100644 --- a/src/listeners/banklistener.cpp +++ b/src/listeners/banklistener.cpp @@ -20,6 +20,8 @@ #include "listeners/banklistener.h" +#include "utils/foreach.h" + #include "debug.h" defineListener(BankListener) diff --git a/src/listeners/buyingstoremodelistener.cpp b/src/listeners/buyingstoremodelistener.cpp index 8c17188f5..b6723f5c5 100644 --- a/src/listeners/buyingstoremodelistener.cpp +++ b/src/listeners/buyingstoremodelistener.cpp @@ -20,6 +20,8 @@ #include "listeners/buyingstoremodelistener.h" +#include "utils/foreach.h" + #include "debug.h" defineListener(BuyingStoreModeListener) diff --git a/src/listeners/buyingstoreslotslistener.cpp b/src/listeners/buyingstoreslotslistener.cpp index e62ee1d4a..fc7c307a4 100644 --- a/src/listeners/buyingstoreslotslistener.cpp +++ b/src/listeners/buyingstoreslotslistener.cpp @@ -20,6 +20,8 @@ #include "listeners/buyingstoreslotslistener.h" +#include "utils/foreach.h" + #include "debug.h" defineListener(BuyingStoreSlotsListener) diff --git a/src/listeners/debugmessagelistener.cpp b/src/listeners/debugmessagelistener.cpp index 92e1709b8..362c58a67 100644 --- a/src/listeners/debugmessagelistener.cpp +++ b/src/listeners/debugmessagelistener.cpp @@ -20,6 +20,8 @@ #include "listeners/debugmessagelistener.h" +#include "utils/foreach.h" + #include "debug.h" defineListener(DebugMessageListener) diff --git a/src/listeners/gamemodifierlistener.cpp b/src/listeners/gamemodifierlistener.cpp index 82f7ad5bb..c914c2da3 100644 --- a/src/listeners/gamemodifierlistener.cpp +++ b/src/listeners/gamemodifierlistener.cpp @@ -20,6 +20,8 @@ #include "listeners/gamemodifierlistener.h" +#include "utils/foreach.h" + #include "debug.h" defineListener(GameModifierListener) diff --git a/src/listeners/playerdeathlistener.cpp b/src/listeners/playerdeathlistener.cpp index 2b0b86c77..edd53e009 100644 --- a/src/listeners/playerdeathlistener.cpp +++ b/src/listeners/playerdeathlistener.cpp @@ -20,6 +20,8 @@ #include "listeners/playerdeathlistener.h" +#include "utils/foreach.h" + #include "debug.h" defineListener(PlayerDeathListener) diff --git a/src/listeners/statlistener.cpp b/src/listeners/statlistener.cpp index 577ba0cc8..8aff6b6a8 100644 --- a/src/listeners/statlistener.cpp +++ b/src/listeners/statlistener.cpp @@ -20,6 +20,8 @@ #include "listeners/statlistener.h" +#include "utils/foreach.h" + #include "debug.h" defineListener(StatListener) diff --git a/src/listeners/updatestatuslistener.cpp b/src/listeners/updatestatuslistener.cpp index e1a819e23..fbc044cf5 100644 --- a/src/listeners/updatestatuslistener.cpp +++ b/src/listeners/updatestatuslistener.cpp @@ -20,6 +20,8 @@ #include "listeners/updatestatuslistener.h" +#include "utils/foreach.h" + #include "debug.h" defineListener(UpdateStatusListener) diff --git a/src/listeners/vendingmodelistener.cpp b/src/listeners/vendingmodelistener.cpp index b0bd687f8..4e9b4d3d0 100644 --- a/src/listeners/vendingmodelistener.cpp +++ b/src/listeners/vendingmodelistener.cpp @@ -20,6 +20,8 @@ #include "listeners/vendingmodelistener.h" +#include "utils/foreach.h" + #include "debug.h" defineListener(VendingModeListener) diff --git a/src/listeners/vendingslotslistener.cpp b/src/listeners/vendingslotslistener.cpp index c89c865b4..1618480ee 100644 --- a/src/listeners/vendingslotslistener.cpp +++ b/src/listeners/vendingslotslistener.cpp @@ -20,6 +20,8 @@ #include "listeners/vendingslotslistener.h" +#include "utils/foreach.h" + #include "debug.h" defineListener(VendingSlotsListener) diff --git a/src/localconsts.h b/src/localconsts.h index bbc5f632d..e6b455cf6 100644 --- a/src/localconsts.h +++ b/src/localconsts.h @@ -301,18 +301,6 @@ #define notfinal -#define FOR_EACH(type, iter, array) for (type iter = array.begin(), \ - iter##_fend = array.end(); iter != iter##_fend; ++ iter) - -#define FOR_EACHR(type, iter, array) for (type iter = array.rbegin(), \ - iter##_fend = array.rend(); iter != iter##_fend; ++ iter) - -#define FOR_EACHP(type, iter, array) for (type iter = array->begin(), \ - iter##_fend = array->end(); iter != iter##_fend; ++ iter) - -#define FOR_EACH_SAFE(type, iter, array) for (type iter = array.begin(); \ - iter != array.end(); ++ iter) - #ifdef ENABLE_CHECKPLUGIN #define A_NONNULLPOINTER __attribute__((nonnullpointer)) #else // ENABLE_CHECKPLUGIN diff --git a/src/logger.cpp b/src/logger.cpp index 9e8e1be3e..69b37fc51 100644 --- a/src/logger.cpp +++ b/src/logger.cpp @@ -26,6 +26,7 @@ #include "listeners/debugmessagelistener.h" +#include "utils/foreach.h" #include "utils/stringutils.h" #include <iostream> diff --git a/src/net/ea/beingrecv.cpp b/src/net/ea/beingrecv.cpp index b6e848bc5..fcb3871f8 100644 --- a/src/net/ea/beingrecv.cpp +++ b/src/net/ea/beingrecv.cpp @@ -40,6 +40,8 @@ #include "gui/windows/socialwindow.h" +#include "utils/foreach.h" + #include "resources/map/map.h" #include "net/messagein.h" diff --git a/src/net/ea/inventoryrecv.cpp b/src/net/ea/inventoryrecv.cpp index 0ccde29d4..3e8c239e9 100644 --- a/src/net/ea/inventoryrecv.cpp +++ b/src/net/ea/inventoryrecv.cpp @@ -38,6 +38,7 @@ #include "net/ea/equipbackend.h" #include "utils/delete2.h" +#include "utils/foreach.h" #include "listeners/arrowslistener.h" diff --git a/src/net/eathena/beingrecv.cpp b/src/net/eathena/beingrecv.cpp index d906ce835..d99fa241e 100644 --- a/src/net/eathena/beingrecv.cpp +++ b/src/net/eathena/beingrecv.cpp @@ -62,6 +62,7 @@ #include "resources/map/map.h" #include "utils/checkutils.h" +#include "utils/foreach.h" #include "utils/timer.h" #include "debug.h" diff --git a/src/net/eathena/buyingstorehandler.cpp b/src/net/eathena/buyingstorehandler.cpp index 32ec084c9..d342be0b8 100644 --- a/src/net/eathena/buyingstorehandler.cpp +++ b/src/net/eathena/buyingstorehandler.cpp @@ -28,6 +28,8 @@ #include "net/eathena/messageout.h" #include "net/eathena/protocolout.h" +#include "utils/foreach.h" + #include "resources/item/shopitem.h" #include "debug.h" diff --git a/src/net/eathena/cashshophandler.cpp b/src/net/eathena/cashshophandler.cpp index 40af5324e..105a45141 100644 --- a/src/net/eathena/cashshophandler.cpp +++ b/src/net/eathena/cashshophandler.cpp @@ -24,6 +24,8 @@ #include "net/eathena/messageout.h" #include "net/eathena/protocolout.h" +#include "utils/foreach.h" + #include "resources/item/shopitem.h" #include "debug.h" diff --git a/src/net/eathena/inventoryhandler.cpp b/src/net/eathena/inventoryhandler.cpp index 7044b1611..74b0777e0 100644 --- a/src/net/eathena/inventoryhandler.cpp +++ b/src/net/eathena/inventoryhandler.cpp @@ -31,6 +31,8 @@ #include "net/eathena/messageout.h" #include "net/eathena/protocolout.h" +#include "utils/foreach.h" + #include "resources/item/item.h" #include "debug.h" diff --git a/src/net/eathena/inventoryrecv.cpp b/src/net/eathena/inventoryrecv.cpp index 7b6368dad..0b411d4ba 100644 --- a/src/net/eathena/inventoryrecv.cpp +++ b/src/net/eathena/inventoryrecv.cpp @@ -55,6 +55,7 @@ #include "resources/iteminfo.h" #include "utils/gettext.h" +#include "utils/foreach.h" #include "utils/stringutils.h" #include "debug.h" diff --git a/src/net/eathena/loginrecv.cpp b/src/net/eathena/loginrecv.cpp index 13818c9cf..38ee44e28 100644 --- a/src/net/eathena/loginrecv.cpp +++ b/src/net/eathena/loginrecv.cpp @@ -40,6 +40,7 @@ #include "net/eathena/updateprotocol.h" #include "utils/gettext.h" +#include "utils/foreach.h" #include "debug.h" diff --git a/src/net/eathena/markethandler.cpp b/src/net/eathena/markethandler.cpp index a9a884ad3..bcba57e81 100644 --- a/src/net/eathena/markethandler.cpp +++ b/src/net/eathena/markethandler.cpp @@ -24,6 +24,8 @@ #include "net/eathena/messageout.h" #include "net/eathena/protocolout.h" +#include "utils/foreach.h" + #include "resources/item/shopitem.h" #include "debug.h" diff --git a/src/net/eathena/network.cpp b/src/net/eathena/network.cpp index 8b3504e4e..4c6194fdd 100644 --- a/src/net/eathena/network.cpp +++ b/src/net/eathena/network.cpp @@ -80,6 +80,7 @@ #include "resources/db/networkdb.h" #include "utils/checkutils.h" +#include "utils/foreach.h" #include "debug.h" diff --git a/src/net/eathena/npchandler.cpp b/src/net/eathena/npchandler.cpp index 38a54a6fd..4e8d179f0 100644 --- a/src/net/eathena/npchandler.cpp +++ b/src/net/eathena/npchandler.cpp @@ -39,6 +39,8 @@ #include "net/eathena/protocolout.h" +#include "utils/foreach.h" + #include "resources/item/shopitem.h" #include "debug.h" diff --git a/src/net/eathena/partyrecv.cpp b/src/net/eathena/partyrecv.cpp index e820a0eac..2f6482ac1 100644 --- a/src/net/eathena/partyrecv.cpp +++ b/src/net/eathena/partyrecv.cpp @@ -38,6 +38,7 @@ #include "net/ea/partyrecv.h" #include "utils/checkutils.h" +#include "utils/foreach.h" #include "debug.h" diff --git a/src/net/eathena/vendinghandler.cpp b/src/net/eathena/vendinghandler.cpp index b95b162b4..728e8fb7e 100644 --- a/src/net/eathena/vendinghandler.cpp +++ b/src/net/eathena/vendinghandler.cpp @@ -29,6 +29,8 @@ #include "net/eathena/protocolout.h" #include "net/eathena/vendingrecv.h" +#include "utils/foreach.h" + #include "resources/item/shopitem.h" #include "debug.h" diff --git a/src/net/ipc.cpp b/src/net/ipc.cpp index 19eace240..d7ffa1ae9 100644 --- a/src/net/ipc.cpp +++ b/src/net/ipc.cpp @@ -27,6 +27,7 @@ #endif // DYECMD #include "utils/delete2.h" +#include "utils/foreach.h" #include "utils/sdlhelper.h" #include "utils/stringutils.h" diff --git a/src/net/tmwa/partyrecv.cpp b/src/net/tmwa/partyrecv.cpp index 78c012652..819b891d3 100644 --- a/src/net/tmwa/partyrecv.cpp +++ b/src/net/tmwa/partyrecv.cpp @@ -38,6 +38,8 @@ #include "net/ea/partyrecv.h" +#include "utils/foreach.h" + #include "debug.h" namespace TmwAthena diff --git a/src/particle/particle.cpp b/src/particle/particle.cpp index 89ac1aa7d..92c8a63fe 100644 --- a/src/particle/particle.cpp +++ b/src/particle/particle.cpp @@ -42,6 +42,7 @@ #include "utils/delete2.h" #include "utils/dtor.h" +#include "utils/foreach.h" #include "utils/mathutils.h" #include "utils/mrand.h" diff --git a/src/particle/particleemitter.cpp b/src/particle/particleemitter.cpp index c200d787d..b13b03ca0 100644 --- a/src/particle/particleemitter.cpp +++ b/src/particle/particleemitter.cpp @@ -29,6 +29,8 @@ #include "particle/animationparticle.h" #include "particle/rotationalparticle.h" +#include "utils/foreach.h" + #include "resources/imageset.h" #include "resources/dye/dye.h" diff --git a/src/particle/particlelist.cpp b/src/particle/particlelist.cpp index d854a1da2..26194453b 100644 --- a/src/particle/particlelist.cpp +++ b/src/particle/particlelist.cpp @@ -22,6 +22,8 @@ #include "particle/particlelist.h" +#include "utils/foreach.h" + #include "particle/particle.h" #include "debug.h" diff --git a/src/render/mobileopengl2graphics.cpp b/src/render/mobileopengl2graphics.cpp index 620bc923a..1b532e48d 100644 --- a/src/render/mobileopengl2graphics.cpp +++ b/src/render/mobileopengl2graphics.cpp @@ -41,6 +41,7 @@ #include "resources/image/image.h" #include "utils/delete2.h" +#include "utils/foreach.h" #include "utils/sdlcheckutils.h" #include "debug.h" diff --git a/src/render/modernopenglgraphics.cpp b/src/render/modernopenglgraphics.cpp index 89ca10fd4..f034cdc65 100644 --- a/src/render/modernopenglgraphics.cpp +++ b/src/render/modernopenglgraphics.cpp @@ -42,6 +42,7 @@ #include "resources/image/image.h" #include "utils/delete2.h" +#include "utils/foreach.h" #include "utils/sdlcheckutils.h" #include "utils/sdlhelper.h" diff --git a/src/resources/action.cpp b/src/resources/action.cpp index c059624c5..9b3dab3f4 100644 --- a/src/resources/action.cpp +++ b/src/resources/action.cpp @@ -25,6 +25,7 @@ #include "resources/animation/animation.h" #include "utils/dtor.h" +#include "utils/foreach.h" #include "debug.h" diff --git a/src/resources/animation/animation.cpp b/src/resources/animation/animation.cpp index 4f83161de..3b066da15 100644 --- a/src/resources/animation/animation.cpp +++ b/src/resources/animation/animation.cpp @@ -22,6 +22,8 @@ #include "resources/animation/animation.h" +#include "utils/foreach.h" + #include "debug.h" Animation::Animation() noexcept2 : diff --git a/src/resources/atlas/textureatlas.h b/src/resources/atlas/textureatlas.h index f02eb6f35..a1fe4d145 100644 --- a/src/resources/atlas/textureatlas.h +++ b/src/resources/atlas/textureatlas.h @@ -23,6 +23,7 @@ #ifdef USE_OPENGL +#include "utils/foreach.h" #include "utils/stringvector.h" #include "resources/atlas/atlasitem.h" diff --git a/src/resources/beingcommon.h b/src/resources/beingcommon.h index 4299d7707..c79e8a76c 100644 --- a/src/resources/beingcommon.h +++ b/src/resources/beingcommon.h @@ -23,10 +23,12 @@ #include "fs/virtfs/tools.h" +#include "utils/foreach.h" #include "utils/xml.h" #include "localconsts.h" +UTILS_FOREACH_H UTILS_VIRTFSTOOLS_H class BeingInfo; diff --git a/src/resources/db/badgesdb.cpp b/src/resources/db/badgesdb.cpp index 48034e3a3..873149f41 100644 --- a/src/resources/db/badgesdb.cpp +++ b/src/resources/db/badgesdb.cpp @@ -24,6 +24,7 @@ #include "fs/virtfs/tools.h" +#include "utils/foreach.h" #include "utils/xmlutils.h" #include "debug.h" diff --git a/src/resources/db/colordb.cpp b/src/resources/db/colordb.cpp index f4cd0921b..92d06ce40 100644 --- a/src/resources/db/colordb.cpp +++ b/src/resources/db/colordb.cpp @@ -24,6 +24,7 @@ #include "configuration.h" #include "utils/checkutils.h" +#include "utils/foreach.h" #include "resources/beingcommon.h" diff --git a/src/resources/db/emotedb.cpp b/src/resources/db/emotedb.cpp index 72b7f0092..38da40f07 100644 --- a/src/resources/db/emotedb.cpp +++ b/src/resources/db/emotedb.cpp @@ -26,6 +26,7 @@ #include "configuration.h" #include "utils/checkutils.h" +#include "utils/foreach.h" #include "resources/beingcommon.h" #include "resources/emoteinfo.h" diff --git a/src/resources/db/horsedb.cpp b/src/resources/db/horsedb.cpp index c9f363246..0339339ed 100644 --- a/src/resources/db/horsedb.cpp +++ b/src/resources/db/horsedb.cpp @@ -30,6 +30,7 @@ #include "utils/checkutils.h" #include "utils/dtor.h" +#include "utils/foreach.h" #include "debug.h" diff --git a/src/resources/db/itemdb.cpp b/src/resources/db/itemdb.cpp index 542fa6789..440b69d16 100644 --- a/src/resources/db/itemdb.cpp +++ b/src/resources/db/itemdb.cpp @@ -44,6 +44,7 @@ #include "utils/checkutils.h" #include "utils/delete2.h" #include "utils/dtor.h" +#include "utils/foreach.h" #include "utils/stringmap.h" #include "utils/translation/podict.h" diff --git a/src/resources/db/itemoptiondb.cpp b/src/resources/db/itemoptiondb.cpp index bd78f95c5..80e149b6f 100644 --- a/src/resources/db/itemoptiondb.cpp +++ b/src/resources/db/itemoptiondb.cpp @@ -23,6 +23,7 @@ #include "configuration.h" #include "utils/checkutils.h" +#include "utils/foreach.h" #include "resources/beingcommon.h" diff --git a/src/resources/db/mapdb.cpp b/src/resources/db/mapdb.cpp index 7ae90815e..6b9a66f3b 100644 --- a/src/resources/db/mapdb.cpp +++ b/src/resources/db/mapdb.cpp @@ -24,6 +24,8 @@ #include "configuration.h" #include "logger.h" +#include "utils/foreach.h" + #include "resources/beingcommon.h" #include "debug.h" diff --git a/src/resources/db/npcdialogdb.cpp b/src/resources/db/npcdialogdb.cpp index 0e4ab5ffc..bdf2c7841 100644 --- a/src/resources/db/npcdialogdb.cpp +++ b/src/resources/db/npcdialogdb.cpp @@ -27,6 +27,7 @@ #include "utils/checkutils.h" #include "utils/dtor.h" +#include "utils/foreach.h" #include "debug.h" diff --git a/src/resources/delayedmanager.cpp b/src/resources/delayedmanager.cpp index 73d31e1e8..1296095bb 100644 --- a/src/resources/delayedmanager.cpp +++ b/src/resources/delayedmanager.cpp @@ -22,6 +22,7 @@ #include "resources/sprite/animationdelayload.h" +#include "utils/foreach.h" #include "utils/timer.h" #include "debug.h" diff --git a/src/resources/dye/dyepalette.cpp b/src/resources/dye/dyepalette.cpp index 255175ee1..0e0784d63 100644 --- a/src/resources/dye/dyepalette.cpp +++ b/src/resources/dye/dyepalette.cpp @@ -44,6 +44,7 @@ PRAGMA48(GCC diagnostic pop) #ifdef SIMD_SUPPORTED #include "utils/cpu.h" #endif // SIMD_SUPPORTED +#include "utils/foreach.h" #include "debug.h" diff --git a/src/resources/inventory/inventory.cpp b/src/resources/inventory/inventory.cpp index df7104d03..b7aa39e91 100644 --- a/src/resources/inventory/inventory.cpp +++ b/src/resources/inventory/inventory.cpp @@ -34,6 +34,7 @@ #include "utils/checkutils.h" #include "utils/delete2.h" +#include "utils/foreach.h" #include "utils/gettext.h" #include "utils/stringutils.h" diff --git a/src/resources/item/complexitem.cpp b/src/resources/item/complexitem.cpp index 047c50614..b9de8dbe1 100644 --- a/src/resources/item/complexitem.cpp +++ b/src/resources/item/complexitem.cpp @@ -21,6 +21,7 @@ #include "resources/item/complexitem.h" #include "utils/dtor.h" +#include "utils/foreach.h" #include "debug.h" diff --git a/src/resources/map/map.cpp b/src/resources/map/map.cpp index f2c8f4636..8deea4b23 100644 --- a/src/resources/map/map.cpp +++ b/src/resources/map/map.cpp @@ -65,6 +65,7 @@ #include "utils/checkutils.h" #include "utils/delete2.h" #include "utils/dtor.h" +#include "utils/foreach.h" #include "utils/timer.h" #include <queue> diff --git a/src/resources/map/maplayer.cpp b/src/resources/map/maplayer.cpp index 2598b029c..f9f154a64 100644 --- a/src/resources/map/maplayer.cpp +++ b/src/resources/map/maplayer.cpp @@ -31,6 +31,8 @@ #include "gui/userpalette.h" +#include "utils/foreach.h" + #include "render/graphics.h" #include "resources/image/image.h" diff --git a/src/resources/map/speciallayer.cpp b/src/resources/map/speciallayer.cpp index 75b56be28..27713e074 100644 --- a/src/resources/map/speciallayer.cpp +++ b/src/resources/map/speciallayer.cpp @@ -27,6 +27,7 @@ #include "resources/map/mapitem.h" #include "utils/delete2.h" +#include "utils/foreach.h" #include "debug.h" diff --git a/src/resources/map/tileanimation.cpp b/src/resources/map/tileanimation.cpp index c8ce52a70..fee4ef150 100644 --- a/src/resources/map/tileanimation.cpp +++ b/src/resources/map/tileanimation.cpp @@ -27,6 +27,7 @@ #include "resources/map/maplayer.h" #include "utils/delete2.h" +#include "utils/foreach.h" #include "debug.h" diff --git a/src/resources/resourcemanager/resourcemanager.cpp b/src/resources/resourcemanager/resourcemanager.cpp index d90448e7b..c599dd165 100644 --- a/src/resources/resourcemanager/resourcemanager.cpp +++ b/src/resources/resourcemanager/resourcemanager.cpp @@ -35,6 +35,7 @@ #include "resources/sprite/spritedef.h" #include "utils/checkutils.h" +#include "utils/foreach.h" #if !defined(DEBUG_DUMP_LEAKS) && !defined(UNITTESTS) #include "resources/resourcetypes.h" diff --git a/src/resources/skill/skillinfo.cpp b/src/resources/skill/skillinfo.cpp index 8c90fbd72..3c74fcaa9 100644 --- a/src/resources/skill/skillinfo.cpp +++ b/src/resources/skill/skillinfo.cpp @@ -26,6 +26,7 @@ #include "gui/models/skillmodel.h" +#include "utils/foreach.h" #include "utils/stringutils.h" #include "resources/skill/skilldata.h" diff --git a/src/resources/sprite/spritedef.cpp b/src/resources/sprite/spritedef.cpp index 8824a2ac1..ccb8af30c 100644 --- a/src/resources/sprite/spritedef.cpp +++ b/src/resources/sprite/spritedef.cpp @@ -30,6 +30,7 @@ #include "const/resources/map/map.h" #include "utils/checkutils.h" +#include "utils/foreach.h" #include "resources/action.h" #include "resources/imageset.h" diff --git a/src/resources/wallpaper.cpp b/src/resources/wallpaper.cpp index 09c1f3396..e474d2315 100644 --- a/src/resources/wallpaper.cpp +++ b/src/resources/wallpaper.cpp @@ -29,6 +29,8 @@ #include "resources/wallpaperdata.h" +#include "utils/foreach.h" + #include <algorithm> #ifdef WIN32 diff --git a/src/spellmanager.cpp b/src/spellmanager.cpp index 4877e9e71..8dbdd0354 100644 --- a/src/spellmanager.cpp +++ b/src/spellmanager.cpp @@ -37,6 +37,7 @@ #include "resources/db/commandsdb.h" #include "utils/dtor.h" +#include "utils/foreach.h" #include <sstream> diff --git a/src/textmanager.cpp b/src/textmanager.cpp index 9bd36d6fd..24d55b412 100644 --- a/src/textmanager.cpp +++ b/src/textmanager.cpp @@ -23,6 +23,8 @@ #include "text.h" +#include "utils/foreach.h" + #include <cstring> #include "debug.h" diff --git a/src/utils/chatutils.cpp b/src/utils/chatutils.cpp index 53bb689a4..966e383bd 100644 --- a/src/utils/chatutils.cpp +++ b/src/utils/chatutils.cpp @@ -38,6 +38,7 @@ #include "net/tmwa/guildmanager.h" #endif // TMWA_SUPPORT +#include "utils/foreach.h" #include "utils/stringutils.h" #include "debug.h" diff --git a/src/utils/foreach.h b/src/utils/foreach.h new file mode 100644 index 000000000..d3212795f --- /dev/null +++ b/src/utils/foreach.h @@ -0,0 +1,36 @@ +/* + * The ManaPlus Client + * Copyright (C) 2011-2017 The ManaPlus Developers + * + * This file is part of The ManaPlus Client. + * + * This program 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 2 of the License, or + * any later version. + * + * This program 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 this program. If not, see <http://www.gnu.org/licenses/>. + */ + +#ifndef UTILS_FOREACH_H +#define UTILS_FOREACH_H + +#define FOR_EACH(type, iter, array) for (type iter = array.begin(), \ + iter##_fend = array.end(); iter != iter##_fend; ++ iter) + +#define FOR_EACHR(type, iter, array) for (type iter = array.rbegin(), \ + iter##_fend = array.rend(); iter != iter##_fend; ++ iter) + +#define FOR_EACHP(type, iter, array) for (type iter = array->begin(), \ + iter##_fend = array->end(); iter != iter##_fend; ++ iter) + +#define FOR_EACH_SAFE(type, iter, array) for (type iter = array.begin(); \ + iter != array.end(); ++ iter) + +#endif // UTILS_FOREACH_H diff --git a/src/utils/stringutils.cpp b/src/utils/stringutils.cpp index 1f0888629..201ffc0c4 100644 --- a/src/utils/stringutils.cpp +++ b/src/utils/stringutils.cpp @@ -30,6 +30,9 @@ #include "resources/db/itemdb.h" #endif // DYECMD +#include "utils/gettext.h" +#include "utils/foreach.h" + #include <algorithm> #include <sstream> @@ -37,8 +40,6 @@ #include <sys/time.h> #endif // WIN32 -#include "utils/gettext.h" - #include "debug.h" std::string &trim(std::string &str) diff --git a/src/utils/translation/translationmanager.cpp b/src/utils/translation/translationmanager.cpp index aa0dd47da..72ca23c91 100644 --- a/src/utils/translation/translationmanager.cpp +++ b/src/utils/translation/translationmanager.cpp @@ -25,6 +25,8 @@ #include "utils/delete2.h" #include "utils/stringutils.h" +#include "utils/foreach.h" + #include "utils/translation/podict.h" #include "utils/translation/poparser.h" |