news_gui.cpp File Reference

GUI functions related to news messages. More...

#include "stdafx.h"
#include "gui.h"
#include "viewport_func.h"
#include "news_type.h"
#include "strings_func.h"
#include "window_func.h"
#include "date_func.h"
#include "vehicle_base.h"
#include "vehicle_func.h"
#include "vehicle_gui.h"
#include "station_base.h"
#include "industry.h"
#include "town.h"
#include "sound_func.h"
#include "string_func.h"
#include "widgets/dropdown_func.h"
#include "statusbar_gui.h"
#include "company_manager_face.h"
#include "company_func.h"
#include "engine_base.h"
#include "engine_gui.h"
#include "core/geometry_func.hpp"
#include "table/strings.h"

Go to the source code of this file.

Data Structures

struct  NewsSubtypeData
 Data common to all news items of a given subtype (structure). More...
struct  NewsWindow
 Window class displaying a news item. More...
struct  MessageHistoryWindow
struct  MessageOptionsWindow

Enumerations

enum  NewsTypeWidgets {
  NTW_PANEL, NTW_TITLE, NTW_HEADLINE, NTW_CLOSEBOX,
  NTW_DATE, NTW_CAPTION, NTW_INSET, NTW_VIEWPORT,
  NTW_COMPANY_MSG, NTW_MESSAGE, NTW_MGR_FACE, NTW_MGR_NAME,
  NTW_VEH_TITLE, NTW_VEH_BKGND, NTW_VEH_NAME, NTW_VEH_SPR,
  NTW_VEH_INFO
}
 

Widget numbers of the news display windows.

More...
enum  MessageHistoryWidgets { MHW_STICKYBOX, MHW_BACKGROUND, MHW_SCROLLBAR }
 

Widget numbers of the message history window.

More...
enum  MessageOptionsSpace {
  MOS_WIDG_PER_SETTING = 4, MOS_LEFT_EDGE = 6, MOS_COLUMN_SPACING = 4, MOS_RIGHT_EDGE = 6,
  MOS_BUTTON_SPACE = 10, MOS_ABOVE_GLOBAL_SETTINGS = 6, MOS_BOTTOM_EDGE = 6
}
 

Constants in the message options window.

More...
enum  MessageOptionWidgets {
  WIDGET_NEWSOPT_BACKGROUND, WIDGET_NEWSOPT_LABEL, WIDGET_NEWSOPT_DROP_SUMMARY, WIDGET_NEWSOPT_LABEL_SUMMARY,
  WIDGET_NEWSOPT_SOUNDTICKER, WIDGET_NEWSOPT_SOUNDTICKER_LABEL, WIDGET_NEWSOPT_START_OPTION, WIDGET_NEWSOPT_END_OPTION = WIDGET_NEWSOPT_START_OPTION + NT_END * MOS_WIDG_PER_SETTING
}
 

Message options widget numbers.

More...

Functions

static TileIndex GetReferenceTile (NewsReferenceType reftype, uint32 ref)
 Get the position a news-reference is referencing.
 assert_compile (lengthof(_news_subtype_data)==NS_END)
 assert_compile (lengthof(_news_type_data)==NT_END)
static void ShowNewspaper (const NewsItem *ni)
 Open up an own newspaper window for the news item.
static void ShowTicker (const NewsItem *ni)
 Show news item in the ticker.
void InitNewsItemStructs ()
 Initialize the news-items data structures.
static bool ReadyForNextItem ()
 Are we ready to show another news item? Only if nothing is in the newsticker and no newspaper is displayed.
static void MoveToNextItem ()
 Move to the next news item.
void AddNewsItem (StringID string, NewsSubtype subtype, NewsReferenceType reftype1, uint32 ref1, NewsReferenceType reftype2, uint32 ref2, void *free_data)
 Add a new newsitem to be shown.
static void DeleteNewsItem (NewsItem *ni)
 Delete a news item from the queue.
void DeleteVehicleNews (VehicleID vid, StringID news)
 Delete a news item type about a vehicle.
void DeleteStationNews (StationID sid)
 Remove news regarding given station so there are no 'unknown station now accepts Mail' or 'First train arrived at unknown station' news items.
void DeleteIndustryNews (IndustryID iid)
 Remove news regarding given industry.
