Commit Graph

408 Commits

Author SHA1 Message Date
Jonathan G Rennison
03d7edd828 Fix use of nullptr for HIMC type in video/win32_v.cpp 2019-05-02 01:36:12 +01:00
Jonathan G Rennison
bd2fdde759 Merge branch 'master' into jgrpp
# Conflicts:
#	src/core/sort_func.hpp
#	src/rail_cmd.cpp
#	src/timetable_cmd.cpp
#	src/video/sdl_v.cpp
#	src/video/win32_v.cpp
2019-04-23 08:11:52 +01:00
glx
9195f2337a Codechange: use std::vector for _resolutions 2019-04-18 21:49:34 +02:00
Jonathan G Rennison
674732cd68 Merge: Codechange: Use null pointer literal instead of the NULL macro 2019-04-11 18:14:13 +01:00
Henry Wilson
7c8e7c6b6e Codechange: Use null pointer literal instead of the NULL macro 2019-04-10 23:22:20 +02:00
Jonathan G Rennison
f887b12be2 Add 3rd party mingw-std-threads headers to fix MinGW compilation 2019-04-10 17:35:43 +01:00
Michael Lutz
967b27a2c1 Codechange: C++11 STL has a function for getting the number of CPU cores. 2019-04-06 11:27:39 +02:00
Michael Lutz
ae748166d0 Codechange: Use platform independent C++11 function for sleeping on a thread. 2019-04-06 11:27:39 +02:00
Michael Lutz
05bc2ed7cb Codechange: Replace custom thread code with C++11 thread objects.
We assume a conforming C++11 compiler environment that has a valid <thread>-header.
Failure to run a real thread is handled gracefully.
2019-04-06 11:27:39 +02:00
Michael Lutz
05f4e73608 Codechange: Replace custom mutex code with C++11 mutex'es.
A conforming compiler with a valid <mutex>-header is expected.
Most parts of the code assume that locking a mutex will never fail unexpectedly,
which is generally true on all common platforms that don't just pretend to
be C++11. The use of condition variables in driver code is checked.
2019-04-06 11:27:39 +02:00
Niels Martin Hansen
66c60e52ba Change: [SDL] Do not offer video smaller than 640x480 2019-03-30 22:02:14 +01:00
Henry Wilson
af7d9020a1 Codechange: Use override specifer for overriding member declarations
This is a C++11 feature that allows the compiler to check that a virtual
member declaration overrides a base-class member with the same signature.

Also src/blitter/32bpp_anim_sse4.hpp +38 is no longer erroneously marked
as virtual despite being a template.
2019-03-24 16:10:04 +01:00
Patric Stout
e3c639a09f Remove: ENABLE_NETWORK switch
This switch has been a pain for years. Often disabling broke
compilation, as no developer compiles OpenTTD without, neither do
any of our official binaries.

Additionaly, it has grown so hugely in our codebase, that it
clearly shows that the current solution was a poor one. 350+
instances of "#ifdef ENABLE_NETWORK" were in the code, of which
only ~30 in the networking code itself. The rest were all around
the code to do the right thing, from GUI to NewGRF.

A more proper solution would be to stub all the functions, and
make sure the rest of the code can simply assume network is
available. This was also partially done, and most variables were
correct if networking was disabled. Despite that, often the #ifdefs
were still used.

With the recent removal of DOS, there is also no platform anymore
which we support where networking isn't working out-of-the-box.

All in all, it is time to remove the ENABLE_NETWORK switch. No
replacement is planned, but if you feel we really need this option,
we welcome any Pull Request which implements this in a way that
doesn't crawl through the code like this diff shows we used to.
2019-03-20 19:24:55 +01:00
Patric Stout
72c5f2b3ee Remove: DOS support
In 10 years there was no active development on DOS. Although it
turned out to still work, the FPS was very bad. There is little
interest in the current community to look into this.

