kimci86
0d3c7f1c32
Make VertexBuffer::Usage a scoped enumeration
2024-01-27 15:31:30 -07:00
kimci86
a019b5167b
Make Shader::Type a scoped enumeration
2024-01-27 15:31:30 -07:00
kimci86
b496877c90
Make BlendMode::Factor and BlendMode::Equation scoped enumerations
2024-01-27 15:31:30 -07:00
Miron Alexandru
3ca42c9a45
Update copyright year
2024-01-26 12:00:22 -07:00
Corentin Schreiber
ebf485737f
Add texture coordinate type to sf::RenderStates
2024-01-25 23:45:00 -07:00
Chris Thrasher
b234ede61e
Use struct
for data type with exclusively public contents
2024-01-24 21:59:00 -07:00
Chris Thrasher
a2c003b2b7
Add sf::State
for specifying fullscreen or floating windows
2024-01-15 23:08:33 -07:00
Chris Thrasher
0d49fab1a6
Remove unnecessary private operators
...
Equality operations are not automatically generated by the compiler
so we can omit this.
2024-01-09 22:17:55 -07:00
Chris Thrasher
4346b9a8bc
Remove unnecessary default destructor
...
sf::RenderWindow still inherits a virtual destructor from a base
class so there's no need to explicitly declare a virtual destructor.
I added a test to ensure this property was not broken.
2024-01-08 12:26:28 -07:00
Chris Thrasher
a9d9ef6d83
Deduplicate Window{Base}::create
implementations
...
Co-authored-by: binary1248 <binary1248@hotmail.com>
2024-01-01 12:57:57 -07:00
Chris Thrasher
8509f0fddd
Use struct
for type with exclusively public contents
2023-12-23 18:36:41 -06:00
Chris Thrasher
ffe9cc0671
Fix incorrect assertion comment
2023-12-22 16:00:39 -06:00
kimci86
39da2b829c
Make Keyboard::Key a scoped enumeration
2023-12-22 10:47:30 -06:00
kimci86
82ee0f79ac
Remove Key::Last and Scan::Last enumerators
...
The purpose of those was to make it obvious that an action is needed to
update KeyCount or ScancodeCount when adding more enumerators, but we
rarely touch those enumerations so it is not worth adding those
technical names to the public API.
2023-12-19 22:37:13 +01:00
Chris Thrasher
674d68faa6
Remove unhelpful return values
2023-12-17 17:48:11 -07:00
kimci86
faaceb5b5b
Define KeyCount and ScancodeCount out of enums
...
Those values are not valid Key or Scancode values, so it doesn't make
sense for them to have Key or Scancode type.
Moving them out of their enum makes it possible to write exhaustive
switch case statement without having to write a case for those values.
Making them unsigned int allows to use them as array size without having
to do a static_cast.
2023-12-17 15:47:47 -07:00
kimci86
b20376813c
Rename XButton1 and XButton2 into Extra1 and Extra2
...
This is to avoid repeating Button when using those values now that the
sf::Mouse::Button enumeration is a scoped enumeration.
2023-12-16 12:14:43 -07:00
kimci86
eab8f426e7
Make Sensor::Type a scoped enumeration
2023-12-15 15:18:25 -07:00
kimci86
3fb0ffce51
Make Mouse::Button and Mouse::Wheel scoped enumerations
2023-12-15 15:18:25 -07:00
kimci86
ebf190b660
Make Joystick::Axis a scoped enumeration
2023-12-15 15:18:25 -07:00
kimci86
df2f56fe83
Make Cursor::Type a scoped enumeration
2023-12-15 15:18:25 -07:00
Chris Thrasher
04a7184ab4
Simplify sf::View
construction
2023-12-11 19:33:20 -07:00
Chris Thrasher
e11154e7f7
Define default special member functions in headers
2023-12-10 10:28:42 -07:00
Chris Thrasher
7f5d87dcd5
Add move semantics to sf::Context
2023-12-09 10:27:57 -07:00
Chris Thrasher
c89c5eae69
Replace raw loops with standard algorithm
2023-11-28 09:41:28 -07:00
Chris Thrasher
c6919e28fc
Prefer std::optional
return types over output parameters
2023-11-28 09:37:03 -07:00
Chris Thrasher
0a1090c89d
Let compiler define default constructors
2023-11-27 10:49:51 -05:00
Chris Thrasher
fca84e4011
Implicitly define default constructors
2023-11-20 21:31:40 -07:00
Chris Thrasher
1e4cdf89b6
Use std::array
to reduce code duplication
...
std::array lets us have a single source of truth for array size
rather than needing separate constants or magic numbers that have
to stay in sync with the underlying array.
2023-11-20 12:14:21 -07:00
binary1248
5a2f30c5ae
Added support for scissor testing.
2023-11-20 11:01:33 -07:00
Chris Thrasher
08eca7c9a4
Default all sf::Font
special member functions
2023-11-18 20:52:17 -07:00
Chris Thrasher
ec50a7332b
Fix sf::Rect
docs
2023-11-15 15:58:01 -07:00
Chris Thrasher
d3a79e6282
Add sf::Rect<T>::getCenter()
2023-11-15 09:30:01 -07:00
Chris Thrasher
f588589089
Use inline
to define constant in header
2023-11-10 00:24:39 -07:00
Chris Thrasher
dcfccbec6e
Remove declaration of unimplemented function
2023-11-10 00:22:35 -07:00
Chris Thrasher
133bcda6cb
Add more readability-identifier-naming
rules
2023-11-05 15:05:25 -07:00
Chris Thrasher
7f57bb4fe6
Update version to 2.6.1
2023-10-29 18:03:26 -06:00
Chris Thrasher
5cf740fd93
Remove output parameter from sf::Image::saveToMemory
2023-10-28 17:58:21 -06:00
Chris Thrasher
bb1a465e50
Add cppcoreguidelines-pro-type-member-init
clang-tidy check
...
This marks another good step towards systematically rooting out
undefined behavior in the form of reading uninitialized memory.
2023-10-17 21:41:36 -05:00
Chris Thrasher
f98ff0d26a
Assert against division by zero in public APIs
...
Yet another class of UB we can eliminate in debug builds.
2023-10-08 20:02:38 -06:00
Chris Thrasher
9dc2e541e8
Add clang-tidy modernize-return-braced-init-list
check
2023-09-17 15:47:33 -06:00
Chris Thrasher
f9e6f673dd
Fix references to sf::WindowBase::setMouseCursor
...
This function does exist in sf::Window via inheritence but it's
more accurate to refer to the base implementation in sf::WindowBase
2023-09-17 13:01:37 -06:00
Vittorio Romeo
5cfbf912c7
Do not ignore '[[nodiscard]]` functions in example code
2023-09-13 16:06:23 -06:00
Chris Thrasher
332d11be41
Add move semantics to sf::RenderTarget
and sf::RenderTexture
2023-09-05 17:12:06 -06:00
Johel Ernesto Guerrero Peña
c596d6cf3f
fix: use non-deprecated form of UDL declaration
...
Clang 18 issues a deprecation warning,
and is converted to an error with `-Werror`.
2023-08-28 14:25:54 -06:00
Chris Thrasher
1cca7cde7e
Consistently use getNativeHandle
function name
2023-08-27 16:52:00 -06:00
kimci86
635c8c9290
Make Sound::getBuffer return a reference
...
because the pointer now cannot be null
2023-08-27 16:46:52 -06:00
kimci86
9cbcd56eb8
Remove Sound default constructor
...
so that a Sound instance is always bound to a SoundBuffer
2023-08-27 16:46:52 -06:00
Chris Thrasher
63088c1bf1
Add tests for sf::SocketSelector
...
I added move semantics while I was at it
2023-08-27 16:46:05 -06:00
Chris Thrasher
b3a467678d
Add tests for sf::Http
...
This class hides a lot of its logic in the private section of the
classes and uses friends to access them so there is little accessible
in the public interface for testing.
2023-08-27 16:46:05 -06:00
Chris Thrasher
71615c8268
Use struct
for user defined type with no private section
2023-08-27 10:04:14 -06:00
Chris Thrasher
e5c41c4eb5
Enable move semantics for socket types
2023-08-26 22:17:34 -06:00
Chris Thrasher
733a0a8d6d
Let compiler define extra special member functions
2023-08-05 18:58:54 -06:00
kimci86
3d2944998d
Make Text::getFont return a reference
...
because a the m_font pointer cannot be null.
2023-08-05 14:39:07 -06:00
kimci86
623d0f67ea
Make Sprite::getTexture return a reference
...
and do some simplification using the fact that a constructed sprite has
a non-null texture pointer.
2023-08-05 14:39:07 -06:00
Chris Thrasher
b99a4e341e
Add Android clang-tidy job
2023-07-31 15:28:25 -06:00
Chris Thrasher
b68482754b
Use std::filesystem::path
for paths
2023-07-27 11:13:45 -06:00
Chris Thrasher
ddfb7f6cb0
Use modern name for macOS
...
In a few places I left references to the old name where appropriate.
There are also many CMake references to "OSX" that we have to keep
using since CMake does not offer alternative names for those variables
and target properties.
2023-07-24 21:25:26 -06:00
Johel Ernesto Guerrero Peña
ac2e4d49cf
docs: add missing braces to initialize vector
2023-07-16 17:43:59 -06:00
Johel Ernesto Guerrero Peña
00b6488c3e
Add missing #include
s
2023-07-13 17:37:45 -06:00
Chris Thrasher
98df0fe4c9
Add doc strings to remaining assertions
2023-07-10 15:03:01 -06:00
Erik Bolumburu
a143da5f52
Added assert messages to Vector3 functions
2023-06-30 11:13:50 +02:00
Erik Bolumburu
b8ca0f6523
Added asserts for cwiseDiv()
2023-06-28 22:34:20 +02:00
Shane Whitmire
b391be2316
Make glyph a struct
...
This glyph class should most definetely be a struct. There aren't any
functions into it. This PR is more of a philosophy question than
anything else. I think we should make an argument for and against here
too.
2023-06-27 12:34:27 +02:00
Lukas Dürrenberger
f47403ab4d
Update version number to 2.6.0
2023-06-20 23:44:57 +02:00
MetGang
8835f42589
Make sf::Clock
pausable
2023-06-02 11:32:04 -06:00
binary1248
b39be46db0
Moved most variables in sfml-graphics, GlResource and GlContext out of namespace scope.
2023-06-02 10:22:48 -06:00
Chris Thrasher
53e2fab582
Prefer named colors
2023-05-25 17:08:42 -06:00
Chris Thrasher
d131beb0fd
Fix misspellings
...
I used the Python tool codespell to find these
2023-05-21 14:37:46 -06:00
Chris Thrasher
33030e94d9
Use std::byte
2023-05-21 02:21:44 -06:00
Ted Lyngmo
9855552f64
Add sf::Shape::getGeometricCenter()
...
This adds
virtual Vector2f getGeometricCenter() const = 0;
Signed-off-by: Ted Lyngmo <ted@lyncon.se>
2023-05-15 16:13:39 -06:00
Ted Lyngmo
f95d159711
Fix build failure when using g++ (GCC) 13.1.1
...
This fixes #2550
Signed-off-by: Ted Lyngmo <ted@lyncon.se>
2023-05-15 10:34:34 -06:00
Chris Thrasher
b14d0b47e6
Fix broken sf::swap
overloads
2023-05-13 12:20:44 -06:00
Chris Thrasher
27249d42ed
Add sf::WindowBase::set{Min|Max}imumSize()
...
Co-authored-by: Shane Whitmire <dogunbound5@gmail.com>
Co-authored-by: michael.david.howard@outlook.com <michael.david.howard@outlook.com>
2023-05-12 14:36:06 -06:00
Chris Thrasher
fb1cfdc48d
Add misc-const-correctness
clang-tidy check
2023-05-04 16:22:03 -06:00
Chris Thrasher
29863b14a5
Remove default sf::Sprite
constructor
2023-05-03 13:33:42 -06:00
BlackyDrum
c2e065b9bc
Fix typo in 'Http.hpp'
2023-04-29 16:34:24 -06:00
Chris Thrasher
92dbac623b
Document precision limitation of sf::sleep
2023-04-28 15:01:11 -06:00
vittorioromeo
cbfa9cbb65
Reorder includes hierarchically
2023-04-25 17:25:33 +02:00
Chris Thrasher
97c00d42ad
Enable clang-tidy modernize-pass-by-value
check
2023-04-24 15:12:53 +02:00
alireza
5480bf8a93
Fixed move semantics for sf::Cursor and added test for it
2023-04-22 18:29:05 +02:00
Jan Wojciechowski
692fe84331
Fix condition for trailing bytes count in UTF-8 decoder. Test added to check if a replacement characters is added to output.
2023-04-19 23:52:38 +02:00
vittorioromeo
230c6a4d57
Simplify 'FontHandles' management
2023-04-19 16:32:49 +01:00
Chris Thrasher
82b9821a8a
Add clang-tidy bugprone-*
checks
2023-04-12 19:53:36 -06:00
Chris Thrasher
2c99b3343a
Remove default sf::Text
constructor
2023-04-05 09:54:56 -06:00
Chris Thrasher
f371a99b39
Implement sf::String
in terms of std::u32string
2023-04-04 15:47:34 -06:00
Chris Thrasher
93a8506498
Let compiler generated special member functions
2023-04-04 15:47:34 -06:00
Chris Thrasher
14dbd3c899
Remove old workaround for MinGW's lack of unicode support
...
Dates back to 2009 when 78247bd38
was written. I'm going to assume
the situation has improved in the last 14 years. There are SFML
users who weren't even alive in 2009...
2023-04-03 21:23:43 -06:00
Chris Thrasher
06c5c50537
De-constexpr
sf::String::InvalidPos
...
This fails to link on MinGW. Until that can be resolved we can go
back to a normal constant. Because this is just an integer it doesn't
matter all that much whether it's const or constexpr.
2023-04-03 21:23:43 -06:00
Chris Thrasher
92e5a1e4e6
Implement move semantics for sf::Cursor
2023-04-03 01:02:26 -06:00
Jim-Marsden
a8bc8cf889
Added move constructor, and move assignment operator.
2023-03-29 23:48:05 +02:00
binary1248
f4e0c4b4c0
Make moving Shapes, swapping Textures and swapping VertexBuffers noexcept.
2023-03-07 16:32:35 -07:00
metaquarx
474de4d16e
Allow setting window icon with sf::Image
2023-02-21 15:48:33 -07:00
Vittorio Romeo
698b7ee49f
Remove unused headers and reduce physical dependencies
2023-02-20 23:30:25 +01:00
Chris Thrasher
5bd3722598
Fix sf::Rect
docs
2023-02-19 17:40:03 -07:00
Chris Thrasher
949d9f44e1
Simplify implementation of sf::Clock
2023-02-11 14:02:22 -07:00
tverrbjelke
7074849814
Fixes Typo in documentation of WindowBase
...
modified: include/SFML/Window/WindowBase.hpp
2023-01-25 10:07:16 -07:00
Andreas Hüwel
8737bbe970
Fixses mostly unimportant typo in documentation of WindowBase
...
modified: include/SFML/Window/WindowBase.hpp
2023-01-25 10:07:16 -07:00
Chris Thrasher
9f08d67dcc
Convert scancodes into a scoped enumeration
2023-01-25 10:06:03 -07:00
Chris Thrasher
72cd8781bb
Remove deprecated keycodes
2023-01-25 10:06:03 -07:00