diff --git a/src/news_gui.cpp b/src/news_gui.cpp --- a/src/news_gui.cpp +++ b/src/news_gui.cpp @@ -32,6 +32,8 @@ #include "engine_gui.h" #include "core/geometry_func.hpp" +#include "widgets/news_widget.h" + #include "table/strings.h" const NewsItem *_statusbar_news_item = NULL; @@ -71,27 +73,6 @@ static TileIndex GetReferenceTile(NewsRe } } -/** Widget numbers of the news display windows. */ -enum NewsTypeWidgets { - NTW_PANEL, ///< The news item background panel. - NTW_TITLE, ///< Title of the company news. - NTW_HEADLINE, ///< The news headline. - NTW_CLOSEBOX, ///< Close the window. - NTW_DATE, ///< Date of the news item. - NTW_CAPTION, ///< Title bar of the window. Only used in small news items. - NTW_INSET, ///< Inset around the viewport in the window. Only used in small news items. - NTW_VIEWPORT, ///< Viewport in the window. - NTW_COMPANY_MSG, ///< Message in company news items. - NTW_MESSAGE, ///< Space for displaying the message. Only used in small news items. - NTW_MGR_FACE, ///< Face of the manager. - NTW_MGR_NAME, ///< Name of the manager. - NTW_VEH_TITLE, ///< Vehicle new title. - NTW_VEH_BKGND, ///< Dark background of new vehicle news. - NTW_VEH_NAME, ///< Name of the new vehicle. - NTW_VEH_SPR, ///< Graphical display of the new vehicle. - NTW_VEH_INFO, ///< Some technical data of the new vehicle. -}; - /* Normal news items. */ static const NWidgetPart _nested_normal_news_widgets[] = { NWidget(WWT_PANEL, COLOUR_WHITE, NTW_PANEL), @@ -967,13 +948,6 @@ static void DrawNewsString(uint left, ui DrawString(left, right, y, buffer2, colour); } -/** Widget numbers of the message history window. */ -enum MessageHistoryWidgets { - MHW_STICKYBOX, - MHW_BACKGROUND, - MHW_SCROLLBAR, -}; - struct MessageHistoryWindow : Window { static const int top_spacing; ///< Additional spacing at the top of the #MHW_BACKGROUND widget. static const int bottom_spacing; ///< Additional spacing at the bottom of the #MHW_BACKGROUND widget. @@ -1108,32 +1082,6 @@ void ShowMessageHistory() new MessageHistoryWindow(&_message_history_desc); } -/** Constants in the message options window. */ -enum MessageOptionsSpace { - MOS_WIDG_PER_SETTING = 4, ///< Number of widgets needed for each news category, starting at widget #WIDGET_NEWSOPT_START_OPTION. - - MOS_LEFT_EDGE = 6, ///< Number of pixels between left edge of the window and the options buttons column. - MOS_COLUMN_SPACING = 4, ///< Number of pixels between the buttons and the description columns. - MOS_RIGHT_EDGE = 6, ///< Number of pixels between right edge of the window and the options descriptions column. - MOS_BUTTON_SPACE = 10, ///< Additional space in the button with the option value (for better looks). - - MOS_ABOVE_GLOBAL_SETTINGS = 6, ///< Number of vertical pixels between the categories and the global options. - MOS_BOTTOM_EDGE = 6, ///< Number of pixels between bottom edge of the window and bottom of the global options. -}; - -/** Message options widget numbers. */ -enum MessageOptionWidgets { - WIDGET_NEWSOPT_BACKGROUND, ///< Background widget. - WIDGET_NEWSOPT_LABEL, ///< Top label. - WIDGET_NEWSOPT_DROP_SUMMARY, ///< Dropdown that adjusts at once the level for all settings. - WIDGET_NEWSOPT_LABEL_SUMMARY, ///< Label of the summary drop down. - WIDGET_NEWSOPT_SOUNDTICKER, ///< Button for (de)activating sound on events. - WIDGET_NEWSOPT_SOUNDTICKER_LABEL, ///< Label of the soundticker button, - - WIDGET_NEWSOPT_START_OPTION, ///< First widget that is part of a group [<][label][>] [description] - WIDGET_NEWSOPT_END_OPTION = WIDGET_NEWSOPT_START_OPTION + NT_END * MOS_WIDG_PER_SETTING, ///< First widget after the groups. -}; - struct MessageOptionsWindow : Window { static const StringID message_opt[]; ///< Message report options, 'off', 'summary', or 'full'. int state; ///< Option value for setting all categories at once.