Hi,
Thanks for clarifying some of the reasoning behind the requests you made. Based on your reasoning I'm willing to change my mind on most of these points.
I think you mean config.h
Well, not entirely. That file is intended to be actually created by whatever build system is in use - either by running a configure script, or by setting options in config.lua and running premake. Since your platform is obviously different to what we usually consider, the means by which this file would be generated could be different entirely.
CrazyEddie wrote:I think Freetype will always be a dependency - unless you want a GUI with no text.
In most cases, quite often even preferred to have finished prerenderered raster fonts than to generate them in the boot
Yes, I must definitely cede this point
I did not consider a scenario exclusively using pre-rendered fonts/texts, and in such a situation it can indeed be that Freetype can be omitted.
CrazyEddie wrote:With regards to the use of default objects, these can already be overridden to use a user supplied preference in most cases, although in the case of the logger, for example. the code is still compiled into CEGUIBase (there is no plan to change this, we do not want people easily building with no logger - it's hard enough to get people to post log content as it is
).
You discard the use of the library on systems not in the file system example
Note I did say we do not want people
easily doing this. For the more advanced / experienced developer, it's currently entirely possible to create a 'NULL' logger to be used as the default that does not create a file and just discards logged lines, thus alleviating the need to write to a filesystem. Perhaps we should actually provide an option to switch the default logger over to such a model?
CrazyEddie wrote:There are currently no plans to 'optionalise' the use of exceptions. The exceptions are also used internally in a couple of cases and having a user supplied 'catch-all' function be used instead is not something that I like.
I can only repeat about a platform other than PC.
Yeah, you're right of course. It's very easy for people working exclusively on PC based platforms to become blind to the existence of other types of platform. I need to consider this one very carefully, for various reasons.
Any errors should be identified at the debugging phase.
I agree. Exceptions are not errors in the 'bug' sense. Exceptions are things that happen in
exceptional circumstances - things that are unforeseen - you cannot debug for the unknown. However in this context the point is pretty much not relevant to the larger discussion.
I will add a set of tickets to Mantis over the next day or so for these items.
Thanks again for raising the potential changes, and also for subsequently explaining the "why" for a dumb PC guy
CE