summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/client/GameSave.cpp2
-rw-r--r--src/game/GameController.cpp4
2 files changed, 6 insertions, 0 deletions
diff --git a/src/client/GameSave.cpp b/src/client/GameSave.cpp
index a6a1b89..7a24c45 100644
--- a/src/client/GameSave.cpp
+++ b/src/client/GameSave.cpp
@@ -297,6 +297,8 @@ char * GameSave::Serialise(int & dataSize)
void GameSave::Transform(matrix2d transform, vector2d translate)
{
+ if(Collapsed())
+ Expand();
int i, x, y, nx, ny, width = blockWidth*CELL, height = blockHeight*CELL, newWidth, newHeight, newBlockWidth, newBlockHeight;
vector2d pos, tmp, ctl, cbr, vel;
vector2d cornerso[4];
diff --git a/src/game/GameController.cpp b/src/game/GameController.cpp
index 2c98f87..860c23a 100644
--- a/src/game/GameController.cpp
+++ b/src/game/GameController.cpp
@@ -447,11 +447,15 @@ void GameController::DrawPoints(int toolSelection, queue<ui::Point*> & pointQueu
void GameController::LoadClipboard()
{
gameModel->SetPlaceSave(gameModel->GetClipboard());
+ if(gameModel->GetPlaceSave() && gameModel->GetPlaceSave()->Collapsed())
+ gameModel->GetPlaceSave()->Expand();
}
void GameController::LoadStamp()
{
gameModel->SetPlaceSave(gameModel->GetStamp());
+ if(gameModel->GetPlaceSave() && gameModel->GetPlaceSave()->Collapsed())
+ gameModel->GetPlaceSave()->Expand();
}
void GameController::TranslateSave(ui::Point point)