[Scummvm-devel] OSystem changes

Max Horn max at quendi.de
Mon Feb 16 16:11:06 CET 2004


Hi folks!

Since we have branched now, I would like to get our main backend API 
(OSystem) cleaned up and improved. I have some things on the TODO for 
this, but maybe porters have other requests / ideas / proposal, so this 
is your chance to voice them.

 From our TODO:
In OSystem, replace all the TOGGLE properties by GET/SET ones. E.g. 
instead of PROP_TOGGLE_FULLSCREEN have PROP_SET_FULLSCREEN and 
PROP_GET_FULLSCREEN.
Alternatively (my preferred solution) use plain methods for this:
   void OSystem::setFullscreen(bool)
and
   bool OSystem::getFullscreen()
That is easier to use and has no obvious drawbacks over the 
"property()" approach (given that you always can provide empty dummy 
implementations for new OSystem APIs). Clearly this needs discussion 
first, though... please comment.

Ender, I know you are (or at least, used to be?) a strong advocate of 
the "property()" approach. The only argument for it which I recall was 
"binary compatibility". However since our backends are statically 
linked, this isn't really an issue; nor do I see any reasons why we 
ever would want to dynamically link it.


The other backends change which I'd like to see done now is cleaning up 
the "File" mess. This has already been discussed on another thread, but 
nothing has happened yet. But rest assured, it's not forgotten ;-).

I saw Kirben (?) mention on IRC that HE games need some additional 
functionality not provided right now. Well, go ahead and tell us which, 
else we hardly can work on it. One concrete thing I saw was file 
renaming... that's a tricky one, and I wonder, why would you need it? I 
am not sure if we can implement this in a generic fashion on all 
systems...


Cheers,

Max





More information about the Scummvm-devel mailing list