Chris Thrasher
78d99fe828
Simplify sfml-audio link libraries call
2022-08-22 11:26:57 +08:00
Chris Thrasher
aa82ea132b
Set warnings with target_compile_options
...
The use of target_compile_options makes it easy to append warnings
to a target. The use of generator expressions also more succinctly
handles a few edge cases for compiler bugs and platform-specific
oddities.
This should be easy to read and maintain than the variable-based
solution it replaces.
2022-08-14 14:00:00 +08:00
Chris Thrasher
142ccf57bd
Enable compiler warnings for Android
2022-08-12 18:01:36 +02:00
Chris Thrasher
a71d60a0c9
Simplify how warnings are ignored on Apple platforms
...
Within files that are only compiled on Apple platforms, we don't
need that redundant check for __APPLE__ so that got removed. Further,
Clang will recognize GCC pragmas so we don't need both Clang AND GCC
pragmas so I removed the Clang pragmas.
Currently GCC fails to compile this code but if one day in the future
that gets fixed, the deprecation warnings will continue to get ignored.
2022-08-03 23:41:01 +02:00
Chris Thrasher
49fd5887c8
Add tests for SFML/Config.hpp
2022-08-03 23:39:37 +02:00
friendlyanon
e691033954
Require CMake 3.16 for ObjC and ObjC++ sources
...
Both languages gained native CMake support in 3.16:
https://cmake.org/cmake/help/latest/release/3.16.html#languages
2022-08-03 23:38:17 +02:00
Chris Thrasher
a47eb8320a
Remove vendored doctest header
2022-07-20 08:56:59 +02:00
Chris Thrasher
97537d36b3
Remove unnecessary CMake version checks
...
Now that the project requires CMake version 3.15, all of these
checks are guaranteed to eveluate one way or the other so they can
be removed.
2022-07-18 12:43:49 +02:00
Chris Thrasher
55a1a2a4c4
Format .m files
2022-07-14 21:47:49 +02:00
Miron Alexandru
dd0f0ff4c6
Update .gitignore for Visual Studio
2022-07-13 15:17:42 +02:00
Chris Thrasher
e2f0feaefc
Disable OpenGL deprecation warnings
...
This was likely transitively included from another header from after
clang-format rearranged some headers, it was no longer present.
2022-07-11 20:04:56 +02:00
Chris Thrasher
87c4213ac6
Add missing headers
...
Reformatting with clang-format revealed that a few files were missing
some #include and #import statements.
2022-07-11 20:04:56 +02:00
Chris Thrasher
4f52793f7d
Run clang-format
2022-07-11 20:04:56 +02:00
metaquarx
88e9f82bee
Add '.clang-format' file, CI integration, and formatting exceptions
...
Co-authored-by: Vittorio Romeo <vittorio.romeo@outlook.com>
Co-authored-by: Chris Thrasher <chrisjthrasher@gmail.com>
Co-authored-by: kimci86 <kimci86@hotmail.fr>
2022-07-11 20:04:56 +02:00
Bambo-Borris
c6f7fcaa2a
Add tests for sf::MemoryInputStream
2022-06-28 14:33:21 +02:00
Vittorio Romeo
8c8d97c6c9
IpAddress is always valid
2022-06-28 00:31:12 +02:00
Chris Thrasher
fd3526f742
Use <>
for test utilities includes
...
SFML convention is to only use "" includes when the header is in
the same directory as the file including it. Because these test
util headers are in a separate directory, it makes more sense to
include them via <>.
2022-06-27 00:22:16 +02:00
Chris Thrasher
4047909725
Remove unnecessary includes
2022-06-27 00:22:16 +02:00
Chris Thrasher
a57640c2c8
Require stringification for all tested types
...
This ensures that if a printing function is not provided, compilation
fails. This prevents problems where a header is accidentally removed
that was previously providing an operator<< overload or prevents
new tests from being added without print support for all directly
tested types.
2022-06-27 00:22:16 +02:00
Chris Thrasher
3925139f4d
Improve test coverage of sf::Rect
2022-06-26 15:47:30 +02:00
Chris Thrasher
b009151e89
Improve test coverage of sf::Color
2022-06-26 15:47:30 +02:00
Chris Thrasher
44d3d63ade
Reduce the scope of helper class
2022-06-26 02:14:53 +02:00
Chris Thrasher
0812054e02
Remove trailing whitespace
2022-06-25 21:32:55 +02:00
Vittorio Romeo
8a2aa6397f
Explicitly instantiate float vector members in cpp
2022-06-24 18:47:28 +02:00
Vittorio Romeo
a3dd3e02aa
Remove unused <string>
include from Texture.hpp
2022-06-24 12:59:30 +02:00
Chris Thrasher
d7f09c1167
Manually inline sf::IpAddress::resolve
...
This code is better expressed as a constructor since that's the
only place where it's used.
2022-06-23 20:22:13 +02:00
Chris Thrasher
76223b07a1
Implement sf::IpAddress
with std::optional
2022-06-23 20:22:13 +02:00
Chris Thrasher
e4e9b290b1
Add tests for sf::IpAddress
2022-06-23 18:47:23 +02:00
Chris Thrasher
ce9577bbff
Upgrade to Doctest v2.4.9
...
Fixes some linker errors and a compiler error described here:
https://github.com/doctest/doctest/issues/636
2022-06-23 18:47:23 +02:00
Vittorio Romeo
e4c5af63b7
Replace 'TcpSocket::send' local buffer with data member
2022-06-23 18:37:01 +02:00
kimci86
95201a3950
Update Image code example with Vector2u parameters
2022-06-23 18:03:54 +02:00
kimci86
c4790bcb14
Clarify Image::copy implementation
2022-06-23 18:03:54 +02:00
Vittorio Romeo
6cd07a043f
'sf::Image::copy' returns a 'bool' to signal success/failure
2022-06-21 16:40:22 +02:00
Bambo-Borris
91c4a451ef
Fix out of bounds read for sf::Image::copy()
with bad sourceRect
2022-06-21 15:14:27 +02:00
Bambo-Borris
8b3723a52b
Add tests for sf::Image
2022-06-21 15:14:27 +02:00
Chris Thrasher
757cb36d30
Use <random>
header
2022-06-16 23:56:39 +02:00
Chris Thrasher
65fef85b30
Simplify how examples are built
...
CMake doesn't require absolute paths so we can safely remove
SRCROOT and let implicit relative pathing achieve the same result
with less work on our part.
2022-06-16 23:56:39 +02:00
Chris Thrasher
539483d329
Use std::array
2022-06-16 23:56:39 +02:00
Chris Thrasher
27a7774786
Use = default for trivial virtual destructors
2022-06-13 12:01:37 +02:00
Chris Thrasher
e61a8c5c1b
Remove empty non-virtual destructors
...
While this practice didn't matter too much in C++03, it becomes a
pessimization with the introduction of C++11 move semantics. When
a destructor is defined, no matter how trivial it is, it implicitly
disables move semantics. Because the compiler can sometimes move
objects without the programmer asking, the inability to make these
moves can unnecessarily slow down SFML programs. Removing these
trivial destructors is an easy way to enable move semantics for
more SFML types and quietly speed up everyone's code.
2022-06-13 12:01:37 +02:00
Bård Sigurd Møller
709530d062
SFML/Graphics/Text.cpp: Compare utf32-characters to utf32 character literals consistently
2022-06-10 14:15:13 +02:00
Chris Thrasher
9e23fb0899
Clarify sf::ConvexShape
docs
...
Co-authored-by: Jan Haller <bromeon@gmail.com>
2022-06-09 10:05:29 +02:00
Chris Thrasher
6a59ab0051
Add tests for sf::ConvexShape
2022-06-09 10:05:29 +02:00
Vittorio Romeo
fd1435d1c0
Prevent more conflicts between the 'None' Xlib macro and 'WindowStyle::None'
2022-06-08 13:44:16 +02:00
Chris Thrasher
dbac180db5
Limit the scope of event object
2022-06-08 13:16:40 +02:00
Chris Thrasher
745bcb82ef
Remove implicitly defined special member functions
2022-06-07 23:19:30 +02:00
Chris Thrasher
3203c3927f
Add tests for sf::RenderStates
2022-06-07 08:25:52 +02:00
Lukas Dürrenberger
864f0feedd
Merge pull request #2112 from SFML/2.6.x
...
Merge 2.6.x to master
2022-06-03 17:59:50 +02:00
Vittorio Romeo
29f364eafa
Include '<utility>' for 'std::exchange'
2022-06-03 17:57:42 +02:00
Lukas Dürrenberger
417f003224
Merge branch '2.6.x'
2022-06-03 17:08:06 +02:00