Age | Commit message (Collapse) | Author |
|
Previously, a C-style cast was used to convert a
Common::Array<Plugin *>, populated with pointers to StaticPlugin
and DynamicPlugin instances, to a
Common::Array<PluginSubclass<T> *>, but PluginSubclass<T> is a
*sibling* class to StaticPlugin/DynamicPlugin, so this cast was
invalid and the results undefined. The methods for retrieving
subclasses of plugins can't be easily changed to just generate an
array of temporary wrapper objects that expose an identical API
which dereferences to the preferred PluginObject subclass because
pointers to these objects are retained by other parts of ScummVM,
so the wrappers would needed to be persisted or they would need to
just re-expose the underlying Plugin object again. This indicated
that a way to solve this problem is to have the callers receive
Plugin objects and get the PluginObject from the Plugin by
explicitly stating their desired type, in a similar manner to
std::get(std::variant), so that the pattern used by this patch to
solve the problem.
Closes gh-1051.
|
|
|
|
The README and command line help indicated this should work,
but this was not implemented.
|
|
|
|
|
|
|
|
New semantics is as follows:
[-p <dir>] --add adds all games in <dir> or
working dir
[-p <dir>] --detect enumerates dectected games in
<dir> with their ids
[-p <dir>] --game <id> --add adds just game <id> if found
in <dir> and not already added
[-p <dir>] --recursive --add adds all games in <dir> and
subdirs if not already added
[-p <dir>] --recursive --game <id> --add
adds just game <id> if found
in <dir> or its subdirs and
not already added
[-p <dir>] --recursive --detect enumerates games in <dir>
and subdirs
[-p <dir>] --auto-detect launches the first game
found in <dir>
[-p <dir>] --recursive --auto-detect
displays error message
The reason for the displaying an error message when attempting to do
autodetection on a whole tree is mainly one of UX, IMO it *might* get
confusing on a sufficiently large/deep tree.
The relevant if() can be removed safely if it's concluded that's not the
case.
|
|
This implements the behaviour as discussed in PR926:
https://github.com/scummvm/scummvm/pull/926#discussion_r126132411
Essentially:
[-p <dir>] --add adds all games in <dir> or working dir
[-p <dir>] --detect enumerates dectected games with their
ids
[-p <dir>] --game <id> --add adds just game <id>
|
|
There were several issues.
The first one was introduced recently and caused the preferred target
to be used as a game ID, which resulted in an error when this is not
a valid game ID. Thus this fixes bug #9754.
The other issues were here since the auto-detect command was added and
caused other command line options, suh as the path, to be lost. This
usually resulted in a failure to start the game as the data files could
not be found (unless the ID happened to be the same name as a target
previously added). This also caused a reappearance of the old bug
|
|
|
|
|
|
This implements feature request #7885
|
|
This is automatically added by Xcode when not toggling off the
"Allow debugging when using document Versions Browser". Since
this is on by default, and to avoid everybody having to google it,
I have decided to just ignore it on OS X.
|
|
|
|
|
|
|
|
|
|
Allows to display games in the current directory that are compatible with ScummVM.
This option enables the user to find games in the directory from which ScummVM was launched. In terminal it looks like:
--------------------------------------------------------------------------------------
$ scummvm --auto-detect
ID Description
-------------------- ---------------------------------------------------------
drascula Drascula: The Vampire Strikes Back (DOS/English)
queen Flight of the Amazon Queen (Talkie/DOS/English)
--------------------------------------------------------------------------------------
The current directory is defined as dir(".") then using EngineMan.detectGames to recognise games.
|
|
|
|
|
|
Many of our systems currently generate significant amount of debug
output on deeper levels. Now, when your engine is using Debug Channels,
you might want to show that debug information only, which is currently
not possible, as the generic output will be mixed in your output.
Alternative solution would be to implement possibility to specify
per-channel debug levels.
|
|
3DS: New Backend
|
|
|
|
Implement Custom Audio CD Support for Win32, Linux, and Mac OS X.
|
|
Prior to OS X 10.9, the OS was passing the process serial number
as an additional argument on OS X when starting an application bundle.
For whatever reason, when compiling with SDL 1.2 this gets suppressed
before getting to the place where we handle command line arguments.
But when compiling with SDL2 this additional argument remains so we
need to ignore it to avoid erroring out.
|
|
|
|
On request of m_kiewitz who wants to use it for AGI.
|
|
On request of m_kiewitz who wants to use it for AGI.
|
|
|
|
|
|
This can be abused to insert Domains into the game domains without any checks.
Instead, only write iterator access is given.
|
|
Formerly it claimed the command is --record-file.
|
|
|
|
"PC" was very ambiguous and now it matches what we show in the GUI.
This also corrects sword2's platform to Windows.
|
|
|
|
This implements feature request #3600774 "File browser: show hidden files".
|
|
This is a manual merge of a slightly adapted pull request #296.
The changes made are:
- Each time the theme format changes, the version was increased
- default.inc has been regenerated in the same commit as the theme changes
|
|
To help people familiar with Qsynth (I'm not, but it seems to be
one of the more polished FluidSynth front ends), use the same
presentation and terminology for the FluidSynth settings.
More to follow.
|
|
I don't really understand what these parameters do, or what the
sensible values are, so for now the sliders are limited only by
the allowed (or, in one case, "safe") values.
|
|
Clang will produce plenty of warnings (most of them seem to be of
the "if the stars align the wrong way, this may happen" variety),
but I don't have the time or patience to look at all of them.
|
|
This allows opening the dialog on (nearly) the same page again as when it was
closed. Sadly due to the different number of entries in the save and load
version this is not always exactly the same page as before. Same goes for
resolution changes.
Thanks to wjp for suggesting this.
|
|
|
|
|
|
This does not change the use of defined for some NDS source files, since they
seem to be (based on?) third party code.
|
|
does not think the latter is a string literal suffix.
|
|
|
|
|
|
On some systems, passing signed chars to macros like isspace() etc. lead
to a runtime error. Hence, mark these macros as forbidden by default,
and introduce otherwise equivalent alternatives for them.
|
|
|
|
|