summaryrefslogtreecommitdiff
path: root/src/gui/menuitem.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/menuitem.cpp')
-rw-r--r--src/gui/menuitem.cpp115
1 files changed, 0 insertions, 115 deletions
diff --git a/src/gui/menuitem.cpp b/src/gui/menuitem.cpp
deleted file mode 100644
index 490e2f61..00000000
--- a/src/gui/menuitem.cpp
+++ /dev/null
@@ -1,115 +0,0 @@
-/*
- * The Mana World
- * Copyright 2004 The Mana World Development Team
- *
- * This file is part of The Mana World.
- *
- * The Mana World 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.
- *
- * The Mana World 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 The Mana World; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- *
- * $Id$
- */
-
-#include "menuitem.h"
-#include "../resources/resourcemanager.h"
-#include <guichan/mouseinput.hpp>
-
-MenuItem::MenuItem(const std::string& label):
- gcn::Button(label)
-{
- setBorderSize(0);
-
- // Load graphic
- Image *item[4];
-
- ResourceManager *resman = ResourceManager::getInstance();
-
- item[0] = resman->getImage("graphics/gui/menuitemN.png");
- item[1] = resman->getImage("graphics/gui/menuitemF.png");
- item[2] = resman->getImage("graphics/gui/menuitemP.png");
- item[3] = resman->getImage("graphics/gui/menuitemD.png");
-
- int bgridx[4] = {0, 9, 16, 25};
- int bgridy[4] = {0, 4, 19, 24};
- int a, x, y;
-
- for (int mode = 0; mode < 4; mode++) {
- a = 0;
- for (y = 0; y < 3; y++) {
- for (x = 0; x < 3; x++) {
- menuitem[mode].grid[a] = item[mode]->getSubImage(
- bgridx[x], bgridy[y],
- bgridx[x + 1] - bgridx[x] + 1,
- bgridy[y + 1] - bgridy[y] + 1);
- a++;
- }
- }
- }
- addMouseListener(this);
-}
-
-MenuItem::~MenuItem()
-{
-}
-
-void MenuItem::draw(gcn::Graphics* graphics)
-{
- int mode;
-
- if (!isEnabled()) {
- mode = 3;
- }
- else if (isPressed()) {
- mode = 2;
- }
- else if (hasMouse()) {
- mode = 1;
- }
- else {
- mode = 0;
- }
-
- int x, y;
- getAbsolutePosition(x, y);
-
- ((Graphics*)graphics)->drawImageRect(x, y, getWidth(), getHeight(),
- menuitem[mode]);
- graphics->setColor(getForegroundColor());
-
- int textX;
- int textY = getHeight() / 2 - getFont()->getHeight() / 2;
-
- switch (getAlignment()) {
- case gcn::Graphics::LEFT:
- textX = 4;
- break;
- case gcn::Graphics::CENTER:
- textX = getWidth() / 2;
- break;
- case gcn::Graphics::RIGHT:
- textX = getWidth() - 4;
- break;
- default:
- throw GCN_EXCEPTION("Button::draw. Uknown alignment.");
- }
-
- graphics->setFont(getFont());
-
- if (isPressed()) {
- graphics->drawText(getCaption(), textX + 1, textY + 1, getAlignment());
- }
- else {
- graphics->drawText(getCaption(), textX, textY, getAlignment());
- }
-}