mirror of
https://github.com/zenorogue/hyperrogue.git
synced 2025-03-30 15:27:02 +00:00
dialog:: improvements to list dialogs
This commit is contained in:
parent
06f450af22
commit
29ba4138a4
@ -2989,7 +2989,7 @@ EX void find_setting() {
|
|||||||
|
|
||||||
keyhandler = [] (int sym, int uni) {
|
keyhandler = [] (int sym, int uni) {
|
||||||
dialog::handleNavigation(sym, uni);
|
dialog::handleNavigation(sym, uni);
|
||||||
if(dialog::editInfix(uni)) ;
|
if(dialog::editInfix(uni)) dialog::list_skip = 0;
|
||||||
else if(doexiton(sym, uni)) popScreen();
|
else if(doexiton(sym, uni)) popScreen();
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
22
geom-exp.cpp
22
geom-exp.cpp
@ -187,17 +187,17 @@ EX void ge_land_selection() {
|
|||||||
});
|
});
|
||||||
stable_sort(landlist.begin(), landlist.end(), [] (eLand l1, eLand l2) { return land_validity(l1).quality_level > land_validity(l2).quality_level; });
|
stable_sort(landlist.begin(), landlist.end(), [] (eLand l1, eLand l2) { return land_validity(l1).quality_level > land_validity(l2).quality_level; });
|
||||||
|
|
||||||
for(int i=0; i<euperpage; i++) {
|
dialog::start_list(900, 900, '1');
|
||||||
if(euperpage * eupage + i >= isize(landlist)) { dialog::addBreak(100); break; }
|
|
||||||
eLand l = landlist[euperpage * eupage + i];
|
for(auto& l: landlist) {
|
||||||
char ch = '1'+i;
|
|
||||||
string s = XLAT1(linf[l].name);
|
string s = XLAT1(linf[l].name);
|
||||||
|
|
||||||
if(landvisited[l]) {
|
if(landvisited[l]) {
|
||||||
dialog::addBoolItem(s, l == specialland, ch);
|
dialog::addBoolItem(s, l == specialland, dialog::list_fake_key++);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
dialog::addSelItem(s, XLAT("(locked)"), ch);
|
dialog::addSelItem(s, XLAT("(locked)"), dialog::list_fake_key++);
|
||||||
}
|
}
|
||||||
|
|
||||||
dialog::lastItem().color = linf[l].color;
|
dialog::lastItem().color = linf[l].color;
|
||||||
@ -217,13 +217,13 @@ EX void ge_land_selection() {
|
|||||||
}));
|
}));
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
dialog::addItem(XLAT("next page"), '-');
|
dialog::end_list();
|
||||||
dialog::addInfo(XLAT("press letters to search"));
|
|
||||||
|
|
||||||
dialog::addBreak(25);
|
dialog::addBreak(25);
|
||||||
validity_info();
|
validity_info();
|
||||||
dialog::addBreak(25);
|
dialog::addBreak(25);
|
||||||
|
|
||||||
|
dialog::addInfo(XLAT("press letters to search"));
|
||||||
dual::add_choice();
|
dual::add_choice();
|
||||||
dialog::addBack();
|
dialog::addBack();
|
||||||
dialog::display();
|
dialog::display();
|
||||||
@ -231,11 +231,7 @@ EX void ge_land_selection() {
|
|||||||
keyhandler = [] (int sym, int uni) {
|
keyhandler = [] (int sym, int uni) {
|
||||||
dialog::handleNavigation(sym, uni);
|
dialog::handleNavigation(sym, uni);
|
||||||
|
|
||||||
if(uni == '-' || uni == PSEUDOKEY_WHEELUP || uni == PSEUDOKEY_WHEELDOWN) {
|
if(dialog::editInfix(uni)) dialog::list_skip = 0;
|
||||||
eupage++;
|
|
||||||
if(eupage * euperpage >= isize(landlist)) eupage = 0;
|
|
||||||
}
|
|
||||||
else if(dialog::editInfix(uni)) eupage = 0;
|
|
||||||
else if(doexiton(sym, uni)) popScreen();
|
else if(doexiton(sym, uni)) popScreen();
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -1734,12 +1734,13 @@ EX namespace mapeditor {
|
|||||||
|
|
||||||
dialog::end_list();
|
dialog::end_list();
|
||||||
dialog::addBreak(50);
|
dialog::addBreak(50);
|
||||||
|
dialog::addInfo(XLAT("press letters to search"));
|
||||||
dialog::addBack();
|
dialog::addBack();
|
||||||
dialog::display();
|
dialog::display();
|
||||||
|
|
||||||
keyhandler = [] (int sym, int uni) {
|
keyhandler = [] (int sym, int uni) {
|
||||||
dialog::handleNavigation(sym, uni);
|
dialog::handleNavigation(sym, uni);
|
||||||
if(dialog::editInfix(uni)) ;
|
if(dialog::editInfix(uni)) dialog::list_skip = 0;
|
||||||
else if(doexiton(sym, uni)) popScreen();
|
else if(doexiton(sym, uni)) popScreen();
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -201,8 +201,7 @@ EX void showOverview() {
|
|||||||
"Cheaters can click to move between lands, and use the "
|
"Cheaters can click to move between lands, and use the "
|
||||||
"mousewheel to gain or lose treasures and orbs quickly (Ctrl = precise, Shift = reverse)."
|
"mousewheel to gain or lose treasures and orbs quickly (Ctrl = precise, Shift = reverse)."
|
||||||
);
|
);
|
||||||
else if(dialog::handlePageButtons(uni)) ;
|
else if(dialog::editInfix(uni)) dialog::list_skip = 0;
|
||||||
else if(dialog::editInfix(uni)) ;
|
|
||||||
else if(doexiton(sym, uni)) popScreen();
|
else if(doexiton(sym, uni)) popScreen();
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -157,7 +157,7 @@ void showPickScores() {
|
|||||||
mouseovers = dialog::infix;
|
mouseovers = dialog::infix;
|
||||||
keyhandler = [] (int sym, int uni) {
|
keyhandler = [] (int sym, int uni) {
|
||||||
dialog::handleNavigation(sym, uni);
|
dialog::handleNavigation(sym, uni);
|
||||||
if(dialog::editInfix(uni)) ;
|
if(dialog::editInfix(uni)) dialog::list_skip = 0;
|
||||||
else if(doexiton(sym, uni)) popScreen();
|
else if(doexiton(sym, uni)) popScreen();
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -941,8 +941,7 @@ EX namespace tactic {
|
|||||||
|
|
||||||
"Good luck, and have fun!"
|
"Good luck, and have fun!"
|
||||||
);
|
);
|
||||||
else if(dialog::infix == "" && dialog::handlePageButtons(uni)) ;
|
else if(dialog::editInfix(uni)) dialog::list_skip = 0;
|
||||||
else if(dialog::editInfix(uni)) ;
|
|
||||||
else if(doexiton(sym, uni)) popScreen();
|
else if(doexiton(sym, uni)) popScreen();
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user