Commit Graph

2489 Commits

Author SHA1 Message Date
Matthew Hoops
6d153f311c Merge remote branch 'upstream/master' into t7g-ios
Conflicts:
	video/qt_decoder.cpp
2011-04-13 16:04:29 -04:00
Matthew Hoops
4366f3632c COMMON: Cleanup QuickTime's readSTTS() 2011-04-12 14:01:42 -04:00
Max Horn
f1471689cf COMMON: Let MKTAG always return an uint32 2011-04-12 17:23:21 +02:00
Max Horn
58b4cc0220 COMMON: Use correct MKTAG definition, stupid 2011-04-12 17:04:49 +02:00
Max Horn
0ce2ca4e00 COMMON: Replace MKID_BE by MKTAG
MKID_BE relied on unspecified behavior of the C++ compiler,
and as such was always a bit unsafe. The new MKTAG macro
is slightly less elegant, but does no longer depend on the
behavior of the compiler.
Inspired by FFmpeg, which has an almost identical macro.
2011-04-12 16:53:15 +02:00
Max Horn
a8b3501252 COMMON: Drop totally obsolete & outdated DEC C++ 'support' 2011-04-12 16:41:36 +02:00
Klaus Reimer
48dbbdcd74 COMMON: Fix usage of wrong variable when keymapper is active 2011-04-12 11:05:48 +02:00
Matthew Hoops
4a39baa095 COMMON: Fix QuickTime track duration 2011-04-10 21:11:02 -04:00
Matthew Hoops
9d0e5a7132 ALL: Add/update some comments 2011-04-10 15:11:03 -04:00
Matthew Hoops
7c5dfaa04c COMMON: Parse the MPEG-4 esds atom 2011-04-08 22:46:19 -04:00
Matthew Hoops
faee277978 COMMON: Add a DisposeAfterUse flag to QuickTimeParser 2011-04-08 17:04:29 -04:00
Matthew Hoops
50d2519552 COMMON: Add iOS platform type 2011-04-07 10:52:58 -04:00
Matthew Hoops
db71efd94f VIDEO: Split the QuickTime parser from the QuickTime VideoDecoder 2011-04-07 00:21:48 -04:00
Max Horn
c4ae3b90db COMMON: Fix (harmless) int <-> uint mismatch 2011-04-04 09:53:26 +02:00
dhewg
b065007c8f COMMON: Unbreak EventRecorder a little 2011-03-29 22:13:31 +02:00
dhewg
d83a83ef50 JANITORIAL: Remove/comment unused vars
Found by GCC 4.6's -Wunused-but-set-variable
2011-03-29 21:57:56 +02:00
Littleboy
5a1874e3d9 COMMON: Add SaveFileManager::copySavefile() and update SaveFileManager::renameSavefile() to use it 2011-03-24 18:51:58 -04:00
Max Horn
4172414e35 COMMON: Remove TODO from struct Event
I moved this TODO to the Wiki TODO page and extended it there. Yet
while I originally wrote it, I now think that we are probably best off
keeping things as they are.
2011-03-23 15:25:46 +01:00
md5
23aabc950a COMMON: Removed custom PI define (M_PI should be used instead) 2011-03-19 02:39:38 +02:00
md5
3924fc0bad COMMON: Enable math constants under Visual Studio 2011-03-19 01:56:10 +02:00
Matthew Hoops
e815102659 Merge branch 'pe_exe' of https://github.com/clone2727/scummvm into clone2727-pe_exe 2011-03-07 17:07:59 -05:00
Matthew Hoops
bc3638834b COMMON: Add TODO to make compressed NE EXE handling transparent 2011-03-07 13:18:33 -05:00
Matthew Hoops
c7d7e50155 COMMON: Add a sanity assert 2011-03-07 13:14:10 -05:00
Matthew Hoops
d2f8103a3b COMMON: Fix WinResourceID::getID() 2011-03-07 13:12:43 -05:00
Matthew Hoops
826197cf76 COMMON: Make the operator=(String) function be a const reference instead 2011-03-07 13:11:28 -05:00
Matthew Hoops
6582b77f1c SCUMM: Use the new WinCursor code in SCUMM HE
Also, updated the MacResManager cursor code to reflect the SCUMM resource extractor code changes
2011-03-06 19:57:18 -05:00
Matthew Hoops
c66233f83e GRAPHICS: Split the NE cursor code from the NEResources class
Now the code lies in Graphics and all cursors are not cached upon opening an exe. The engine is now in charge of caching which cursors it wants.
2011-03-04 23:17:57 -05:00
dhewg
b84b56b248 COMMON: Remove newlines from debug()
They were interfering with my precious debug spew :P
2011-03-02 23:18:34 +01:00
Matthew Hoops
e053373dd3 COMMON: Add a key color field to NECursor 2011-02-22 20:11:50 -05:00
Matthew Hoops
a2a0b13de2 COMMON: Begin to merge some NE/PE code
The ID classes are now common to both. The files have been renamed to better illustrate their purpose.
2011-02-22 20:03:18 -05:00
Matthew Hoops
3995610ce3 COMMON: Add a convenience function to ignore the language field 2011-02-22 12:33:41 -05:00
Matthew Hoops
d5c494a239 COMMON: Add default Windows PE types 2011-02-22 02:02:00 -05:00
Matthew Hoops
91287b2e18 COMMON: Add basic PE EXE parser
Much thanks to fuzzie for her assistance
2011-02-22 01:47:11 -05:00
D G Turner
a925286361 COMMON: Correct NE Resource Loader for Osystem RGBA->RGB Palette Change. 2011-02-20 06:12:21 +00:00
Johannes Schickel
39861271d6 COMMON: Make MacResManager::convertCrsrCursor to return a RGB palette. 2011-02-14 17:08:33 +01:00
Ori Avtalion
3354204f53 JANITORIAL: Remove extraneous parentheses
svn-id: r55890
2011-02-12 10:36:35 +00:00
Johannes Schickel
9f6dc040ff CONFIGURE: Add basic support for ICC.
svn-id: r55862
2011-02-10 01:05:48 +00:00
Max Horn
97bfd60e61 COMMON: Reduce overflow risk in Common::Rational += and -= operators
svn-id: r55839
2011-02-09 00:12:02 +00:00
Max Horn
2184326dbc COMMON: Add comment that explains strange <= checks in gcd()
svn-id: r55838
2011-02-09 00:11:39 +00:00
Max Horn
ab039812e7 COMMON: OSystem now has a PaletteManager
svn-id: r55806
2011-02-07 17:52:38 +00:00
Matthew Hoops
2be57434a1 COMMON: Only take the md5 of the resource fork data section
Since various apps can modify the type/creator of the files, we can't rely on the header of the resource fork to take the md5. I've therefore also recalculated all of the detector entries (all 5 of them) that use the Mac resource fork code.

