Commit Graph
3969 Commits
Author SHA1 Message Date
elasota a4c8fb1b85 MTROPOLIS: Add support for QuickTime ranges, fix Obsidian Bureau light carousel triggering without interaction. 2022-06-16 21:58:09 +02:00
elasota 6e53185f52 MTROPOLIS: Initial movie element support 2022-06-16 21:58:09 +02:00
elasota 349bfa9694 MTROPOLIS: Plug-in base work, add Mac Obsidian support 2022-06-16 21:58:09 +02:00
athrxx cdf19e6376 COMMON: fix CP950 encoding regression
(I somehow managed to mess up the CP950 encoder  with some wrong copy/pasting in b5079ca )
2022-06-13 20:06:12 +02:00
athrxx 05b9df0821 KYRA: (LoK/KOR) - make use of new Johab string encoding 2022-06-13 19:38:51 +02:00
athrxx b5079ca5c7 COMMON: add Korean Johab string encoding 2022-06-13 19:38:47 +02:00
athrxx 1ffdbee49d COMMON: fix memory leak (free CJK tables) 2022-06-13 01:36:08 +02:00
antoniou79 07c1e5cc2a GUI: Fix thumbnails for event recorder dialogue
Also prevent segmentation fault cases related to low-res or switching from low-res to hi-res

And fix memory leak related to loading and scaling of the thumbnail image

A lot of the updated logic is borrowed from the saveload-dialog.cpp for the simple list view (with the thumbnail to the right of the list).
2022-06-12 15:08:01 +02:00
Donovan Watteau 4567f1b176 DINGUX: Only evaluate the toupper() macro argument once
toupper() callers should avoid putting a side-effect expression there, but
in practice it sometimes happen, so making the macro safer can't hurt.