void DeleteInvalidEngineNews ()
 Remove engine announcements for invalid engines.
static void RemoveOldNewsItems ()
void ChangeVehicleNews (VehicleID from_index, VehicleID to_index)
 Report a change in vehicle IDs (due to autoreplace) to affected vehicle news.
void NewsLoop ()
static void ShowNewsMessage (const NewsItem *ni)
 Do a forced show of a specific message.
void ShowLastNewsMessage ()
 Show previous news item.
static void DrawNewsString (uint left, uint right, int y, TextColour colour, const NewsItem *ni)
 Draw an unformatted news message truncated to a maximum length.
void ShowMessageHistory ()
 Display window with news messages history.
static NWidgetBaseMakeButtonsColumn (int *biggest_index)
 Make a column with the buttons for changing each news category setting, and the global settings.
static NWidgetBaseMakeDescriptionColumn (int *biggest_index)
 Make a column with descriptions for each news category and the global settings.
void ShowMessageOptions ()

Variables

const NewsItem_statusbar_news_item = NULL
bool _news_ticker_sound
 Make a ticker sound when a news item is published.
static uint MIN_NEWS_AMOUNT = 30
 prefered minimum amount of news messages
static uint _total_news = 0
 current number of news items
static NewsItem_oldest_news = NULL
 head of news items queue
static NewsItem_latest_news = NULL
 tail of news items queue
static const NewsItem_forced_news = NULL
 Forced news item.
static const NewsItem_current_news = NULL
 Current news item (last item shown regularly).
static const NWidgetPart _nested_normal_news_widgets []
static const WindowDesc _normal_news_desc (WDP_MANUAL, 0, 0, WC_NEWS_WINDOW, WC_NONE, 0, _nested_normal_news_widgets, lengthof(_nested_normal_news_widgets))
static const NWidgetPart _nested_vehicle_news_widgets []
static const WindowDesc _vehicle_news_desc (WDP_MANUAL, 0, 0, WC_NEWS_WINDOW, WC_NONE, 0, _nested_vehicle_news_widgets, lengthof(_nested_vehicle_news_widgets))
static const NWidgetPart _nested_company_news_widgets []
static const WindowDesc _company_news_desc (WDP_MANUAL, 0, 0, WC_NEWS_WINDOW, WC_NONE, 0, _nested_company_news_widgets, lengthof(_nested_company_news_widgets))
static const NWidgetPart _nested_thin_news_widgets []
static const WindowDesc _thin_news_desc (WDP_MANUAL, 0, 0, WC_NEWS_WINDOW, WC_NONE, 0, _nested_thin_news_widgets, lengthof(_nested_thin_news_widgets))
static const NWidgetPart _nested_small_news_widgets []
static const WindowDesc _small_news_desc (WDP_MANUAL, 0, 0, WC_NEWS_WINDOW, WC_NONE, 0, _nested_small_news_widgets, lengthof(_nested_small_news_widgets))
static const NewsSubtypeData _news_subtype_data []
 Data common to all news items of a given subtype (actual data).
NewsTypeData _news_type_data []
 Per-NewsType data.
static const NWidgetPart _nested_message_history []
static const WindowDesc _message_history_desc (WDP_AUTO, 400, 140, WC_MESSAGE_HISTORY, WC_NONE, WDF_UNCLICK_BUTTONS, _nested_message_history, lengthof(_nested_message_history))
static const NWidgetPart _nested_message_options_widgets []
static const WindowDesc _message_options_desc (WDP_AUTO, 0, 0, WC_GAME_OPTIONS, WC_NONE, WDF_UNCLICK_BUTTONS, _nested_message_options_widgets, lengthof(_nested_message_options_widgets))

Detailed Description

GUI functions related to news messages.

Definition in file news_gui.cpp.


Enumeration Type Documentation

Widget numbers of the message history window.

Definition at line 971 of file news_gui.cpp.

Constants in the message options window.

Enumerator:
MOS_WIDG_PER_SETTING 

Number of widgets needed for each news category, starting at widget WIDGET_NEWSOPT_START_OPTION.

MOS_LEFT_EDGE 

Number of pixels between left edge of the window and the options buttons column.

MOS_COLUMN_SPACING 

