Merge lp:~majcherlk/widelands/bug-1426276 into lp:widelands

Proposed by Lukasz
Status: Merged
Merged at revision: 7474
Proposed branch: lp:~majcherlk/widelands/bug-1426276
Merge into: lp:widelands
Diff against target: 29 lines (+6/-2)
1 file modified
src/editor/ui_menus/editor_player_menu.cc (+6/-2)
To merge this branch: bzr merge lp:~majcherlk/widelands/bug-1426276
Reviewer Review Type Date Requested Status
GunChleoc Approve
Review via email: mp+261275@code.launchpad.net

Description of the change

Fixed bug #1426276 - now when the currently selected player is removed, switch to the next highest available player.

To post a comment you must log in.
Revision history for this message
GunChleoc (gunchleoc) wrote :

LGTM, thanks for the patch :)

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'src/editor/ui_menus/editor_player_menu.cc'
2--- src/editor/ui_menus/editor_player_menu.cc 2014-11-30 18:49:38 +0000
3+++ src/editor/ui_menus/editor_player_menu.cc 2015-06-05 19:49:34 +0000
4@@ -219,12 +219,13 @@
5
6
7 void EditorPlayerMenu::clicked_remove_last_player() {
8- Widelands::Map & map = eia().egbase().map();
9+ EditorInteractive& menu = eia();
10+ Widelands::Map & map = menu.egbase().map();
11 Widelands::PlayerNumber const old_nr_players = map.get_nrplayers();
12 Widelands::PlayerNumber const nr_players = old_nr_players - 1;
13 assert(1 <= nr_players);
14
15- if (!eia().is_player_tribe_referenced(old_nr_players)) {
16+ if (!menu.is_player_tribe_referenced(old_nr_players)) {
17 if (const Widelands::Coords sp = map.get_starting_pos(old_nr_players)) {
18 // Remove starting position marker.
19 char picsname[] = "pics/editor_player_00_starting_pos.png";
20@@ -233,6 +234,9 @@
21 map.overlay_manager().remove_overlay
22 (sp, g_gr->images().get(picsname));
23 }
24+ // if removed player was selected switch to the next highest player
25+ if (old_nr_players == menu.tools.set_starting_pos.get_current_player())
26+ set_starting_pos_clicked(nr_players);
27 }
28 map.set_nrplayers(nr_players);
29 m_remove_last_player.set_enabled(1 < nr_players);

Subscribers

People subscribed via source and target branches

to status/vote changes: