summaryrefslogtreecommitdiff
path: root/src/gui
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2013-06-02 22:14:54 +0300
committerAndrei Karas <akaras@inbox.ru>2013-06-02 22:14:54 +0300
commit65b614a0d142e229206fbde22a25f4a3b20b1dbc (patch)
treecb1f90dbbc8aedd3ef2dd7e2269a08b115d9fc7b /src/gui
parentbead0d26642bbc0c5e570306c226676c66d18b86 (diff)
downloadmanaplus-65b614a0d142e229206fbde22a25f4a3b20b1dbc.tar.gz
manaplus-65b614a0d142e229206fbde22a25f4a3b20b1dbc.tar.bz2
manaplus-65b614a0d142e229206fbde22a25f4a3b20b1dbc.tar.xz
manaplus-65b614a0d142e229206fbde22a25f4a3b20b1dbc.zip
In drag and drop use ints and images but not pointer to item.
Diffstat (limited to 'src/gui')
-rw-r--r--src/gui/gui.cpp14
-rw-r--r--src/gui/outfitwindow.cpp19
-rw-r--r--src/gui/widgets/dropshortcutcontainer.cpp18
3 files changed, 19 insertions, 32 deletions
diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp
index a12163d60..95a94900a 100644
--- a/src/gui/gui.cpp
+++ b/src/gui/gui.cpp
@@ -435,16 +435,12 @@ void Gui::draw()
&& mMouseCursors && mCustomCursor && mMouseCursorAlpha > 0.0f)
{
Graphics *g2 = static_cast<Graphics*>(mGraphics);
- Item *const item = dragDrop.getItem();
- if (item)
+ const Image *const image = dragDrop.getItemImage();
+ if (image)
{
- const Image *const image = item->getImage();
- if (image)
- {
- const int tPosX = mouseX - (image->mBounds.w / 2);
- const int tPosY = mouseY - (image->mBounds.h / 2);
- g2->drawImage(image, tPosX, tPosY);
- }
+ const int tPosX = mouseX - (image->mBounds.w / 2);
+ const int tPosY = mouseY - (image->mBounds.h / 2);
+ g2->drawImage(image, tPosX, tPosY);
}
Image *const mouseCursor = mMouseCursors->get(mCursorType);
diff --git a/src/gui/outfitwindow.cpp b/src/gui/outfitwindow.cpp
index b00ab69b9..45ee8465f 100644
--- a/src/gui/outfitwindow.cpp
+++ b/src/gui/outfitwindow.cpp
@@ -443,11 +443,10 @@ void OutfitWindow::mousePressed(gcn::MouseEvent &event)
}
else
{
- Item *const selected = dragDrop.getSelected();
- if (selected)
+ if (dragDrop.isSelected())
{
- mItems[mCurrentOutfit][index] = selected->getId();
- mItemColors[mCurrentOutfit][index] = selected->getColor();
+ mItems[mCurrentOutfit][index] = dragDrop.getSelected();
+ mItemColors[mCurrentOutfit][index] = dragDrop.getSelectedColor();
dragDrop.deselect();
}
}
@@ -475,14 +474,10 @@ void OutfitWindow::mouseReleased(gcn::MouseEvent &event)
event.consume();
if (!dragDrop.isEmpty())
{
- Item *const item = dragDrop.getItem();
- if (item)
- {
- mItems[mCurrentOutfit][index] = item->getId();
- mItemColors[mCurrentOutfit][index] = item->getColor();
- dragDrop.clear();
- dragDrop.deselect();
- }
+ mItems[mCurrentOutfit][index] = dragDrop.getItem();
+ mItemColors[mCurrentOutfit][index] = dragDrop.getItemColor();
+ dragDrop.clear();
+ dragDrop.deselect();
}
if (mItemClicked)
mItemClicked = false;
diff --git a/src/gui/widgets/dropshortcutcontainer.cpp b/src/gui/widgets/dropshortcutcontainer.cpp
index 2a65a57c1..ac2916c1d 100644
--- a/src/gui/widgets/dropshortcutcontainer.cpp
+++ b/src/gui/widgets/dropshortcutcontainer.cpp
@@ -214,11 +214,10 @@ void DropShortcutContainer::mousePressed(gcn::MouseEvent &event)
}
else
{
- Item *const selected = dragDrop.getSelected();
- if (selected)
+ if (dragDrop.isSelected())
{
- dropShortcut->setItems(index, selected->getId(),
- selected->getColor());
+ dropShortcut->setItems(index, dragDrop.getSelected(),
+ dragDrop.getSelectedColor());
dragDrop.deselect();
}
}
@@ -255,13 +254,10 @@ void DropShortcutContainer::mouseReleased(gcn::MouseEvent &event)
}
if (!dragDrop.isEmpty())
{
- Item *const item = dragDrop.getItem();
- if (item)
- {
- dropShortcut->setItems(index, item->getId(), item->getColor());
- dragDrop.clear();
- dragDrop.deselect();
- }
+ dropShortcut->setItems(index, dragDrop.getItem(),
+ dragDrop.getItemColor());
+ dragDrop.clear();
+ dragDrop.deselect();
}
mItemClicked = false;