Commit Graph
49 Commits
Author SHA1 Message Date
Cameron Cawley 885b8e9efe BACKENDS: Mark resetQuit and getKeymapper as override 2018-08-15 20:25:06 +02:00
Eugene Sandulenko d6b5e3f611 BAKCENDS: Mark methods as override 2018-03-28 11:58:35 +02:00
Bastien Bouclet 7d811d356e EVENTS: Allow disabling repeat event generation 2017-11-19 16:12:50 +01:00
Bastien Bouclet 7539a77eeb EVENTS: Move key repeat handling to its own method 2017-11-19 16:12:50 +01:00
Colin Snover d1b77d4b68 BACKENDS: Fix missing mouse events when system cursor cannot be moved
Normally with SDL, a mouse motion event will be sent after the
system mouse cursor has been moved by a call to
SDL_WarpMouseInWindow, but if the system cursor cannot be moved
(e.g. because the window does not have mouse focus), games still
need to receive these mouse events so they can successfully update
the mouse position internally. Otherwise, games continue to think
the mouse is still in the original position and will continue to
try to perform whatever action is associated with that mouse
position.

Refs Trac#9689.
2017-10-15 13:24:21 -05:00
Johannes Schickel 121687d2ed BACKENDS: Make GPL headers consistent in themselves. 2014-02-18 02:39:32 +01:00
Tarek Soliman 85c8c84804 KEYMAPPER: Add more warning signs 2012-02-15 17:22:41 -06:00
strangerke 69b1485a22 GIT: Clean up: Suppress SVN tags, now useless 2011-05-12 01:16:22 +02:00
Ori Avtalion cd6ee0589d JANITORIAL: Format forward declarations to follow convention 2011-04-28 12:20:34 +03:00
Johannes Schickel 7e71865e91 Move the event recorder to its own class (EventRecoder inside common/EventRecorder.[h/cpp]).
svn-id: r42751
2009-07-25 12:59:46 +00:00
Johannes Schickel ef71667403 - Adapt DefaultEventManager to use Common::ArtificialEventSource
- Adapt Keymapper to implement EventMapper interface

svn-id: r42727
2009-07-25 01:01:05 +00:00
Johannes Schickel 141ded3063 Change DefaultEventManager to use EventDispatcher.
svn-id: r42725
2009-07-25 01:00:37 +00:00
Johannes Schickel dafd5d509b Made DefaultEventManager a subclass of EventObserver.
svn-id: r42723
2009-07-25 01:00:12 +00:00
Johannes Schickel 60e7faf9b6 Replaced "_artificialEventQueue" by an EventSource.
svn-id: r42722
2009-07-25 00:59:53 +00:00
Johannes Schickel ba7e01ad7c Replace "EventProvider" class of the DefaultEventManager implementation with "Common::EventSource".
svn-id: r42718
2009-07-25 00:59:03 +00:00
Max Lingua 17b1c6d0ae I am re-commiting the FORCE_RTL as a temporary solution
in trunk, so that trunk/1.0rc is au pair feature-wise
with 0.13.x.

svn-id: r42403
2009-07-12 05:35:56 +00:00
Johannes Schickel b3c6751b9b Strip trailing whitespaces in the whole code base.
svn-id: r40867
2009-05-24 15:17:42 +00:00
Max Horn c69ebfd798 Moved default implementations for various OSystem methods into a new class BaseBackend
svn-id: r36135
2009-01-30 03:35:47 +00:00
Eugene Sandulenko 83972e2001 Merge in Virtual Keybpard & KeyMapper branch,
- Merge is perfromed in order to not let rotting the code
- Makefile modifications were avoided

Stuff to resolve:
- Circular dependency of common/vkeybd from graphics/
- Make it compilable (?)
- Add some keyboards
- Decide on the key bindings

