diff --git a/src/league_cmd.cpp b/src/league_cmd.cpp index 5fd5d905df..14a1598b54 100644 --- a/src/league_cmd.cpp +++ b/src/league_cmd.cpp @@ -34,12 +34,12 @@ INSTANTIATE_POOL_METHODS(LeagueTable) bool IsValidLink(Link link) { switch (link.type) { - case LT_NONE: return (link.target == 0); - case LT_TILE: return IsValidTile(link.target); - case LT_INDUSTRY: return Industry::IsValidID(link.target); - case LT_TOWN: return Town::IsValidID(link.target); - case LT_COMPANY: return Company::IsValidID(link.target); - case LT_STORY_PAGE: return StoryPage::IsValidID(link.target); + case LinkType::None: return (link.target == 0); + case LinkType::Tile: return IsValidTile(link.target); + case LinkType::Industry: return Industry::IsValidID(link.target); + case LinkType::Town: return Town::IsValidID(link.target); + case LinkType::Company: return Company::IsValidID(link.target); + case LinkType::StoryPage: return StoryPage::IsValidID(link.target); default: return false; } return false; diff --git a/src/league_gui.cpp b/src/league_gui.cpp index c8c7a3dd4d..0fcd3426da 100644 --- a/src/league_gui.cpp +++ b/src/league_gui.cpp @@ -208,28 +208,29 @@ static void HandleLinkClick(Link link) { TileIndex xy; switch (link.type) { - case LT_NONE: return; + case LinkType::None: + return; - case LT_TILE: + case LinkType::Tile: if (!IsValidTile(link.target)) return; xy = TileIndex{link.target}; break; - case LT_INDUSTRY: + case LinkType::Industry: if (!Industry::IsValidID(link.target)) return; xy = Industry::Get(link.target)->location.tile; break; - case LT_TOWN: + case LinkType::Town: if (!Town::IsValidID(link.target)) return; xy = Town::Get(link.target)->xy; break; - case LT_COMPANY: + case LinkType::Company: ShowCompany((CompanyID)link.target); return; - case LT_STORY_PAGE: { + case LinkType::StoryPage: { if (!StoryPage::IsValidID(link.target)) return; CompanyID story_company = StoryPage::Get(link.target)->company; ShowStoryBook(story_company, static_cast(link.target)); diff --git a/src/league_type.h b/src/league_type.h index 9aa770a02b..1f6a06c313 100644 --- a/src/league_type.h +++ b/src/league_type.h @@ -13,19 +13,19 @@ #include "core/pool_type.hpp" /** Types of the possible link targets. */ -enum LinkType : uint8_t { - LT_NONE = 0, ///< No link - LT_TILE = 1, ///< Link a tile - LT_INDUSTRY = 2, ///< Link an industry - LT_TOWN = 3, ///< Link a town - LT_COMPANY = 4, ///< Link a company - LT_STORY_PAGE = 5, ///< Link a story page +enum class LinkType : uint8_t { + None = 0, ///< No link + Tile = 1, ///< Link a tile + Industry = 2, ///< Link an industry + Town = 3, ///< Link a town + Company = 4, ///< Link a company + StoryPage = 5, ///< Link a story page }; typedef uint32_t LinkTargetID; ///< Contains either tile, industry ID, town ID, story page ID or company ID struct Link { - LinkType type = LT_NONE; + LinkType type = LinkType::None; LinkTargetID target = 0; Link() {} diff --git a/src/script/api/script_league.hpp b/src/script/api/script_league.hpp index 3e2452d715..0c92fa3ac3 100644 --- a/src/script/api/script_league.hpp +++ b/src/script/api/script_league.hpp @@ -33,12 +33,12 @@ public: * The type of a link. */ enum LinkType : uint8_t { - LINK_NONE = ::LT_NONE, ///< No link - LINK_TILE = ::LT_TILE, ///< Link a tile - LINK_INDUSTRY = ::LT_INDUSTRY, ///< Link an industry - LINK_TOWN = ::LT_TOWN, ///< Link a town - LINK_COMPANY = ::LT_COMPANY, ///< Link a company - LINK_STORY_PAGE = ::LT_STORY_PAGE, ///< Link a story page + LINK_NONE = to_underlying(::LinkType::None), ///< No link + LINK_TILE = to_underlying(::LinkType::Tile), ///< Link a tile + LINK_INDUSTRY = to_underlying(::LinkType::Industry), ///< Link an industry + LINK_TOWN = to_underlying(::LinkType::Town), ///< Link a town + LINK_COMPANY = to_underlying(::LinkType::Company), ///< Link a company + LINK_STORY_PAGE = to_underlying(::LinkType::StoryPage), ///< Link a story page }; /**