3668 Commits

Author SHA1 Message Date
Chris Thrasher
5de8ceaab8
Use aggregate initialization 2025-01-26 15:51:12 -07:00
Chris Thrasher
d360febbc0
Remove unnecessary namespace 2025-01-26 15:51:12 -07:00
Chris Thrasher
43d131be7d
Remove unnecessary -D prefix 2025-01-26 15:51:12 -07:00
Chris Thrasher
8a28b78928
Assert correct volume values 2025-01-26 15:51:12 -07:00
Chris Thrasher
166ff2d705
Simplify setting initial size of vectors 2025-01-26 15:51:12 -07:00
Chris Thrasher
e66cc278b9
Use in-class member initializers 2025-01-26 15:51:11 -07:00
Chris Thrasher
b39e2ce0b5
Remove unnecessary intermediate variable 2025-01-26 15:51:11 -07:00
Chris Thrasher
c7c903c665
Use more CTAD 2025-01-26 15:51:11 -07:00
Chris Thrasher
a2ac0144ed
Remove comments explaining why headers were included 2025-01-26 15:51:11 -07:00
Chris Thrasher
c973a9b9ac
Remove redundant bounds checks 2025-01-26 15:51:11 -07:00
Chris Thrasher
d663dd1cc9
Reduce string allocations 2025-01-26 15:51:11 -07:00
Chris Thrasher
277a311966
Remove unnecessary argument 2025-01-26 15:51:11 -07:00
Chris Thrasher
3d4a5f9399
Remove pointer indirection
We don't need to heap allocate the context or use the pimpl idiom
here.
2025-01-26 15:51:11 -07:00
Chris Thrasher
1a06f6c395
Consolidate target_include_directories calls 2025-01-26 15:51:11 -07:00
Chris Thrasher
80d277cca3
Simplify how CLOCK_BOOTTIME is checked on Android 2025-01-26 15:51:11 -07:00
Chris Thrasher
c11391ae31
Simplify include directories 2025-01-26 15:51:11 -07:00
Chris Thrasher
020d515a09
Remove manual disabling of -Wuseless-cast
This warning is not being used so we don't need pragmas to work
around it.
2025-01-26 15:51:04 -07:00
kimci86
37c87ee11e Test Event::visit with move-only visitor 2025-01-25 13:10:56 -07:00
kimci86
c6df55eed8 Revert "Transform Event::visit signature to accept multiple handlers"
This reverts commit d64a222c869164933e1e53c4b58d73fc1db04eb3.
2025-01-25 13:10:56 -07:00
Pixel-Tony
d64a222c86 Transform Event::visit signature to accept multiple handlers 2025-01-24 09:39:52 -07:00
vittorioromeo
18393ea5cb Add non-const overload of Event::visit 2025-01-22 18:03:00 +01:00
Chris Thrasher
0e37e6dfee Use std::queue to model queues 2025-01-20 18:11:22 -07:00
Chris Thrasher
08bfae34e7 Fix build errors when compiling in C++20 mode
C++20 removes the ability to stream char32_t characters.
This is the error I get when setting CMAKE_CXX_STANDARD
to 20.

    /Users/thrasher/Projects/sfml/test/System/String.test.cpp:32:52: error: overload resolution selected deleted operator '<<'
       32 |     stream << "[\\x" << std::uppercase << std::hex << character << ']';
          |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^  ~~~~~~~~~
    /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.2.sdk/usr/include/c++/v1/ostream:1009:31: note: candidate function [with _Traits = std::char_traits<char>] has been explicitly deleted
     1009 | basic_ostream<char, _Traits>& operator<<(basic_ostream<char, _Traits>&, char32_t) = delete;
          |                               ^
