+ while (0 != world->wins.meta->active)
+ {
+ suspend_win(world->wins.meta, world->wins.meta->active);
+ }
+ free_win(world->wins.info);
+ free_win(world->wins.keys);
+ free_win(world->wins.map);
+ free_win(world->wins.log);
+ world->wins.keys = init_win_from_file(world, "Keys", draw_keys_win);
+ world->wins.info = init_win_from_file(world, "Info", draw_info_win);
+ world->wins.log = init_win_from_file(world, "Log", draw_log_win);
+ world->wins.map = init_win_from_file(world, "Map", draw_map_win);
+ sorted_wintoggle(world);
+}
+
+
+
+extern struct Win * init_win_from_file(struct World * world, char * w_name,
+ void (* f) (struct Win *))
+{
+ char * err_m = "Trouble in init_win_from_file() with malloc().";