Further more, we like to switch to c++11 functions for threads,
which are not implemented by DJGPP, the only current compiler
for DOS.

Additionally, DOS is the only platform which does not support
networking. It is the reason we have tons of #ifdefs to support
disabling networking.

By removing DOS support, we can both use c++11 functions for threads,
and remove all the code related to disabling network. Sadly, this
means we have to see DOS go.

Of course, if you feel up for the task, simply revert this commit,
and implement stub c++11 functions for threads and stub functions
for networking. We are more than happy to accept such Pull Request.
2019-03-19 23:22:51 +01:00
Patric Stout
f58db44ff2 Remove: BeOS support (deprecated by Haiku)
In 10 years there is no commit to change how BeOS works, and we
have no active maintainer for it. It is unlikely it works in its
current state (but not impossible).

With the arrival of SDL2 (and removal of SDL), BeOS is no longer
support. SDL2 suggests to use Haiku instead of BeOS.
2019-03-05 22:03:00 +01:00
Patric Stout
7784d77713 Remove: MorphOS / AmigaOS support
In 10 years there is no commit to change how MorphOS works, and we
have no active maintainer for it. It is unlikely it works in its
current state (but not impossible).

With the arrival of SDL2 (and removal of SDL), MorphOS is no longer
support. There is an SDL2 port for MorphOS, but it is not maintained
by upstream SDL2, and nobody can currently test it out.

