summaryrefslogtreecommitdiff
path: root/src/gui
diff options
context:
space:
mode:
authorjacob1 <jfu614@gmail.com>2013-07-16 15:24:11 (GMT)
committer jacob1 <jfu614@gmail.com>2013-07-16 15:24:11 (GMT)
commit5773e6afb51a52f0821f2dec0ad34617f4bbf636 (patch)
treeede3addeff780f2afc4cbe37f5f135b0d6685438 /src/gui
parente0d982367b71d3d1eb14c91c5d27b571550d935f (diff)
downloadpowder-5773e6afb51a52f0821f2dec0ad34617f4bbf636.zip
powder-5773e6afb51a52f0821f2dec0ad34617f4bbf636.tar.gz
fix multiple deco presets being able to be selected at once, fix "Decorations: Enable" coming up every time you open the deco editor, presets deselected when you leave editor
Diffstat (limited to 'src/gui')
-rw-r--r--src/gui/game/GameModel.cpp17
-rw-r--r--src/gui/game/GameView.cpp11
2 files changed, 13 insertions, 15 deletions
diff --git a/src/gui/game/GameModel.cpp b/src/gui/game/GameModel.cpp
index efb7d78..4378050 100644
--- a/src/gui/game/GameModel.cpp
+++ b/src/gui/game/GameModel.cpp
@@ -799,13 +799,16 @@ bool GameModel::GetPaused()
void GameModel::SetDecoration(bool decorationState)
{
- ren->decorations_enable = decorationState?1:0;
- notifyDecorationChanged();
- UpdateQuickOptions();
- if (decorationState)
- SetInfoTip("Decorations Layer: On");
- else
- SetInfoTip("Decorations Layer: Off");
+ if (ren->decorations_enable != decorationState)
+ {
+ ren->decorations_enable = decorationState?1:0;
+ notifyDecorationChanged();
+ UpdateQuickOptions();
+ if (decorationState)
+ SetInfoTip("Decorations Layer: On");
+ else
+ SetInfoTip("Decorations Layer: Off");
+ }
}
bool GameModel::GetDecoration()
diff --git a/src/gui/game/GameView.cpp b/src/gui/game/GameView.cpp
index 3aac3fc..96806b1 100644
--- a/src/gui/game/GameView.cpp
+++ b/src/gui/game/GameView.cpp
@@ -741,6 +741,7 @@ void GameView::NotifyColourSelectorVisibilityChanged(GameModel * sender)
AddComponent(button);
}
AddComponent(colourPicker);
+ c->SetActiveColourPreset(-1);
}
}
@@ -754,14 +755,8 @@ void GameView::NotifyColourPresetsChanged(GameModel * sender)
ColourPresetAction(GameView * _v, int preset) : preset(preset) { v = _v; }
void ActionCallback(ui::Button * sender_)
{
- ToolButton *sender = (ToolButton*)sender_;
- if(sender->GetSelectionState() == 0)
- {
- v->c->SetActiveColourPreset(preset);
- v->c->SetColour(sender->Appearance.BackgroundInactive);
- }
- else
- sender->SetSelectionState(0);
+ v->c->SetActiveColourPreset(preset);
+ v->c->SetColour(sender_->Appearance.BackgroundInactive);
}
};