summary refs log tree commit diff stats
path: root/tools/mapedit/src/widget.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tools/mapedit/src/widget.cpp')
-rw-r--r--tools/mapedit/src/widget.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/tools/mapedit/src/widget.cpp b/tools/mapedit/src/widget.cpp index 9c8dae3..d7f1a51 100644 --- a/tools/mapedit/src/widget.cpp +++ b/tools/mapedit/src/widget.cpp
@@ -53,12 +53,24 @@ void MapeditWidget::OnPaint(wxPaintEvent& event)
53 } 53 }
54 } 54 }
55 55
56 for (auto object : map->getObjects())
57 {
58 tiles_dc.SelectObject(wxNullBitmap);
59
60 wxBitmap sprite = object.object->getSprite();
61 tiles_dc.SelectObject(sprite);
62
63 dc.StretchBlit(object.position.first*scale-vX, object.position.second*scale-vY, object.object->getWidth()*scale, object.object->getHeight()*scale, &tiles_dc, 0, 0, object.object->getWidth(), object.object->getHeight());
64 }
65
56 if (mouseIsIn) 66 if (mouseIsIn)
57 { 67 {
58 int tile = tileWidget->getSelected(); 68 int tile = tileWidget->getSelected();
59 int x = (mousePos.x + vX) / (TILE_WIDTH * scale); 69 int x = (mousePos.x + vX) / (TILE_WIDTH * scale);
60 int y = (mousePos.y + vY) / (TILE_HEIGHT * scale); 70 int y = (mousePos.y + vY) / (TILE_HEIGHT * scale);
61 71
72 tiles_dc.SelectObject(wxNullBitmap);
73 tiles_dc.SelectObject(tiles);
62 dc.StretchBlit(x*TILE_WIDTH*scale-vX, y*TILE_HEIGHT*scale-vY, TILE_WIDTH*scale, TILE_HEIGHT*scale, &tiles_dc, tile%8*TILE_WIDTH, tile/8*TILE_HEIGHT, TILE_WIDTH, TILE_HEIGHT); 74 dc.StretchBlit(x*TILE_WIDTH*scale-vX, y*TILE_HEIGHT*scale-vY, TILE_WIDTH*scale, TILE_HEIGHT*scale, &tiles_dc, tile%8*TILE_WIDTH, tile/8*TILE_HEIGHT, TILE_WIDTH, TILE_HEIGHT);
63 75
64 wxPen pen(*wxGREEN, 2); 76 wxPen pen(*wxGREEN, 2);