From ec9540a12a9170f8b88e1d715c9321edaeeebfd4 Mon Sep 17 00:00:00 2001 From: frosch Date: Sun, 13 Mar 2011 21:31:29 +0000 Subject: (svn r22241) -Codechange: Add additional to-be-used parameter to OnInvalidateData(). --- src/graph_gui.cpp | 38 ++++++++++++++++++++++++++++++++------ 1 file changed, 32 insertions(+), 6 deletions(-) (limited to 'src/graph_gui.cpp') diff --git a/src/graph_gui.cpp b/src/graph_gui.cpp index 28ccf2bed..6354366b0 100644 --- a/src/graph_gui.cpp +++ b/src/graph_gui.cpp @@ -91,8 +91,14 @@ struct GraphLegendWindow : Window { InvalidateWindowData(WC_COMPANY_VALUE, 0); } - virtual void OnInvalidateData(int data) + /** + * Some data on this window has become invalid. + * @param data Information about the changed data. + * @param gui_scope Whether the call is done from GUI scope. You may not do everything when not in GUI scope. See #InvalidateWindowData() for details. + */ + virtual void OnInvalidateData(int data = 0, bool gui_scope = true) { + if (!gui_scope) return; if (Company::IsValidID(data)) return; SetBit(_legend_excluded_companies, data); @@ -543,8 +549,14 @@ public: this->UpdateStatistics(false); } - virtual void OnInvalidateData(int data) + /** + * Some data on this window has become invalid. + * @param data Information about the changed data. + * @param gui_scope Whether the call is done from GUI scope. You may not do everything when not in GUI scope. See #InvalidateWindowData() for details. + */ + virtual void OnInvalidateData(int data = 0, bool gui_scope = true) { + if (!gui_scope) return; this->UpdateStatistics(true); } @@ -1013,8 +1025,14 @@ struct PaymentRatesGraphWindow : BaseGraphWindow { /* Override default OnTick */ } - virtual void OnInvalidateData(int data) + /** + * Some data on this window has become invalid. + * @param data Information about the changed data. + * @param gui_scope Whether the call is done from GUI scope. You may not do everything when not in GUI scope. See #InvalidateWindowData() for details. + */ + virtual void OnInvalidateData(int data = 0, bool gui_scope = true) { + if (!gui_scope) return; this->OnHundredthTick(); } @@ -1247,8 +1265,14 @@ public: } } - virtual void OnInvalidateData(int data) + /** + * Some data on this window has become invalid. + * @param data Information about the changed data. + * @param gui_scope Whether the call is done from GUI scope. You may not do everything when not in GUI scope. See #InvalidateWindowData() for details. + */ + virtual void OnInvalidateData(int data = 0, bool gui_scope = true) { + if (!gui_scope) return; if (data == 0) { this->companies.ForceRebuild(); } else { @@ -1488,11 +1512,13 @@ struct PerformanceRatingDetailWindow : Window { } /** - * Invalidate the data of this window. + * Some data on this window has become invalid. * @param data the company ID of the company that is going to be removed + * @param gui_scope Whether the call is done from GUI scope. You may not do everything when not in GUI scope. See #InvalidateWindowData() for details. */ - virtual void OnInvalidateData(int data) + virtual void OnInvalidateData(int data = 0, bool gui_scope = true) { + if (!gui_scope) return; /* Disable the companies who are not active */ for (CompanyID i = COMPANY_FIRST; i < MAX_COMPANIES; i++) { this->SetWidgetDisabledState(i + PRW_COMPANY_FIRST, !Company::IsValidID(i)); -- cgit v1.2.3-70-g09d2