summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/CMakeLists.txt5
-rw-r--r--src/Makefile.am5
-rw-r--r--src/being/being.h2
-rw-r--r--src/being/flooritem.h6
-rw-r--r--src/enums/resources/cursor.h45
-rw-r--r--src/gui/gui.h6
-rw-r--r--src/resources/beinginfo.h10
-rw-r--r--src/resources/cursor.cpp69
-rw-r--r--src/resources/cursors.cpp69
-rw-r--r--src/resources/cursors.h (renamed from src/resources/cursor.h)31
-rw-r--r--src/resources/iteminfo.h10
11 files changed, 142 insertions, 116 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 93ae99f9e..9b581c249 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -627,8 +627,8 @@ SET(SRCS
resources/db/colordb.h
resources/db/commandsdb.cpp
resources/db/commandsdb.h
- resources/cursor.cpp
- resources/cursor.h
+ resources/cursors.cpp
+ resources/cursors.h
resources/delayedmanager.cpp
resources/delayedmanager.h
resources/db/deaddb.cpp
@@ -670,6 +670,7 @@ SET(SRCS
resources/db/itemfielddb.h
resources/iteminfo.h
resources/iteminfo.cpp
+ enums/resources/cursor.h
enums/resources/imageposition.h
enums/resources/imagetype.h
enums/resources/item/itemdbtype.h
diff --git a/src/Makefile.am b/src/Makefile.am
index 33ec02db4..da16feadb 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -357,8 +357,8 @@ SRC += events/actionevent.h \
resources/atlas/atlasresource.h \
resources/rect/doublerect.h \
resources/attack.h \
- resources/cursor.cpp \
- resources/cursor.h \
+ resources/cursors.cpp \
+ resources/cursors.h \
resources/dye/dye.cpp \
resources/dye/dye.h \
resources/dye/dyecolor.h \
@@ -1288,6 +1288,7 @@ manaplus_SOURCES += main.cpp \
resources/db/weaponsdb.h \
resources/iteminfo.h \
resources/iteminfo.cpp \
+ enums/resources/cursor.h \
enums/resources/imageposition.h \
enums/resources/imagetype.h \
enums/resources/item/itemdbtype.h \
diff --git a/src/being/being.h b/src/being/being.h
index 78f0ec65c..06264b1d5 100644
--- a/src/being/being.h
+++ b/src/being/being.h
@@ -877,7 +877,7 @@ class Being notfinal : public ActorSprite,
const int attackId,
const int level) const restrict2 A_WARN_UNUSED;
- Cursor::Cursor getHoverCursor() const restrict2 A_WARN_UNUSED
+ CursorT getHoverCursor() const restrict2 A_WARN_UNUSED
{ return mInfo ? mInfo->getHoverCursor() : Cursor::CURSOR_POINTER; }
void addAfkEffect() restrict2;
diff --git a/src/being/flooritem.h b/src/being/flooritem.h
index 23c32f446..28e5c7190 100644
--- a/src/being/flooritem.h
+++ b/src/being/flooritem.h
@@ -33,7 +33,7 @@
#include "being/actorsprite.h"
-#include "resources/cursor.h"
+#include "resources/cursors.h"
class ItemInfo;
@@ -113,7 +113,7 @@ class FloorItem final : public ActorSprite
void disableHightlight()
{ mHighlight = false; }
- Cursor::Cursor getHoverCursor() const A_WARN_UNUSED
+ CursorT getHoverCursor() const A_WARN_UNUSED
{ return mCursor; }
void setCards(const int *const cards, int sz);
@@ -142,7 +142,7 @@ class FloorItem final : public ActorSprite
int mHeightPosDiff;
ItemTypeT mItemType;
unsigned int mPickupCount;
- Cursor::Cursor mCursor;
+ CursorT mCursor;
ItemColor mColor;
Identified mIdentified;
Damaged mDamaged;
diff --git a/src/enums/resources/cursor.h b/src/enums/resources/cursor.h
new file mode 100644
index 000000000..47f4d39cf
--- /dev/null
+++ b/src/enums/resources/cursor.h
@@ -0,0 +1,45 @@
+/*
+ * The ManaPlus Client
+ * Copyright (C) 2012-2016 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 ENUMS_RESOURCES_CURSOR_H
+#define ENUMS_RESOURCES_CURSOR_H
+
+#include "enums/simpletypes/enumdefines.h"
+
+enumStart(Cursor)
+{
+ CURSOR_POINTER = 0,
+ CURSOR_RESIZE_ACROSS,
+ CURSOR_RESIZE_DOWN,
+ CURSOR_RESIZE_DOWN_LEFT,
+ CURSOR_RESIZE_DOWN_RIGHT,
+ CURSOR_FIGHT,
+ CURSOR_PICKUP,
+ CURSOR_TALK,
+ CURSOR_ACTION,
+ CURSOR_LEFT,
+ CURSOR_UP,
+ CURSOR_RIGHT,
+ CURSOR_DOWN,
+ CURSOR_TOTAL
+}
+enumEnd(Cursor);
+
+#endif // ENUMS_RESOURCES_CURSOR_H
diff --git a/src/gui/gui.h b/src/gui/gui.h
index 258262b3f..c78406c01 100644
--- a/src/gui/gui.h
+++ b/src/gui/gui.h
@@ -71,7 +71,7 @@
#include "enums/events/mousebutton.h"
#include "enums/events/mouseeventtype.h"
-#include "resources/cursor.h"
+#include "resources/cursors.h"
#include <deque>
#include <list>
@@ -192,7 +192,7 @@ class Gui final
/**
* Sets which cursor should be used.
*/
- void setCursorType(const Cursor::Cursor index)
+ void setCursorType(const CursorT index)
{ mCursorType = index; }
void setDoubleClick(const bool b)
@@ -519,7 +519,7 @@ class Gui final
ImageSet *mMouseCursors;
float mMouseCursorAlpha;
int mMouseInactivityTimer;
- Cursor::Cursor mCursorType;
+ CursorT mCursorType;
#ifdef ANDROID
uint16_t mLastMouseRealX;
uint16_t mLastMouseRealY;
diff --git a/src/resources/beinginfo.h b/src/resources/beinginfo.h
index c1a9ccd7b..3c5a9ab98 100644
--- a/src/resources/beinginfo.h
+++ b/src/resources/beinginfo.h
@@ -31,7 +31,7 @@
#include "enums/simpletypes/itemcolor.h"
#include "resources/beingmenuitem.h"
-#include "resources/cursor.h"
+#include "resources/cursors.h"
#include "resources/soundinfo.h"
#include "resources/sprite/spritedisplay.h"
@@ -81,12 +81,12 @@ class BeingInfo final
{ mTargetCursorSize = targetSize; }
void setHoverCursor(const std::string &name)
- { return setHoverCursor(Cursor::stringToCursor(name)); }
+ { return setHoverCursor(Cursors::stringToCursor(name)); }
- void setHoverCursor(const Cursor::Cursor &cursor)
+ void setHoverCursor(const CursorT &cursor)
{ mHoverCursor = cursor; }
- Cursor::Cursor getHoverCursor() const A_WARN_UNUSED
+ CursorT getHoverCursor() const A_WARN_UNUSED
{ return mHoverCursor; }
TargetCursorSizeT getTargetCursorSize() const A_WARN_UNUSED
@@ -347,7 +347,7 @@ class BeingInfo final
SpriteDisplay mDisplay;
std::string mName;
TargetCursorSizeT mTargetCursorSize;
- Cursor::Cursor mHoverCursor;
+ CursorT mHoverCursor;
ItemSoundEvents mSounds;
Attacks mAttacks;
std::vector<BeingMenuItem> mMenu;
diff --git a/src/resources/cursor.cpp b/src/resources/cursor.cpp
deleted file mode 100644
index cbc430b2a..000000000
--- a/src/resources/cursor.cpp
+++ /dev/null
@@ -1,69 +0,0 @@
-/*
- * The ManaPlus Client
- * Copyright (C) 2012-2016 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/>.
- */
-
-#include "resources/cursor.h"
-
-#include "debug.h"
-
-namespace Cursor
-{
- static const StrToCursor hoverCursors[] =
- {
- {"select", CURSOR_POINTER},
- {"pointer", CURSOR_POINTER},
- {"lr", CURSOR_RESIZE_ACROSS},
- {"rl", CURSOR_RESIZE_ACROSS},
- {"resizeAcross", CURSOR_RESIZE_ACROSS},
- {"ud", CURSOR_RESIZE_DOWN},
- {"du", CURSOR_RESIZE_DOWN},
- {"resizeDown", CURSOR_RESIZE_DOWN},
- {"ldru", CURSOR_RESIZE_DOWN_LEFT},
- {"ruld", CURSOR_RESIZE_DOWN_LEFT},
- {"ld", CURSOR_RESIZE_DOWN_LEFT},
- {"ru", CURSOR_RESIZE_DOWN_LEFT},
- {"resizeDownLeft", CURSOR_RESIZE_DOWN_LEFT},
- {"lurd", CURSOR_RESIZE_DOWN_RIGHT},
- {"rdlu", CURSOR_RESIZE_DOWN_RIGHT},
- {"rd", CURSOR_RESIZE_DOWN_RIGHT},
- {"lu", CURSOR_RESIZE_DOWN_RIGHT},
- {"resizeDownRight", CURSOR_RESIZE_DOWN_RIGHT},
- {"attack", CURSOR_FIGHT},
- {"fight", CURSOR_FIGHT},
- {"take", CURSOR_PICKUP},
- {"pickup", CURSOR_PICKUP},
- {"talk", CURSOR_TALK},
- {"action", CURSOR_ACTION},
- {"left", CURSOR_LEFT},
- {"up", CURSOR_UP},
- {"right", CURSOR_RIGHT},
- {"down", CURSOR_DOWN}
- };
-
- Cursor stringToCursor(const std::string &name)
- {
- for (size_t f = 0; f < sizeof(hoverCursors) / sizeof(StrToCursor);
- f ++)
- {
- if (hoverCursors[f].str == name)
- return hoverCursors[f].cursor;
- }
- return CURSOR_POINTER;
- }
-} // namespace Cursor
diff --git a/src/resources/cursors.cpp b/src/resources/cursors.cpp
new file mode 100644
index 000000000..5ca5ff35a
--- /dev/null
+++ b/src/resources/cursors.cpp
@@ -0,0 +1,69 @@
+/*
+ * The ManaPlus Client
+ * Copyright (C) 2012-2016 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/>.
+ */
+
+#include "resources/cursors.h"
+
+#include "debug.h"
+
+namespace Cursors
+{
+ static const StrToCursor hoverCursors[] =
+ {
+ {"select", Cursor::CURSOR_POINTER},
+ {"pointer", Cursor::CURSOR_POINTER},
+ {"lr", Cursor::CURSOR_RESIZE_ACROSS},
+ {"rl", Cursor::CURSOR_RESIZE_ACROSS},
+ {"resizeAcross", Cursor::CURSOR_RESIZE_ACROSS},
+ {"ud", Cursor::CURSOR_RESIZE_DOWN},
+ {"du", Cursor::CURSOR_RESIZE_DOWN},
+ {"resizeDown", Cursor::CURSOR_RESIZE_DOWN},
+ {"ldru", Cursor::CURSOR_RESIZE_DOWN_LEFT},
+ {"ruld", Cursor::CURSOR_RESIZE_DOWN_LEFT},
+ {"ld", Cursor::CURSOR_RESIZE_DOWN_LEFT},
+ {"ru", Cursor::CURSOR_RESIZE_DOWN_LEFT},
+ {"resizeDownLeft", Cursor::CURSOR_RESIZE_DOWN_LEFT},
+ {"lurd", Cursor::CURSOR_RESIZE_DOWN_RIGHT},
+ {"rdlu", Cursor::CURSOR_RESIZE_DOWN_RIGHT},
+ {"rd", Cursor::CURSOR_RESIZE_DOWN_RIGHT},
+ {"lu", Cursor::CURSOR_RESIZE_DOWN_RIGHT},
+ {"resizeDownRight", Cursor::CURSOR_RESIZE_DOWN_RIGHT},
+ {"attack", Cursor::CURSOR_FIGHT},
+ {"fight", Cursor::CURSOR_FIGHT},
+ {"take", Cursor::CURSOR_PICKUP},
+ {"pickup", Cursor::CURSOR_PICKUP},
+ {"talk", Cursor::CURSOR_TALK},
+ {"action", Cursor::CURSOR_ACTION},
+ {"left", Cursor::CURSOR_LEFT},
+ {"up", Cursor::CURSOR_UP},
+ {"right", Cursor::CURSOR_RIGHT},
+ {"down", Cursor::CURSOR_DOWN}
+ };
+
+ CursorT stringToCursor(const std::string &name)
+ {
+ for (size_t f = 0; f < sizeof(hoverCursors) / sizeof(StrToCursor);
+ f ++)
+ {
+ if (hoverCursors[f].str == name)
+ return hoverCursors[f].cursor;
+ }
+ return Cursor::CURSOR_POINTER;
+ }
+} // namespace Cursors
diff --git a/src/resources/cursor.h b/src/resources/cursors.h
index ef4b4da1b..52183722b 100644
--- a/src/resources/cursor.h
+++ b/src/resources/cursors.h
@@ -21,42 +21,21 @@
#ifndef RESOURCES_CURSOR_H
#define RESOURCES_CURSOR_H
+#include "enums/resources/cursor.h"
+
#include <string>
#include "localconsts.h"
-namespace Cursor
+namespace Cursors
{
- /**
- * Cursors are in graphic order from left to right.
- * CURSOR_POINTER should be left untouched.
- * CURSOR_TOTAL should always be last.
- */
- enum Cursor
- {
- CURSOR_POINTER = 0,
- CURSOR_RESIZE_ACROSS,
- CURSOR_RESIZE_DOWN,
- CURSOR_RESIZE_DOWN_LEFT,
- CURSOR_RESIZE_DOWN_RIGHT,
- CURSOR_FIGHT,
- CURSOR_PICKUP,
- CURSOR_TALK,
- CURSOR_ACTION,
- CURSOR_LEFT,
- CURSOR_UP,
- CURSOR_RIGHT,
- CURSOR_DOWN,
- CURSOR_TOTAL
- };
-
struct StrToCursor final
{
std::string str;
- Cursor cursor;
+ CursorT cursor;
};
- Cursor stringToCursor(const std::string &name) A_WARN_UNUSED;
+ CursorT stringToCursor(const std::string &name) A_WARN_UNUSED;
} // namespace Cursor
#endif // RESOURCES_CURSOR_H
diff --git a/src/resources/iteminfo.h b/src/resources/iteminfo.h
index c61da1bcd..a7d877f65 100644
--- a/src/resources/iteminfo.h
+++ b/src/resources/iteminfo.h
@@ -30,7 +30,7 @@
#include "enums/simpletypes/beingtypeid.h"
#include "enums/simpletypes/itemcolor.h"
-#include "resources/cursor.h"
+#include "resources/cursors.h"
#include "resources/soundinfo.h"
#include "resources/sprite/spritedisplay.h"
@@ -287,12 +287,12 @@ class ItemInfo final
const A_WARN_UNUSED;
void setPickupCursor(const std::string &cursor)
- { return setPickupCursor(Cursor::stringToCursor(cursor)); }
+ { return setPickupCursor(Cursors::stringToCursor(cursor)); }
- void setPickupCursor(const Cursor::Cursor &cursor)
+ void setPickupCursor(const CursorT &cursor)
{ mPickupCursor = cursor; }
- Cursor::Cursor getPickupCursor() const A_WARN_UNUSED
+ CursorT getPickupCursor() const A_WARN_UNUSED
{ return mPickupCursor; }
void setProtected(const bool b)
@@ -373,7 +373,7 @@ class ItemInfo final
int mMissEffectId;
int maxFloorOffsetX;
int maxFloorOffsetY;
- Cursor::Cursor mPickupCursor;
+ CursorT mPickupCursor;
bool mProtected;
};