svn-id: r55764
2011-02-04 15:27:56 +00:00
Johannes Schickel
867c0d9645 COMMON: Add an erase method which takes an iterator to HashMap.
Currently there is no iterator returned from this method, to have some
similarity to associative containers of the STL.

I also "added" one unit test for this method, which is basically just
a copy of the HashMap::erase(const Key &) test with the required adaptions.

svn-id: r55661
2011-01-30 17:28:35 +00:00
David Turner
f7e1ed3762 COMMON: Fixed memory leakage in unarj readHeader().
This manifested in Drascula.

svn-id: r55582
2011-01-28 02:56:07 +00:00
Filippos Karapetis
b0321af343 COMMON: Added some very simple operators to the Point class (+, -, += and -=), taken from the BS25 Vertex class
svn-id: r55476
2011-01-23 19:00:35 +00:00
Matthew Hoops
75b232c67d COMMON: Update documentation of the MacResManager
svn-id: r55403
2011-01-22 02:31:30 +00:00
Matthew Hoops
fc8f135a61 COMMON: Document which engines use DCL
svn-id: r55380
2011-01-21 14:28:43 +00:00
Matthew Hoops
476eeb69e6 COMMON: Move SCI's DCL decompression code to common
svn-id: r55367
2011-01-21 01:55:44 +00:00
Johannes Schickel
4ad14abef3 COMMON: Some style fixes in config-manager.cpp.
svn-id: r55315
2011-01-18 21:13:47 +00:00
Johannes Schickel
da6fdff421 COMMON: Some slight formatting fixes in config-manager.cpp.
svn-id: r55228
2011-01-13 16:38:14 +00:00
Yotam Barnoy
42c8cacde6 CONFIGMANAGER: small changes to support old config files with no 'gameId' keys. As discussed on -devel.
svn-id: r55222
2011-01-13 11:30:37 +00:00
Jordi Vilalta Prat
dd47d644d3 COMMON: Fix a few space formatting issues.
svn-id: r55200
2011-01-11 03:03:40 +00:00
Alyssa Milburn
319fdf40b2 COMMON: Fix comment about getButtonState.
svn-id: r55087
2011-01-01 22:36:33 +00:00
Yotam Barnoy
77a6dc7046 CONFIG-MGR: added ability to add other non-game domains
The way we determine if a domain is a game domain or not when loading from the config file is by checking for a 'gameId' key. This required changing the method of loading somewhat. MiscDomains (ie. non-game domains) are saved to the config file before game domains but after the main domains.

This change shouldn't mess anything up but it could probably use a look-through just in case.

svn-id: r55060
2010-12-29 15:16:31 +00:00
Johannes Schickel
6308dd77d6 OSYSTEM: Clarify grabPalette documentation after talking with Max about it.
svn-id: r54978
2010-12-20 17:28:17 +00:00
Alyssa Milburn
bcea996361 COMMON: Handle C++-style comments in config files
svn-id: r54868
2010-12-11 19:53:11 +00:00
Johannes Schickel
e361b84d3b BACKENDS: Fix OSD implementation in ModularBackend.
svn-id: r54828
2010-12-08 01:35:34 +00:00
Matthew Hoops
70ab5a21da COMMON: Fix AppleDouble support in the MacResManager (thanks, fuzzie)
svn-id: r54775
2010-12-05 00:51:04 +00:00
Jordi Vilalta Prat
d5a4f554af ALL: Fix a few typos
svn-id: r54716
2010-12-01 20:03:05 +00:00
Jordi Vilalta Prat
a17c07bcaa I18N: Improve the fallback language auto-detection.
- Broaden the range of language tags that could be accepted as fallback in
  auto-detection. For example, for a system with locale 'pt_PT', all of
  these would be accepted as valid fallbacks: 'pt_PT_*', 'pt', 'pt_*'
- Make language codes matching case-insensitive as specified in RFC 4647.
- Add support language code blocks longer than 2 characters.

svn-id: r54715
2010-12-01 20:00:40 +00:00
Jordi Vilalta Prat
8393bc5b5f I18N: Don't build TranslationManager when translation is disabled.
svn-id: r54684
2010-11-30 18:50:19 +00:00
Matthew Hoops
ab732a73ff COMMON: Add a bit more to the doxygen comment for NEResources
svn-id: r54564
2010-11-29 00:27:48 +00:00
Max Horn
945602fdbe COMMON: Remove unnecessary reference to file.h
svn-id: r54561
2010-11-28 23:09:47 +00:00
Matthew Hoops
f403c0f8a8 COMMON: Add support for loading NE resources and cursors
Needed for Mohawk (and Hugo Win eventually). Based on DrMcCoy's excellent Dark Seed II code.

