Commit Graph

3105 Commits

Author SHA1 Message Date
Adrian Frühwirth
c7f3416daa JANITORIAL: Remove trailing whitespace 2018-05-20 23:40:20 +02:00
Thierry Crozat
1bfd7352dc I18N: Regenerate translations data file 2018-05-14 05:05:07 +02:00
Bastien Bouclet
bdc0db97d5 GUI: Add copy and paste support to the graphical console 2018-05-07 22:42:00 +02:00
Thierry Crozat
16af24c536 I18N: Regenerate translations data file 2018-05-07 05:05:06 +02:00
Adrian Frühwirth
699a73d510 JANITORIAL: Fix whitespace 2018-05-02 12:10:32 +02:00
Bastien Bouclet
b97067e0c4 CREDITS: Add Xeen 2018-05-02 08:10:21 +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
Thierry Crozat
9c0169fe5c I18N: Regenerate translations data file 2018-04-30 05:05:06 +02:00
Lothar Serra Mari
451cf2304f ENGINES: Show the unknown Game dialog only when the detector is launched by the Add Game feature 2018-04-29 21:47:10 +01:00
Thierry Crozat
6ab6d76792 GUI: Add copy to clipboard shortcut for EditableWidget 2018-04-29 21:47:10 +01:00
Thierry Crozat
0015d51d48 I18N: Regenerate translations data file 2018-04-23 05:05:06 +02:00
Bastien Bouclet
41ba608c6c
Merge pull request #1156 from bgK/gui-simplify-text
GUI: Unify clip and non-clip draw calls
2018-04-19 19:42:13 +02:00
Bastien Bouclet
4d29ce21d0 GUI: Unify clip and non-clip draw calls 2018-04-19 19:18:39 +02:00
Bastien Bouclet
dcfac42bb3 GUI: Remove alpha bitmap support
It was never used since its introduction 4 years ago
It was not updated to work with the clipping rect
2018-04-19 19:13:12 +02:00
Thierry Crozat
5df28d6049 I18N: Regenerate translations data file 2018-04-16 05:05:06 +02:00
Thierry Crozat
f525174495 I18N: Regenerate translations data file 2018-04-09 05:05:05 +02:00
Cameron Cawley
a873544840 DS: Fix building with AGI engine disabled 2018-04-07 09:30:07 +02:00
Thierry Crozat
766574e03e I18N: Regenerate translations data file 2018-04-02 05:05:02 +02:00
Eugene Sandulenko
b0affe5bf2 GUI: Added override specifiers 2018-03-28 12:47:23 +02:00
Eugene Sandulenko
283f7485e3 GUI: Added override clauses 2018-03-28 12:28:12 +02:00
Thierry Crozat
f198c16f45 I18N: Regenerate translations data file 2018-03-26 05:05:06 +02:00
Thierry Crozat
68596bed8e I18N: Regenerate translations data file 2018-03-19 05:05:04 +01:00
Bastien Bouclet
4d0bb753e4 GUI: Remove the ThemeItem draw queues
Drawing nows happens directly when the Dialog or Widget draw methods are
called. This makes it easy to debug why a particular low level draw
method was called, by inspecting the call stack.

This replaces the notion of "buffering" by two independant ways to
control what is drawn and where:
- The active layer is used to select whether the foreground or
  background part of the dialogs are rendered by the draw calls.
- The active surface is used to select if the draw calls affect the back
  buffer or the screen.

The foreground layer of the active dialog is drawn directly to the
screen. Its background layer is drawn to the back buffer. This way
widgets can restore the back buffer in order to update without having to
redraw the dialog's background.

Dialogs lower in the dialog stack are drawn entirely to the back buffer.
2018-03-12 11:46:04 +01:00
Thierry Crozat
7b2523a78b I18N: Regenerate translations data file 2018-03-12 05:05:05 +01:00
Thierry Crozat
9dbffa1763 I18N: Regenerate translations data file 2018-02-05 05:05:08 +01:00
Thierry Crozat
fa28602abf I18N: Regenerate translations data file 2018-01-29 05:05:05 +01:00
Bastien Bouclet
21552fb4e6 GUI: Remove the parent from the button_idle DrawData
Removing it does not result in any visible difference. It was likeliy
set by mistake.
2018-01-27 18:16:08 +01:00
Bastien Bouclet
7dc602f352 GUI: Fix the caret drawing over the scroll bar in the list widget
Also remove the unused linesWidth variable and fix the hlLeftPadding and
hlRightPadding widget attributes to actually work.

