Commit Graph
82 Commits
Author SHA1 Message Date
Colin Snover 80d9182554 SCI32: Implement SCI32 cursor support 2016-08-19 13:57:40 -05:00
Colin Snover 77991b7eac SCI32: Add const to getCurrentBuffer 2016-07-02 22:28:41 -05:00
Colin Snover 1337cd3dec SCI32: Implement kEditText 2016-03-06 21:34:43 -06:00
Filippos Karapetis cdbd7c8add SCI: Use uint32 instead of unsigned int 2016-03-01 01:12:58 +02:00
Johannes Schickel 60d4367f3c SCI: Formatting fix. 2016-02-13 00:36:06 +01:00
Johannes Schickel 98edaa799e SCI: Make variable name in line with our guidelines.
(cherry picked from commit 7d7c36b593)
2016-02-13 00:06:27 +01:00
Johannes Schickel 82b5ed65cc SCI: Small variable renaming to match our naming guidelines. 2016-02-09 19:52:09 +01:00
Johannes Schickel b911976a66 SCI: Take advantage of operator-> of Common::List::iterator. 2016-02-09 16:42:45 +01:00
Martin Kiewitz e91bdf0262 SCI: Remove hardcoded value in getScummVMEvent() 2016-02-03 20:45:08 +01:00
Martin Kiewitz 7635f3c73e SCI: Make event handling helper tables static 2016-02-02 15:03:54 +01:00
Martin Kiewitz b052ff2762 SCI: Fix comment about debugger keys
Was changed to Ctrl-Shift-D at some point, because a SCI game
uses Ctrl-D. Comment wasn't changed accordingly back then.
2016-02-02 12:51:25 +01:00
Martin Kiewitz 42cb01f57c SCI: Keyboard event handling cleanup
Renamed "ourModifiers" to "scummVMKeyFlags"
Now also using the flags directly from the ScummVM event in case
it actually was a Keyboard event.
2016-02-02 12:47:47 +01:00
Martin Kiewitz bc0dd6f821 SCI: Fix regression of previous keycode commit
7aeadba863
Thanks LordHoto for spotting it
2016-02-02 11:43:58 +01:00
Martin Kiewitz 7aeadba863 SCI: Removed ".data" from SciEvent
Was the ScummVM-system-Keycode, sometimes modified.
Changed Menu/Portrait/Controls32-code to use .character instead.
Cleaned up a bit of code in getScummVMEvent()
2016-02-02 11:33:40 +01:00
Martin Kiewitz 82a27a33da SCI: fix typo in comment 2016-02-02 10:46:16 +01:00
Martin Kiewitz 59d2c4b27e SCI: Do not pass/use .data for mouse button type
Also added comment about .data field. Should be renamed.
2016-02-02 02:10:43 +01:00
Martin Kiewitz c0bdbe1ca8 SCI: Fix control/Fx keys not working anymore
Was effectively caused by commit adding the keyboard driver bug
for SCI0/SCI01, although the bug is actually real and happens.

It seems Sierra did not check the key-modifier in kMenuSelect.
We do and that's why the code didn't recognize all sorts of
menu keys anymore.
We now isolate the lower byte before comparing.

I also noticed, that Sierra passed keyboard modifiers in mouse
events. This was probably done, so that owners of a 1-button
mouse were able to right-click. We do this now too.

Also added information about mouse modifiers in kGetEvent.

Moved the mouse modifier code into getScummVMEvent().

This should fix bug #7009.
2016-02-02 01:56:08 +01:00
Martin Kiewitz 0b17a67a30 SCI: Revert revert the keyboard handling changes
It seems the issues on AmigaOS aren't actually caused by the new
code. Reverting the revert.
2016-02-01 15:04:03 +01:00
Martin Kiewitz a3774072a3 SCI: Revert ascii detection for key event handling
Seems to cause at least issues on AmigaOS probably b/c SDL.
See bug #7009.
Added FIXME. Underlying issue needs to get fixed in SDL backend
or in SDL itself.
2016-02-01 02:09:12 +01:00
Martin Kiewitz 171b79c2c5 SCI: add code to make numpad cursor keys work again
When the users presses keys on the numpad, we get digits in .ascii
even when Num-Lock is not enabled. This caused numpad cursor keys
not working anymore. Imo we should only get .ascii in those cases,
when Num-Lock is enabled.
2016-01-29 22:57:30 +01:00
Martin Kiewitz fa66b823b8 SCI: change ascii detection for key event handling
New way is probably better. Sadly we get a few keys atm in the
ascii field, like cursor left and the function keys. That's why
a check for <= 0xFF is needed.
2016-01-28 20:19:34 +01:00
Filippos Karapetis 92bf8a5420 SCI: Fix bug #6703: "SCI: QFG1 VGA - Can't CTRL+S to access statistics"
This actually affected all Control+key combinations. A regression from
0f90b8eaad
2014-10-18 22:06:48 +03:00
Johannes Schickel 8fc7d60feb SCI: Make GPL headers consistent in themselves. 2014-02-18 02:39:37 +01:00
Johannes Schickel 45f95cbc8b SCI: Minor formatting fixes. 2013-01-14 21:07:20 +01:00
Lars Skovlund 8e733f03b7 SCI: Event handling: Include modifier flags in null events.
Fixes bug #3580473
2013-01-14 20:11:34 +01:00
Willem Jan Palenstijn 18dd5e5128 SCI: Fix mouse up events
Regression from 906f024831.
Fixes bug #3533069.
2012-06-08 08:31:06 +02:00
Filippos Karapetis 0f90b8eaad SCI: Allow alt key combinations in all SCI games
Such key combos are used for the game debugger in SCI1.1 and GK1
2011-10-29 20:39:39 +03:00
Max Horn 88913c0139 ALL: Remove trailing whitespaces
This tries to make our code a bit more compliant with our code formatting
conventions. For future use, this is the command I used:
  git ls-files "*.cpp" "*.h" | xargs sed -i -e 's/[ \t]*$//'
