Commit graph

21 commits

Author SHA1 Message Date
Marcus Minhorst
0f72a671fc Revert "Gamepad Improvements"
This reverts commit 2a5cce543b.
2025-07-06 20:40:03 -03:00
Marcus Minhorst
2a5cce543b
Gamepad Improvements
* Cleanup: Alignment, long lines, Replace 0 with SDLK_UNKNOWN

* Gamecontroller api analogue input

* Added some button handling

* Added mapping for other buttons

* Added trigger events

* Added force_joystick flag

* Removed force_joystick flag

Rationale:
1. It was actually broken lol
2. I cannot think of a case where enabling this would be a useful thing for
gzdoom. If the user is using a gamecontroller, it is pointless. If they are
not using a gamecontroller, it will just default to using the joystick api.
If they are not using a gamecontroller, but SDL thinks they are, it is an
SDL bug, and will be reported and fixed

* Modified default mapping

* Added analogue to digital threshold

* Added analogue response curve

* Per axis settings

* Fixed controller reconnect

* Added threshold and curve to IJoystickConfig
Enabled saving of settings

* Added stubs

* Cleanup

Constants are no longer defines.
Constants are mostly shared between backends.
Moved some logic to m_joy

* Implemented xinput stubs

* Implemented dinput stubs

* Implemented ps2 stubs (untested)

* Fixed inclusive check

* Implemented osx stubs (untested)

* Fixed curve implementation

No longer savable, I screwed the curve function up.
I though it needed 2 control points, but it needs 4.
Need to re-do controller settings :(

* Now using CubicBezier struct

* Fixed SetDefaultConfig to match xinput behavior

* Expanded gamepad CCMD

* Rename enum JoyResponseCurve to EJoyCurve

* Initial menu implementation

* Fixed SDL controller setting saving

* SDL gamepads can now actually be disabled

* Fixed initial controller connect of some versions of SDL

* Spelling error

* Enable gamepad by default

* Fixed segfault on some versions of SDL

* Only block keydown
2025-07-05 17:41:40 -03:00
Rachael Alexanderson
f3b0c3ac5e
- Roll back filesystem changes. These were causing instabilities in the master branch that were interfering with development. 2025-01-04 11:27:21 -05:00
Christoph Oelckers
d1abc3eb8c renamed things in file system to reduce Doom specific terminology. 2024-11-24 18:05:11 +01:00
Christoph Oelckers
1717ff47b2 add GetChars() accessors to many FString uses where const char* is wanted.
By no means complete, it's just a start to get rid of that automatic type conversion operator.
2023-10-03 14:27:39 +02:00
Christoph Oelckers
b082c50502 - fixed doublebind check with automap.
When no doublebinds get passed to C_DoKey it may not set the doubleclick flag.
For the automap C_DoKey gets called twice, once with the automap bindings and once with the regular bindings and doubleclicks.
2023-09-15 22:00:05 +02:00
Christoph Oelckers
01f8131969 - moved chatmodeon to the backend. 2022-10-02 14:01:43 +02:00
Rachael Alexanderson
c8156fa581 - add keybinds for F17-F24 2022-06-01 10:23:08 +02:00
Christoph Oelckers
e60e6967c0 - whitespace cleanup, updated from Raze. 2022-01-02 12:23:42 +01:00
Christoph Oelckers
c598d9bab7 - Backend update from Raze.
* TArray extensions
* MSVC setup so that [[deprecated]] emits warnings.
2021-11-12 09:36:46 +01:00
Christoph Oelckers
77d74a11d1 - removed most templates.h includes. 2021-10-30 10:49:12 +02:00
alexey.lysiuk
4bcea0ab78 - handle empty command names when getting key binds
See https://github.com/Realm667/WolfenDoom/issues/498
2021-04-19 18:09:20 +03:00
Christoph Oelckers
ba146ed5e5 - Backend update from Raze 2021-04-19 12:58:35 +02:00
Christoph Oelckers
700304bf46 - update of console code.
Backports con_pulsetext and toggle messages for CVARs from Raze.
2020-09-27 09:35:06 +02:00
Christoph Oelckers
5dfe9918d0 - moved some event related code to 'common'. 2020-06-13 20:31:57 +02:00
Christoph Oelckers
3fc0d0d794 - backend changes from Raze, mainly to properly load keyboard presets. 2020-06-07 15:09:10 +02:00
SanyaWaffles
994550fb00 Add the check to the other loop per Graf's request. 2020-04-24 10:01:36 +02:00
SanyaWaffles
6a604f35cb A much smarter DEFBINDS fix. Check if the lump is in the range of an IWAD, if so, override the settings... if not, don't override the settings.
https://forum.zdoom.org/viewtopic.php?f=2&t=68292
2020-04-24 10:01:36 +02:00
SanyaWaffles
1cf8c2f63e Fix keybinds part 1 of whatever 2020-04-24 08:10:09 +02:00
Christoph Oelckers
5228a67ff5 - fixed keybinding reader - before trying to load DEFBINDS the lump index wasn't reset. 2020-04-19 13:23:02 +02:00
Christoph Oelckers
c3a381ed92 - moved most of the console code to 'common'.
The main console.cpp file cannot be done yet, but the rest is ready to go.
2020-04-11 20:19:51 +02:00
Renamed from src/console/c_bind.cpp (Browse further)