Commit graph

3050 commits

Author SHA1 Message Date
Bastien Bouclet
662791a961 COMMON: Include hidden files in directory listings by default
Hidden files are now only ignored in the GUI file browser when the user
has not checked 'show hidden files'.

Myst III has the hidden flag set for one of the directories containing
datafiles on the CD-ROM. When users copy the files to their hard drives
the hidden flag is kept. Detection worked previously because hidden
files were explicitly requested in the AD code. The engine would fail
to open the datafiles because SearchMan.addSubDirectoryMatching
ignored hidden directories.
2019-01-30 06:48:32 +01:00
Bastien Bouclet
26d0935b9f COMMON: Remove usage of ScopedPtr in OutSaveFile
It's not very useful. However this is mostly to test the theory that the
build failure we've been experiencing in
engines/scumm/he/logic/football.cpp with the osx builder on buildbot is
related to the size of the intermediary assembly source file.
2019-01-05 12:02:19 +01:00
Paul Gilbert
7643382ff4 COMMON: Suport String in U32String assignment & equality operators 2019-01-01 00:40:17 -08:00
Matan Bareket
1474ca4ab3 JANITORIAL: Fix comment style for kFeatureSystemBrowserDialog 2018-12-26 15:30:16 -05:00
Thierry Crozat
56d1305f9d COMMON: Rename enum variable for native browser feature
There was a typo in the name (missing 'r' in browser).
2018-12-17 23:06:07 +00:00
SupSuper
d0512db25c WIN32: Move all ARRAYSIZE undefs to util.h
Instead of trying to undefine ARRAYSIZE everywhere we use a Windows header, let's just do it before we define our own
2018-12-17 12:28:33 +02:00
Thierry Crozat
319b90fb21 BACKENDS: Add kFeatureNativeFileBowserDialog 2018-12-16 15:58:43 +00:00
Thierry Crozat
d320c36e58 JANITORIAL: Fix typo in comment 2018-12-16 15:58:43 +00:00
SupSuper
fbc9c7d371 BACKENDS: Hook GUI browser to DialogManager 2018-12-16 10:48:13 +00:00
SupSuper
952b12311c BACKENDS: Add base support for system dialogs 2018-12-16 10:48:13 +00:00
Cameron Cawley
8fa2f90a26 CREATE_PROJECT: Support building with Tremor instead of Vorbis 2018-11-27 22:58:02 +00:00
Cameron Cawley
79a4e3f813 BACKENDS: Remove references to the GP32 backend 2018-11-04 21:38:45 +00:00
Torbjörn Andersson
fc7fa1de3a VIDEO: Use liba52 to decode audio. This is still laughably broken
At the moment, this produces nothing but misery in the form of
Valgrind warnings and horrible noise.
2018-11-04 22:33:22 +01:00
D G Turner
4c4ede54b9 COMMON: Add Portuguese (Portugal) Language.
The current Portuguese entry is Brazilian dialect, so modifying the
description and adding an entry for European Portuguese.

This is required to deal with bug Trac #10791.
2018-11-03 17:13:54 +00:00
D G Turner
d0480e2dad COMMON: Add Danish Language.
This is required in PINK engine for danish localization as per
Trac bug #10708.
2018-10-26 01:34:03 +01:00
Thierry Crozat
1e11da712b COMMON: Add mutex to protect access to the String memory pool
This fixes a crash due to concurrent access to the global MemoryPool
used by the String class when String objects are used simultaneously
from several threads (as is for example the case when enabling the
cloud features).

See bug #10524: Thread safety issue with MemoryPool
2018-10-14 21:25:16 +01:00
Thierry Crozat
c39dcc57a0 OSYSTEM: Add backendInitialized() function
Some feature, such as mutexes, are only available once the backend
has been initialized. This new function can be used to avoid using
those feature too early or too late.
2018-10-14 21:25:02 +01:00
Filippos Karapetis
7f83640894 SCI32: Add a game option to double the videos in KQ7 by default
Scaling works correctly with the Windows variant, which uses AVI files,
but the DOS variant uses Robot videos, and the way scaling is done
there is different, and is not working yet with KQ7 DOS. Nonetheless,
both versions are included in the game, so it's not a major issue.
2018-09-01 13:14:38 +03:00
David Fioramonti
51c11efbbc COMMON: Cos/Sin Table switch internal structure so at() is faster
A new internal table has been added so that no if checks need to
be performed for the at() lookup.

The old table can still be accessed using getTable or atLegacy().

at() and atLegacy() return the same values, but at() is faster.
2018-08-25 23:51:40 +02:00
David Fioramonti
cf99bb0a5e COMMON: Update RDFT and DCT cos/sin table constructor usage
When the constructor for the cos/sin table was changed from
number of bits to number of points all usages thoughout the
code should of been changed, but this was missed in RDFT and DCT.

Fixes Trac#10683.
2018-08-25 23:50:07 +02:00
Ľubomír Remák
0e90d6eae3 MUTATIONOFJB: Use advanced detector. 2018-08-25 23:12:01 +02:00
David Fioramonti
da57cef0c3 COMMON: FFT update cos/sin table constructor change
They now take in the size rather than the power of 2 exponent.
2018-08-18 16:30:57 +02:00
David Fioramonti
9cfc70e7fe COMMON: allow cos/sin number of points to be more flexible
Previously, the cos/sin table had to be a power of 2, but there
are many use cases where the number of points is not necessarily
a power of 2 so this change the constructor so it now takes
in the number of points rather than the number of points as the
exponent of a power of 2.