If anyone wants to re-add MorphOS, please do (revert this patch,
fix the problems, and create a Pull Request). If you need any help
doing so, let us know! It is not that we don't like MorphOS, it is
that we don't have anyone fixing the problems :(
2019-03-05 22:03:00 +01:00
Charles Pigott
c3bc7d657e Codechange: Remove ability for SDL to be dynamically loaded on Windows 2019-03-02 17:13:05 +01:00
Alexander Weiss
77ab6f8ec7 Change: [OSX] Prevent 2D scrolling for traditional scroll wheel mice 2019-02-24 17:54:59 +01:00
Alexander Weiss
0bb395b21d Change #6800: [OSX] Use high-precision scrolling deltas for 2D scrolling 2019-02-24 17:54:59 +01:00
Charles Pigott
fe8c24e081 Codechange: Remove unnecessarily defined functions under MinGW 2019-01-17 21:55:15 +00:00
Charles Pigott
2d981a4b2c Fix: A few minor compile warnings under MinGW 2019-01-17 21:55:15 +00:00
glx
c540d72445 Fix: [Win32] WIN32 may not be defined, always prefer the compiler predefined macro _WIN32 2018-12-27 18:09:16 +01:00
Niels Martin Hansen
2a868b9f3b Feature: Framerate display window (#6822)
Frame rate and various game loop/graphics timing measurements and graphs. Accessible via the Help menu, and can print some stats in the console via the fps command.
2018-07-19 21:17:07 +02:00
Michael Lutz
dbfc417e65 Fix: [Win32] Garbage in OS window title if branch name was too long.
This was caused by a missing \0-character on reaching the buffer limit.
2018-06-27 22:16:43 +02:00
Alexander Weiss
3e910a5969 Change: [OSX] Disable macOS Sierra's automatic tab feature 2018-05-27 16:01:08 +02:00
Alexander Weiss
6df7ced343 Change: [OSX] Reversed pinch to zoom behaviour.
Made pinch out zoom in and pinch in zoom out, as virtually all macOS
applications do.
2018-05-24 21:31:37 +02:00
Michael Lutz
bb5584c835 Fix 74b7f0a: [OSX] Mouse cursor getting occasionally stuck. 2018-04-30 23:57:28 +02:00
Matthijs Kooijman
fa87212a76 Fix: Some spelling errors in printed messages 2018-04-30 13:38:58 +02:00
Patric Stout
aef69443e7 Remove: WinCE support 2018-04-29 15:32:16 +02:00
Patric Stout
85adde7485 Remove: PSP support 2018-04-29 15:32:16 +02:00
Michael Lutz
e0ae67cefa Fix: [OSX] Compiler warning about an unused NULL argument. 2018-04-21 22:42:14 +02:00
Michael Lutz
6c3902ac41 Codechange: [OSX] Use newer APIs to get resolution information when available. 2018-04-10 23:30:01 +02:00
Michael Lutz
964d310cda Codechange: [OSX] Use non-deprecated API for displaying an alert where supported. 2018-04-10 23:30:01 +02:00
Michael Lutz
74b7f0a9aa Fix: [OSX] Remove some OSX compiler warnings on newer SDKs/compilers. 2018-04-10 23:30:01 +02:00
Michael Lutz
4bfd277017 Codechange: [Win32] Use OS function for mouse tracking if present. 2018-04-10 21:07:27 +02:00
michi_cc
c722cb26b8 (svn r27935) -Fix [FS#6629]: [Win32] Right mouse scrolling didn't work properly with the Windows 10 Fall Creators Update. 2017-12-09 19:21:45 +00:00
frosch
b4b98e5165 (svn r27893) -Codechange: Use fallthrough attribute. (LordAro) 2017-08-13 18:38:42 +00:00
frosch
b1fe837b8e (svn r27775) -Fix [FS#6510]: Insufficient thread synchronisation when switching blitters. (JGR) 2017-03-11 13:05:54 +00:00
frosch
d5f82bf55b (svn r27774) -Fix [FS#5889]: Enabling palette animation for 32bpp blitters while paused skipped initialisation of the palette and resulted in black windows.
-Revert (r23978): No SDL-specific fix required anymore. The new fix applies to all backends.
2017-03-11 12:52:26 +00:00
michi_cc
94b3965989 (svn r27675) -Fix [FS#6502]: [OSX] Building with 10.11 or 10.12 SDKs. 2016-10-31 19:29:01 +00:00
michi_cc
c83306391e (svn r27673) -Add: [Win32] Thread names for windows debuggers. 2016-10-30 18:22:55 +00:00
frosch
31f046bd9b (svn r27670) -Add: [FS#6471] Assign descriptive names to (GNU pthread) threads. (JGR) 2016-10-30 17:29:33 +00:00
alberth
0adfb1ac6f (svn r27653) -Fix(r27647): Rename FileOperation enum and values to SaveLoadOperation to avoid nameclash with windows compiler toolkit. 2016-09-04 16:06:50 +00:00
alberth
597380e099 (svn r27650) -Codechange: Replace SaveOrLoadMode by FileOperation and DetailedFileType. 2016-09-04 12:57:43 +00:00
frosch
352e528cda (svn r27167) -Fix: [SDL, Windows] Right-mouse-button scrolling scrolled/jumped way to far, when OpenTTD lagged during mouse event processing. 2015-02-22 23:06:45 +00:00
fonsinchen
306b6a11ee (svn r27046) -Fix [FS#5812]: Don't require double-press from non-dead console hotkeys. 2014-10-26 20:01:36 +00:00
planetmaker
3df230af62 (svn r26943) -Fix: [Win32] Silence a warning about comparison of signed and unsigned variables when using gcc 2014-09-30 21:10:32 +00:00
michi_cc
5a2fd3630b (svn r26818) -Fix [FS#AndyShouldHaveFoundFlySprayByNow] (r26758): [OSX] Line history and scrolling in the console window went on a walk. 2014-09-13 22:00:10 +00:00
michi_cc
2b3b8c93e7 (svn r26758) -Fix [FS#5972]: [OSX] Implement more of the text editing API to prevent crashes and improve IME support. 2014-08-24 10:34:43 +00:00
planetmaker
bcb9c64ac8 (svn r26709) -Fix (r15892 and others) [FS#6069]: [OSX] Compilation fails with some lzo2 versions if we define __LP64__ as 0 instead of checking whether it is defined (kernigh2) 2014-07-30 20:19:29 +00:00