svn-id: r35813
2009-01-11 00:20:27 +00:00
Max Horn 063cff91d5 Prevent the 'Confirm exit' dialog from being invoked recursively
svn-id: r35660
2009-01-02 01:21:38 +00:00
Max Horn df20d264fd Pushing down some header deps (on common/system.h, mostly)
svn-id: r35542
2008-12-25 20:40:00 +00:00
Stephen Kennedy df3b8fd14c Added preprocessor flags 'ENABLE_VKEYBD' and 'ENABLE_KEYMAPPER' to control inclusion of vkeybd and keymapper in build.\n\nAlso added corresponding --enable-vkeybd and --enable-keymapper flags to configure scripts.
svn-id: r34706
2008-09-30 13:51:01 +00:00
Stephen Kennedy a7bb113e83 Merged revisions 33452-33453,33455-33459,33463-33464,33466-33471,33473-33474,33478,33490,33492,33495-33496,33509-33512,33518-33519,33522-33527,33529-33530,33537,33541,33544,33546,33550,33552-33554,33556,33558,33561-33562,33565,33568,33570,33574,33576,33578-33581,33584-33587,33590,33596,33604-33611,33614-33615,33617-33618,33620-33621,33623,33626-33627,33632-33633,33635,33637,33639-33640,33642-33645,33648,33654-33655,33664,33667-33670,33673-33674,33678,33682,33686-33691,33693,33696,33698,33700,33703,33708,33710,33712-33714,33716,33719,33721-33723,33725-33727,33729-33730,33733,33736,33742,33754,33756,33758,33761,33763,33766,33777,33781-33788,33790,33792-33793,33795,33797,33805,33807-33812,33815-33817,33819,33822,33826,33829,33837,33839,33844,33847,33858-33861,33864,33871-33873,33875,33877-33879,33886,33889-33892,33894,33896,33900,33902-33903,33919,33928,33930,33932-33936,33938-33940,33942-33943,33948,33950,33953,33967,33973,33976,33978,33980,33985,33991,33993,33999-34000,34006,34009,34011,34013,34015,34019,34021-34023,34025,34027-34028,34030,34032-34034,34036,34038-34039,34041,34046-34048,34050-34055,34057,34059-34065,34067,34072,34074,34076,34078-34081,34084,34086-34087,34089-34090,34093,34096-34102,34104,34107,34113,34116,34119,34122,34124,34126,34128,34131-34132,34135,34138,34141,34144,34146,34149,34152-34154,34156-34157,34160,34163-34164,34169,34173,34179-34194,34196-34198,34200-34201,34205-34206,34208-34217,34219-34225,34227-34228,34234-34237,34239-34249,34251-34279,34281-34284,34286-34288,34290-34320,34323-34324,34326,34328-34329,34332,34334,34336,34338-34340,34343-34353,34356-34357,34359-34371,34373,34375,34378,34381-34382,34384-34385,34389-34391,34393-34394,34396-34397,34399-34405,34407-34409,34411,34413,34415,34417-34420,34423-34426,34428-34438,34440-34454,34456-34458,34460,34462-34469,34472,34474,34479-34481,34483-34498,34501-34505,34508,34511-34518,34520-34524,34526-34563,34566-34569,34571-34590,34592,34595-34599,34602-34603,34605,34613-34615,34617,34619-34624,34627-34628,34630-34639,34642-34649 via svnmerge from
https://scummvm.svn.sourceforge.net/svnroot/scummvm/scummvm/trunk

svn-id: r34654
2008-09-26 21:53:08 +00:00
Stephen Kennedy baae044e38 Proper fix for key repeat bug - r34094 caused different problems due to repeated key up events
svn-id: r34115
2008-08-23 17:04:40 +00:00
Stephen Kennedy d92909203b - proper init of virtual keyboard now implemented (involved added EventManager::init() which is called after screen has been initialised)
- changed HardwareKey / Action id field to an array of 4 chars instead of int32. Means that the keymap key/value pairs in config file are more readable.

svn-id: r33986
2008-08-18 10:07:11 +00:00
Stephen Kennedy 70dde2d8bd RemapDialog now properly uses reflowLayout() and open(), so that the same instance can be reopened
svn-id: r33843
2008-08-13 19:24:52 +00:00
Stephen Kennedy 57b13141af Keymapper WIP:
* Implemented stack-based active map in Keymapper
* Started proper testing by adding code to OSystem_SDL to set up simple HardwareKeySet and Keymap

svn-id: r33660
2008-08-06 14:21:05 +00:00
Stephen Kennedy dfcdbb0d33 KeymapManager - implemented loading/saving of keymaps
- Refactoring of code to map a key to a UserAction - now we call a method on UserAction to do it (and it then tells the Keymap class)
- General cleanup of code

svn-id: r33262
2008-07-24 10:00:56 +00:00
Stephen Kennedy 2f064da102 Most of Keymapper class complete
DefaultEventManager now initialises Keymapper and passes key press events to it