Number of pixels between the buttons and the description columns.

MOS_RIGHT_EDGE 

Number of pixels between right edge of the window and the options descriptions column.

MOS_BUTTON_SPACE 

Additional space in the button with the option value (for better looks).

MOS_ABOVE_GLOBAL_SETTINGS 

Number of vertical pixels between the categories and the global options.

MOS_BOTTOM_EDGE 

Number of pixels between bottom edge of the window and bottom of the global options.

Definition at line 1112 of file news_gui.cpp.

Message options widget numbers.

Enumerator:
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 

First widget after the groups.

Definition at line 1125 of file news_gui.cpp.

Widget numbers of the news display windows.

Enumerator:
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.

Definition at line 75 of file news_gui.cpp.


Function Documentation

void AddNewsItem ( StringID  string,
NewsSubtype  subtype,
NewsReferenceType  reftype1,
uint32  ref1,
NewsReferenceType  reftype2,
uint32  ref2,
void *  free_data 
)

Add a new newsitem to be shown.

Parameters:
string String to display
subtype news category, any of the NewsSubtype enums (NS_)
reftype1 Type of ref1
ref1 Reference 1 to some object: Used for a possible viewport, scrolling after clicking on the news, and for deleteing the news when the object is deleted.
reftype2 Type of ref2
ref2 Reference 2 to some object: Used for scrolling after clicking on the news, and for deleteing the news when the object is deleted.
free_data Pointer to data that must be freed once the news message is cleared
See also:
NewsSubtype

Definition at line 691 of file news_gui.cpp.

References _cur_year, _date, _settings_client, _total_news, GUISettings::coloured_news_year, CopyOutDParam(), NewsItem::date, NewsSubtypeData::flags, NewsItem::flags, NewsItem::free_data, ClientSettings::gui, lengthof, NewsItem::next, NF_INCOLOUR, NewsItem::prev, NewsItem::ref1, NewsItem::ref2, NewsItem::reftype1, NewsItem::reftype2, SetWindowDirty(), NewsItem::string_id, and NewsItem::subtype.

Referenced by AddVehicleNewsItem(), Subsidy::AwardTo(), ChangeIndustryProduction(), CheckSwitchToEuro(), CmdFoundTown(), Disaster_CoalMine_Init(), DisasterTick_Big_Ufo(), GenerateCompanyName(), NewVehicleAvailable(), and ShowRejectOrAcceptNews().

void ChangeVehicleNews ( VehicleID  from_index,
VehicleID  to_index 
)

Report a change in vehicle IDs (due to autoreplace) to affected vehicle news.

Note:
Viewports of currently displayed news is changed via ChangeVehicleViewports
Parameters:
from_index the old vehicle ID
to_index the new vehicle ID

Definition at line 851 of file news_gui.cpp.

References NewsItem::next, NR_VEHICLE, and NS_ADVICE.

Referenced by CopyHeadSpecificThings().

void DeleteIndustryNews ( IndustryID  iid  ) 

Remove news regarding given industry.

Parameters:
iid industry to remove news about

Definition at line 806 of file news_gui.cpp.

References DeleteNewsItem(), NewsItem::next, NR_INDUSTRY, NewsItem::ref1, NewsItem::ref2, NewsItem::reftype1, and NewsItem::reftype2.

void DeleteStationNews ( StationID  sid  ) 

Remove news regarding given station so there are no 'unknown station now accepts Mail' or 'First train arrived at unknown station' news items.

Parameters:
sid station to remove news about

Definition at line 789 of file news_gui.cpp.

References DeleteNewsItem(), NewsItem::next, NR_STATION, NewsItem::ref1, NewsItem::ref2, NewsItem::reftype1, and NewsItem::reftype2.

Referenced by Station::~Station().

void DeleteVehicleNews ( VehicleID  vid,
StringID  news 
)

Delete a news item type about a vehicle.

When the news item type is INVALID_STRING_ID all news about the vehicle gets deleted.

Parameters:
vid The vehicle to remove the news for.
news The news type to remove.

Definition at line 770 of file news_gui.cpp.

References DeleteNewsItem(), INVALID_STRING_ID, NewsItem::next, NR_VEHICLE, NewsItem::ref1, NewsItem::ref2, NewsItem::reftype1, NewsItem::reftype2, and NewsItem::string_id.

