summaryrefslogtreecommitdiff
path: root/src/industry_gui.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/industry_gui.cpp')
-rw-r--r--src/industry_gui.cpp18
1 files changed, 13 insertions, 5 deletions
diff --git a/src/industry_gui.cpp b/src/industry_gui.cpp
index 7a45c1192..7410cb3a3 100644
--- a/src/industry_gui.cpp
+++ b/src/industry_gui.cpp
@@ -1708,11 +1708,19 @@ public:
*/
void OnInvalidateData(int data = 0, bool gui_scope = true) override
{
- if (data == 0) {
- /* This needs to be done in command-scope to enforce rebuilding before resorting invalid data */
- this->industries.ForceRebuild();
- } else {
- this->industries.ForceResort();
+ switch (data) {
+ case IDIWD_FORCE_REBUILD:
+ /* This needs to be done in command-scope to enforce rebuilding before resorting invalid data */
+ this->industries.ForceRebuild();
+ break;
+
+ case IDIWD_PRODUCTION_CHANGE:
+ if (this->industries.SortType() == 2) this->industries.ForceResort();
+ break;
+
+ default:
+ this->industries.ForceResort();
+ break;
}
}
};