Commit graph

55 commits

Author SHA1 Message Date
Daniel Gibson
1d56411f56 Fix console-input in SDL1.2 for lots of unmapped keys
A lot of keys (especially keys not available on US keyboards) just weren't
supported for console input with SDL1.2 (SDL2 uses a different mechanism for
that).

This is fixed now by reordering a few lines in sdl_events.cpp

Please note that still only ASCII characters are supported and those keys
still can not be used in bindings - only for text input!
2013-01-20 04:16:19 +01:00
Robert Beckebans
0881085589 Merge remote-tracking branch 'DanielGibson/improve-window-handling' 2013-01-05 11:35:52 +01:00
Robert Beckebans
0cf039bfdb Changed project to use the DirectX10 SDK on Windows 8 2013-01-04 22:51:30 +01:00
Daniel Gibson
cf8d287a4e Fix Sys_ListFiles() on POSIX once again
Turned out that as "extension" (which is really more like a pattern
that matches the whole file) was even used with patterns like "*.*"
so we do proper matching using fnmatch() now - which is even easier
than the old way.
Now deleting savegames on POSIX works.
2013-01-04 14:40:35 +01:00
Daniel Gibson
a405b37f13 Pause when window loses focus, introduce com_pause
If the window loses focus com_pause is set to 1, when it regains focus
it's set to 0.
The behaviour on Win32 stayed the same (the implementation is less
hacky though) and Linux now matchces that.
2013-01-04 14:40:35 +01:00
Daniel Gibson
732d8987d3 support ctrl-g for (un)grabbing mouse
Many Linux Games support that
2013-01-04 14:40:35 +01:00
Daniel Gibson
a1c1f1b6b2 Support resizing windows for SDL1.2
By implementing GLimp_SetScreenParms() for SDL1.2
and enhancing the event handling
2013-01-04 14:40:35 +01:00
Daniel Gibson
d6c32cd49b Support resizing windows + improve fullscreen for SDL2
By implementing GLimp_SetScreenParms() and enhancing the
event handling
2013-01-04 14:40:35 +01:00
Daniel Gibson
a102d9d469 also do Sys_Sleep for less then 20ms
Sys_Sleep(10) is used quite often throughout the code.
2012-12-30 16:26:24 +01:00
Daniel Gibson
edb4856abd Set timestamp for savegames on POSIX
So they can be sorted correctly etc
2012-12-29 05:29:56 +01:00
Daniel Gibson
1e3bc3429b Fix Sys_ListFiles() on POSIX as needed for savegames
In Sys_ListFiles() the extension was abused to match whole
filenames (of savegames), not just their extensions - that
didn't work with the POSIX backend, now it does.

Sys_ListFiles() now also supports "*" as a wildcard that matches
all files - needed for deleting savegames.
However, things like "bl*" or "*ub" don't work.

While at it, I replaced readdir() with the thread-safe readdir_r()
2012-12-29 05:29:29 +01:00
Daniel Gibson
ba126dde3a Fixed various warnings from clang 2012-12-23 06:40:47 +01:00
Robert Beckebans
dd9b8a8710 Added support for precompiled headers for MSVC which reduced the compiled time from 4 minutes to 67 seconds. 2012-12-22 16:18:19 +01:00
Daniel Gibson
742ef7da83 Fix scrolling in Menus for SDL2
scrolling didn't stop, e.g. in the resolution selection menu
2012-12-22 03:26:01 +01:00
Daniel Gibson
f0dfe7e499 restore SDL1-support in sdl_events.cpp
* add define for SDL_SCANCODE_GRAVE - seems like only SDL2
  has names for the values
* add some missing keys to SDL_KeyToDoom3Key
* add scancode to unmapped-key warning
* backspace needs to be handled the same for SDL1 as in SDL2
  (i.e. a new event must be created for it) to work in console
2012-12-22 03:25:33 +01:00
Daniel Gibson
0be69a3162 Fix console on Linux
* Add support for Console-Key independently of KB Layout (with scancode)
    * add support for TAB key
    * Add hack so console is empty after opening it (SDL-only)
