155 Commits
Author SHA1 Message Date
asarium 2c30dbcda6 Add better control of viewport destruction order 2017-05-27 23:51:39 +02:00
MageKing17 19a37eb04d Merge pull request #1024 from asarium/feature/defaultConfigLoc
Improve logic for determining legacy mode
2017-02-04 11:33:45 -08:00
asarium bcf2ddefba Begin fixing string const correctness 2017-01-02 12:29:14 +01:00
asarium 5725562435 Improve logic for determining legacy mode
Now it will also check if the old config location exists and if it
doesn't then the new config mode will be used by default. This should
fix #858.
2016-12-20 17:59:41 +01:00
asarium efdd4fae68 Add interface for viewport management
This separates OpenGL context creation from window creation and also
allows to implement multiple viewports in the future.
2016-08-19 17:44:17 +02:00
Echelon9 69a88cf58f Improve legacy mode warning console message
Without the new line, this important warning line can get lost within
the console messages e.g. on Linux.
2016-08-13 17:44:03 -04:00
asarium 0bf5ba092b Add interface for creating an OpenGL context
This allows to use a different method of creating and managing the
OpenGL context. This is needed of wxFRED where the OpenGL context is
created by wxWidgets. This will probably also fix #753 since it uses the
old wgl based method of creating an OpenGL context in FRED.
2016-08-07 21:38:36 +02:00
asarium 0473ead31f Make sure that SDL OpenGL is initialized
The documentation says that the SDL OpenGL attributes need to be
initialized before a window is created. These changes implement that by
moving the actual SD_Window creation inside the OpenGL setup. FRED only
sets the native window handle to the correct HWND and gropengl uses
that.
2016-08-05 21:51:29 +02:00
asarium 18154bfa60 Clean up FRED init a bit
Maybe this will help tracking down that FRED OpenGL issue
2016-08-01 19:10:51 +02:00
asarium 1bcd5400d3 Move build system to CMake 2016-07-22 12:07:19 +02:00
asarium 05dda73ecd Only process events that belong to the main window
SDL2 support multiple windows and differentiates the events for the
individual windows using the windowID field in the events. These changes
check if that window ID belongs to our main window and ignores any
events that don't belong to it. This allows to add another window
without screwing up the rest of FSO with its input.
2016-07-17 18:20:56 +02:00
Fabian Woltermann 2eab9514a9 Merge pull request #663 from asarium/feature/exitOnSdlQuit
Quit game when receiving SDL_QUIT event
2016-07-16 17:09:18 +02:00
asarium 9f9809be5d Ignore all OS events when loading a mission
This should fix the "Application unresponsive" errors.
2016-07-16 16:23:30 +02:00
asarium 8db274ee7f Quit game when receiving SDL_QUIT event
This allows FSO to exit gracefully when receiving a SIGINT or SIGTERM
2016-07-16 15:48:22 +02:00
asarium 0751a7ab0f Use a vector instead of unordered_map 2016-07-16 15:18:30 +02:00
asarium 54381c2762 Fix typo 2016-07-16 15:18:30 +02:00
asarium afef5a7309 Add API for registering custom event handler
May be useful for future text input or scripting implementations
2016-07-16 15:18:30 +02:00
asarium 44b44bb249 Fix compilation with SDL 2.0.4 2016-06-03 19:58:50 +02:00
asarium 54cb475d30 Unify config handling on all platforms
This will use SDL_GetPrefPath to determine a suitable config directory which will be used for all runtime writing. Additionally all platforms will now use the configuration ini files, the Windows registry will be deprecated. For better compatibility with current installs there is a "legacy mode" which will work like the current install. It will be used as long as the launcher doesn't write the configuration file to the new location. Migrating old installs requires copying the existing pilot files to the new location and copying any existing configuration data.
2016-03-16 19:42:52 +01:00
Fabian Woltermann 66c9b7584c Merge pull request #330 from asarium/antipodes_/messageBoxCleanup
Replace Win32 MessageBox with os::dialogs version
2015-08-31 08:58:54 +02:00
asarium 451d451417 Replace Win32 MessageBox with os::dialogs version
Also moved SCP_MessageBox into os::dialogs namespace
2015-08-28 16:24:35 +02:00
z64555 a82784756c Enables asychronous joystick polling 2015-08-20 07:24:40 -05:00
asarium 575091aea4 Add unified dialog handling
This also changes the lables on the dialog to make sense and also unifies Int3 behavior by using a function provided by SDL.
2015-06-06 14:53:26 +02:00
asarium 4b6041980e Merge branch 'master' into antipodes
Conflicts:
	code/osapi/osapi.cpp
