Commit Graph

3410 Commits

Author SHA1 Message Date
Vittorio Romeo
5ba6580568 Make 'Time' a 'constexpr' class 2021-12-28 16:52:52 +01:00
Chris Thrasher
dafdacfa20 Let tests and examples inherit language requirement from upstream targets
It's not necessary to re-specify cxx_std_17 since any example or test
which depends on a core target (which should be all of them) will pick
up this language requirement that should be a public property of those
targets. If that changes, these examples and tests will possibly fail
to compile and correctly catch the bug that was introduced in the core
library targets.
2021-12-28 15:53:08 +01:00
Chris Thrasher
f5541d22e5 Add tests for sf::VideoMode 2021-12-27 19:09:35 +01:00
Vittorio Romeo
50d28e3879 Add tests for 'sf::Color' 2021-12-27 17:35:06 +01:00
Chris Thrasher
14fff20eb8 Remove redundant API taking x,y pair instead of sf::Vector 2021-12-26 17:13:18 +01:00
Vittorio Romeo
29983aa8d4 Replace Catch with Doctest 2021-12-24 15:06:32 +01:00
Chris Thrasher
ade9843dd8 Collapse test/src directory 2021-12-24 11:56:58 +01:00
Chris Thrasher
54b8a691d1 Add unit tests for sf::Time 2021-12-23 20:34:33 +01:00
kimci86
53594dfbe7 Fix null pointer dereference in Font 2021-12-23 17:03:16 +01:00
Vittorio Romeo
46639ed277 Manipulate library names on Windows + Clang 2021-12-22 08:53:03 +01:00
kimci86
d0c63f46fc Use a smart pointer to manage std::FILE pointer in FileInputStream 2021-12-22 02:35:45 +01:00
Chris Thrasher
cd1cc62f6d Fix issue with MinGW not handling large files 2021-12-21 23:11:15 +01:00
Chris Thrasher
0f83e3d266 Use FetchContent to grab latest Catch2 release
The key benefit here is that now we're linking against their CMake
target which makes it easy to change how we depend on Catch2. We
can switch from FetchContent to FindPackage to a git submodule and
never have to change our code because we're depending on Catch2 in
the most flexible way possible.
2021-12-21 23:11:15 +01:00
Vittorio Romeo
7364d5b578 Fix broken OpenGL example 2021-12-21 20:41:44 +01:00
Vittorio Romeo
f6de7eca40 Use smart pointers to manage memory 2021-12-21 19:54:25 +01:00
Vittorio Romeo
257c78f07a Don't use 'sf::err' in public example code 2021-12-20 15:06:27 +01:00
Lukas Dürrenberger
e982d08f37
Merge pull request #1920 from SFML/feature/backmerge
Back-merge changes from 2.6.x to master
2021-12-20 14:22:56 +01:00
Lukas Dürrenberger
3cd45a283b Merge branch '2.6.x' into feature/backmerge 2021-12-20 13:44:56 +01:00
Chris Thrasher
14bbb0d1cc Unify toLower implementations 2021-12-20 08:29:05 +01:00
Pawel Paruzel
c824d3d57a Fix all macOS clang warnings
Co-authored-by: binary1248 <binary1248@hotmail.com>
2021-12-20 00:10:55 +01:00
Pawel Paruzel
4df16d19e5 Fix Clang warnings on Android 2021-12-20 00:10:55 +01:00
Pawel Paruzel
aae00e9002 Fix cmake -DWARNINGS_AS_ERRORS=1 for clang 2021-12-20 00:10:55 +01:00
Chris Thrasher
dda821597b Only compile Catch main once
Because Catch is so expensive to compile, it's really helpful for
initial compile times if this target doesn't have to be recompiled
so often. This won't make a huge impact on developers who are mostly
doing incremental builds but can have a meaningful impact on CI
runners that are always doing clean builds.
2021-12-19 23:11:14 +01:00
Vittorio Romeo
4a189d6602 Remove build logic for unsupported compilers 2021-12-19 21:51:53 +01:00
Vittorio Romeo
18bb892625 Improve compilation times by removing some includes and avoiding heavy dependencies 2021-12-19 18:13:07 +01:00
Vittorio Romeo
569a7549d4 Fix -Wmissing-braces warning under clang 2021-12-19 15:58:29 +01:00
Vittorio Romeo
a20d73aafa Make 'Vertex' a 'constexpr' class 2021-12-19 15:35:47 +01:00
Vittorio Romeo
ed201ce87a Make 'Color' a 'constexpr' class 2021-12-18 21:34:05 +01:00
Vittorio Romeo
cfeb7651b5 Make 'Rect' a 'constexpr' class 2021-12-18 17:29:41 +01:00
Vittorio Romeo
f6bd12c300 Replace 'sf::NonCopyable' with '= delete' 2021-12-16 22:39:38 +01:00
Vittorio Romeo
3c7fba0f96 Reduce compile-time impact of 'windows.h' 2021-12-16 22:39:07 +01:00
Vittorio Romeo
ae3a38345d Add tests for 'Vector' destructuring and 'constexpr' support 2021-12-16 22:19:59 +01:00
Vittorio Romeo
6cb10856c6 Make 'Vector2' and 'Vector3' 'constexpr' classes 2021-12-15 17:28:50 +01:00
kimci86
fbc866c5c9 Fix regression in shader example 2021-12-15 15:27:37 +01:00
Pawel Paruzel
96a4262fb9 Update Android example build to C++17 2021-12-15 12:52:27 +01:00
Pawel Paruzel
dfff93fe04 Update SFML Time classes to C++17
Ensure Clock uses a monotonic clock

