diff options
| author | Simon Robertshaw <simon@hardwired.org.uk> | 2012-04-15 21:16:57 (GMT) |
|---|---|---|
| committer | Simon Robertshaw <simon@hardwired.org.uk> | 2012-04-15 21:16:57 (GMT) |
| commit | a0506495ad71a18ba2976d31d437dfd6bd8241f8 (patch) | |
| tree | 9a48cf745af2379fcd2a922b75807f34f6971bfe /src/options/OptionsModel.cpp | |
| parent | 900e23128a16bd49d8929a232ac57fc7e30ad3f9 (diff) | |
| download | powder-a0506495ad71a18ba2976d31d437dfd6bd8241f8.zip powder-a0506495ad71a18ba2976d31d437dfd6bd8241f8.tar.gz | |
Simulation options
Diffstat (limited to 'src/options/OptionsModel.cpp')
| -rw-r--r-- | src/options/OptionsModel.cpp | 61 |
1 files changed, 59 insertions, 2 deletions
diff --git a/src/options/OptionsModel.cpp b/src/options/OptionsModel.cpp index 9aed1cc..3c498e1 100644 --- a/src/options/OptionsModel.cpp +++ b/src/options/OptionsModel.cpp @@ -7,9 +7,66 @@ #include "OptionsModel.h" -OptionsModel::OptionsModel() { - // TODO Auto-generated constructor stub +OptionsModel::OptionsModel(Simulation * sim_) { + sim = sim_; +} + +void OptionsModel::AddObserver(OptionsView* view) +{ + observers.push_back(view); + view->NotifySettingsChanged(this); +} + +bool OptionsModel::GetHeatSimulation() +{ + return sim->legacy_enable?false:true; +} + +void OptionsModel::SetHeatSimulation(bool state) +{ + sim->legacy_enable = state?0:1; + notifySettingsChanged(); +} + +bool OptionsModel::GetAmbientHeatSimulation() +{ + return sim->aheat_enable?true:false; +} + +void OptionsModel::SetAmbientHeatSimulation(bool state) +{ + sim->aheat_enable = state?1:0; + notifySettingsChanged(); +} + +bool OptionsModel::GetNewtonianGravity() +{ + return false; + //sim-> +} + +void OptionsModel::SetNewtonianGravity(bool state) +{ + notifySettingsChanged(); +} + +bool OptionsModel::GetWaterEqualisation() +{ + return sim->water_equal_test?true:false; +} + +void OptionsModel::SetWaterEqualisation(bool state) +{ + sim->water_equal_test = state?1:0; + notifySettingsChanged(); +} +void OptionsModel::notifySettingsChanged() +{ + for(int i = 0; i < observers.size(); i++) + { + observers[i]->NotifySettingsChanged(this); + } } OptionsModel::~OptionsModel() { |