The restriction is that the size must be divisible by 4.
2018-08-18 16:30:57 +02:00
Cameron Cawley
4016cffd7a COMMON: Make strdup a forbidden symbol 2018-08-18 16:30:05 +02:00
Cameron Cawley
7a437e909c COMMON: Move new_strdup to common/str.cpp 2018-08-18 16:30:05 +02:00
Andrei Prykhodko
47130eceb3 COMMON: changed code page constant name from ascii to utf8 2018-08-05 22:50:42 +03:00
Andrei Prykhodko
ca54a72072 COMMON: made code pages conversion arrays static and constant 2018-08-05 21:57:36 +03:00
Andrei Prykhodko
9948b2452f COMMON: named CodePage enum 2018-08-05 21:53:31 +03:00
Andrei Prykhodko
62c250a8be COMMON: added method to convert text from various code pages to Unicode 2018-08-05 20:32:25 +03:00
lolbot-iichan
d91307e401 COMMON: Added Ukrainian language
Common::UA_UKR is needed for FoxTail game at WinterMute engine
2018-08-03 00:43:33 +02:00
Thierry Crozat
53d0fe22d9 COMMON: Fix HashMap never reusing erased items storage
When erasing and inserting many items this caused the hashmap capacity
to grow more than it should which resulted in performances issues (and
possibly memory issues as well). The issue was reported on IRC today
with the wintermute engine.
2018-07-30 19:32:02 +01:00
David Fioramonti
650e26b6ab COMMON: Add at() index function to cosine/sine table
The cos/sin table class now has an at() function for indexing
safely into its internal array.

This allows the checking and computing of the correct
indexes to be done internally.

The indexing in allows cos/sine of 0 to 2pi to be
obtained.

The values returned by getTable are the same as before.

Comments that describe the values that the table
contains has been modified to line up with what
the code is doing.
2018-07-25 10:18:32 +02:00
Thierry Crozat
89f1b1c96e GUI: Add Stretch Mode selection in Options dialog 2018-07-08 16:54:51 +01:00
Thierry Crozat
8526c2c31a OSYSTEM: Add Stretch Mode API 2018-07-08 16:54:51 +01:00
Eugene Sandulenko
4d847d83ed COMMON: Added Finnish language constants 2018-06-28 23:51:32 +02:00
Eugene Sandulenko
79e158671e COMMON: Add simplistic UTF8->UTF32 converter 2018-06-18 00:08:01 +02:00
Bastien Bouclet
3b794d2633 MOHAWK: Display a GUI error message when no audio devices are available 2018-06-07 20:14:27 +02:00
David Fioramonti
2fcc429498 COMMON: More nullptr usage in common/ptr
Replaces some more ptr=0 with ptr=nullptr.
2018-06-04 03:36:27 -07:00
Thierry Crozat
4229e2642e
Merge pull request #1141 from DanielSWolf/larryscale
SCI: High-quality "LarryScale" cel scaler for LSL7
2018-06-03 17:41:47 +01:00
David Fioramonti
8d10fbe1ba COMMON: coding convention improvements for degree conversion funcs
Removed whitespace before template keyword.

Made template types camel case starting with lowercase.
2018-05-28 23:00:53 +01:00
whiterandrek
ac5f61265f COMMON: fix wrong size assignment in HashMap 2018-05-25 19:13:14 +01:00
Adrian Frühwirth
cee4d6b853 JANITORIAL: Fix trailing whitespace 2018-05-24 15:30:55 +02:00
David Fioramonti
abb8ae0936 COMMON: Template deg2rad and rad2deg in Common/math
The input and output type can be different.

Currently, rad2deg is only being used by sci (float to int)
and deg2rad in wintermute.
2018-05-20 11:21:06 +01:00
Bastien Bouclet
955e18c648 COMMON: Use nullptr instead of NULL or 0 where appropriate 2018-05-10 08:35:46 +02:00
Bastien Bouclet
7382af32be GUI: Make the tab completion case insensitive in the debug console
It made little sense for the tab-completion to be case sensitive while
command execution itself is case insensitive.
2018-04-30 20:31:44 +02:00
Lothar Serra Mari
05c1e593c0 COMMON: Add hasInstance() bool to singleton class 2018-04-29 21:47:10 +01:00
Thierry Crozat
3fe0e3c38e OSYSTEM: Add API to copy text to clipboard
This has also been implemented for the SDL2 and macOS backends.
2018-04-29 21:47:10 +01:00
Adrian Frühwirth
a20f90cbb7 JANITORIAL: Fix formatting 2018-04-22 00:56:21 +02:00
Adrian Frühwirth
9bee9e1ba6 JANITORIAL: Fix whitespace 2018-04-19 12:08:31 +02:00
Adrian Frühwirth
3747d852ee JANITORIAL: Fix whitespace 2018-04-15 16:31:31 +02:00