2012-12-21 04:58:50 +01:00
Robert Beckebans
731428164f Fixed error: class idLocalUserWin has no member named StorageSizeAvailable 2012-12-20 02:38:01 +01:00
Robert Beckebans
6b918aef86 Disabled broken savegame and profile storage checks for the PC 2012-12-19 23:56:20 +01:00
Robert Beckebans
f57d92a1ab Renamed RBDoom3 to RBDoom3BFG 2012-12-19 15:23:57 +01:00
Daniel Gibson
b1dabf3efd Improve R_GetModeListForDisplay()
* Fixed small bug when only one display mode was found by SDL2
* removed some redundant and dead code
* improved warnings
2012-12-18 22:50:59 +01:00
Daniel Gibson
f3c4948b2f R_GetModeListForDisplay() for SDL2 2012-12-18 01:11:21 +01:00
Daniel Gibson
dd987814f7 Fix cursor in menus
it didn't work correctly because the mouse isn't grabbed
(in contrast to dhewm3).
It's fixed now by returning absolute coordinates when a menu
is open, furthermore the cursor is now always hidden.
2012-12-18 01:10:38 +01:00
Robert Beckebans
99166faf71 Fixed compile problems on Win64 2012-12-17 12:24:31 +01:00
Daniel Gibson
e42a886b29 remove deprecated glShadeModel stuff
it's only for fixed function opengl, thus it's not needed and deprecated in OpenGL 3.2
AMD's driver complains about this.
2012-12-17 01:02:53 +01:00
Robert Beckebans
63f9d4000f First playable version on Linux. 2012-12-16 17:31:21 +01:00
Robert Beckebans
823ea36ffe Added support for OpenGL 3.2 context debugging using SDL 2.0 2012-12-16 12:22:07 +01:00
Robert Beckebans
d7888cf99d Added support for SDL 2.0 2012-12-14 19:03:30 +01:00
Robert Beckebans
8b8cfe7d25 Small changes to pthreads. 2012-12-14 13:10:52 +01:00
Robert Beckebans
776b1a2938 Merge remote-tracking branch 'DanielGibson/linux' 2012-12-14 12:06:40 +01:00
Robert Beckebans
3e533d1e29 Merge branch 'linux' of https://github.com/RobertBeckebans/RBDOOM-3-BFG into linux 2012-12-14 11:50:29 +01:00
Robert Beckebans
7b43a34f37 Changed idSysSignal pthread implementation to consider the manualReset parameter 2012-12-14 11:50:20 +01:00
Daniel Gibson
a5f5d75e82 Use -O0 for Debug builds, make sure that compiles
because of some GCC bug the included refactoring in
PacketProcessor.* was necessary
2012-12-14 00:52:31 +01:00
Daniel Gibson
67d6a5a1fa Make sure SDL_Init() was called before SDL_VideoInfo()
by adding GLimp_PreInit()
2012-12-14 00:51:22 +01:00
Daniel Gibson
ebbb98c9bd eliminate more longs
for 64bit compatibility.
2012-12-13 22:07:49 +01:00
Robert Beckebans
ca85c4d27b Added changes to compile for Win64 2012-12-13 20:37:55 +01:00
Daniel Gibson
ee88148bd1 eliminate more longs
for 64bit compatibility.
2012-12-13 01:28:41 +01:00
Robert Beckebans
86deed26b8 Merged 64 bit fixes. 2012-12-12 12:11:55 +01:00
Robert Beckebans
2952f227ea Merge remote-tracking branch 'DanielGibson/linux' into linux 2012-12-12 11:35:19 +01:00
Robert Beckebans
47f3f1b999 Fixed bug in Sys_CPUCount() 2012-12-12 00:37:01 +01:00
Daniel Gibson
9eeea7adf3 Fix tons of compiler warnings
mostly -Wreorder, use const char* instead of char* for "static strings",
fix inappropriate usage of NULL (e.g. instead of '\0' or (int)0)
2012-12-11 23:57:05 +01:00
Robert Beckebans
b848312904 Fixed missing SDL video initialization. 2012-12-11 23:49:41 +01:00
Robert Beckebans
99f144c32f Added missing neo/sys/sdl/sdl_local.h 2012-12-11 23:23:17 +01:00
Robert Beckebans
a1730fa430 Supplemented Linux backend with missing functions. -> [100%] Built target RBDoom3 on Kubuntu 12.10 2012-12-11 23:17:23 +01:00
Robert Beckebans
6d70f04cc9 Ported the Win32 threads to POSIX pthreads. 2012-12-09 01:55:59 +01:00
Robert Beckebans
9cc36a111e More Linux specific fixes. idlib compiles on Kubuntu 12.10 64 bit 2012-12-06 21:31:33 +01:00
Robert Beckebans
afaf66ef40 Formatted code 2012-12-04 12:11:14 +01:00
Robert Beckebans
5e582222cf Removed unused callstack traces API. All C++ files compile with MinGW. 2012-12-04 02:30:46 +01:00
Robert Beckebans
e0c79bd2d2 More work on MinGW support. 2012-12-03 23:55:27 +01:00
Daniel Gibson
d949bc9410 Fix compiler warnings and errors in MinGW
many of the warnings -Wreorder and #includes with invalid path because of
case-errors (windows may not care, but linux does)
2012-12-03 09:29:14 +01:00
Daniel Gibson
948b3777eb xinput.h for mingw
the one from the dx sdk is incompatible.. again..
2012-12-02 22:37:21 +01:00