This uses a GCC statement expression, but this port only uses GCC
anyway.
2022-06-12 10:30:04 +02:00
D G Turner 8c359e6ec9 COMMON: Fix Copy Constructor GCC Warning in 80-bit Float Class 2022-06-09 00:04:13 +01:00
eientei 2d3661052b COMMON: Add Android to Platform Header 2022-06-08 11:43:09 +02:00
Eric Lasota a90a1a0aed COMMON: Move 80-bit float parsing from Director to Common (#3953) 2022-06-03 21:28:17 +02:00
Eugene Sandulenko 699747bb14 COMMON: Added more debug output to XMLParser 2022-06-03 12:36:59 +02:00
elasota 19c3f539a7 COMMON: Add comparison to nullptr to SharedPtr 2022-06-02 18:39:54 -07:00
grisenti 8fccaf89ff ALL: add support for enable-gs and fix bugs 2022-05-29 13:56:21 +02:00
grisenti c0acb85605 ALL: add support for --savepath command 2022-05-29 13:56:21 +02:00
Eugene Sandulenko 5e05f93f36 ALL: Remove Symbian port 2022-05-28 12:32:29 +02:00
Donovan Watteau b9d3282ed6 COMMON: Remove workaround comment about GCC 2.95.3
GCC 2.95.3 has no C++11 support, so there's no point in referencing
it anymore.

The SYNC_AS() lines could be moved back to the end of the class
declaration, but it still seems fine where it is, so just remove the
workaround comment.
2022-05-25 19:07:30 +03:00
Donovan Watteau 4ac33a72c2 MATH: Just look for a GCC compatible compiler for __builtin_clz()
There's no need to check for GCC 3.4+ anymore, since we always require
a C++11 compiler.  Just look for __GNUC__, since this is an old
builtin and Clang always has it too.

Also #undef the LT() temporary macro while there, so that it can't
pollute something else by accident, since it's a short macro name in
a header file.
2022-05-25 19:07:30 +03:00
Donovan Watteau 5ebd9b8d23 BUILD: Remove/simplify GCC_ATLEAST() calls when they targeted pre-C++11 compilers
C++11 is now required, so there's no point in checking for pre-C++11
versions of GCC anymore.  Note that Clang defines __GNUC__ too, but
always reports itself as GCC-4.2.1-compatible (and, in practice, the
earliest C++11-compatible versions of Clang will also be have most
GCC 4.8 features).
2022-05-25 19:07:30 +03:00
Thierry Crozat f2849282a6 Common: Add functions to decompose a Path into its components 2022-05-24 00:38:02 +02:00
Donovan Watteau 5b1ec56f96 JANITORIAL: Fix some lost or outdated URLs in comments 2022-05-19 07:57:31 +03:00
Hubert Maier 76b3b5bc84 COMMON: Add (missing?) indentation to defines
I´m not sure if this was intended, but it looks so wrong without indentation.

Feel free to reject if it was intended
2022-05-17 22:24:44 +03:00
Le Philousophe 5e3d0029b3 COMMON: Implement move constructor of ScopedPtr
This helps when passing ScopedPtr as function arguments
2022-05-08 11:07:40 +02:00
Le Philousophe 3e406ed5af COMMON: Fix nullptr_t usage 2022-05-08 10:27:59 +02:00
Paul Gilbert 509504d16f COMMON: Support nullptr assignments to ScopedPtr 2022-05-07 20:16:31 -07:00
Paul Gilbert edca3fcdea COMMON: Added move assignment operator to ScopedPtr 2022-05-05 22:41:05 -07:00
elasota 6bdb93bcce COMMON: Add cast methods and to SharedPtr and WeakPtr, and add owner_before to WeakPtr 2022-05-02 21:03:55 -07:00
athrxx eb29aea4b4 TTS: (Windows) - implement better way to disable the option
Currently, the text-to-speech manager will try to update the voices whenever TextToSpeechManager::pushState()/popState() is called. This causes lags of 4 - 5 seconds on Windows. Also, a warning is triggered each time. This commit prevents that from happening if the tts option is not enabled.

This commit currently affects only Windows. Other backends don't make use of the new _enabled setting. I don't know if it would make sense for any of these and I also wouldn't be able to test it.
2022-04-26 21:08:41 +03:00
elasota 5cb75fdaec COMMON: Remove implicit bool conversion from WeakPtr 2022-04-25 18:20:19 -07:00
elasota a1f2121bb8 COMMON: Remove empty BasePtrTrackerDeletionImpl destructor 2022-04-25 18:20:19 -07:00
elasota 2432c67426 COMMON: Fix double destruction when using a deleter. 2022-04-25 18:20:19 -07:00
elasota 22b72dba52 COMMON: Remove BasePtr base class from SharedPtr and WeakPtr. Fix missing refCount method in SharedPtr. 2022-04-25 18:20:19 -07:00
elasota c8d0186752 COMMON: Fix WeakPtr missing copy constructor 2022-04-25 18:20:19 -07:00
elasota be5a7cb8e7 COMMON: Fix up WeakPtr logic 2022-04-25 18:20:19 -07:00
elasota 9fa32ac47d COMMON: Fix WeakPtr preventing object deletion 2022-04-25 18:20:19 -07:00
Donovan Watteau f6641e18b2 BUILD: Remove support for ancient SGI MIPSpro
This very old compiler has no C++11 support, so we're now sure that
its support (and workarounds) can be removed.
2022-04-15 22:43:57 +02:00
Matthew Duggan ddee0e76f9 COMMON: INIFile bugfixes and unit tests
This adds a lot more unit tests for Common::INIFile and fixes some small
problems identified during their creation.  Specifically:

* addSection() did not check the validity of the section name, which meant it
  was possible to create a section that could not then be operated on by the
  other functions (which all check validity)
* If allowNonEnglishCharacters was set, it was possible to create a key or
  section name starting with '[' or '#', or including a carriage return.  This
  would not read back in correctly.
* Blank section and key names were considered valid, but neither would be
  read back in correctly.
* The struct documentation did not mention whitespcae handling or that comments
  include the '#' and carriage return.
2022-04-10 19:41:06 +03:00
Le Philousophe b978cd1caa OPENGL: Allow engines to detect OpenGL info without switching
For now only OpenGL type and shaders support are available
2022-04-03 22:17:19 +02:00
Paul Gilbert 3395af886f COMMON: Fix assert crash trying to open invalid fs nodes
It was previously trying to print out the node path,
which was asserting because the node wasn't valid
2022-03-27 14:00:51 -07:00
Misty De Meo b3df6c6f03 COMMON: macresman: handle macbinary with resource forks 2022-03-20 20:48:17 +01:00
Eugene Sandulenko 498b2ca3a0 COMMON: Added firstPathComponents() method.
A better name is welcome
2022-03-14 21:16:03 +01:00
D G Turner 4491ccb8bd COMMON: Fix Undefined Macro Warnings in OSystem Header
These are emitted by GCC when -Wundef is passed.
2022-03-10 18:47:39 +00:00
kevinlaurier 3ff4e1c9c4 COMMON: Moved Node struct from private to public so that HashMap can be
used with Common::find_if from algorithm.h - this is required as part of
the lambda or function object signature when passed as a predicate.
2022-03-06 17:46:23 +01:00
trembyle b9e7b1dfcd COMMON: ENGINES: Correct Czech language ISO code
1. Correct constant in common files
2. Add the old code to obsolete language codes
3. Replace all occurences in engine code
2022-03-04 18:29:02 +01:00
Paul Gilbert 03ec59bbc6 COMMON: Implement MemoryReadWriteStream::seek 2022-03-03 18:35:03 -08:00
Cameron Cawley a8579176d4 GUI: Remove kFeatureOnScreenControl and kFeatureSwapMenuAndBackButtons 2022-02-07 00:53:34 +02:00
neuromancer 293942a80d COMMON: extended BitArray to allow setting bits using a byte array 2022-02-06 13:29:29 +01:00
Thunderforge fd129ebc0c JANITORIAL: "Mac OS X" and "OS X" to "macOS" in comments
Apple's desktop operating system was formerly called "Mac OS X" and "OS X", but since 2016 it has been called "macOS" (starting with version 10.12).

Changing across all comments and documentation to use this current terminology, except in cases where the historical versions are explicitly referenced. No code changes are made; we should consider changing those in future PRs.
2022-01-29 14:15:05 +01:00
hackingdemon 453f7cfffe COMMON: Fix BufferedWriteStream::pos() method
The pos() method of BufferedWriteStream should return the stream position
but actually returns the buffer position. That completely breaks saving
the game in AGS engine on the platforms using BufferedWriteStream wrapper
for savefile handling, such as Nintendo Switch. AGS engine's save file
writing functions use GetPosition() with later Seek() on stream,
so an invalid return value from GetPosition() results in invalid save files
that cannot be loaded and are skipped by the engine.
2022-01-18 15:31:59 +00:00