(svn r26266) -Fix [FS#5860]: Update smallmap overlay if player joins different company and make sure company masks are valid

This commit is contained in:
fonsinchen
2014-01-19 09:26:56 +00:00
parent be62387e44
commit b158c7d0fa
3 changed files with 21 additions and 4 deletions

View File

@@ -13,6 +13,7 @@
#define SMALLMAP_GUI_H
#include "industry_type.h"
#include "company_base.h"
#include "window_gui.h"
#include "strings_func.h"
#include "blitter/factory.hpp"
@@ -135,6 +136,16 @@ protected:
this->GetNumberRowsLegend(num_columns) * FONT_HEIGHT_SMALL;
}
/**
* Get a bitmask for company links to be displayed. Usually this will be
* the _local_company. Spectators get to see all companies' links.
* @return Company mask.
*/
inline uint32 GetOverlayCompanyMask() const
{
return Company::IsValidID(_local_company) ? 1U << _local_company : 0xffffffff;
}
uint GetNumberRowsLegend(uint columns) const;
void SelectLegendItem(int click_pos, LegendAndColour *legend, int end_legend_item, int begin_legend_item = 0);
void SwitchMapType(SmallMapType map_type);