Cameron Cawley
981b771e38
BACKENDS: Remove unused feature kFeatureDisableKeyFiltering
2020-03-09 22:14:38 +02:00
Bastien Bouclet
568d882e80
KEYMAPPER: Introduce a Virtual Mouse event source
...
The Virtual Mouse is meant to provide a way to control the mouse cursor
on system without a physical mouse. It provides keymapper actions that
are expected to be bound to game controller axes or buttons.
2020-03-09 20:00:31 +01:00
Bastien Bouclet
e66e35a3fd
COMMON: Move isMouseEvent from Keymapper to Common
2020-03-09 20:00:31 +01:00
Paul Gilbert
b2095095ed
ULTIMA8: Starting the game will now auto-load the previous used savegame
2020-02-26 21:35:48 -08:00
Cameron Cawley
1605b72ee8
BACKENDS: Add events for additional mouse buttons
2020-02-26 21:34:24 +01:00
Matthew Duggan
ff840ba47b
COMMON: Fix return value of String::findLastNotOf
2020-02-25 18:48:37 -08:00
lolbot-iichan
3e738f7734
COMMON: Fix conversion to UTF32 for short strings
...
Testcase: convert 1-byte encoded single character string from 125X to
UTF32, e.g. "=".
Expected result: got widestring, first dword contains "=", next dword
contains "\0"
Actual result: got widestring, first dword contains "=", second dword
contains garbage, next dword contains "\0"
Reference implementation:
http://www-personal.umich.edu/~bazald/l/api/_s_d_l__iconv_8c_source.html
, line 887
2020-02-24 09:18:38 +01:00
Bastien Bouclet
22c75c644a
EVENTS: Change DefaultEventManager to be the owner of the keymapper
2020-02-22 13:14:04 +02:00
Paul Gilbert
b2fd3ccacc
ULTIMA8: Implement the toUnicode method
2020-02-19 19:51:08 -08:00
lolbot-iichan
7edaf3f2f7
KEYMAPPER: Enable remapping of the mouse wheel
2020-02-19 08:04:25 +02:00
Paul Gilbert
818d9bab27
ENGINES: Change debugger trigger to Ctrl+Alt+D using keymapper
2020-02-16 13:07:19 +02:00
Le Philousophe
b1d20e4b56
COMMON: Add find() method for character to U32String
...
This is like strchr but for uint32 based strings
2020-02-15 22:07:22 +01:00
Bastien Bouclet
29dd15af0c
KEYMAPPER: Enable remapping the keyboard modifier keys
2020-02-14 19:30:00 +01:00
Cameron Cawley
13e5042dee
COMMON: Add WriteStream::writeStream()
2020-02-09 23:26:45 +02:00
Bastien Bouclet
2177e685b7
KEYMAPPER: Allow joystick half axes to be remapped
2020-02-09 08:34:16 -06:00
rsn8887
eea70a3c8c
BACKEND: Allow SDL2 mapping of L2/R2, fix psp2/switch mapping
2020-02-09 08:34:16 -06:00
jepael
83d481f882
COMMON: Fix compiler warning
2020-02-07 21:58:31 +01:00
Bastien Bouclet
bb27669026
COMMON: Refill the stream buffer after making a large read
...
After reading directly from the parent stream, the buffer needs to be
filled with the end of the read data so seeking back in the stream into
the buffered area and reading returns data consistent with the parent
stream.
Fixes bug #11342 (PSP port only).
2020-02-07 18:33:56 +01:00
Eugene Sandulenko
008f4c6f8d
COMMON: Added dumper method to MacResMan
2020-02-06 21:42:01 +01:00
Paul Gilbert
3717b672d1
ULTIMA: Further compilation fixes
2020-02-01 17:48:37 -08:00
Paul Gilbert
e8eb67f82e
ULTIMA: Fix crashes in String::erase
2020-02-01 13:13:51 -08:00
Paul Gilbert
f972d68ae2
COMMON: Change recently added string methods to be camelcase
2020-02-01 13:13:51 -08:00
Paul Gilbert
a178952464
ULTIMA: Moving many string methods from Std::String to Common::String
2020-02-01 13:13:51 -08:00
Paul Gilbert
ae58f79d18
LUA: Re-introduce support for loadfile to load actual files
2020-02-01 13:13:51 -08:00
Eugene Sandulenko
9c92773844
COMMON: Add override keywords
2020-01-31 14:48:10 +01:00
Eugene Sandulenko
507dd5c178
COMMON: Mark methods as override
2020-01-31 12:26:29 +01:00
Bastien Bouclet
e973092aef
KEYMAPPER: Enable remapping of the mouse buttons
2020-01-29 08:51:29 +01:00
Bastien Bouclet
32174c9067
KEYMAPPER: Actions can now be bound to joystick buttons
2020-01-29 08:51:29 +01:00
Bastien Bouclet
df4bf6556c
KEYMAPPER: Introduce custom engine actions
...
Custom engine actions are a new type of event the Keymapper can produce.
When an engine declares its keymap, it can declare it wants to receive
custom action events when the corresponding key is pressed, instead of
the originating hardware input events.
This system allows:
* Key bindings to be specified only once when declaring the keymap,
instead of twice (when handling the events).
* To truly rebind keys in the keymaps dialog. When using traditional
event mapping, the keymapper remaps the user keypress to the keypress
expected by the game engine to perform the action. However, the engine
still accepts the original keys.
The new concept of 'standard actions' defines a set of engine actions
that are commonly available in the games supported by ScummVM. Backends
can define default bindings for the standard actions to hardware
specific input devices.
2020-01-29 08:51:29 +01:00
Bastien Bouclet
7617723ab5
KEYMAPPER: Allow backends to register multiple keymaps
2020-01-29 08:51:29 +01:00
Bastien Bouclet
ec9c394787
KEYMAPPER: Remove DefaultEventMapper
...
Now the keymapper is enabled by default, it does not make sense to have
a separate class anymore.
2020-01-29 08:51:29 +01:00
Bastien Bouclet
14663c4790
KEYMAPPER: Make the keymapper mandatory
2020-01-29 08:51:29 +01:00
Bastien Bouclet
cc336635a1
KEYMAPPER: Change custom backend action events not to be instant
...
Allows action consumers to choose if they want to react on the start or
on the end of an user interaction.
2020-01-29 08:51:29 +01:00
Bastien Bouclet
2d7588d9c3
EVENTS: Remove the dependency to EventSource from EventMapper
2020-01-29 08:51:29 +01:00
Bastien Bouclet
511d138bbc
KEYMAPPER: Move the remap dialog to an option dialog tab
...
The aim is to make it easy to discover, and possible to use without a
keyboard.
2020-01-26 23:09:08 +02:00
Bastien Bouclet
8dd2b7ca39
EVENTS: Expose the primary global keymap builder
2020-01-26 23:09:08 +02:00
Bastien Bouclet
7edff01e69
KEYMAPPER: Move the remap event capture logic out of the keymapper
2020-01-26 19:07:53 +01:00
Bastien Bouclet
63142d8090
COMMON: Event observers can't eat poll notifications anymore
...
It did not make much sense, and was unused.
2020-01-26 19:07:53 +01:00
Cameron Cawley
9fc24522d7
BACKENDS: Add more keycodes
2020-01-21 03:28:22 +02:00
Cameron Cawley
a692905eb2
COMMON: Add a function to simplify loading Windows executables
2020-01-11 17:34:12 +02:00
Cameron Cawley
aa9a41545a
COMMON: Add a common base class for the Windows resource classes
2020-01-11 17:34:12 +02:00
Cameron Cawley
b8e94e1acd
COMMON: Rename PEResources::getNameList() to getIDList()
2020-01-11 17:34:12 +02:00
Eugene Sandulenko
a6307b768c
COMMON: Fix reading beyond array pointers in toString()
2020-01-06 13:31:58 +01:00
aviloria
92c7366d1c
COMMON: Add ZH_ANY language for generic chinese languages
...
We have a game that has actual ZH_CNA, ZH_TWN translations and also ships with the same file set that formed ZH_CNA in previous game versions, when there was no separate Traditional/Simplified variants and was only one 'Chinese'
2019-12-27 01:36:19 +02:00
Eugene Sandulenko
5375a2a048
COMMON: Add sanity check to MacResMan
2019-12-26 17:03:44 +01:00
Thanasis Antoniou
0357293897
ANDROID: Fix crash due to adding '.' folder in SearchManager
2019-12-16 22:59:10 +02:00
Cameron Cawley
e92ac655be
BACKENDS: Add default implementation for GraphicsMode functions
2019-12-15 16:06:56 +02:00
Cameron Cawley
c3c3137ab3
BACKENDS: Move nextHigher2() into common/algorithm.h
2019-12-14 17:09:18 +02:00
Eugene Sandulenko
5825a30b67
JANITORIAL: Whitespace fixes
2019-12-13 00:02:38 +01:00
Eugene Sandulenko
4b0fcd411b
COMMON: Fix string length in U32String::encode()
...
Our method expects length in bytes, not in characters, which is 4x for U32
2019-12-12 23:59:58 +01:00
D G Turner
365e9af4f0
COMMON: Minor Spelling Fix to Util Header Comment
...
No functional change.
2019-12-11 02:19:28 +00:00
Eugene Sandulenko
c85e5a64d7
COMMON: Fix toPrintable() for upper characters
2019-12-11 00:45:12 +01:00
sluicebox
baea8d5c9c
COMMON: Make save compression optional when copying
...
Allows for copying or renaming uncompressed save files, such as
in Phantasmagoria 1, without compressing them in the process.
2019-12-09 22:57:46 -08:00
Eugene Sandulenko
6b6dc21813
COMMON: Added helper function to produce printable strings
2019-12-10 00:32:54 +01:00
D G Turner
2d90392ba5
COMMON: Fix GCC-9 Warning in MacResManager Class
...
This is another case of a warning from using memset to clear a non-trivial
data structure.
GCC-9 detects this with the default warning of -Wclass-memaccess.
2019-12-09 16:59:10 +00:00
D G Turner
76bf6da5fa
COMMON: Fix Missing Default Switch Case in Span Header
...
This is flagged by GCC if -Wswitch-default is enabled.
2019-12-01 00:32:48 +00:00
Le Philousophe
6aaec02c57
COMMON: Add CJK encodings to Common::CodePage
...
Use Encoding::convert to do the conversion first and try old method if
it fails
2019-11-30 13:34:33 +02:00
sluicebox
b8390fa161
GRAPHICS: Add interface for horizontal shake
2019-11-19 00:20:40 +01:00
Cameron Cawley
f2b9f7bb76
BACKENDS: Remove the Windows CE port
2019-11-17 22:33:56 +01:00
Bastien Bouclet
34bf3f2de0
TTS: Fix use of virtual function in TTSMan destructor
...
TextToSpeechManager::freeVoiceData was called while the virtual function
table pointer was already reset by the parent class destructor.
2019-11-15 21:24:22 +01:00
Paul Gilbert
d51d3d4086
COMMON: Allow for enabling/disabling debug channels by number
2019-11-11 18:20:29 -08:00
Bastien Bouclet
6a627e3e98
COMMON: Fix very noisy warning when building with GCC 9 in C++11 mode
2019-11-10 21:04:29 +01:00
Cameron Cawley
d1fa1154fe
BACKENDS: Fix using fillScreen in non-paletted screen modes
2019-11-10 01:25:46 +02:00
Thierry Crozat
8ac0012fdd
COMMON: Clarify documentation for OSystem::convertEncoding
2019-11-08 20:43:25 +00:00
Le Philousophe
d62bb15d71
COMMON: Add ignoreClashes flag to SearchSet and FSDirectory
...
This lets engine mute warnings about name clashes when there are useless
for its case. This will be used by Versailles as the tree has
directories with the same name at various places.
Files are duplicated too in different directories but are identical.
2019-11-03 00:44:23 +01:00
D G Turner
dca112f94b
COMMON: Fix Missing Default Switch Case in Coroutine Macros
...
These are flagged by GCC if -Wswitch-default is enabled.
2019-10-21 00:19:41 +01:00
Eugene Sandulenko
50822e708b
COMMON: Moved string encoding to separate file
2019-10-19 17:38:26 +02:00
Eugene Sandulenko
9ff8e69aa9
COMMON: Added new + operator to U32String
2019-10-18 17:20:27 +02:00
Eugene Sandulenko
eb72d6b479
COMMON: Added String::find()
2019-10-18 00:28:36 +02:00
Jaromir Wysoglad
b9d3c84db4
TTS: Fix language setting.
2019-10-16 19:30:56 +02:00
D G Turner
a7c497af3b
COMMON: Add Missing Default Switch Case to U32String Class
...
These are flagged by GCC if -Wswitch-default is enabled.
2019-10-06 09:51:01 +01:00
D G Turner
70582daf46
COMMON: Fix Missing Default Switch Cases in Lua Interpreter
...
These are flagged by GCC if -Wswitch-default is enabled.
2019-10-06 07:58:40 +01:00
Eugene Sandulenko
dbf56a3b29
COMMON: Add methods to U32String to match String
2019-10-04 15:54:48 +02:00
Eugene Sandulenko
72a5d9d4ba
JANITORIAL: Whitespace fixes
2019-10-04 15:54:48 +02:00
D G Turner
4a2cbd94b6
COMMON: Add Missing Switch Default Case in ZLIB Class
...
These are flagged by GCC if -Wswitch-default is enabled.
2019-10-04 04:27:42 +01:00
D G Turner
cee1b56f3a
COMMON: Add Missing Default Switch Cases in DCT Class
...
These are flagged by GCC if -Wswitch-default is enabled.
2019-10-04 04:27:03 +01:00
D G Turner
8a96a1854d
RECORDER: Add Missing Default Switch Cases
...
These are flagged by GCC if -Wswitch-default is enabled.
2019-10-04 02:30:19 +01:00
Cameron Cawley
3cb6a84f03
BLADERUNNER: Remove use of C99 math functions
2019-10-03 23:52:46 +01:00
D G Turner
9308f802f3
COMMON: Add Switch Default Cases in JSON Parser
2019-10-03 02:53:56 +01:00
D G Turner
0eec560cac
COMMON: Add Missing Switch Default Cases to Stream Seek Methods
...
These are flagged by GCC if -Wswitch-default is enabled.
2019-10-03 01:01:16 +01:00
D G Turner
78ef4b9499
COMMON: Add Default Cases to Switch Statements in Memstream Classes
...
These are flagged by GCC if -Wswitch-default is enabled.
This avoids possible hard to diagnose bugs if the whence int parameter is
accidently set to an unexpected value.
2019-10-02 06:12:38 +01:00
Thierry Crozat
06acfd515f
COMMON: Fix memory leaks in iconv error case
...
This fixes coverity CID 1405783 and CID 1405784.
2019-09-30 22:04:27 +01:00
D G Turner
e895548237
COMMON: Fix MSVC Compiler Warning
...
The enum is implicitly int32 by default so causes signed vs. unsigned
assignment warnings. Changing this to a const uint32 avoids the issue.
2019-09-30 01:44:14 +01:00
Paul Gilbert
c03b7a50ea
GLK: ADRIFT: Implement zlib decompression
2019-09-25 20:13:27 -07:00
Eugene Sandulenko
7def18a26c
COMMON: Workaround for a compiler bug in osx_intel buildbot toolchain
...
It was introduced in 014bef9eab
. There is
nothing wrong with our code, but strangely, it makes the
i686-apple-darwin9-as v1.38 to choke when parsing .stabd directives.
Once we upgrade buildbot or do another change to system.h, hopefully
this could be removed.
2019-09-23 22:22:23 +02:00
Cameron Cawley
7bf22fa996
BACKENDS: Add EVENT_CLIPBOARD_UPDATE event
2019-09-21 22:16:01 +03:00
Cameron Cawley
014bef9eab
BACKENDS: Add a default clipboard implementation
2019-09-21 22:16:01 +03:00
Thierry Crozat
bdd7b6baed
COMMON: Fix escaping and parsing of UTF-8 strings in JASON parser
2019-09-21 22:15:26 +03:00
D G Turner
04242ce829
LUA: Fix Coverity Warnings in File Class
2019-09-15 16:21:02 +01:00
Cameron Cawley
410923351b
Revert "COMMON: Implement FSNode::createDirectoryRecursive()"
...
This reverts commit aca627bec7
.
2019-09-15 00:07:46 +02:00
D G Turner
019de0cc23
EVENTRECORDER: Fix GCC Compiler Warnings
...
These were memcpy usage to copy a non-trivial structure.
2019-09-14 00:54:10 +01:00
Le Philousophe
5cc574a695
BUILD: Fix GCC bogus warning by removing const
...
GCC emits "warning: type qualifiers ignored on cast result type" when
some types are used for HashMap because of the const modifier.
This applies especially to pointer-to-member-functions.
The const there is not really useful as it only prevents unfortunate
object editions.
2019-09-09 17:39:06 +03:00
Cameron Cawley
713fe80b47
LUA: Remove references to Sword25 ( #1833 )
2019-09-06 10:38:14 +03:00
Jaromir Wysoglad
8f930126e7
COMMON: Add string size computation to Encoding.
2019-09-05 23:52:46 +01:00
Eugene Sandulenko
102846becf
COMMON: Added PocketPC platform
2019-09-03 17:17:30 +02:00
Eugene Sandulenko
ea2f09b256
COMMON: Restored functionaluty of Lua print
2019-09-03 17:17:21 +02:00
SupSuper
1c1cc91ad5
COMMON: Don't include win32.h in common/encoding.h
2019-09-02 08:01:18 +03:00
Jaromir Wysoglad
d4a98dcadb
COMMON: Add CP437 encoding conversion table.
2019-09-01 22:47:55 +03:00
Jaromir Wysoglad
291360a280
COMMON: Add CP850 conversion.
...
CP850 is used by the mortevielle engine (and apparently by other
engines too). Anytime an engine using CP850 encoding wants to use
the TTS, the encoding has to be converted, so this is pretty
important encoding conversion to support. Unfortunately SDL
(when compiled without iconv) doesn't support this encoding
(which means, there might not be a way to convert this encoding
on some platforms), so I added a conversion table for this.
2019-09-01 22:47:55 +03:00
Jaromir Wysoglad
4b5b812712
TTS: Better documentation of TTSVoice.
2019-09-01 22:47:55 +03:00