From b1e8191040b385c3f69ef97eeb8352293973414e Mon Sep 17 00:00:00 2001 From: truelight Date: Tue, 13 Mar 2007 12:05:41 +0000 Subject: [PATCH] (svn r9137) -Fix: if all news-setting buttons show 'full', make the ALL-button show 'full' too --- src/news_gui.cpp | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/news_gui.cpp b/src/news_gui.cpp index 420fc9aef9..2c1add796f 100644 --- a/src/news_gui.cpp +++ b/src/news_gui.cpp @@ -754,11 +754,18 @@ static void MessageOptionsWndProc(Window *w, WindowEvent *e) switch (e->event) { case WE_CREATE: { uint32 val = _news_display_opt; + uint32 all_val; int i; - WP(w, def_d).data_1 = 0; /* Set up the initial disabled buttons in the case of 'off' or 'full' */ - for (i = 0; i < NT_END; i++, val >>= 2) SetMessageButtonStates(w, val & 0x3, i); + all_val = val & 0x3; + for (i = 0; i < NT_END; i++, val >>= 2) { + SetMessageButtonStates(w, val & 0x3, i); + /* If the value doesn't match the ALL-button value, set the ALL-button value to 'off' */ + if ((val & 0x3) != all_val) all_val = 0; + } + /* If all values are the same value, the ALL-button will take over this value */ + WP(w, def_d).data_1 = all_val; } break; case WE_PAINT: {