mirror of
				https://github.com/zenorogue/hyperrogue.git
				synced 2025-10-31 22:12:59 +00:00 
			
		
		
		
	rogueviz:: configure_edge_display can now edit visible_from_hi
This commit is contained in:
		| @@ -997,32 +997,36 @@ void configure_edge_display() { | |||||||
|     auto t = edgetypes[i]; |     auto t = edgetypes[i]; | ||||||
|     switch(mode) { |     switch(mode) { | ||||||
|       case 0: |       case 0: | ||||||
|         dialog::addSelItem(t->name, itsh(t->color), 'a' + i); |         if(t->color == DEFAULT_COLOR) | ||||||
|         dialog::lastItem().colorv = t->color >> 8; |           dialog::addSelItem(t->name, "default", 'a' + i); | ||||||
|  |         else | ||||||
|  |           dialog::addColorItem(t->name, t->color, 'a' + i); | ||||||
|         dialog::add_action([t] { |         dialog::add_action([t] { | ||||||
|           dialog::openColorDialog(t->color, NULL); |           dialog::openColorDialog(t->color, NULL); | ||||||
|           dialog::dialogflags |= sm::MAYDARK | sm::SIDE; |           dialog::dialogflags |= sm::MAYDARK | sm::SIDE; | ||||||
|           }); |           }); | ||||||
|         break; |         break; | ||||||
|       case 1: |       case 1: case 2: { | ||||||
|  |         auto& val = mode == 2 ? t->visible_from_hi : t->visible_from; | ||||||
|         if(!(vizflags & RV_INVERSE_WEIGHT)) { |         if(!(vizflags & RV_INVERSE_WEIGHT)) { | ||||||
|           dialog::addSelItem(t->name, fts(t->visible_from), 'a'+i); |           dialog::addSelItem(t->name, fts(val), 'a'+i); | ||||||
|           dialog::add_action([t] { |           dialog::add_action([&val] { | ||||||
|             dialog::editNumber(t->visible_from, 0.001, 1000, .1, .1, "min weight", ""); |             dialog::editNumber(val, 0.001, 1000, .1, .1, "min weight", ""); | ||||||
|             dialog::scaleLog(); |             dialog::scaleLog(); | ||||||
|             }); |             }); | ||||||
|           } |           } | ||||||
|         else { |         else { | ||||||
|           dialog::addSelItem(t->name, its(1 / t->visible_from), 'a'+i); |           dialog::addSelItem(t->name, fts(1 / val), 'a'+i); | ||||||
|           dialog::add_action([t] { |           dialog::add_action([t, &val] { | ||||||
|             static int i; |             static ld i; | ||||||
|             i = 1 / t->visible_from; |             i = 1 / val; | ||||||
|             dialog::editNumber(i, 1, 1000000, 1, 500, weight_label, ""); |             dialog::editNumber(i, 1, 1000000, 1, 500, weight_label, ""); | ||||||
|             dialog::reaction = [t] () { t->visible_from = i ? 1. / i : 5; }; |             dialog::reaction = [&val] () { val = i ? 1. / i : 5; }; | ||||||
|             dialog::scaleLog(); dialog::ne.step = .2; |             dialog::scaleLog(); dialog::ne.step = .2; | ||||||
|             }); |             }); | ||||||
|           } |           } | ||||||
|         break; |         break; | ||||||
|  |         } | ||||||
|       default: break; |       default: break; | ||||||
|       } |       } | ||||||
|     } |     } | ||||||
| @@ -1030,6 +1034,11 @@ void configure_edge_display() { | |||||||
|   if(vizflags & RV_HAVE_WEIGHT) { |   if(vizflags & RV_HAVE_WEIGHT) { | ||||||
|     dialog::addBoolItem_choice("color/alpha", mode, 0, '1'); |     dialog::addBoolItem_choice("color/alpha", mode, 0, '1'); | ||||||
|     dialog::addBoolItem_choice(weight_label, mode, 1, '2'); |     dialog::addBoolItem_choice(weight_label, mode, 1, '2'); | ||||||
|  |     dialog::addBoolItem_choice(weight_label + " (hi)", mode, 2, '3'); | ||||||
|  |     dialog::addBoolItem("inverse weights", vizflags & RV_INVERSE_WEIGHT, '4'); | ||||||
|  |     dialog::add_action([] { | ||||||
|  |       vizflags ^= RV_INVERSE_WEIGHT; | ||||||
|  |       }); | ||||||
|     } |     } | ||||||
|   else mode = 0; |   else mode = 0; | ||||||
|    |    | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Zeno Rogue
					Zeno Rogue