2025-01-20 11:27:43 +00:00
Chris Thrasher
97dfa7692d Use macOS 14 in more CI jobs 2025-01-18 19:12:52 -08:00
Chris Thrasher
662830e90a Fix conversion warning
Continuing what was started in #3381
2025-01-18 13:43:12 -08:00
kimci86
62a2a39650 Update copyright year to 2025 (continued) 2025-01-14 19:27:26 +00:00
Lukas Dürrenberger
68ce027b2e Update Catch2 to v3.8.0 2025-01-14 14:34:19 +00:00
Lukas Dürrenberger
ec42987cdf Update copyright year to 2025 2025-01-14 11:57:01 +00:00
Lukas Dürrenberger
4764c5104a Add a C++ language version check 2025-01-09 17:28:35 -07:00
Chris Thrasher
dfc9b83fe4 Suggest fix when incorrect library type is found by find_package
This is what it currently looks like when find_package(SFML) fails
due to locating the incorrect library type:

    CMake Error at <path>/<to>/lib/cmake/SFML/SFMLConfig.cmake:182 (message):
      Requested SFML configuration (Shared) was not found
    Call Stack (most recent call first):
      CMakeLists.txt:7 (find_package)

    CMake Error at CMakeLists.txt:7 (find_package):
      Found package configuration file:

        <path>/<to>/lib/cmake/SFML/SFMLConfig.cmake

      but it set SFML_FOUND to FALSE so package "SFML" is considered to be NOT
      FOUND.

After this change the "Requested SFML configuration" line is followed by either

    Set SFML_STATIC_LIBRARIES to ON for static libraries

or

    Set SFML_STATIC_LIBRARIES to OFF for shared libraries

depending on the value of SFML_STATIC_LIBRARIES. This should help clear up a
common source of confusion when users build SFML from source. The library
follows CMake convention of building static libraries by default but our
config module assumes shared libraries by default so those who build SFML
from source are prone to run into this error.
2025-01-09 21:57:10 +00:00
Lukas Dürrenberger
b56604c940 Use approximation when comparing floats in tests 2025-01-08 11:33:40 +00:00
Jonny Paton
722ab54f84 Use correct type for accessing array 2025-01-07 20:00:01 +00:00
Jonny Paton
8316c9e8d5 Make keyboard key/scancode count variables inline 2025-01-07 11:36:17 +00:00
Mark Jansen
bc268fbaea Remove unused RESOURCES_DIR cmake option 2025-01-04 18:08:47 -07:00
Jonny Paton
d4ff27caad Make pi/tau variables inline 2025-01-04 16:07:41 -07:00
Mark Jansen
74a460206c Remove unused prototype
The rest of the code was deleted in b39be46db028a825f321fa676ca8417fd9ab60d9
2025-01-04 16:07:16 -07:00
Chris Thrasher
7ea7622ae3 Fix grammar in docs 2025-01-04 16:07:00 -07:00
Chris Thrasher
796592edae Add non-const overload of sf::Event::getIf 2024-12-29 20:50:38 -06:00
Chris Thrasher
3c084bf661 Reduce pointer usage 2024-12-26 17:11:02 -06:00
Vittorio Romeo
dab1800f61
Hide <filesystem> dependency in [E]GLCheck .cpp 2024-12-25 07:41:56 -06:00
Bambo-Borris
2c7c3dd056 Make glCheckError take a std::string_view rather than constructing a std::filesystem::path on error checks 2024-12-24 13:11:23 -06:00
Lukas Dürrenberger
0d34974a5e Remove irrelevant change from SFML 3 changelog 2024-12-23 18:22:22 -06:00
Lukas Dürrenberger
ad2188e4a1 Mention libxi-dev as dependency 2024-12-23 18:22:22 -06:00
Chris Thrasher
cc78fd04f3 Update state of development
Now that SFML 3 is released, there is little reason to mention
the SFML 2 branch. Users can simply focus on version 3.
2024-12-22 11:17:05 -06:00
Lukas Dürrenberger
328f38553e Update SFML version to 3.1.0 2024-12-21 11:28:47 -06:00
Lukas Dürrenberger
7f1162dfea Mark code as official release 3.0.0 2024-12-20 23:55:10 +00:00
Bruno Van de Velde
6b9f3e36c2 Use a relative install path for pkgconfig files
This allows the pkgconfig install path to still be correct when changing the CMAKE_INSTALL_PREFIX after the first cmake run.
2024-12-20 21:27:13 +00:00
Lukas Dürrenberger
6f8655590e Add limitation info regarding setMouseCursorVisible 2024-12-19 19:44:28 -06:00
Lukas Dürrenberger
c4d4e8f62a Fix Channel Map size in documentation 2024-12-19 19:44:28 -06:00
Lukas Dürrenberger
03812a545d Add additional documentation regarding channel maps 2024-12-14 16:33:30 -07:00