Statically assert against low precision clocks

Allow suspend-aware clock for Android

Add descriptive documentation to sf::Clock
2021-12-15 12:52:27 +01:00
Vittorio Romeo
e9e353a7b2 Remove redundant APIs taking '(x, y)' in favour of ones taking 'sf::Vector' 2021-12-15 11:22:46 +01:00
Vittorio Romeo
bb854fa739 Strategic use of '[[nodiscard]]' in 'Audio' module 2021-12-14 15:19:37 +01:00
Vittorio Romeo
ab0378805d Strategic use of '[[nodiscard]]' in 'System' module 2021-12-14 14:02:05 +01:00
Vittorio Romeo
b33f4bb205 Replace SFML multithreading primitives with standard C++ ones 2021-12-14 01:07:29 +01:00
Anton Vasiliev
db38696c48 Fix calling convention for SetProcessDpiAwareness
A few changes ago a WINAPI was lost on SetProcessDpiAwareness function
declaration. This is incorrect because it changes calling convention
from stdcall to cdecl.
2021-12-12 23:28:56 +01:00
Vittorio Romeo
363e964acc Strategic use of '[[nodiscard]]' in 'Graphics' module 2021-12-10 01:27:05 +00:00
Vittorio Romeo
d02d3590fd Use 'std::optional' instead of 'std::vector' for temporary 'AudioDevice' 2021-12-09 22:35:14 +00:00
Vittorio Romeo
7343b112fc Strategic use of '[[nodiscard]]' in 'Network' module 2021-12-09 22:34:57 +00:00
Vittorio Romeo
3579ecbdb0 Strategic use of '[[nodiscard]]' in 'Window' module 2021-12-09 19:53:54 +00:00
Vittorio Romeo
bc5b41657c Remove deprecated 'PrimitiveType::Quads' 2021-12-09 16:33:02 +00:00
Lukas Dürrenberger
40cac9a403
Merge pull request #1884 from SFML/feature/backmerge
Back-merge changes from 2.6.x to master
2021-12-09 16:36:37 +01:00
Lukas Dürrenberger
cd517ba267 Merge branch '2.6.x' into feature/backmerge 2021-12-09 14:36:55 +01:00
Vittorio Romeo
7f2243d826 Remove most deprecated 'PrimitiveType' enumators 2021-12-09 13:12:03 +00:00
Vittorio Romeo
6678fdd291 Remove deprecated 'Shader::setParameter' API 2021-12-09 13:12:03 +00:00