From 61ddf605f2d6816d81c6c27523df4be7435d6a67 Mon Sep 17 00:00:00 2001 From: fendrin Date: Sat, 7 Jun 2014 22:35:59 +0200 Subject: [PATCH] Show the selected area changed status in the area menu. --- src/editor/map/context_manager.cpp | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/editor/map/context_manager.cpp b/src/editor/map/context_manager.cpp index 05d69015de55..a72725a1bcf9 100644 --- a/src/editor/map/context_manager.cpp +++ b/src/editor/map/context_manager.cpp @@ -304,7 +304,9 @@ void context_manager::expand_open_maps_menu(std::vector& items) void context_manager::expand_areas_menu(std::vector& items) { - if (!get_map_context().get_time_manager()) + tod_manager* tod = get_map_context().get_time_manager(); + + if (!tod) return; for (unsigned int i = 0; i < items.size(); ++i) { if (items[i] == "editor-switch-area") { @@ -312,7 +314,7 @@ void context_manager::expand_areas_menu(std::vector& items) std::vector area_entries; std::vector area_ids = - get_map_context().get_time_manager()->get_area_ids(); + tod->get_area_ids(); for (size_t mci = 0; mci < area_ids.size(); ++mci) { @@ -320,6 +322,11 @@ void context_manager::expand_areas_menu(std::vector& items) std::stringstream label; label << "[" << mci+1 << "] "; label << (area.empty() ? _("(Unnamed Area)") : area); + + if (mci == static_cast(get_map_context().get_active_area()) + && tod->get_area_by_index(mci) != get_map_context().get_map().selection()) + label << " [*]"; + area_entries.push_back(label.str()); }