diff options
author | Andrei Karas <akaras@inbox.ru> | 2014-05-18 20:23:06 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2014-05-18 20:23:06 +0300 |
commit | 8a60936c31675c60810a880b37e529e3fbcd2846 (patch) | |
tree | 9729b8b6a3c84e843b3fb4fabfdbfe2298edb75f /src/resources/imagerect.h | |
parent | eec9b1cadad4c81f4bb480e7ee785ceb222c9732 (diff) | |
download | manaplus-8a60936c31675c60810a880b37e529e3fbcd2846.tar.gz manaplus-8a60936c31675c60810a880b37e529e3fbcd2846.tar.bz2 manaplus-8a60936c31675c60810a880b37e529e3fbcd2846.tar.xz manaplus-8a60936c31675c60810a880b37e529e3fbcd2846.zip |
Move imagerect into separate file.
Diffstat (limited to 'src/resources/imagerect.h')
-rw-r--r-- | src/resources/imagerect.h | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/src/resources/imagerect.h b/src/resources/imagerect.h new file mode 100644 index 000000000..0b2ae679e --- /dev/null +++ b/src/resources/imagerect.h @@ -0,0 +1,74 @@ +/* + * The ManaPlus Client + * Copyright (C) 2004-2009 The Mana World Development Team + * Copyright (C) 2009-2010 The Mana Developers + * Copyright (C) 2011-2014 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 RESOURCES_IMAGERECT_H +#define RESOURCES_IMAGERECT_H + +#include "localconsts.h" + +class Image; + +/** + * 9 images defining a rectangle. 4 corners, 4 sides and a middle area. The + * topology is as follows: + * + * <pre> + * !-----!-----------------!-----! + * ! 0 ! 1 ! 2 ! + * !-----!-----------------!-----! + * ! 3 ! 4 ! 5 ! + * !-----!-----------------!-----! + * ! 6 ! 7 ! 8 ! + * !-----!-----------------!-----! + * </pre> + * + * Sections 0, 2, 6 and 8 will remain as is. 1, 3, 4, 5 and 7 will be + * repeated to fit the size of the widget. + */ +class ImageRect final +{ + public: + ImageRect() + { + for (int f = 0; f < 9; f ++) + grid[f] = nullptr; + } + + A_DELETE_COPY(ImageRect) + + enum ImagePosition + { + UPPER_LEFT = 0, + UPPER_CENTER = 1, + UPPER_RIGHT = 2, + LEFT = 3, + CENTER = 4, + RIGHT = 5, + LOWER_LEFT = 6, + LOWER_CENTER = 7, + LOWER_RIGHT = 8 + }; + + Image *grid[9]; +}; + +#endif // RESOURCES_IMAGERECT_H |