Referenced by CmdStartStopVehicle(), DeleteOrderWarnings(), Vehicle::HandlePathfindingResult(), and Vehicle::~Vehicle().

static void DrawNewsString ( uint  left,
uint  right,
int  y,
TextColour  colour,
const NewsItem ni 
) [static]

Draw an unformatted news message truncated to a maximum length.

If length exceeds maximum length it will be postfixed by '...'

Parameters:
left the left most location for the string
right the right most location for the string
y position of the string
colour the colour the string will be shown in
*ni NewsItem being printed
maxw maximum width of string in pixels

Definition at line 935 of file news_gui.cpp.

References CopyInDParam(), DrawString(), lastof, lengthof, NewsItem::string_id, and Utf8Encode().

Referenced by MessageHistoryWindow::DrawWidget().

static TileIndex GetReferenceTile ( NewsReferenceType  reftype,
uint32  ref 
) [static]

Get the position a news-reference is referencing.

Parameters:
reftype The type of reference.
ref The reference.
Returns:
A tile for the referenced object, or INVALID_TILE if none.

Definition at line 63 of file news_gui.cpp.

References Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tcache, Tzero >::PoolItem<&_town_pool >::Get(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tcache, Tzero >::PoolItem<&_industry_pool >::Get(), SpecializedStation< Station, false >::Get(), INVALID_TILE, NR_INDUSTRY, NR_STATION, NR_TILE, NR_TOWN, TileDiffXY(), and BaseStation::xy.

Referenced by NewsWindow::OnClick().

static NWidgetBase* MakeButtonsColumn ( int *  biggest_index  )  [static]

Make a column with the buttons for changing each news category setting, and the global settings.

Definition at line 1273 of file news_gui.cpp.

References NWidgetContainer::Add(), AWV_DECREASE, AWV_INCREASE, max(), MOS_ABOVE_GLOBAL_SETTINGS, MOS_WIDG_PER_SETTING, NT_END, NWidgetResizeBase::SetFill(), WIDGET_NEWSOPT_DROP_SUMMARY, WIDGET_NEWSOPT_SOUNDTICKER, WIDGET_NEWSOPT_START_OPTION, WWT_DROPDOWN, and WWT_TEXTBTN_2.

static NWidgetBase* MakeDescriptionColumn ( int *  biggest_index  )  [static]

Make a column with descriptions for each news category and the global settings.

Definition at line 1317 of file news_gui.cpp.

References NWidgetContainer::Add(), max(), MOS_ABOVE_GLOBAL_SETTINGS, MOS_WIDG_PER_SETTING, NT_END, NWidgetResizeBase::SetFill(), WIDGET_NEWSOPT_LABEL_SUMMARY, WIDGET_NEWSOPT_SOUNDTICKER_LABEL, WIDGET_NEWSOPT_START_OPTION, and WWT_TEXT.


Variable Documentation

const NewsItem* _current_news = NULL [static]

Current news item (last item shown regularly).

Definition at line 54 of file news_gui.cpp.

const NewsItem* _forced_news = NULL [static]

Forced news item.

Users can force an item by accessing the history or "last message". If the message being shown was forced by the user, a pointer is stored in _forced_news. Otherwise, _forced_news variable is NULL. item the user has asked for

Definition at line 51 of file news_gui.cpp.

const NWidgetPart _nested_company_news_widgets[] [static]
Initial value:
 {
  NWidget(WWT_PANEL, COLOUR_WHITE, NTW_PANEL),
    NWidget(NWID_HORIZONTAL), SetPadding(1, 1, 0, 1),
      NWidget(NWID_VERTICAL),
        NWidget(WWT_TEXT, COLOUR_WHITE, NTW_CLOSEBOX), SetDataTip(STR_SILVER_CROSS, STR_NULL), SetPadding(0, 0, 0, 1),
        NWidget(NWID_SPACER), SetFill(0, 1),
      EndContainer(),
      NWidget(WWT_LABEL, COLOUR_WHITE, NTW_TITLE), SetFill(1, 1), SetMinimalSize(410, 20), SetDataTip(STR_EMPTY, STR_NULL),
    EndContainer(),
    NWidget(NWID_HORIZONTAL), SetPadding(0, 1, 1, 1),
      NWidget(NWID_VERTICAL),
        NWidget(WWT_EMPTY, COLOUR_WHITE, NTW_MGR_FACE), SetMinimalSize(93, 119), SetPadding(2, 6, 2, 1),
        NWidget(NWID_HORIZONTAL),
          NWidget(WWT_EMPTY, COLOUR_WHITE, NTW_MGR_NAME), SetMinimalSize(93, 24), SetPadding(0, 0, 0, 1),
          NWidget(NWID_SPACER), SetFill(1, 0),
        EndContainer(),
        NWidget(NWID_SPACER), SetFill(0, 1),
      EndContainer(),
      NWidget(WWT_EMPTY, COLOUR_WHITE, NTW_COMPANY_MSG), SetFill(1, 1), SetMinimalSize(328, 150),
    EndContainer(),
  EndContainer(),
}

Definition at line 145 of file news_gui.cpp.

const NWidgetPart _nested_message_history[] [static]
Initial value:
 {
  NWidget(NWID_HORIZONTAL),
    NWidget(WWT_CLOSEBOX, COLOUR_BROWN),
    NWidget(WWT_CAPTION, COLOUR_BROWN), SetDataTip(STR_MESSAGE_HISTORY, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS),
    NWidget(WWT_SHADEBOX, COLOUR_BROWN),
    NWidget(WWT_STICKYBOX, COLOUR_BROWN),
  EndContainer(),

  NWidget(NWID_HORIZONTAL),
    NWidget(WWT_PANEL, COLOUR_BROWN, MHW_BACKGROUND), SetMinimalSize(200, 125), SetDataTip(0x0, STR_MESSAGE_HISTORY_TOOLTIP), SetResize(1, 12), SetScrollbar(MHW_SCROLLBAR),
    EndContainer(),
    NWidget(NWID_VERTICAL),
      NWidget(NWID_VSCROLLBAR, COLOUR_BROWN, MHW_SCROLLBAR),
      NWidget(WWT_RESIZEBOX, COLOUR_BROWN),
    EndContainer(),
  EndContainer(),
}

Definition at line 1079 of file news_gui.cpp.

const NWidgetPart _nested_message_options_widgets[] [static]
const NWidgetPart _nested_normal_news_widgets[] [static]
Initial value:
 {
  NWidget(WWT_PANEL, COLOUR_WHITE, NTW_PANEL),
    NWidget(NWID_HORIZONTAL), SetPadding(1, 1, 0, 1),
      NWidget(WWT_TEXT, COLOUR_WHITE, NTW_CLOSEBOX), SetDataTip(STR_SILVER_CROSS, STR_NULL), SetPadding(0, 0, 0, 1),
      NWidget(NWID_SPACER), SetFill(1, 0),
      NWidget(NWID_VERTICAL),
        NWidget(WWT_LABEL, COLOUR_WHITE, NTW_DATE), SetDataTip(STR_DATE_LONG_SMALL, STR_NULL),
        NWidget(NWID_SPACER), SetFill(0, 1),
      EndContainer(),
    EndContainer(),
    NWidget(WWT_EMPTY, COLOUR_WHITE, NTW_MESSAGE), SetMinimalSize(428, 154), SetPadding(0, 1, 1, 1),
  EndContainer(),
}

Definition at line 96 of file news_gui.cpp.

const NWidgetPart _nested_small_news_widgets[] [static]
Initial value:
 {
  
  NWidget(NWID_HORIZONTAL),
    NWidget(WWT_CLOSEBOX, COLOUR_LIGHT_BLUE, NTW_CLOSEBOX),
    NWidget(WWT_EMPTY, COLOUR_LIGHT_BLUE, NTW_CAPTION), SetFill(1, 0),
  EndContainer(),

  
  NWidget(WWT_PANEL, COLOUR_LIGHT_BLUE, NTW_HEADLINE),
    NWidget(WWT_INSET, COLOUR_LIGHT_BLUE, NTW_INSET), SetPadding(2, 2, 2, 2),
      NWidget(NWID_VIEWPORT, INVALID_COLOUR, NTW_VIEWPORT), SetPadding(1, 1, 1, 1), SetMinimalSize(274, 47), SetFill(1, 0),
    EndContainer(),
    NWidget(WWT_EMPTY, COLOUR_WHITE, NTW_MESSAGE), SetMinimalSize(275, 20), SetFill(1, 0),
  EndContainer(),
}

Definition at line 199 of file news_gui.cpp.

const NWidgetPart _nested_thin_news_widgets[] [static]
Initial value:
 {
  NWidget(WWT_PANEL, COLOUR_WHITE, NTW_PANEL),
    NWidget(NWID_HORIZONTAL), SetPadding(1, 1, 0, 1),
      NWidget(WWT_TEXT, COLOUR_WHITE, NTW_CLOSEBOX), SetDataTip(STR_SILVER_CROSS, STR_NULL), SetPadding(0, 0, 0, 1),
      NWidget(NWID_SPACER), SetFill(1, 0),
      NWidget(NWID_VERTICAL),
        NWidget(WWT_LABEL, COLOUR_WHITE, NTW_DATE), SetDataTip(STR_DATE_LONG_SMALL, STR_NULL),
        NWidget(NWID_SPACER), SetFill(0, 1),
      EndContainer(),
    EndContainer(),
    NWidget(WWT_EMPTY, COLOUR_WHITE, NTW_MESSAGE), SetMinimalSize(428, 48), SetFill(1, 0), SetPadding(0, 1, 0, 1),
    NWidget(NWID_VIEWPORT, INVALID_COLOUR, NTW_VIEWPORT), SetMinimalSize(426, 70), SetPadding(1, 2, 2, 2),
  EndContainer(),
}

Definition at line 176 of file news_gui.cpp.

const NWidgetPart _nested_vehicle_news_widgets[] [static]
Initial value:
 {
  NWidget(WWT_PANEL, COLOUR_WHITE, NTW_PANEL),
    NWidget(NWID_HORIZONTAL), SetPadding(1, 1, 0, 1),
      NWidget(NWID_VERTICAL),
        NWidget(WWT_TEXT, COLOUR_WHITE, NTW_CLOSEBOX), SetDataTip(STR_SILVER_CROSS, STR_NULL), SetPadding(0, 0, 0, 1),
        NWidget(NWID_SPACER), SetFill(0, 1),
      EndContainer(),
      NWidget(WWT_LABEL, COLOUR_WHITE, NTW_VEH_TITLE), SetFill(1, 1), SetMinimalSize(419, 55), SetDataTip(STR_EMPTY, STR_NULL),
    EndContainer(),
    NWidget(WWT_PANEL, COLOUR_WHITE, NTW_VEH_BKGND), SetPadding(0, 25, 1, 25),
      NWidget(NWID_VERTICAL),
        NWidget(WWT_EMPTY, INVALID_COLOUR, NTW_VEH_NAME), SetMinimalSize(369, 33), SetFill(1, 0),
        NWidget(WWT_EMPTY, INVALID_COLOUR, NTW_VEH_SPR),  SetMinimalSize(369, 32), SetFill(1, 0),
        NWidget(WWT_EMPTY, INVALID_COLOUR, NTW_VEH_INFO), SetMinimalSize(369, 46), SetFill(1, 0),
      EndContainer(),
    EndContainer(),
  EndContainer(),
}

Definition at line 118 of file news_gui.cpp.

Initial value:
 {
  
  { NT_ARRIVAL_COMPANY,  (NF_NO_TRANSPARENT | NF_SHADE), &_thin_news_desc    }, 
  { NT_ARRIVAL_OTHER,    (NF_NO_TRANSPARENT | NF_SHADE), &_thin_news_desc    }, 
  { NT_ACCIDENT,         (NF_NO_TRANSPARENT | NF_SHADE), &_thin_news_desc    }, 
  { NT_COMPANY_INFO,     NF_NONE,                        &_company_news_desc }, 
  { NT_COMPANY_INFO,     NF_NONE,                        &_company_news_desc }, 
  { NT_COMPANY_INFO,     NF_NONE,                        &_company_news_desc }, 
  { NT_COMPANY_INFO,     NF_NONE,                        &_company_news_desc }, 
  { NT_INDUSTRY_OPEN,    (NF_NO_TRANSPARENT | NF_SHADE), &_thin_news_desc    }, 
  { NT_INDUSTRY_CLOSE,   (NF_NO_TRANSPARENT | NF_SHADE), &_thin_news_desc    }, 
  { NT_ECONOMY,          NF_NONE,                        &_normal_news_desc  }, 
  { NT_INDUSTRY_COMPANY, (NF_NO_TRANSPARENT | NF_SHADE), &_thin_news_desc    }, 
  { NT_INDUSTRY_OTHER,   (NF_NO_TRANSPARENT | NF_SHADE), &_thin_news_desc    }, 
  { NT_INDUSTRY_NOBODY,  (NF_NO_TRANSPARENT | NF_SHADE), &_thin_news_desc    }, 
  { NT_ADVICE,           NF_INCOLOUR,                    &_small_news_desc   }, 
  { NT_NEW_VEHICLES,     NF_NONE,                        &_vehicle_news_desc }, 
  { NT_ACCEPTANCE,       NF_INCOLOUR,                    &_small_news_desc   }, 
  { NT_SUBSIDIES,        NF_NONE,                        &_normal_news_desc  }, 
  { NT_GENERAL,          NF_NONE,                        &_normal_news_desc  }, 
}

Data common to all news items of a given subtype (actual data).

Definition at line 234 of file news_gui.cpp.

Initial value:
 {
  
  NewsTypeData("arrival_player",    60, SND_1D_APPLAUSE, STR_NEWS_MESSAGE_TYPE_ARRIVAL_OF_FIRST_VEHICLE_OWN       ),  
  NewsTypeData("arrival_other",     60, SND_1D_APPLAUSE, STR_NEWS_MESSAGE_TYPE_ARRIVAL_OF_FIRST_VEHICLE_OTHER     ),  
  NewsTypeData("accident",          90, SND_BEGIN,       STR_NEWS_MESSAGE_TYPE_ACCIDENTS_DISASTERS                ),  
  NewsTypeData("company_info",      60, SND_BEGIN,       STR_NEWS_MESSAGE_TYPE_COMPANY_INFORMATION                ),  
  NewsTypeData("open",              90, SND_BEGIN,       STR_NEWS_MESSAGE_TYPE_INDUSTRY_OPEN                      ),  
  NewsTypeData("close",             90, SND_BEGIN,       STR_NEWS_MESSAGE_TYPE_INDUSTRY_CLOSE                     ),  
  NewsTypeData("economy",           30, SND_BEGIN,       STR_NEWS_MESSAGE_TYPE_ECONOMY_CHANGES                    ),  
  NewsTypeData("production_player", 30, SND_BEGIN,       STR_NEWS_MESSAGE_TYPE_INDUSTRY_CHANGES_SERVED_BY_COMPANY ),  
  NewsTypeData("production_other",  30, SND_BEGIN,       STR_NEWS_MESSAGE_TYPE_INDUSTRY_CHANGES_SERVED_BY_OTHER   ),  
  NewsTypeData("production_nobody", 30, SND_BEGIN,       STR_NEWS_MESSAGE_TYPE_INDUSTRY_CHANGES_UNSERVED          ),  
  NewsTypeData("advice",           150, SND_BEGIN,       STR_NEWS_MESSAGE_TYPE_ADVICE_INFORMATION_ON_COMPANY      ),  
  NewsTypeData("new_vehicles",      30, SND_1E_OOOOH,    STR_NEWS_MESSAGE_TYPE_NEW_VEHICLES                       ),  
  NewsTypeData("acceptance",        90, SND_BEGIN,       STR_NEWS_MESSAGE_TYPE_CHANGES_OF_CARGO_ACCEPTANCE        ),  
  NewsTypeData("subsidies",        180, SND_BEGIN,       STR_NEWS_MESSAGE_TYPE_SUBSIDIES                          ),  
  NewsTypeData("general",           60, SND_BEGIN,       STR_NEWS_MESSAGE_TYPE_GENERAL_INFORMATION                ),  
}

Per-NewsType data.

Definition at line 261 of file news_gui.cpp.

Referenced by ConvertOldNewsSetting(), NewsDisplayLoadConfig(), and NewsDisplaySaveConfig().


Generated on Sun May 15 19:20:24 2011 for OpenTTD by  doxygen 1.6.1