This bodes well for my idea. However there are tricky parts,
> like what is used in map/maps_list.cpp
Hoping the patch won't be dropped by the ml, here's what I tried to do for MapInfo accessors. Most of them use in fact LoadBasicInfo or LoadData. Those functions throw exceptions in case of error during loading. And they are used everywhere in the code. So I decided to remove the accessors, and create special classes holding said accessors. BasicLoadInfo and LoadData return pointers to them, and obviously, one should check those pointers and appropriately handle such error. However, there are cases when we do want to load such data, and others where it should already have been, otherwise there's probably an undetermined state. That's why I've further written 2 functions, LoadedInfo and LoadedBasic, which assert if the state is in fact that nothing is loaded. That's maybe not very clean design, but I wasn't sure how to handle this. Lami suggested to immediately load basic info, to which I objected that this would cause initial lag (in particular in debug mode, now that I remember). Your opinion? Best regards, Christophe
_______________________________________________ Wormux-dev mailing list Wormux-dev@gna.org https://mail.gna.org/listinfo/wormux-dev