svn-id: r54557
2010-11-28 22:55:00 +00:00
Filippos Karapetis
626e9413fd AmigaOS: Fixed compilation after the latest GSoC code merging (bug #3121350)
svn-id: r54555
2010-11-28 22:12:11 +00:00
Johannes Schickel
284b49aabc COMMON: Comment out locale <-> Common::Language conversion utils for now.
svn-id: r54517
2010-11-28 02:12:53 +00:00
Johannes Schickel
1ad63b431e BACKEND: Switch OSystem::getSystemLanguage return type to Common::String.
This is done as discussed on -devel.

svn-id: r54516
2010-11-28 02:12:33 +00:00
Matthew Hoops
34db1820eb COMMON: Add an isBE() function to get the endianness of a ReadStreamEndian
svn-id: r54500
2010-11-26 15:06:25 +00:00
Johannes Schickel
ebbd504b90 COMMON: Adapt translation manager to use the OSystem for language detection.
svn-id: r54480
2010-11-25 18:42:05 +00:00
Johannes Schickel
189c9bf216 OSYSTEM: Add API to query the system locale.
I also adapted the SDL backend to implement the API.

svn-id: r54479
2010-11-25 18:40:56 +00:00
Max Horn
1cc80de1d9 COMMON: Add SeekableReadStreamEndian class
svn-id: r54445
2010-11-23 22:33:10 +00:00
Max Horn
12d5151ff4 COMMON: Remove default value for endianess in ReadStreamEndian subclasses
svn-id: r54441
2010-11-23 22:27:20 +00:00
Max Horn
382982d6e3 COMMON: Add ReadStreamEndian mixin class
svn-id: r54438
2010-11-23 22:26:27 +00:00
Max Horn
ae919f3ebd COMMON: Remove XOR decoding capability from MemoryReadStream
svn-id: r54436
2010-11-23 22:25:53 +00:00
Max Horn
2180b2d6b5 COMMON: Split common/stream.h into several headers
svn-id: r54385
2010-11-19 17:03:07 +00:00
Lars Persson
824a4009c9 SYMBIAN : Remove Symbian FatalError implementation (not really used anymore for any current symbian phone)
svn-id: r54372
2010-11-19 12:49:33 +00:00
Lars Persson
714263d5e9 COMMON: Use user include instead of system include to remove lots of compiler warnings for symbian
svn-id: r54371
2010-11-19 12:47:52 +00:00
Max Horn
785590e504 COMMON: Push include file.h and fs.h from translation.h to translation.cpp
svn-id: r54357
2010-11-19 01:03:05 +00:00
Max Horn
a72de47d5d COMMON: Cleanup EventRecorder
svn-id: r54355
2010-11-19 00:38:17 +00:00
Max Horn
aef1ca4c4b COMMON: Cleanup XMLParser code
* Get rid of obsolete comment about external documentation
  (link was broken for at least one year)
* Remove unnecessary Common:: prefix
* Push #include stream.h from .h to .cpp

svn-id: r54354
2010-11-19 00:20:15 +00:00
Max Horn
5c7d7a85db COMMON: Push #include stream.h from zlib.h to zlib.cpp
svn-id: r54353
2010-11-19 00:10:09 +00:00
Max Horn
9fb1e2b17e COMMON: Change wrapBufferedWriteStream() to always disposes wrapped stream
This is the only we need right now, and it saves a few bytes per
instance. The template approach I used before has the drawback that it
increases the binary size, which negates the benefit. Thanks to LordHoto
for pointing this out.

svn-id: r54344
2010-11-18 20:27:15 +00:00
Johannes Schickel
e1030e53a5 BACKENDS: Implement logging API proposed by Max on -devel.
This commits a slightly modified patch from my patch tracker item #3104630
"OSYSTEM: Add logging API as proposed by Max on -devel".

I was not able to test compilation on Android and SamsungTV, since there is no
toolchain for those on buildbot (or I was too blind to find them).

svn-id: r54339
2010-11-18 19:12:14 +00:00
Max Horn
a9dcb11c54 COMMON: Turn BufferedWriteStream into a template class, with disposeParentStream as param
svn-id: r54336
2010-11-18 17:56:21 +00:00
Max Horn
152e52d015 COMMON: Make implementation of Buffered*Stream classes internal
svn-id: r54326
2010-11-18 17:02:51 +00:00
Max Horn
4707b610fc COMMON: Fix incorrect use of assert() macro
The assert() macro may be compiled to be empty. In that case, its
arguments are *NOT* evaluated. Hence, things like
  assert(doSomething())
must not be used whenever doSomething() has important side effects.

Also document BufferedWriteStream::flushBuffer() and explain why it
exists parallel to BufferedWriteStream::flush().

svn-id: r54322
2010-11-18 16:08:56 +00:00
Max Horn
62400d2638 COMMON: Reverting r54257 as _singleton already was protected (and I am blind :)
svn-id: r54259
2010-11-16 08:24:11 +00:00
Max Horn
abe1959d36 COMMON: Simplify DECLARE_SINGLETON macro
This makes it possible to write
  DECLARE_SINGLETON(foo);
instead of
  DECLARE_SINGLETON(foo)
without causing a warning about an extra semicolon.
The extra semicolon helps some editors at parsing the C++ code.

svn-id: r54258
2010-11-16 08:23:13 +00:00
Max Horn
5af8a76b48 COMMON: Make Common::Singleton::_singleton protected instead of public
svn-id: r54257
2010-11-16 08:21:53 +00:00
Yotam Barnoy
fdc2a2cd81 CONFIGMAN: added defragmentation methods for one-plugin-at-a-time
One-plugin-at-a-time can have fragmentation caused by the ConfigManager if a game changes any configuration value. By reallocating and copying over the ConfigManager, we avoid this problem.

svn-id: r54243
2010-11-15 13:37:06 +00:00
Thierry Crozat
4e357549d5 COMMON: Fix TranslationManager
Revision 54206 broke translations support because it uncovered a bug in
the TranslationManager when reading the translations.dat file. In that file
all the stored string lengths include the terminating 0 but Common::String
expect a length without the terminating 0. Therefore all String objects
created from reading the translations.dat file had an incorrect size. This
caused the font file names to be wrong after adding the charset.

svn-id: r54235
2010-11-13 23:27:13 +00:00
Johannes Schickel
c624202c39 COMMON: Fix compilation when translation support is disabled (regression from r54207).
svn-id: r54209
2010-11-11 19:20:26 +00:00
Max Horn
cc61445599 COMMON: Cleanup translation manager code; add FIXME
svn-id: r54206
2010-11-11 18:22:35 +00:00
Max Horn
059944e59c COMMON: Push #include audiocd.h in system.h out to .cpp files
svn-id: r54148
2010-11-08 23:07:42 +00:00
Max Horn
82e473bc3b BACKENDS: Partial merge of gsoc2010-opengl: Audio CD changes only
This commit contains the AudioCDManager changes from the gsoc2010-opengl
branch. The other changes in that branch are restricted to the backends
directory only (plus configure).

The Nintendo DS and Dreamcast ports still need to be ported over to
the new Audio CD system, but that should be fairly easy to do.

svn-id: r54147
2010-11-08 22:53:36 +00:00
Max Horn
4242229c91 COMMON: Make KeyState::hasFlags const
svn-id: r54146
2010-11-08 19:18:13 +00:00
Max Horn
f9d311d1ef COMMON: Add const qualifiers and remove Common:: prefix in MacResManager code
svn-id: r54122
2010-11-07 17:17:21 +00:00
Max Horn
4d3a07b494 COMMON: Rename and tweak MD5 functions
* names now comply to our naming conventions
* the function computeStreamMD5AsString which computes the MD5
  as a hex string now returns it as a Common::String
* add doxygen comments

svn-id: r54121
2010-11-07 17:16:59 +00:00
Max Horn
99cf0e3936 COMMON: Undo changes to common/ptr.h, remove Common::ScopedPtrC
The deletePointer() method approach cannot work, as it is called
by the destructor of the base class.
A possible correct solution would be to enhance ScopedPtr with a
"deleter" object like SharedPtr. But this seems overkill as long as we
need it in only one place.

svn-id: r54057
2010-11-04 00:49:12 +00:00
Yotam Barnoy
13b904d282 Merge from gsoc2010-plugins
This merge was extremely difficult to carry out. It wasn't entirely SVN's fault -- there were several merges to the branch that were done by hand. Please check for any issues and regressions. Also note that the DS makefile was not copied over since the "one at a time" plugin mode currently has too much fragmentation ie. it doesn't work.

svn-id: r54051
2010-11-03 22:01:01 +00:00
Max Horn
75c6e66874 COMMON: Get rid of the debug() output formatter
Now Engine::errorString is only used by error(), as its name suggests.
This also resolves the inconsistency between debug & debugN.

svn-id: r54023
2010-11-01 20:41:32 +00:00
Max Horn
963cf0b08a COMMON: Disable DEBUG_HASH_COLLISIONS (oops)
svn-id: r54013
2010-11-01 16:42:31 +00:00
Max Horn
459ef85068 COMMON: Switch hexdump() to debugN instead of printf
Rational: hexdump() is used for debug output. An even better alternative
might be to change it to return a string, instead of printing anything.
This way, it could be used inside e.g. GUI debug consoles.
This is left as an exercise to the interested developer :).

