Commit Graph

1425 Commits

Author SHA1 Message Date
Vittorio Romeo
d55b5ec5b9 Minor include cleanup ('Window', 'RenderWindow') 2022-02-17 01:42:31 +00:00
Chris Thrasher
5f2c7bb898 Use std::filesystem::path 2022-02-17 00:40:29 +00:00
Chris Thrasher
e93adc65ee Add missing override keyword 2022-02-17 00:40:29 +00:00
Vittorio Romeo
a3b27b4a6d Use pre-increment when post-increment is not necessary 2022-02-17 00:39:35 +00:00
Vittorio Romeo
218154cf00 Add move semantics to 'Font', 'Text,' and 'Image' 2022-02-16 16:29:45 +00:00
Vittorio Romeo
b069f88127 Avoid overuse of 'std::endl' 2022-02-16 16:28:39 +00:00
Vittorio Romeo
5fee1aad7d Add '[[nodiscard]]' in more useful/ambiguous places, fix usages 2022-02-16 16:27:32 +00:00
Vittorio Romeo
83259a4a31 Add move semantics to 'sf::Packet' 2022-02-16 13:50:07 +00:00
Vittorio Romeo
32ad019304 Cleanup sf::err includes 2022-02-16 08:45:39 +01:00
binary1248
359fe9088c Fixed warnings reported by LGTM and Coverity Scan. 2022-02-16 08:26:17 +01:00
Vittorio Romeo
5b500ad2c2 Turn more compile-time constants into 'constexpr' variables 2022-02-15 13:27:10 +00:00
Vittorio Romeo
dbeef66693 Turn 'sf::Transform' into a 'constexpr' class 2022-02-10 23:51:47 +00:00
Vittorio Romeo
63ce7e4e92 Remove unnecessary includes from public-facing headers 2022-02-10 21:05:49 +00:00
Vittorio Romeo
0e419543f2 Make 'Color' constants 'constexpr' and add tests 2022-02-08 23:32:12 +00:00
Chris Thrasher
28f273b9c9 Add sf::Angle
Similar to sf::Time, sf::Angle provides a typesafe API for working
with angles and provides named functions for converting to and from
degrees and radians.
2022-02-08 22:52:37 +00:00
Vittorio Romeo
a880122836 Reintroduce 'SleepImpl' sleep implementation 2022-01-12 00:01:35 +00:00
Chris Thrasher
4586db91a9 Add SFML:: namespace to targets
This removes the sfml- prefixed targets from the export set. The sfml-
prefixed targets are still available within the build tree but not to
downstream users thus making this an API breaking change when compared
to the 2.x releases. To keep things consistent, usage of the sfml-
targets were replaced with their namespaced counterparts.

This has a number of benefits:

  1. It's more idiomatic. Modern CMake libraries are expected to
     have namespaced targets.

  2. Namespaced targets are less likely to collide with user-defined
     targets. No one will accidentally define a SFML:: target.

  3. If a namespaced target is not found by CMake, configuration
     will immediately stop.
2022-01-11 22:27:39 +01:00
Lukas Dürrenberger
3a402f241a Merge branch '2.6.x' into feature/back_merge 2022-01-08 12:28:34 +01:00
Chris Thrasher
79c2aadbcc Remove redundant 4-param sf::Rect<T> constructor 2022-01-06 20:04:03 +01:00
Jan Haller
2ea46c8702 Fix WindowImplX11 initialization 2022-01-04 19:21:32 +01:00
Vittorio Romeo
3dc8fc0923 Add 'NetworkUtil' for network module tests 2022-01-03 01:00:55 +01:00
Jan Haller
3b06972602 Update year to 2022 2022-01-02 23:06:31 +01:00
Vittorio Romeo
5ba6580568 Make 'Time' a 'constexpr' class 2021-12-28 16:52:52 +01:00
Chris Thrasher
14fff20eb8 Remove redundant API taking x,y pair instead of sf::Vector 2021-12-26 17:13:18 +01:00
kimci86
53594dfbe7 Fix null pointer dereference in Font 2021-12-23 17:03:16 +01:00
kimci86
d0c63f46fc Use a smart pointer to manage std::FILE pointer in FileInputStream 2021-12-22 02:35:45 +01:00
Vittorio Romeo
f6de7eca40 Use smart pointers to manage memory 2021-12-21 19:54:25 +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
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
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