2015-05-28 13:07:57 +02:00
asarium a7efca662d Make the joystick system use GUIDs to identify the joysticks 2015-05-28 11:34:30 +02:00
Fabian Woltermann d4d4868fe7 Merge pull request #128 from asarium/antipodes_/resolutionFix
[Antipodes] Pick a better default resolution
2015-05-27 11:11:50 +02:00
z64555 69b845ef83 Adds mousewheel functions in addition to support for X1 and X2 buttons. These currently take up the same mappings as joy buttons 4 through 9. 2015-05-27 03:06:03 -05:00
asarium c5cf337365 Only set processor affinity if a commandline flag is present 2015-05-27 00:31:08 +02:00
asarium a7e8ecfe07 Use the desktop size to initialize a default video card config 2015-05-25 22:09:34 +02:00
m_m 088f0c2c4f Fix a few mouse related issues. This adds the CursorManager class which handles loading cursors and showing/hiding the cursor.
git-svn-id: svn://svn.icculus.org/fs2open/branches/antipodes@10487 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-10 20:52:22 +10:00
m_m b7bea462ee Merge changes of trunk r10463.
git-svn-id: svn://svn.icculus.org/fs2open/branches/antipodes@10468 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-06 19:24:14 +10:00
The_E 753e82f5c6 Removes the CRITICAL_SECTION macros, as these were just obscuring calls to SDL functions
git-svn-id: svn://svn.icculus.org/fs2open/branches/antipodes@10230 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-06 19:24:13 +10:00
The_E 09df160371 Change std::map SDL2FS2 to SCP_map
git-svn-id: svn://svn.icculus.org/fs2open/branches/antipodes@10229 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-06 19:24:13 +10:00
chief1983 bd68173a4f Closer to working compile with Xcode 5.
git-svn-id: svn://svn.icculus.org/fs2open/branches/antipodes@10173 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-06 19:24:13 +10:00
m_m 66c37c8fda Fix a problem with the mouse where the controls were stuck.
git-svn-id: svn://svn.icculus.org/fs2open/branches/antipodes@10172 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-06 19:24:13 +10:00
m_m 44d9279fa8 Merge both osapi files into one file.
git-svn-id: svn://svn.icculus.org/fs2open/branches/antipodes@10163 387891d4-d844-0410-90c0-e4c51a9137d3
2014-03-06 19:24:13 +10:00
m_m 08dad5b3af Add -no_unfocused_pause option.
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@10463 387891d4-d844-0410-90c0-e4c51a9137d3
2014-02-23 13:41:01 +10:00
m_m a8b201beb7 Changed most MessageBox calls to use SCP_Messagebox, also fixed some of the event processing.
git-svn-id: svn://svn.icculus.org/fs2open/branches/antipodes@10155 387891d4-d844-0410-90c0-e4c51a9137d3
2013-11-25 18:40:18 +10:00
The_E 983214e3e5 From m!m: Enables FRED building. IMPORTANT NOTE: This requires a patched libsdl, the patch is included in the libsdl directory. Binaries were provided by m!m.
git-svn-id: svn://svn.icculus.org/fs2open/branches/antipodes@10151 387891d4-d844-0410-90c0-e4c51a9137d3
2013-11-25 18:40:18 +10:00
The_E 9294acc319 Adds an SCP_Warning function that acts as frontend to SDL_ShowSimpleMessagebox
git-svn-id: svn://svn.icculus.org/fs2open/branches/antipodes@10098 387891d4-d844-0410-90c0-e4c51a9137d3
2013-11-25 18:40:17 +10:00
The_E 97f1c547a0 Actually initializing the keyboard input map is probably a good idea
git-svn-id: svn://svn.icculus.org/fs2open/branches/antipodes@10069 387891d4-d844-0410-90c0-e4c51a9137d3
2013-11-25 18:40:17 +10:00
The_E 25915f6de0 IIt begins!
SDL2 Everywhere, from me and Flaming_Sword. Outstanding issues: FRED integration, project file updates, cleanup.

git-svn-id: svn://svn.icculus.org/fs2open/branches/antipodes@10062 387891d4-d844-0410-90c0-e4c51a9137d3
2013-11-25 18:40:16 +10:00
The_E 2f46cbe8a3 sync to trunk 10046
git-svn-id: svn://svn.icculus.org/fs2open/branches/antipodes@10047 387891d4-d844-0410-90c0-e4c51a9137d3
2013-11-25 18:40:16 +10:00
Echelon9 8009d34928 Webui: support writing to fs2_standalone.log on Unix or Mac OS X when running a standalone server
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@10043 387891d4-d844-0410-90c0-e4c51a9137d3
2013-11-10 18:28:59 +10:00
Goober5000 4bd10888ff make localization more robust with additional checks on string length, more consting, and stronger typing and make XSTR const, since we don't want to modify the strings it translates and then CONST ALL THE THINGS
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9809 387891d4-d844-0410-90c0-e4c51a9137d3
2013-09-26 18:51:34 +10:00
Zacam 55996169ff Trunk Sync: r8456-8459 2012-02-10 19:05:36 +00:00
The_E a95b79c879 Fix for Mantis 2603: Fullscreen_window window not centered. 2012-02-10 18:45:06 +00:00
portej05 31e620931e Trunk Sync 2009-12-14 13:34:13 +00:00
portej05 54f63a1357 Running as standalone no longer disables windows key (Mantis #2047) 2009-12-03 07:01:48 +00:00
portej05 963d965699 Trunk Sync pending Zacams changes 2009-10-26 09:16:42 +00:00