more intuitive mode switching in expansion screen

This commit is contained in:
Zeno Rogue 2018-09-23 14:25:42 +02:00
parent ddba5f0faa
commit 0da01ca11a
2 changed files with 12 additions and 13 deletions

View File

@ -485,18 +485,12 @@ void viewdist_configure_dialog() {
dialog::addBoolItem("use analyzer", use_analyzer, 'a');
dialog::add_action([] () { use_analyzer = !use_analyzer; });
dialog::addBoolItem("show distance lists", show_distance_lists, 'l');
dialog::add_action([] () { show_distance_lists = !show_distance_lists; });
dialog::addSelItem("display distances from", its(first_distance), 'd');
dialog::add_action([] () {
scrolling_distances = false;
dialog::editNumber(first_distance, 0, 3000, 0, 1, "display distances from", "");
});
dialog::addItem("disable", 'x');
dialog::add_action([] () { viewdists = false; });
int id = 0;
for(auto& lp: linepatterns::patterns) {
using namespace linepatterns;
@ -513,13 +507,18 @@ void viewdist_configure_dialog() {
dialog::addInfo(XLAT("note: enable the cheat mode for additional options"));
else
dialog::addBreak(100);
if(distance_from)
dialog::addInfo("numbers show the descendants of current player position");
else
dialog::addBreak(100);
dialog::addBack();
dialog::addBreak(100);
dialog::addItem("disable", 'x');
dialog::add_action([] () { viewdists = false; popScreen(); });
dialog::addItem("move the player", 'm');
dialog::add_action([] () { show_distance_lists = false; popScreenAll(); });
dialog::addItem(distance_from ? "show number of descendants by distance" : "show number of cells by distance", 'l');
dialog::add_action([] () { show_distance_lists = true; popScreenAll(); });
dialog::display();
}

View File

@ -452,7 +452,7 @@ void showEuclideanMenu() {
gp::configure();
}
else if(uni == '2' || sym == SDLK_F1) gotoHelp(euchelp);
else if(uni == '3' && !viewdists) { enable_viewdists(); popScreenAll(); }
else if(uni == '3' && !viewdists) { enable_viewdists(); pushScreen(viewdist_configure_dialog); }
else if(uni == '3' && viewdists) { viewdists = false; }
else if(uni == '1' && !euclid) {
if(sphere) {