There are still issues remaining with the caret in the list widget due
to the ellipsis being used to shorten long text. Ellipsis is accounted
for when drawing the text but not when computing the caret position.
2018-01-27 18:12:53 +01:00
Bastien Bouclet
5878c618c9 GUI: Remove Dialog::markAsDirty to expose full GUI redraws 2018-01-27 18:12:34 +01:00
Bastien Bouclet
fc37918130 GUI: Remove explicit redraw when scrolling the ScrollContainer
The redraw is already handled by the GUI main loop
2018-01-27 18:12:34 +01:00
Bastien Bouclet
0496ede62f GUI: Implement dirty-checking for widget redraws 2018-01-27 18:12:34 +01:00
Bastien Bouclet
3b50b57f54 GUI: Rework the frame limiter to actually reach the target framerate
The previous combination of a fixed 10 milliseconds delay and time since
last update checks meant that in most cases 20 milliseconds elapsed
between two calls to updateScreen resulting in a 50 fps framerate. On
systems with wait for vsync enabled that meant that some frames were
missed.

The new frame limiter waits for a variable delay equal to the non
consumed time in the slot allocated to the frame.
2018-01-27 18:12:34 +01:00
rsn8887
e6add01d72 GUI: never enable checkbox if GUI_ONLY_FULLSCREEN is set 2018-01-13 15:21:51 -06:00
Eugene Sandulenko
d6078ea406 ALL: Bump copyright year. 2018! 2018-01-01 00:09:56 +01:00
Bastien Bouclet
ee4ff8ca08 SDL: Cleanup joystick deadzone handling 2017-12-26 21:11:04 +01:00
Thierry Crozat
ee1da05d0b I18N: Regenerate translations data file 2017-12-25 05:05:04 +01:00
Thierry Crozat
a912979778 I18N: Regenerate translations data file 2017-12-11 05:05:01 +01:00
Thierry Crozat
71ff55ee65 I18N: Regenerate translations data file 2017-12-04 05:05:02 +01:00
Colin Snover
d087c9605f BASE: Remove bad casts between incompatible Plugin types
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.
2017-12-03 20:26:38 -06:00
D G Turner
afdcde4b54 GUI: Fix Signed vs. Unsigned Comparison GCC Compiler Warning. 2017-11-27 11:39:58 +00:00
Thierry Crozat
1232a3cb01 I18N: Regenerate translations data file 2017-11-27 05:05:07 +01:00
Thierry Crozat
469e75cb64 GUI: Fix incorrect SaveLoad dialog state after updating the save list
Updating the list reset the selection in the list widget, however if
a save had previously been selected and the Choose button was enabled,
it remained enabled despite no save being selected. Trying to load
the game resulted in a crash. This was particularly an issue with
cloud enabled as if you are unlucky you could have tried to load a
save just as the cloud sync finished, which updated the list and
unselected the save. This change fixes bug #9766: Assert in
SaveLoadChooser dialog.

In addition to adding a sanity check on the selected index for the
Choose command, this commit also preserves the selection when
updating the list as I think this would be the expected behaviour
in this dialog.
2017-11-24 22:44:41 +00:00
Bastien Bouclet
5ed745f532
Merge pull request #1063 from bgK/keyboard-repeat
SDL2: Improve handling of keyboard repeat events
2017-11-24 19:37:58 +01:00
Cameron Cawley
0c222d95d6 CREDITS: Add credits for RISC OS port
Closes gh-1068.
2017-11-21 14:51:14 -06:00
Thierry Crozat
d34a97451f I18N: Regenerate translations data file 2017-11-20 05:05:04 +01:00
Bastien Bouclet
8beb519c5e EVENTS: Rename synthetic to kbdRepeat 2017-11-19 16:12:50 +01:00
Thierry Crozat
63b90d13e4 I18N: Regenerate translations data file 2017-11-13 05:05:08 +01:00
Colin Snover
51329c0dc6 ALL: Fix misuse of comma operator 2017-11-10 09:57:03 -06:00
Thierry Crozat
18b8a8cd78 I18N: Regenerate translations data file 2017-11-06 05:05:04 +01:00
Thierry Crozat
f638f1453c I18N: Regenerate translations data file 2017-10-23 05:05:03 +02:00