svn-id: r54010
2010-11-01 16:04:18 +00:00
Max Horn
f77b8aee75 COMMON: Switch ConfigManager::setInt & ConfigManager::registerDefault to use String::format
svn-id: r54009
2010-11-01 16:04:04 +00:00
Max Horn
0cf64915e1 COMMON: Add debugN variant without level parameter
This makes our various debug*() functions fully symmetric, for now.

svn-id: r54008
2010-11-01 16:03:50 +00:00
Max Horn
e27b05ef35 COMMON: Rename String::printf() to String::format()
This is a first step towards getting rid of all uses of regular printf,
fprintf, vprintf, vfprintf, puts, fputs, etc. in our codebase.

The name format() reflects the purpose of the function, and parallels
String.format() in Java, boost::format, and others.

svn-id: r54004
2010-11-01 16:02:28 +00:00
Max Horn
7a85365004 COMMON: Change some (f)printf to debug calls; clenaup hashmap.h
svn-id: r54003
2010-11-01 16:00:53 +00:00
Max Horn
e67ab53d89 COMMON: Document forbidden.h
svn-id: r53990
2010-10-31 21:50:20 +00:00
Max Horn
a41d4424af COMMON: Allow forbidden symbols in debug.cpp and textconsole.cpp
This is currently necessary for the PS2 port and possibly others.

svn-id: r53989
2010-10-31 21:49:53 +00:00
Yotam Barnoy
94c8d0a14d Updated with latest from trunk
svn-id: r53976
2010-10-31 11:08:43 +00:00
Max Horn
44393b2dc8 ALL: Add code to help stop people from accidentally using "bad" APIs
A new header file common/forbidden.h is included by scummsys.h and it
re-#defines numerous symbols like fopen(), fread(), system(), etc. with
garbage, in order to provoke compile errors in any code using them.

If a .cpp file really *must* use any of these (e.g. because it is a
backend file), then these redefinitions can be disabled by #defining
FORBIDDEN_SYMBOL_ALLOW_ALL as the first thing in the .cpp file. Whenever
this is done, an explanatory comment should be added.

Note that this system cannot catch all "bad" usages (notably the Lua
code in the sword25 engine), as it can only work if scummsys.h is
included.

