summaryrefslogtreecommitdiffstats
path: root/sigmodr/TrainerItem.cpp
diff options
context:
space:
mode:
authorBen Boeckel <MathStuf@gmail.com>2009-03-18 12:37:08 -0400
committerBen Boeckel <MathStuf@gmail.com>2009-03-18 12:37:08 -0400
commit6d1422a0908042219ae03377b54585e27d3ff7a5 (patch)
treec9c1a5790287389efe9f2f09ea5314d425048975 /sigmodr/TrainerItem.cpp
parent1110ccccc0a4c844e82faaddb9e44eb709ea4030 (diff)
downloadsigen-6d1422a0908042219ae03377b54585e27d3ff7a5.tar.gz
sigen-6d1422a0908042219ae03377b54585e27d3ff7a5.tar.xz
sigen-6d1422a0908042219ae03377b54585e27d3ff7a5.zip
Move the old MapEditor code into the widgets folder
Diffstat (limited to 'sigmodr/TrainerItem.cpp')
-rw-r--r--sigmodr/TrainerItem.cpp118
1 files changed, 0 insertions, 118 deletions
diff --git a/sigmodr/TrainerItem.cpp b/sigmodr/TrainerItem.cpp
deleted file mode 100644
index 55da4d10..00000000
--- a/sigmodr/TrainerItem.cpp
+++ /dev/null
@@ -1,118 +0,0 @@
-/*
- * Copyright 2008-2009 Ben Boeckel <MathStuf@gmail.com>
- *
- * 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 3 of the License, or
- * (at your option) 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/>.
- */
-
-// Header include
-#include "TrainerItem.h"
-
-// Sigmod includes
-#include "../sigmod/MapTrainer.h"
-#include "../sigmod/Sigmod.h"
-#include "../sigmod/Sprite.h"
-
-// KDE includes
-#include <KColorScheme>
-
-// Qt includes
-#include <QtGui/QPainter>
-#include <QtGui/QStyle>
-#include <QtGui/QStyleOptionGraphicsItem>
-
-Sigmodr::TrainerItem::TrainerItem(Sigmod::MapTrainer* trainer, QObject* parent) :
- QObject(parent),
- m_trainer(trainer)
-{
- connect(m_trainer, SIGNAL(changed()), this, SLOT(trainerChanged()));
- trainerChanged();
- setZValue(INT_MAX);
- setAcceptHoverEvents(true);
-}
-
-QRectF Sigmodr::TrainerItem::boundingRect() const
-{
- return m_pixmap.rect();
-}
-
-void Sigmodr::TrainerItem::paint(QPainter* painter, const QStyleOptionGraphicsItem* option, QWidget* widget)
-{
- Q_UNUSED(widget)
- if (m_pixmap.isNull())
- return;
- if (!(flags() & QGraphicsItem::ItemIsSelectable))
- {
- QPixmap temp(m_pixmap.size());
- temp.fill(Qt::transparent);
- QPainter p;
- p.begin(&temp);
- p.setCompositionMode(QPainter::CompositionMode_DestinationIn);
- p.fillRect(temp.rect(), QColor(0, 0, 0, 127));
- p.end();
- painter->drawPixmap(0, 0, temp);
- }
- painter->drawPixmap(0, 0, m_pixmap);
- if (option->state & QStyle::State_MouseOver)
- {
- painter->setPen(QPen(KStatefulBrush(KColorScheme::View, (flags() & QGraphicsItem::ItemIsSelectable) ? KColorScheme::ActiveText : KColorScheme::InactiveText).brush((flags() & QGraphicsItem::ItemIsSelectable) ? QPalette::Active : QPalette::Inactive), 1));
- painter->drawText(m_pixmap.rect(), Qt::AlignHCenter | Qt::AlignVCenter, m_trainer->name());
- }
- if (option->state & QStyle::State_HasFocus)
- {
- painter->setPen(QPen(KStatefulBrush(KColorScheme::Selection, KColorScheme::FocusColor).brush(QPalette::Active), 6));
- painter->drawRect(m_pixmap.rect());
- }
- else if (option->state & QStyle::State_Selected)
- {
- painter->setPen(QPen(KStatefulBrush(KColorScheme::Selection, KColorScheme::ActiveBackground).brush(QPalette::Active), 6));
- painter->drawRect(m_pixmap.rect());
- }
- else if ((option->state & QStyle::State_MouseOver) && (flags() & QGraphicsItem::ItemIsSelectable))
- {
- painter->setPen(QPen(KStatefulBrush(KColorScheme::Selection, KColorScheme::HoverColor).brush(QPalette::Active), 6));
- painter->drawRect(m_pixmap.rect());
- }
-}
-
-void Sigmodr::TrainerItem::changeSprite(const int spriteId)
-{
- const Sigmod::Sprite* sprite = m_trainer->sigmod()->spriteById(spriteId);
- if (sprite)
- m_pixmap.loadFromData(sprite->sprite());
- update();
-}
-
-void Sigmodr::TrainerItem::mousePressEvent(QGraphicsSceneMouseEvent* event)
-{
- QGraphicsItem::mousePressEvent(event);
- update();
-}
-
-void Sigmodr::TrainerItem::mouseMoveEvent(QGraphicsSceneMouseEvent* event)
-{
- QGraphicsItem::mouseMoveEvent(event);
- m_trainer->setPosition(scenePos().toPoint());
-}
-
-void Sigmodr::TrainerItem::mouseReleaseEvent(QGraphicsSceneMouseEvent* event)
-{
- QGraphicsItem::mouseReleaseEvent(event);
- update();
-}
-
-void Sigmodr::TrainerItem::trainerChanged()
-{
- setPos(m_trainer->position());
- update();
-}