Commit Graph

363 Commits (d6e8e83052ab75e8ed0fe8124ae72b689c04d051)

Author SHA1 Message Date
glx22 f4c7d5577e Codechange: [WIN32] Use VersionHelpers where appropriate 3 years ago
Patric Stout bcd7a7aafe
Codechange: rename _SQ64 into POINTER_IS_64BIT (#9313) 3 years ago
Patric Stout ca9a7df752
Codechange: rename str_validate to StrMakeValid(InPlace) (#9304)
This to be more explicit the function changes the value, and not
returns yes/no.
3 years ago
rubidium42 77330d09fd Codechange: move font settings to std::string 3 years ago
PeterN f018471b36
Cleanup: Remove old FiosList helper methods. (#9139) 3 years ago
Loïc Guilloux d4f0b6f434
Fix: [CMake] Auto-fill version details in rev.cpp and ottres.rc (#9066) 3 years ago
PeterN 56f982fa7f
Fix #9015: Don't set free space value if not requested. (#9016) 3 years ago
Niels Martin Hansen c800dcaff8 Fix: [Win32] Font glyphs of certain widths broke
Font glyphs between 33 and 39 pixels wide, in the Win32 font system, used wrong alignment and caused glyphs to appear broken.
When in the 33 to 39 pixel range, glyphs without AA were rounded down to 32 pixel pitch, instead of up to 64 pixel pitch.
3 years ago
Wim Leflere 5233fd2751
Change: [win32] Use user UI language for initial language selection (#8973) (#8974) 3 years ago
Niels Martin Hansen 746f1ca11a Codechange: Remove the now meaningless console_cp parameter from OTTD2FS 3 years ago
Niels Martin Hansen e0561dbded Fix #8713: Change OTTD2FS and FS2OTTD to return string objects instead of static buffers 3 years ago
Michael Lutz 13011e00c6 Fix #8860: [Win32] Crashlog window wasn't reliably shown for crashes not on the main thread. 3 years ago
Niels Martin Hansen cc465efa67 Change: [Win32] Use more modern way of getting free disk space 3 years ago
Niels Martin Hansen b427ddce88 Codechange: Switch to explicit wide strings 3 years ago
Niels Martin Hansen beeb9e0a1b Remove: [Win32] Last pretenses of being able to build for Windows 95 3 years ago
Michael Lutz 6776229047 Codechange: Make the simple Malloc sprite allocator globally usable. 3 years ago
Michael Lutz 70aa3b4011 Codechange: Give sprite encoders a hint which colour components of a sprite are filled with useful information. 3 years ago
Michael Lutz ef478ade64 Add: [Win32] Video driver that uses OpenGL to transfer the video buffer to the screen. 3 years ago
Michael Lutz b66e977acd Change: [OSX] When auto-detecting a font, try for sans-serif first.
On a display, especially with small fonts or low pixel sizes, sans-serif
fonts are usually easier to read than serif fonts.
3 years ago
Michael Lutz 6755ff63e1 Add: [OSX] Native font rendering without using FreeType. 3 years ago
Michael Lutz 21a2cd7bc3 Codechange: Replace magic numbers by constants. 3 years ago
Michael Lutz 23389e9491 Remove: [OSX] Startup splash screen.
It wasn't displayed anyway as it was never copied to the bundle.
3 years ago
Michael Lutz 63ed3f3575 Codechange: Move Fontconfig-specific code to a seperate file. 3 years ago
Michael Lutz f2294851e6 Codechange: [OSX] Move OSX-specific font code to a separate file. 3 years ago
Michael Lutz c6af8f16f6 Codechange: [Win32] Move Win32-specific font code to a seperate file. 3 years ago
Michael Lutz 5ad1640984 Codechange: Make OS font handle of the FontCache read-only. 3 years ago
glx22 348f322df1 Fix f1f281b31: [Win32] MinGW doesn't know timeapi.h 3 years ago
Loïc Guilloux f1f281b318
Fix: [Win32] Set minimum resolution for timers to 1ms. (#8660) 3 years ago
embeddedt 6c8f2227cd
Fix: [Emscripten] open links in browser (#8655) 3 years ago
Charles Pigott 9b800a96ed
Codechange: Remove min/max functions in favour of STL variants (#8502) 4 years ago
Michael Lutz 6ad5489d01 Codechange: [OSX] Silence some annoying warnings. 4 years ago
Michael Lutz 9ccef816f9 Codechange: [OSX] Re-arrange the OSX video driver code by combining all drawing code and moving the window/event handling to a different file.
This is just a code move/rename, not a functionality change.
4 years ago
Patric Stout ab7da117e0
Add: always set PERSONAL_DIR "/content_download" in search path (#8481)
This means that if you start OpenTTD with "-c" to indicate another
location to store files, it can still read the content you already
downloaded from your PERSONAL_DIR. This folder is, however,
read-only.

This is useful for situations where you downloaded OpenGFX via
the content-service, but want to run the regression or want to
run with a clean configuration. With this change, you no longer
need to download OpenGFX again.
4 years ago
Michael Lutz 8c24b2b6ce Fix: [OSX] Fonts loaded directly from a file have to be registered with CoreText for proper text layout. 4 years ago
Michael Lutz f3326d34e7 Codechange: Use std::string in FIO search path handling. 4 years ago
Michael Lutz 0c6e8a8123 Codechange: Store file search paths as std::string. 4 years ago
Michael Lutz dd138fc460 Codechange: Stringify config file paths. 4 years ago
Patric Stout b7851e51ad Fix: set SP_WORKING_DIR earlier with '-c'
On Windows, relative folders don't work so well. So we need to
lookup the full path. This is best done in DetermineBasePaths()
and as a bonus that only sets SP_WORKING_DIR once.
4 years ago
TechGeekNZ 716c883737 Fix: Globally apply preprocessor directive coding style
Global; except for the 32-bit SSE blitter, which has some #DEFINEs
in not-very-nice places.
4 years ago
Patric Stout 4d04009d12 Codechange: remove #ifdef from .cpp files to exclude features
With CMake, these files are simply not compiled to start with.
4 years ago
Patric Stout 56d54cf60e Add: introduce CMake for project management
CMake works on all our supported platforms, like MSVC, Mingw, GCC,
Clang, and many more. It allows for a single way of doing things,
so no longer we need shell scripts and vbs scripts to work on all
our supported platforms.

Additionally, CMake allows to generate project files for like MSVC,
KDevelop, etc.

This heavily reduces the lines of code we need to support multiple
platforms from a project perspective.

Addtiionally, this heavily improves our detection of libraries, etc.
4 years ago
glx b3ddf2c907 Fix: [Win32] Crash message not fitting in crash dialog 4 years ago
glx b5ca2161d9 Fix #7970: [Win32] Disable event loop on crash to prevent recursive faults 4 years ago
glx e0d20a44d2 Codechange: Use a dynamic copyright year 4 years ago
Michael Lutz e9294ce4e3 Cleanup: [OSX] Mop up some remaining stuff catering to compiling with very old SDK versions. 4 years ago
Michael Lutz 9d7ad67c1d Codechange: [OSX] Allow compiling with SDK version pre 10.9. 4 years ago
LCD 47 7f693ce497 Fix: [SDL2] support pasting from clipboard on Linux 4 years ago
glx 2f264f2c92 Change: Heading for 1.11 now 4 years ago
glx dbbd0f5ddc Fix: [OSX] Don't show a crash/assertion message box for a GUI-less video driver. 5 years ago
Michał Janiszewski c7ead8388c Codechange: Improve MSVC ARM64 support 5 years ago
S. D. Cloudt 13cc8a0cee Cleanup: Removed SVN headers 5 years ago
Michael Lutz d5a9bd404a Codechange: [OSX] Use std::unique_ptr with a custom deleter to simply memory management of Core Foundation types. 5 years ago
JMcKiern 04f659e768 Fix: Some typos found using codespell 5 years ago
Michael Lutz 61d6fa97cc Fix: [OSX] Wrong allocator usage for creating a CFString. 5 years ago
uvealonso ead772324e Fix #7704: [OSX] Handle malformed UTF8 strings 5 years ago
Michael Lutz de73c8f91c Codechange: [Win32] Remove a FreeType work-around from Uniscribe if not using FreeType. 5 years ago
Michael Lutz d2ed426077 Codechange: [Win32] Pass a native GDI font description around when we have one, instead of repeatedly guessing the font. 5 years ago
Transportman 7ef2f11c4c Fix #7570: Show Github URL in the crashlog window 5 years ago
Henry Wilson 7c8e7c6b6e Codechange: Use null pointer literal instead of the NULL macro 5 years ago
Michael Lutz baf9229931 Codechange: Replace AutoDeleteSmallVector with direct std::vector use in text layout code. 5 years ago
Michael Lutz 329bb52613 Codechange: Store text layout runs directly as values in a std::vector instead of heap allocated.
This reduces memory allocations and heap fragmentation.
5 years ago
Michael Lutz fbc4cef180 Codechange: Use override specifier for text layout classes. 5 years ago
glx22 3e608afa6c
Fix: [Windows] OpenTTD window may be inactive when an error happens (#7482) 5 years ago
Michael Lutz 967b27a2c1 Codechange: C++11 STL has a function for getting the number of CPU cores. 5 years ago
Michael Lutz ae748166d0 Codechange: Use platform independent C++11 function for sleeping on a thread. 5 years ago
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.
5 years ago
glx22 66dd7c3879
Fix: MSVC warnings (#7423) 5 years ago
Charles Pigott a065d4623e Codechange: Move 2 constants into the ifdef where they're used 5 years ago
Henry Wilson cc62f4163f Cleanup: Remove unused size template parameters from SmallMap and Auto[Free|Delete]SmallVector 5 years ago
Henry Wilson ab711e6942 Codechange: Replaced SmallVector::[Begin|End]() with std alternatives 5 years ago
Henry Wilson 2bc2de9034 Codechange: Replaced SmallVector::Find() with std::find() 5 years ago
Henry Wilson a0f36a50e6 Codechange: Replaced SmallVector::Append() with std::vector::[push|emplace]_back() 5 years ago
Henry Wilson 097328c3d7 Codechange: Replaced SmallVector::Get() const with std alternatives 5 years ago
Henry Wilson a690936ed7 Codechange: Replace SmallVector::Length() with std::vector::size() 5 years ago
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.
5 years ago
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.
5 years ago
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 :(
5 years ago
frosch a67ee02529
Change: Heading for 1.10 now (#7319) 5 years ago
Peter Nelson fa53abe864 Doc: Yearly increment. 5 years ago
glx 255fa6e1a8 Fix: enable DPI-awareness for MINGW builds 6 years ago
Charles Pigott fe8c24e081 Codechange: Remove unnecessarily defined functions under MinGW 6 years ago
Charles Pigott 2d981a4b2c Fix: A few minor compile warnings under MinGW 6 years ago
glx 92d3358db5 Fix: [Win32] don't mess with std[out|err|in] if we can't allocate a console 6 years ago
Michael Lutz 32ce1ce347 Add: [OSX] Text layout using the native CoreText API.
By default, the native API will be used instead of ICU, but if ICU is
forced in using configure, it will take precedence.
6 years ago
Michael Lutz 4bf216993a Add: [OSX] Native text caret handling. 6 years ago
Michael Lutz 8d7cd6a526 Add: [OSX] Native natural sort implementation. 6 years ago
Michael Lutz 3b8db31a49 Fix: [Win32] Align sprite glyphs to the font baseline when using Uniscribe text layout. 6 years ago
Charles Pigott f5b1115039 Doc: Lots and lots of doxymentation fixes 6 years ago
Charles Pigott 63898f61b0 Codechange: Rearrange struct packing defines and make MinGW use _Pragma pack style 6 years ago
Michael Lutz eec3f40931 Change: [Win32] Use Uniscribe instead of ICU for text caret handling.
This removes the need for the ICU lib on Windows.
6 years ago
Michael Lutz 768a31bfe3 Add: [Win32] Text layout using the native Windows Uniscribe library.
Uniscribe is sometimes producing different results compared to ICU, especially
when RTL and LTR content is mixed. Comparing the results to other programs
(like editors or web browsers) leads me to believe that the result are at least
not worse than ICU and possibly better.
6 years ago
Michael Lutz f4394debdc Add: [Win32] Native natural sort implementation. 6 years ago
Patric Stout aef69443e7 Remove: WinCE support 6 years ago
Patric Stout 85adde7485 Remove: PSP support 6 years ago
frosch 192770e6da Change: Non-tag revisions are now named '<commitdate>-<branch>-g<shorthash><modified>'. 6 years ago
Michael Lutz 6c3902ac41 Codechange: [OSX] Use newer APIs to get resolution information when available. 6 years ago
Michael Lutz f670277ff5 Codechange: [OSX] Try to set the thread name for debugger display. 6 years ago
Michael Lutz 4971678f52 Codechange: [OSX] Use 10.10+ API to get the OSX version when available. 6 years ago
Michael Lutz 74b7f0a9aa Fix: [OSX] Remove some OSX compiler warnings on newer SDKs/compilers. 6 years ago
frosch 09d4735679 (svn r27993) -Change: Heading for 1.9 now 6 years ago
frosch 91464af737 (svn r27980) -Doc: Yearly increment 6 years ago
frosch afcef7faa6 (svn r27780) -Update: Numbers 7 years ago
frosch 15032bd765 (svn r27777) -Doc: Yearly increment 7 years ago
michi_cc 94b3965989 (svn r27675) -Fix [FS#6502]: [OSX] Building with 10.11 or 10.12 SDKs. 8 years ago
michi_cc 51052f4961 (svn r27674) -Fix (r27673): Mingw... 8 years ago
michi_cc c83306391e (svn r27673) -Add: [Win32] Thread names for windows debuggers. 8 years ago
alberth 95bb103a23 (svn r27643) -Codechange: FiosGetDrives function also takes a destination file list. 8 years ago
frosch 0c7c0ada78 (svn r27518) -Update: Numbers 8 years ago
frosch 56c54dcaec (svn r27516) -Update: Documentation 8 years ago
michi_cc be689517f6 (svn r27481) -Fix: [Win32] Stdin/out/err need to be re-assigned differently if the runtime lib of MSVC2015 is used. 9 years ago
rubidium 8b1f9399bc (svn r27385) -Fix: compilation failure due #define-ing enum name of a system library before including the system library 9 years ago
michi_cc 35b77450f8 (svn r27380) -Fix: [Win32] Compilation with MSVC2015. 9 years ago
rubidium 10466746b4 (svn r27290) -Fix: sanitize the command line arguments before doing anything complex with them 9 years ago
frosch 6477356dd2 (svn r27192) -Change: heading for 1.6 now 9 years ago
planetmaker 15a29b8b28 (svn r27176) -Fix: Compilation with MinGW64 (Eddy Arfik) 9 years ago
rubidium 9428d6fb34 (svn r27103) -Update: copyright date 10 years ago
frosch 396dde1636 (svn r27092) -Fix/Add [FS#6186]: Compilation on OS/2 (smedles) 10 years ago
alberth 35f671229b (svn r26724) -Fix[FS#6077] Use the normal search path to look for xdg-open at Unix (kernigh2) 10 years ago
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) 10 years ago
frosch 51f68c42bb (svn r26606) -Fix [FS#6022]: Filename capitalisation (NG) 10 years ago
rubidium b476086c39 (svn r26538) -Codechange: remove double accounting of the drivers 10 years ago
frosch cadfedd584 (svn r26523) -Fix [FS#5992]: OpenBSD compilation (MagisterQuis) 10 years ago
rubidium 5ebf72d126 (svn r26517) -Fix: Windows 9x (or rather non-unicode) compile failures 10 years ago
rubidium 9ed12b0f07 (svn r26509) -Codechange: replace strdup with stredup (the latter ensures the return is not NULL) 10 years ago
rubidium ce06139328 (svn r26490) -Fix (r26489): compilation under Windows 10 years ago
rubidium 5b82822c12 (svn r26486) -Codechange: replace a number of snprintfs with seprintf 10 years ago
frosch ef4c2ce031 (svn r26485) -Codechange: Replace ttd_strlcpy and ttd_strlcat with strecpy and strecat. 10 years ago
rubidium 0463dbdc9e (svn r26482) -Codechange: add an include that allows us to undefine/redefine "unsafe" functions to prevent them from being used, and thus having to care about certain aspects of their return values 10 years ago
frosch 8ff9499fe2 (svn r26409) -Update: Version number in some more places. 10 years ago
rubidium 2618d960e3 (svn r26209) -Codechange: remove some template magic and simplify some code 11 years ago
rubidium e3542b1977 (svn r26192) -Fix (r24878): off-by-one error ;) 11 years ago
michi_cc dce0951fdc (svn r25913) -Fix: [OSX] Compilation under OSX 10.9. (zydeco) 11 years ago
michi_cc b96ef5c758 (svn r25677) -Codechange: [Win32] There are no 64-bit Windows versions below XP and we can safely assume it as the target platform. 11 years ago
michi_cc 765e7d349e (svn r25676) -Fix: [Win32] The ANSI code page is not UTF-8 for non-Unicode builds. 11 years ago
michi_cc e3648455aa (svn r25674) -Fix: [Win32] The console code page for non-Unicode builds is not the normal ANSI code page and definitely not UTF-8 either. 11 years ago
michi_cc e37968aadd (svn r25673) -Fix: [Win32] Use the right code page for converting ANSI strings into UTF-8 for non-Unicode builds. And don't crap out on DBCS code pages either. 11 years ago
michi_cc 8b476de3bf (svn r25666) -Feature [FS#4760]: [OSX] Pinch gesture support for zooming. (Based on patch by leecbaker) 11 years ago
michi_cc 3569a4fe5a (svn r25663) -Fix [FS#4857]: [OSX] Monospace font detection. 11 years ago
planetmaker 1024fd3116 (svn r25643) -Fix (r25480): [OSX] Define version constants before they're used 11 years ago
rubidium c33040e037 (svn r25520) -Fix-ish: don't pretend that trunk is still doing something 1.3-ish in the Windows executable version information 11 years ago
rubidium 5b2a5ac790 (svn r25506) -Document: a function, and name it slightly better 11 years ago
michi_cc 0150ab1bb2 (svn r25480) -Codechange: [OSX] OS X SDK versions >= 10.5 always have a non-const iconv declaration. 11 years ago
rubidium 8f9d213675 (svn r25474) -Fix [FS#5618]: OS X compilation failure 11 years ago
michi_cc 2d67f07975 (svn r25155) -Codechange: [Win32] Improve SHGetFolderPath emulation. 11 years ago
michi_cc 3349cb3347 (svn r25154) -Fix: [Win32] Don't store invalid paths in the search path list. 11 years ago
michi_cc d1212e0b1a (svn r25153) -Fix [FS#5522] (r24487): [Win32] Don't statically link to SHGetFolderPath as it may not exist. 11 years ago
planetmaker c24374f99c (svn r24900) -Fix [FS#5389]: Comments with typos (most fixes supplied by Eagle_rainbow) 12 years ago
rubidium f4915ce34f (svn r24878) -Update: the obligatory first of January commit 12 years ago
rubidium d49bd2997b (svn r24572) -Fix: do not cast away some other consts 12 years ago
yexo 1f75f81a41 (svn r24524) -Fix [FS#5296]: fix some compile problems in mac-only code (__ln__) 12 years ago