svn-id: r53961
2010-10-30 21:27:42 +00:00
Max Horn
c0063a6d50 COMMON: Add SCUMMVM_CURRENT_FUNCTION macro (useful for debugging)
svn-id: r53931
2010-10-30 00:32:45 +00:00
Max Horn
c975ed11a1 ALL: Fix various typos (patch #3093266)
svn-id: r53762
2010-10-24 13:04:33 +00:00
Eugene Sandulenko
f7645fea45 Revert "COMMON: Implement Common::vprintf(). Patch by littleboy"
svn-id: r53586
2010-10-18 20:20:14 +00:00
Eugene Sandulenko
4b5640883c COMMON: Implement Common::vprintf(). Patch by littleboy
svn-id: r53576
2010-10-18 19:04:41 +00:00
Johannes Schickel
cf8b589984 COMMON: Made some constructors explicit, where we wouldn't really like implicit conversion.
svn-id: r53508
2010-10-15 18:30:29 +00:00
Johannes Schickel
08afc68df0 COMMON: Extend workaround in HashMap code for sgi IRIX MIPSpro to also apply for Intel's C++ compiler.
svn-id: r53507
2010-10-15 18:20:21 +00:00
Johannes Schickel
4306a65577 COMMON: Revert attempt to silence MSVC warning in Common::gcd.
svn-id: r53506
2010-10-15 18:20:01 +00:00
Johannes Schickel
5c102d4f08 COMMON: Silence gcc warning introduced with r53496.
svn-id: r53497
2010-10-15 14:18:58 +00:00
Johannes Schickel
8fc3c21bd0 COMMON: Attempt to silence MSVC warning in Common::gcd.
svn-id: r53496
2010-10-15 14:14:51 +00:00
Max Horn
2fed5ff832 COMMON: Move XMLParser method impls to .cpp file; make skipComments non-virtual
svn-id: r53480
2010-10-15 12:19:34 +00:00
Max Horn
36cd5caf95 COMMON: Add XMLParser::parseIntegerKey variant accepting a Common::String
Almost all places where we used XMLParser::parseIntegerKey were using
it like this:
  XMLParser::parseIntegerKey(str.c_str(), ...)
Since this makes the code harder to read, I overloaded the method to
also accept Commmon::String directly.
Also removed all .c_str() invocations where necessary.

svn-id: r53479
2010-10-15 12:19:13 +00:00
Johannes Schickel
75e8452b6e OPENGL: Merged from trunk, from rev 52105 to 53396.
This includes an rather hacky attempt to merge all the recent gp2x backend
changes into the branch. I suppose the gp2x backend and probably all new
backends, i.e. gph, dingux etc., might not compile anymore.

Since I have no way of testing those it would be nice if porters could look
into getting those up to speed in this branch.

svn-id: r53399
2010-10-13 03:57:44 +00:00
Jordi Vilalta Prat
8388e0dfea JANITORAL: Clean trailing whitespaces.
svn-id: r53160
2010-10-12 02:18:11 +00:00
Joost Peters
426d6749cf COMMON: work around different vsnprintf behaviour on IRIX
The return value of vsnprintf when the provided buffer is not large
enough to hold the formatted string is implementation-dependent:

C99:  The size the formatted string would take up.
MSVC: -1, with no indication of how large the buffer should be.
IRIX: The number of characters actually written, which is at most
      the size of the buffer minus one, as the string is truncated
      to fit.  This means the only way to be sure the entire string
      is written is if the return value is less than the capacity - 1.

This change means that whenever we try to format a string where the size
is 1 below the built-in capacity, that the capacity will be needlessly increased.

If this turns out to be problematic we could make this behaviour __sgi conditional.

svn-id: r53143
2010-10-10 22:36:03 +00:00
Willem Jan Palenstijn
f98536eef5 SCI: Allow multiple word groups in parser
In SCI01 and up, each typed word may be interpreted as multiple
class,group pairs. This patch adds support to the vocabulary and
parser. It uses the matcher support added in r52985.

This fixes parser issues in German LSL3, but needs testing.

svn-id: r52989
2010-10-03 10:49:42 +00:00
Thierry Crozat
1177692701 GUI: Fix bug #3075649 (Fonts not found with built-in theme)
When switching to a theme that do not have the fonts needed to properly
display the current language, it now revert to the previously used theme
and display an error message telling the user to change the language
first if he wants to use the theme he selected.

svn-id: r52969
2010-10-01 21:41:40 +00:00
Yotam Barnoy
f7f743ac31 PSP: switch from wrapping memcpy to defining our own memcpy
The advantage is that we get to do inlining and even use lwl and lwr instructions where appropriate. We have to do it ourselves because the PSP doesn't tolerate built-in instructions, but also we have a more efficient memcpy than the lib's.

svn-id: r52817
2010-09-20 14:10:44 +00:00
Matthew Hoops
7835ce5cb8 COMMON: Extend getting a Mac resource fork resource with a name
Resource names can be the same across types (ie. 'PICT' "Foo" and 'snd ' "Foo"), so this ensures that the right type is chosen in those cases.

svn-id: r52756
2010-09-17 03:55:41 +00:00
Yotam Barnoy
94b41f5d2e COMMON: remove virtual functions from BufferedStreams
As Max pointed out to me, they don't work as expected when called from constructors/destructors.

svn-id: r52724
2010-09-14 14:57:30 +00:00
Willem Jan Palenstijn
9dfb24851c COMMON: Remove dangerous virtual keywords.
See r52722.

svn-id: r52723
2010-09-14 14:18:25 +00:00
Sven Hesse
a71f3aa99c COMMON: Fix int-Rational operators
svn-id: r52675
2010-09-11 10:03:31 +00:00
Willem Jan Palenstijn
532663c742 COMMON: Fix edge case for wildcard in matchString
svn-id: r52618
2010-09-07 11:40:44 +00:00
Willem Jan Palenstijn
8f1143bfdc COMMON: Remove Rational::operator int/double
This prevents accidental implicit rounding
and might also fix compilation on AmigaOS4 (bug #3060981).

svn-id: r52616
2010-09-07 09:02:46 +00:00
Matthew Hoops
df7158c0ee COMMON: Add a debugPrint function to Rational
svn-id: r52593
2010-09-06 14:59:13 +00:00
Yotam Barnoy
c2cafe426e PLUGINS: used variation of ScopedPtr to clean up load() function
svn-id: r52592
2010-09-06 13:31:27 +00:00
Matthew Hoops
a960ac66ce COMMON: Fix Rational::operator!=(int)
svn-id: r52535
2010-09-04 23:45:23 +00:00
Yotam Barnoy
cdd27ca943 COMMON: changed read/write endian function to use __may_alias__ attribute
This is a better solution for the gcc aliasing problem that happens when aliasing a struct onto something else. What happens is that the compiler assumes no aliasing can happen when -O2 and -O3 are activated, and a call to READ_UINT32() followed by WRITE_UINT32() and another READ_UINT32() will be optimized to return the original read value instead of re-reading.

svn-id: r52480
2010-09-01 12:41:16 +00:00
Thierry Crozat
37027d6531 I18N: Add "lowres" context for several GUI strings when in 1x mode.
This enables translators to use a different translation for these strings in
1x mode (e.g. 320x200 or 320x240) and in 2x or 3x modes.

svn-id: r52461
2010-08-30 22:24:40 +00:00
Thierry Crozat
bf9404485e I18N: Add a macro to define a context for a translatable string.
Currently static strings are marked with the _s() macro so that xgettext knows
the string needs to be translated. But there was no way to tell xgettext that
the string could get translated in different contexts. This is the role of this new
macro.

svn-id: r52460
2010-08-30 22:20:16 +00:00
Thierry Crozat
a2a3073562 I18N: Look for translations data file in Themes path
If the translations.dat file is not found using the SearchMan, it now looks
for that file into the themepath directory and sub-directories (if the path is
defined).

svn-id: r52428
2010-08-28 15:51:23 +00:00
Willem Jan Palenstijn
05c2cc4d1d COMMON: Fix eos handling in BufferedReadStream
This makes it pass the test added in r52382.

svn-id: r52389
2010-08-25 14:43:42 +00:00
Yotam Barnoy
4368d3c574 COMMON: fixed EOS handling in BufferedReadStream and BufferedSeekableReadStream
EOS problem was causing Discworld to crash and zip files not to load on the PSP.

svn-id: r52377
2010-08-25 09:14:41 +00:00
Yotam Barnoy
efdbb076a2 COMMON: implemented BufferedWriteStream and fixed bug in BufferedReadStream
I need the write buffering for the new version of the PSP streams and thought the simplest way to implement it would be along the lines of BufferedReadStream. Sadly, I found a nasty little bug in BRS but that's taken care of.
Also, I adapted these streams for target-specific memory allocation by using virtual functions for allocation/deallocation.

svn-id: r52325
2010-08-24 11:18:48 +00:00
Thierry Crozat
bc821136fd i18n: Add support for context in translations.
This change means there can now be different translations for the same
english string depending on the context. It is based on gettext msgctxt feature.
There is a new macro _c(msg, ctxt) that should be used instead of _(msg) in
the source code when we want to add a context to the message. For the
moment I have added contexts to only one message ("None") so that I could
test the changes. Context could be added also to get shorter translations when
GUI is in 1x mode.

I have also added back the fuzzy option to msmerge since it is useful when
adding contexts to populate the translations for the new contexts.

svn-id: r52308
2010-08-23 19:45:14 +00:00
Max Horn
db7e69b258 CONFIG: Always sort 'scummvm' and keymapper domains first
svn-id: r52296
2010-08-23 10:00:40 +00:00
Johannes Schickel
ff06f0c9d5 i18n: Changed wording of messages about translations.dat file.
svn-id: r52261
2010-08-21 14:05:38 +00:00
Johannes Schickel
7fd7689370 i18n: Formatting fixes.
svn-id: r52260
2010-08-21 13:38:08 +00:00
Johannes Schickel
a53d4dde66 i18n: Style fixes.
svn-id: r52257
2010-08-21 13:21:09 +00:00
Paul Gilbert
5c30303794 COMMON: Added equality operators to Common::Rect
svn-id: r52249
2010-08-21 08:17:06 +00:00
Thierry Crozat
9015a14531 i18n: Fix previous commit when translation support is disabled
Previous commit of translation.cpp introduced a defined but not
implemented operator when the translation support was disabled.
This was probably fine since it was not used, but not very clean.

svn-id: r52241
2010-08-20 21:04:39 +00:00
Thierry Crozat
d00b8a5753 i18n: Sort the list of available languages alphabetically
svn-id: r52239
2010-08-20 20:42:13 +00:00
Eugene Sandulenko
26dc4c2425 DINGOO: new port. Patch #3039277
svn-id: r52210
2010-08-19 12:43:37 +00:00
Eugene Sandulenko
040dfff8ce i18n: Move translations to standalone file. Patch #3044975
svn-id: r52208
2010-08-19 11:46:55 +00:00
Eugene Sandulenko
2bd5077d2e COMMON: Add caching to ZipArchive. Patch #3048388
Based on patch #3048388: "Hash map for ZipArchive class", though
I made the hashing by default and removed the old code.

It is a really good thing and will speed up any archive operations.

svn-id: r52204
2010-08-19 10:15:12 +00:00
Florian Kagerer
b480f0f2f0 COMMON: fix MSVC assert when using umlauts (or other characters > 127) in the global save/load menu
svn-id: r52173
2010-08-17 20:58:01 +00:00
Eugene Sandulenko
7dfd8f9ce2 COMMON: Remove redundant include from str.cpp
If it is needed for your specific platform, then readd it,
but for that platform. Although to me it looks all redundant.

svn-id: r52155
2010-08-17 12:47:18 +00:00
Max Horn
861e520579 COMMON: Try to clarify and update some Common::Archive docs
svn-id: r52131
2010-08-16 19:58:20 +00:00
Eugene Sandulenko
eff2623f10 OSYSTEM: revert r52120 and r52121. Introduced regressions
svn-id: r52127
2010-08-16 18:07:21 +00:00
Johannes Schickel
7b51537be2 Common: Fix bug in lastPathComponent.
Prior to this change lastPathComponent would not create a correct result,
when the input of lastPathComponent did not contain a single separator.

I also added a test case for this in our unit tests.

svn-id: r52123
2010-08-16 16:01:31 +00:00
Eugene Sandulenko
535d8e12bd OSYSTEM: Add directories to archive list just as in other variants
svn-id: r52121
2010-08-16 13:19:21 +00:00
Eugene Sandulenko
bfabe2af97 OSYSTEM: Fix file archive for non-flat directories
svn-id: r52120
2010-08-16 13:00:41 +00:00
Alejandro Marzini
b0409d6739 Merge trunk, from r51777 to r52105
svn-id: r52108
2010-08-16 00:21:07 +00:00
Matthew Hoops
d882661aec COMMON: Cleanup MacResManager::convertCrsrCursor a bit
It's now a static function since it doesn't require any local variables and is really separate from the resource fork code. Also, actually assigning the keycolor (which was just being ignored).

svn-id: r52075
2010-08-14 04:03:36 +00:00
Eugene Sandulenko
05e139dd02 i18n: Update Russian translation
svn-id: r52062
2010-08-13 09:56:07 +00:00
Thierry Crozat
797012eb5c i18n: Fix link error when localization is disabled
This fix a regression introduced in revision 50448 ("Add support for
locale-dependant font'). When disabling localization a function was
declared, called but not implemented.

svn-id: r52048
2010-08-12 23:09:38 +00:00
Alejandro Marzini
e18c9a1890 Fix for AmigaOS build.
KEYCODE_LESS and KEYCODE_GREATER are defined in AmigaOS SDK, but they are defined also in common/keyboard.h

svn-id: r52030
2010-08-12 06:45:13 +00:00
Thierry Crozat
629042a07c i18n: Update German translation
svn-id: r52014
2010-08-11 23:21:53 +00:00
Thierry Crozat
53f11373d4 i18n: Update all translations.
Template and all translations were updated from source code. The
German and French translations contain additional changes.

svn-id: r52008
2010-08-11 21:51:34 +00:00
Eugene Sandulenko
ff8b296c29 Use tabs instead of spaces for indentation.
svn-id: r51997
2010-08-11 19:32:07 +00:00
Florian Kagerer
4a159bcb1e GUI: add music devices for c64, amiga and apple II gs
These devices are not able to create appropriate drivers.
The only purpose for now is having proper gui options and flags and music types for the device detector.
The corresponding GUIO flags for the new devices have been added, too.

svn-id: r51995
2010-08-11 18:54:56 +00:00
Alejandro Marzini
33e40e1a20 Merged from trunk, from r51495 to r51775
svn-id: r51776
2010-08-06 03:21:21 +00:00
Thierry Crozat
575d38f602 i18n: Adding Spanish and Ukrainian translations
svn-id: r51596
2010-08-01 21:41:43 +00:00
Eugene Sandulenko
a0c58778f1 i18n: Update Russian translation
svn-id: r51574
2010-08-01 11:23:04 +00:00
Thierry Crozat
1c6b339bbc i18n: use user friendly language names in GUI
The GUI now uses the content of the Language field from the po file
header if it is present and not empty for the language selection
PopupWidget. If not present it uses the file name as before (e.g.
ru_RU).

Also update all the translation template and all the translation files.

svn-id: r51542
2010-07-31 15:46:43 +00:00
Johannes Schickel
f75d84cbdd JANITORIAL: Some small explanation about stability of sorting algorithms.
Special thanks to lskovlun for his suggestion to add this.

svn-id: r51524
2010-07-30 23:42:50 +00:00
Johannes Schickel
8e8023d7cc JANITORIAL: Add comment about the stability of Common::sort.
svn-id: r51522
2010-07-30 23:24:22 +00:00
Alejandro Marzini
fb4086cadb Merged from trunk, from Rev 50841 to HEAD
svn-id: r51495
2010-07-30 05:28:09 +00:00
Alejandro Marzini
9daa1c7f93 OSYSTEM: Add resetGraphicsScale() method.
This fixes a hack for resetting the graphics scale to x1 when starting games that have a large screen size. The SDL graphics manager should now scale back to x1 without changing the current scaler in use, as well as the OpenGL graphics manager.

svn-id: r51492
2010-07-30 03:06:57 +00:00
Johannes Schickel
e5e94d4511 Strip trailing whitespaces in our common code base.
svn-id: r51094
2010-07-21 18:17:51 +00:00
Max Horn
0b48a71c99 Remove PalmOS port
svn-id: r50964
2010-07-17 18:41:38 +00:00
Alejandro Marzini
e47c64dd34 Fixed compile error.
svn-id: r50901
2010-07-15 01:46:02 +00:00
Alejandro Marzini
609e08d5db Merged from trunk, from Rev 49499 to HEAD
svn-id: r50840
2010-07-13 04:31:15 +00:00
Johannes Schickel
8d7bc0eab5 Some documentation fixes.
svn-id: r50830
2010-07-12 20:17:42 +00:00
Johannes Schickel
ac268edafb Consistently use "MT-32" as short name of the Roland MT-32 in our GUI and credits files.
svn-id: r50821
2010-07-12 15:50:23 +00:00
Thierry Crozat
e3d48dc9c2 Update German translation.
svn-id: r50808
2010-07-11 21:15:24 +00:00
Thierry Crozat
abd2057408 Update template and all translation files following the addition of a new translatable string. French and German translations also have additional updates.
svn-id: r50764
2010-07-09 17:25:45 +00:00
Willem Jan Palenstijn
a3202eab7c Note Common::String's behaviour may be undefined with \0 characters.
Also make operator=(char) and String(char) behave the same.

svn-id: r50712
2010-07-05 21:29:52 +00:00
Johannes Schickel
1443a2721c Fix update of GUI options, which only differ in the language setting.
svn-id: r50706
2010-07-05 20:10:56 +00:00
Johannes Schickel
73e51735a4 Formatting fixes.
svn-id: r50705
2010-07-05 20:10:28 +00:00
Thierry Crozat
31df21be75 Commit improved italian translation.
Also update the template file and all the other translation files (there is quite a lot of line numbers that have changed).

svn-id: r50540
2010-06-30 22:27:34 +00:00
Robert Špalek
02fb3f88e2 unzip.cpp can read uncompressed ZIP archives even when zlib is not linked in
svn-id: r50482
2010-06-29 06:33:31 +00:00
Thierry Crozat
32a192b79a Update German translation.
svn-id: r50461
2010-06-28 21:56:25 +00:00
Eugene Sandulenko
0e7ccb896d i18n: Add support for locale-dependent fonts
Currently it ws not decided where to put fonts, but if you put BDF files into
themepath, they will get picked up.

The font name has to contain same codepage specification as in the .po file,
i.e. fixed5x8-iso-8859-5.bdf for Cyrillic codepage. In case the font does not
exist, default will be used.

All built in fonts get proper names.

TODO: Currently there is a bug with our font cacher. Font clR6x12-iso-8859-5
is empty after loading from FCC file. Reason is unknown.

svn-id: r50448
2010-06-28 15:17:10 +00:00
Eugene Sandulenko
7078655de0 i18n: Sync all translation with sources
svn-id: r50394
2010-06-27 20:38:05 +00:00
Eugene Sandulenko
f5bc8be952 i18n: Update Russian translation
svn-id: r50393
2010-06-27 20:36:39 +00:00
Thierry Crozat
945297a599 Add italian translation from the patch tracker (#3022046) and update credits.
svn-id: r50386
2010-06-27 18:19:37 +00:00
Thierry Crozat
006197e5bd Update the french translation.
svn-id: r50381
2010-06-27 16:53:08 +00:00
Johannes Schickel
4ec0827551 Add some explanation why we can not just use setlocale on Win32.
svn-id: r50354
2010-06-26 23:01:12 +00:00
Johannes Schickel
b7ab6ca3f1 Use "C" on Win32 as syslang in case the locale could not be determined.
svn-id: r50353
2010-06-26 22:51:13 +00:00
Johannes Schickel
14fdd11c04 Fix compilation with our default build system when USE_DETECTLANG is specified.
svn-id: r50349
2010-06-26 22:44:43 +00:00
Johannes Schickel
578cdb2aeb Implement support for auto detection of the users preferred locale on Windows.
Note that this might break support for Windows versions older than Win2k,
at least according to the MSVC docs GetLocaleInfo is only supported by Win2k+.

I added a comment about that though.

svn-id: r50348
2010-06-26 22:32:51 +00:00
Johannes Schickel
58fcda82f3 Remove support for translation of console messages.
In recent discussions on -devel it turned out, that this
feature is rather superfluous and instead we should rather
implement a proper error reporting in our GUI.

I also removed the dependency on iconv along with this.

svn-id: r50335
2010-06-26 18:07:41 +00:00
Jordi Vilalta Prat
8008e09ea3 GUI: Update translations after the last message changes
svn-id: r50328
2010-06-26 16:02:40 +00:00
Jordi Vilalta Prat
063cef0c28 GUI: Add and improve some messages to translate
svn-id: r50324
2010-06-26 15:48:03 +00:00
Florian Kagerer
3962f8ba59 AUDIO: some fixes in the audio device code (no sound option, new GUIO flags)
svn-id: r50281
2010-06-25 18:47:52 +00:00
Thierry Crozat
04ae0bcf58 Add German translation from patch tracker (patch #3020282).
svn-id: r50247
2010-06-24 22:36:21 +00:00
Johannes Schickel
17a96b3bd2 Yet another slight variable renaming to match our conventions.
svn-id: r50242
2010-06-24 22:00:45 +00:00
Johannes Schickel
968e10795f Do not include any headers from common/messages.cpp, since that file might be included into an namespace.
svn-id: r50241
2010-06-24 22:00:20 +00:00
Johannes Schickel
a5fb4fec2e Some more cleanup of po2c's output.
svn-id: r50240
2010-06-24 21:59:50 +00:00
Johannes Schickel
63cab52b85 Adapt po2c's output to better mach our code formatting conventions.
Along with it I added a suffix "-scummvm" to the version variable,
since we also feature some custom extensions like the charset
specification.

svn-id: r50239
2010-06-24 21:59:27 +00:00
Johannes Schickel
c96991d991 Added some consts to the output of tools/po2c.
svn-id: r50238
2010-06-24 21:59:03 +00:00
Max Horn
bbad3f333a Patch #1956501: "GUI/LAUNCHER: Midi device selection"
svn-id: r50128
2010-06-21 21:36:36 +00:00
Torbjörn Andersson
38b172e8e5 Fixed some Cppcheck warnings. (There are plenty left, if anyone's wondering.)
svn-id: r50120
2010-06-21 19:32:25 +00:00
Yotam Barnoy
b5a25a6e19 PSP: errors from both ScummVM and the PSP port now print to file by default. This should make debugging easier, especially for users.
svn-id: r50113
2010-06-21 13:58:51 +00:00
Alejandro Marzini
e0fe48032d Made _sampleRate constant again in Audio::MixerImpl. (And Committing "common/timer.h" that should have been included in r50095)
svn-id: r50097
2010-06-20 20:19:53 +00:00
Thierry Crozat
f2983093e8 Add nearly complete french translation. I tried to make it work also in 320x200 but french can be quite verbose, so in a few places it does not fit. Also I could not check any of the device specific strings (e.g. from WinCE, Wii or other backends) and a few are missing.
svn-id: r50068
2010-06-19 22:56:58 +00:00
Thierry Crozat
721db3eccb Fix an issue in String::ensureCapacity() when the string is shared. It could allocate two much memory as it was at least doubling the current capacity even when this one was sufficient.
It fixes a crash in GUI::Widget::cleanupHotkey() as the capacity of the string was doubled at each iteration once it was too long for the internal storage (only to add one character to the string). This ended up in a bad_alloc exception after a few iterations.

svn-id: r50050
2010-06-19 15:35:21 +00:00
Johannes Schickel
d869d1370e Properly provide stub implementations for all TranslationManager methods when USE_TRANSLATIONS is not defined.
svn-id: r49997
2010-06-18 02:25:33 +00:00
Johannes Schickel
e347a6856e Do not rebuild common/messages.cpp automatically when a translation changes, but require the user to do "make update-translations".
This should be helpful for building on a system without perl.

svn-id: r49991
2010-06-18 02:08:00 +00:00
Johannes Schickel
cb92890d7b Commit updated common/messages.cpp too.
svn-id: r49946
2010-06-17 19:15:23 +00:00
Johannes Schickel
b56b3b9ead Fix common/messages.cpp rule for out of source directory builds. (Maybe this fixed bug #3017628 "AMIGAOS4: messages.cpp errors")
svn-id: r49940
2010-06-17 18:47:25 +00:00
David Turner
e5f609a40a Correction for Invalid reads in Translation iconv calls reported by Valgrind.
The string terminators were omitted from the iconv call and not restored.

svn-id: r49916
2010-06-17 03:22:52 +00:00
Johannes Schickel
49463c2bf9 Use USE_TRANSLATION, USE_DETECTLANG and USE_TERMCONV instead of (ENABLE_)TRANSLATION, DETECTLANG and TERMCONV.
svn-id: r49885
2010-06-15 19:20:58 +00:00
Johannes Schickel
a42ea73a76 Simplify code for the "ICONV_USES_CONST" case even more. (i.e. remove the "msg" variable there).
svn-id: r49880
2010-06-15 17:56:05 +00:00
Andre Heider
212d0ac28c Fix compilation when using ICONV_USES_CONST.
svn-id: r49878
2010-06-15 17:50:14 +00:00
Johannes Schickel
d8bc798145 Strip out charset information from the system locale again (like it was done before r49871).
Unlike with the old code, we know allow for locales
with a different size than 5 though.

svn-id: r49876
2010-06-15 17:47:23 +00:00
Johannes Schickel
f3288b0f26 Fix a typo.
svn-id: r49875
2010-06-15 17:47:04 +00:00
Johannes Schickel
34d8196334 Output some warning in case an invalid ID was passed to TranslationManager::getLangById.
svn-id: r49873
2010-06-15 17:34:26 +00:00
Johannes Schickel
f607fc59db Extend (and along with it add) some doxygen comments.
svn-id: r49872
2010-06-15 17:34:07 +00:00
Johannes Schickel
0bff5c29fe Use a Common::String instead of a fixed size array for _syslang in TranslationManager.
svn-id: r49871
2010-06-15 17:33:45 +00:00
Willem Jan Palenstijn
7c7054dbd1 Remove unnecessary svn:executable properties
svn-id: r49870
2010-06-15 17:14:38 +00:00
Johannes Schickel
c09af1dcae Some style fixes.
svn-id: r49869
2010-06-15 17:14:02 +00:00
Johannes Schickel
0d7c8071cc Fix iconv signature on BSD systems. (Based on what we do in tools/)
svn-id: r49868
2010-06-15 17:13:42 +00:00
Max Horn
365973542c Add TranslationManager::getTranslation variant taking/returning a Common::String (should fix WinCE build)
svn-id: r49861
2010-06-15 15:50:37 +00:00
Max Horn
44ce741f9c Code formatting
svn-id: r49859
2010-06-15 15:39:59 +00:00
Max Horn
651e2760a3 Fix spelling, cleanup
svn-id: r49843
2010-06-15 12:33:20 +00:00
Max Horn
703f0ca29c SYSTEM: Unify OSystem::getSupportedFormats() signature
svn-id: r49838
2010-06-15 12:21:08 +00:00
Eugene Sandulenko
2399f998a3 i18n: Update Russian translation.
svn-id: r49799
2010-06-15 11:05:52 +00:00
Eugene Sandulenko
94c9f9cdd1 I18n: Add backend files to POTFILES. Update .pot.
Translations were not updated.

svn-id: r49797
2010-06-15 11:03:11 +00:00
Eugene Sandulenko
01bc5dda94 GUI: Implemented Languages as GUI options.
SCUMM and AdvancedDetector support this feature.

svn-id: r49786
2010-06-15 10:57:28 +00:00
Eugene Sandulenko
67bc711580 GUI: Implement MIDI drivers as GUI options.
Proper version of patch #2988641: "GSoC: Select drivers in GUI
based on output types". So far only SCUMM engine supports this
feature.

svn-id: r49783
2010-06-15 10:56:12 +00:00
Eugene Sandulenko
7be2812757 i18n: Update Russian translation with new tooltips
svn-id: r49780
2010-06-15 10:54:48 +00:00
Eugene Sandulenko
b13636d624 i18n: update Russian translation with tooltips.
svn-id: r49776
2010-06-15 10:53:13 +00:00
Eugene Sandulenko
dc040aa867 GUI: Implement radiobuttons.
Implement radiobuttons in GUI. Also closes FR #2821529:
"GUI: volume and subtitles speed sliders".

Subtitle toggle button is replaced by three radiobuttons grouped
by a single group.

Updated translations and themes.

svn-id: r49767
2010-06-15 10:48:39 +00:00
Eugene Sandulenko
3fafa07ab0 GUI: Added in-place hotkeys for widgets.
Now it is possible to specify hotkeys in place for ButtonWidget
and CheckboxWidget (the only widgets with hotkeys now).

Use de-facto standard with putting hotkey between tildes (~).
Like '~O~pen'. The tildes gets stripped before after hotkey
is extracted.

This is done for giving translators possibility to specify
their own hotkeys.

Old hotkeys defined at widget instance creation are left for
leaving possibility to specify non-printable hotkeys such as
Common::ASCII_ESCAPE.

Translation files were updated respectively.

svn-id: r49766
2010-06-15 10:47:31 +00:00
Eugene Sandulenko
859212df25 Implement translation support for ScummVM GUI.
Based on patch #2903830: "Updated Translation Prototype" by alexbevi
which in turn is based on patch #1739965 by jvprat.

Currently it builds all translations right into ScummVM. Once the
feature will be accepted more widely, i.e. more translations will
pop up, it will be trivial to move translation strings to external
file.

Finished translation: Russian
Unfinished translation: Hungarian

Things which are nice to do:
 - Language code -> language mapping for more user friendness
 - Specifying fonts to be used with language
 - Updating of interface language without restart. It will require
   moving of much code to reflowLayout() methods for each dialog

The .po files must be in single byte encodings. I.e. no support
for Unicode.

svn-id: r49759
2010-06-15 10:44:51 +00:00
Eugene Sandulenko
024f492137 Added seek() method to MemoryWriteStreamDynamic.
If it deserves a separate class, shout.

svn-id: r49750
2010-06-15 10:34:14 +00:00
Eugene Sandulenko
9224a0bd6e Hid hashed fileopening to debuglevel 8.
svn-id: r49705
2010-06-15 10:19:06 +00:00
Alejandro Marzini
e1ef3cd9fc Renamed getAudioCD to getAudioCDManager.
svn-id: r49678
2010-06-15 04:13:12 +00:00
Alejandro Marzini
77f114b835 Added SdlTimerManager. Added getMillis, delayMillis and getTimeAndDate to Common::TimerManager, DefaultTimerManager and ModularBackend. Removed timer code from OSystem_SDL.
svn-id: r49637
2010-06-13 21:09:52 +00:00