summaryrefslogtreecommitdiff
path: root/src/gui/widgets/characterviewsmall.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/widgets/characterviewsmall.cpp')
-rw-r--r--src/gui/widgets/characterviewsmall.cpp136
1 files changed, 0 insertions, 136 deletions
diff --git a/src/gui/widgets/characterviewsmall.cpp b/src/gui/widgets/characterviewsmall.cpp
deleted file mode 100644
index a2fbdc8d4..000000000
--- a/src/gui/widgets/characterviewsmall.cpp
+++ /dev/null
@@ -1,136 +0,0 @@
-/*
- * The ManaPlus Client
- * Copyright (C) 2013-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/>.
- */
-
-#include "gui/widgets/characterviewsmall.h"
-
-#include "gui/widgets/button.h"
-#include "gui/widgets/characterdisplay.h"
-#include "gui/widgets/label.h"
-
-#include "utils/foreach.h"
-#include "utils/stringutils.h"
-
-#include "debug.h"
-
-CharacterViewSmall::CharacterViewSmall(CharSelectDialog *const widget,
- STD_VECTOR<CharacterDisplay*>
- *const entries,
- const int padding) :
- CharacterViewBase(widget, padding),
- mSelectedEntry(nullptr),
- mPrevious(new Button(this, "<", "prev", this)),
- mNext(new Button(this, ">", "next", this)),
- mNumber(new Label(this, "??")),
- mCharacterEntries(entries)
-{
- addKeyListener(widget);
- if (entries != nullptr)
- {
- FOR_EACHP (STD_VECTOR<CharacterDisplay*>::iterator,
- it, entries)
- {
- add(*it);
- }
- const int sz = CAST_S32(mCharacterEntries->size());
- if (sz > 0)
- {
- mSelected = 0;
- mSelectedEntry = (*mCharacterEntries)[mSelected];
- mSelectedEntry->setVisible(Visible_true);
- mNumber->setCaption(strprintf("%d / %d", mSelected + 1, sz));
- mNumber->adjustSize();
- }
- else
- {
- mSelected = -1;
- mSelectedEntry = nullptr;
- mNumber->setCaption("0 / 0");
- mNumber->adjustSize();
- }
- }
- add(mPrevious);
- add(mNext);
- add(mNumber);
-
- setHeight(200);
-}
-
-CharacterViewSmall::~CharacterViewSmall()
-{
- removeKeyListener(mParent);
-}
-
-void CharacterViewSmall::show(const int i)
-{
- const int sz = CAST_S32(mCharacterEntries->size());
- if (sz <= 0)
- return;
- if (mSelectedEntry != nullptr)
- mSelectedEntry->setVisible(Visible_false);
- if (i >= sz)
- mSelected = 0;
- else if (i < 0)
- mSelected = sz - 1;
- else
- mSelected = i;
- mSelectedEntry = (*mCharacterEntries)[mSelected];
- mSelectedEntry->setVisible(Visible_true);
- mNumber->setCaption(strprintf("%d / %d", mSelected + 1, sz));
- mNumber->adjustSize();
-}
-
-void CharacterViewSmall::resize()
-{
- const int sz = CAST_S32(mCharacterEntries->size());
- if (sz <= 0)
- return;
- const CharacterDisplay *const firtChar = (*mCharacterEntries)[0];
- const int w = mDimension.width;
- const int h = mDimension.height;
- const int x = (w - firtChar->getWidth()) / 2;
- const int y = (h - firtChar->getHeight()) / 2;
- FOR_EACHP (STD_VECTOR<CharacterDisplay*>::iterator,
- it, mCharacterEntries)
- {
- (*it)->setPosition(x, y);
- }
- const int y2 = (h - mPrevious->getHeight()) / 2;
- const int y3 = y2 - 55;
- mPrevious->setPosition(x - mPrevious->getWidth() - 10, y3);
- mNext->setPosition(w - x + 10, y3);
- mNumber->setPosition(10, y2);
-}
-
-void CharacterViewSmall::action(const ActionEvent &event)
-{
- const std::string &eventId = event.getId();
- if (eventId == "next")
- {
- mSelected ++;
- show(mSelected);
- mParent->updateState();
- }
- else if (eventId == "prev")
- {
- mSelected --;
- show(mSelected);
- mParent->updateState();
- }
-}