2011-06-20 00:59:48 +02:00
Willem Jan Palenstijn 0da3f8d8a5 SCI: Fix probable alt/shift mixup
A check for alt was changed into this check for shift in the
cleanup commit 906f024831.
2011-05-21 16:02:51 +02:00
strangerke 69b1485a22 GIT: Clean up: Suppress SVN tags, now useless 2011-05-12 01:16:22 +02:00
md5 51f733b2a6 SCI: Changed debug console hotkey to Control-Shift-D instead of Control-D.
Applied from patch #3258985.
The previous hotkey interfered with the hotkeys of some games (e.g.
the "time of day" hotkey in QFG2, bug #3250996).
2011-04-03 14:35:54 +03:00
Matthew Hoops 9a4e433f88 SCI: Fix mouse positions in upscaled games
A regression from 463e475bd6
2011-03-10 20:02:05 -05:00
md5 60bad3754b SCI: Fixed regression (shift key) in the latest event code cleanup 2011-03-10 03:11:23 +02:00
Johannes Schickel 463e475bd6 SCI: Save mouse position in SciEvent.
Instead of querying the event manager for the current mouse cursor coordinates
kGetEvent now uses the saved mouse positions, which will assure every event
will be processed with the correct coordinates instead of the current ones.
Various other functions using SciEvent directly were adapted too.

This fixes cursor click positions for the WinCE backend.

Thanks to wjp and waltervn for helping me with this.
2011-03-09 01:19:12 +01:00
md5 906f024831 SCI: Cleanup of the event code 2011-03-09 01:47:53 +02:00
md5 bd64c5078c SCI: Cleaned up kMapKeyToDir and removed an incorrect heuristic
The heuristic in question was used to detect the pseudo mouse control
functionality, however the change in controls seems to have occurred with the
transition to cursor views. Fixes keypad control in Conquest of the Longbow.
Moreover, the code also checked for key scan code 76 when checking for the middle
keypad button, which seems to be a mistake, as that case never occurred.
2011-02-15 15:46:15 +02:00
Filippos Karapetis ce9f7c0df1 SCI: Fixed keyboard input when numlock is on, and cleaned up the way some special keys are translated
svn-id: r54493
2010-11-26 10:03:24 +00:00
Filippos Karapetis fe17f26af8 SCI: Added support for the keypad +/- keys
svn-id: r54420
2010-11-22 18:39:06 +00:00
Filippos Karapetis 0b06a1fe7b SCI: Proper fix for the QFG2 character import screen crashes (bug #3037996)
Script 944 does constant reallocations whenever the selection changes,
which leads to all sorts of unpredictable crashes. Thanks to waltervn for
his help on this issue

svn-id: r54413
2010-11-21 23:43:14 +00:00
Filippos Karapetis 8045c4f87a SCI: Fix for bug #3037996 - "QFG2: Crash during import dialog after time (import works)"
svn-id: r54407
2010-11-21 11:04:52 +00:00
Filippos Karapetis e55a55a277 SCI: Remove key modifier (e.g. num lock) status for keyboard function keys. This fixes function key input (e.g. F3) when num lock is on
svn-id: r54294
2010-11-17 14:48:28 +00:00
Filippos Karapetis 9096848e4b SCI: Throttle the invocations of Engine::shouldQuit()
SCI constantly invoked Engine::shouldQuit(), which in
turn called 2 virtual functions. This added a significant
overhead, as this was called constantly without any
throttling whatsoever. Now, the invocation of shouldQuit()
is throttled to be on each frame update (i.e. at a rate of
60fps). Thanks to wjp for profiling this.

svn-id: r52431
2010-08-29 00:39:33 +00:00
Filippos Karapetis f9d9fe8f12 SCI: Added support for the DEL key
svn-id: r52255
2010-08-21 11:34:19 +00:00
Filippos Karapetis dcd6c9eaf0 SCI: Fixed bug #3048911 - "Keyboard discrepancies in all SCI games" by handling synthetic (keyboard repeat) events and adding support for Control-C
svn-id: r52252
2010-08-21 10:46:35 +00:00
Martin Kiewitz 6b63c951eb SCI: updating screen within kAnimate as well - fixes pseudo hang in eq1 credits (bug #3036154)
svn-id: r51459
2010-07-29 10:48:54 +00:00
Martin Kiewitz 8a843b6c21 SCI: adding support for middle mouse button
svn-id: r51422
2010-07-28 14:57:35 +00:00
Martin Kiewitz 710f0257eb SCI: replacing the keyboard size check for direction type detection with checking for script 933 (pseudoMouse) instead - this is better because its working multiplatform
svn-id: r50047
2010-06-19 10:57:01 +00:00
Martin Kiewitz 101218c1b6 SCI: added TODO for keyboard driver size check, maybe this whole stuff isn't needed at all
svn-id: r50046
2010-06-19 10:28:41 +00:00
Martin Kiewitz a7fa0649df SCI: implemented checking of keyboard driver in case of SCI1EGA/EARLY, also renamed SCI_EVENT_JOYSTICK to SCI_EVENT_DIRECTION
svn-id: r50045
2010-06-19 09:46:04 +00:00
Max Horn 69fb703246 SCI: cleanup scancode rows code
svn-id: r49964
2010-06-17 23:12:38 +00:00