Merge branch 'lethosor/zone-cage-owner-scroll-crash' into develop

develop
lethosor 2015-02-06 19:18:02 -05:00
commit 24cc1b25a3
1 changed files with 15 additions and 13 deletions

@ -2593,7 +2593,7 @@ bool compareRaceNames(WatchedRace* i, WatchedRace* j)
{
string name_i = getRaceNamePluralById(i->raceId);
string name_j = getRaceNamePluralById(j->raceId);
return (name_i < name_j);
}
@ -3565,7 +3565,7 @@ static void autobutcher_removeFromWatchList(color_ostream &out, unsigned id)
// sort watchlist alphabetically
static void autobutcher_sortWatchList(color_ostream &out)
{
sort(watched_races.begin(), watched_races.end(), compareRaceNames);
sort(watched_races.begin(), watched_races.end(), compareRaceNames);
}
// set default target values for new races
@ -3645,7 +3645,7 @@ static int autobutcher_getWatchList(lua_State *L)
Lua::SetField(L, w->ma, ctable, "ma");
int id = w->raceId;
w = checkRaceStocksTotal(id);
Lua::SetField(L, w->unit_ptr[fk_index].size(), ctable, "fk_total");
Lua::SetField(L, w->unit_ptr[mk_index].size(), ctable, "mk_total");
@ -3780,7 +3780,7 @@ public:
saved_ui_building_assign_is_marked[saved_indexes[i]] = ui_building_assign_is_marked->at(adjusted_item_index);
}
}
string search_string_l = toLower(search_string);
saved_indexes.clear();
ui_building_assign_type->clear();
@ -3802,7 +3802,7 @@ public:
continue;
if (!show_noncaged)
{
{
// must be in a container
if(!isContainedInItem(curr_unit))
continue;
@ -3884,31 +3884,31 @@ public:
}
}
// Not in query typing mode
else if (input->count(interface_key::CUSTOM_SHIFT_G) &&
else if (input->count(interface_key::CUSTOM_SHIFT_G) &&
(mode == ui_sidebar_mode::ZonesPenInfo || mode == ui_sidebar_mode::QueryBuilding))
{
show_non_grazers = !show_non_grazers;
apply_filters();
}
else if (input->count(interface_key::CUSTOM_SHIFT_C) &&
else if (input->count(interface_key::CUSTOM_SHIFT_C) &&
(mode == ui_sidebar_mode::ZonesPenInfo || mode == ui_sidebar_mode::ZonesPitInfo || mode == ui_sidebar_mode::QueryBuilding))
{
show_noncaged = !show_noncaged;
apply_filters();
}
else if (input->count(interface_key::CUSTOM_SHIFT_P) &&
else if (input->count(interface_key::CUSTOM_SHIFT_P) &&
(mode == ui_sidebar_mode::ZonesPenInfo || mode == ui_sidebar_mode::ZonesPitInfo || mode == ui_sidebar_mode::QueryBuilding))
{
show_pastured = !show_pastured;
apply_filters();
}
else if (input->count(interface_key::CUSTOM_SHIFT_M) &&
else if (input->count(interface_key::CUSTOM_SHIFT_M) &&
(mode == ui_sidebar_mode::ZonesPenInfo || mode == ui_sidebar_mode::ZonesPitInfo || mode == ui_sidebar_mode::QueryBuilding))
{
show_male = !show_male;
apply_filters();
}
else if (input->count(interface_key::CUSTOM_SHIFT_F) &&
else if (input->count(interface_key::CUSTOM_SHIFT_F) &&
(mode == ui_sidebar_mode::ZonesPenInfo || mode == ui_sidebar_mode::ZonesPitInfo || mode == ui_sidebar_mode::QueryBuilding))
{
show_female = !show_female;
@ -3994,7 +3994,7 @@ public:
OutputString(COLOR_WHITE, x, y, ": ");
OutputString((show_male) ? COLOR_WHITE : COLOR_GREY, x, y, "Male");
}
// pits don't have grazer filter because it seems pointless
if (mode == ui_sidebar_mode::ZonesPitInfo)
{
@ -4064,8 +4064,10 @@ struct zone_hook : public df::viewscreen_dwarfmodest
ui_building_in_assign && *ui_building_in_assign &&
ui_building_assign_type && ui_building_assign_units &&
ui_building_assign_type->size() == ui_building_assign_units->size() &&
ui_building_item_cursor &&
world->selected_building && isCage(world->selected_building) )
ui_building_assign_type->size() == ui_building_assign_items->size() &&
ui_building_assign_type->size() == ui_building_assign_is_marked->size() &&
ui_building_item_cursor &&
world->selected_building && isCage(world->selected_building) )
)
{
if (vector_get(*ui_building_assign_units, *ui_building_item_cursor))