svn-id: r33227
2008-07-23 08:45:12 +00:00
Stephen Kennedy a58080bd58 Changed pushEvent to use a const& argument
svn-id: r33175
2008-07-21 18:53:55 +00:00
Christopher Page 7f480ac571 Quit and RTL code is more modular now. EVENT_RTL no longer sets _shouldQuit, shouldQuit is only set if there's an EVENT_QUIT. EVENT_RTL and EVENT_QUIT are completely separate from each other. Engine::quit() method now checks both _shouldQuit and _shouldRTL to determine if the engine should exit. There is no longer a need for resetQuit(), so it's removed
svn-id: r33082
2008-07-16 04:22:56 +00:00
Stephen Kennedy 28cb417fb1 Added comments in virtual-keyboard-parser.h describing the file format. Added a delay functionality to the delivery of artificial events in DefaultEventManager, to get round events being ignored when delivered consecutively.
svn-id: r33012
2008-07-12 12:40:57 +00:00
Stephen Kennedy 1f0b3ceb36 Added pushEvent to EventManager (from cpage88's branch) and changed VirtualKeyboard so that it uses this method to feed key presses its resulting key press events.
svn-id: r32977
2008-07-09 13:33:36 +00:00
Christopher Page e808cdf7a0 Reimplemented pushEvent() and artificialEventQueue to work with Events instead of EventTypes. Reimplemented Queue as a List instead of Array. Updated AGOS, AGI, CINE, GOB, and KYRA to work with the current implementation of the GMM
svn-id: r32971
2008-07-09 02:27:05 +00:00
Christopher Page a4f56de13a Implemented Common::EventManager::pushEvent() to insert fake events into the event queue. Quit and RTL events have been added, and are now tracked by the DefaultEventManager using shouldQuit() and shouldRTL(). AGOS is working with this new implementation, other engines to follow.
svn-id: r32952
2008-07-07 22:34:45 +00:00
Stephen Kennedy 275ffece2f - changed VirtualKeyboard classes to Common namespace
- updated XMLParser from Tanoku's branch

svn-id: r32943
2008-07-07 15:42:26 +00:00
Stephen Kennedy 5840c2480f - renaming of files
svn-id: r32942
2008-07-07 15:06:43 +00:00
Stephen Kennedy 7e3639e68b - moved VirtualKeyboard files into backends/common directory
svn-id: r32941
2008-07-07 14:52:30 +00:00
Stephen Kennedy 98f999f8e0 WIP: VirtualKeyboard updates:
- got keyboard bitmap displaying (no transparency as yet)
- simple event loop for VK to capture mouse clicks done (and untested code to process the clicks)
- pollEvent() method to deliver the virtual key press events to EventManager

svn-id: r32939
2008-07-07 14:30:11 +00:00
Christopher Page a14a0d16c1 Changes to implementation of the GMM
svn-id: r32872
2008-07-02 00:30:49 +00:00
Jordi Vilalta Prat 66e9d4f5e8 Removed trailing spaces.
svn-id: r30664
2008-01-27 19:47:41 +00:00
Eugene Sandulenko 77eea722af Modified patch #1738058: "Action recorder".
svn-id: r28968
2007-09-19 13:55:05 +00:00
Nicola Mettifogo 258901bab9 Merged common/stdafx.h into common/scummsys.h. All referencing files have been updated.
svn-id: r28966
2007-09-19 08:40:12 +00:00
Max Horn 218e132e37 Updated legal headers in source files, based on what Pidgin (the IM client formerly knowns as Gaim) does; added new (incomplete) COPYRIGHT file; updated copyright dates in a few spots
svn-id: r27024
2007-05-30 21:56:52 +00:00
Max Horn ed54ea9155 Moved Event/EventType/keyboard enum from common/system.h (part of class OSystem) to common/events.h (part of namespace Common). Porters may have to make minor changes to their backends to get them to compile again
svn-id: r26180
2007-03-17 19:02:05 +00:00
Torbjörn Andersson 53624376b4 Applied my re-revised patch #1487149 ("Simplified keyboard repeat"), with
Fingolfin's blessings. Keyboard repeat is now handled by the event manager,
rather than by individual engines.

Since this can cause problems with some engines (see the AGI engine), the extra
"key down" events are marked as "synthetic", so that they can be ignored if
necessary.

svn-id: r26170
2007-03-17 15:44:26 +00:00
Max Horn e72455c215 cleanup
svn-id: r26169
2007-03-17 14:34:50 +00:00
Max Horn 86ba69f75b oops
svn-id: r26157
2007-03-17 01:11:46 +00:00
Max Horn 8fc8c4847d Implemented a simple EventManager class
svn-id: r26154
2007-03-17 00:07:34 +00:00