From 65095edea85566b91958357db3c4f1a24a1975db Mon Sep 17 00:00:00 2001 From: Zeno Rogue Date: Fri, 21 Oct 2022 13:03:14 +0200 Subject: [PATCH] lists in expansion dialog --- expansion.cpp | 33 ++++++++++++--------------------- 1 file changed, 12 insertions(+), 21 deletions(-) diff --git a/expansion.cpp b/expansion.cpp index bbad8efe..83376d7b 100644 --- a/expansion.cpp +++ b/expansion.cpp @@ -547,7 +547,7 @@ EX bool use_color_codes = true; EX bool use_analyzer = true; EX bool show_distance_lists = true; -int first_distance = 0, scrolltime = 0; +int last_distance = 16; bool scrolling_distances = false; EX map expcolors; @@ -642,13 +642,6 @@ EX void viewdist_configure_dialog() { dialog::addBoolItem_action(XLAT("color codes"), use_color_codes, 'u'); - dialog::addSelItem(XLAT("display distances from"), its(first_distance), 'd'); - dialog::add_action([] () { - scrolling_distances = false; - dialog::editNumber(first_distance, 0, 3000, 1, 0, XLAT("display distances from"), ""); - dialog::bound_low(0); - }); - dialog::addBoolItem(XLAT("strict tree maps"), currentmap->strict_tree_rules(), 's'); dialog::add_action_push(rulegen::show); @@ -712,18 +705,15 @@ string produce_coef_formula(vector coef) { void expansion_analyzer::view_distances_dialog() { static int lastticks; if(scrolling_distances && !closed_manifold) { - scrolltime += SDL_GetTicks() - lastticks; - first_distance += scrolltime / scrollspeed; - scrolltime %= scrollspeed; + dialog::list_skip += (SDL_GetTicks() - lastticks) * dialog::dfspace / scrollspeed; } lastticks = SDL_GetTicks(); - if(first_distance < 0) first_distance = 0; dynamicval dv(distcolors[0], forecolor); dialog::init(""); cmode |= sm::DIALOG_STRICT_X | sm::EXPANSION; - int maxlen = closed_manifold ? 128 : 16 + first_distance; + int maxlen = last_distance; vector qty(maxlen); auto& expansion = get_expansion(); @@ -762,13 +752,11 @@ void expansion_analyzer::view_distances_dialog() { } #endif } - - dialog::addBreak(100 - 100 * scrolltime / scrollspeed); - for(int i=first_distance; i