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
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
55a1a2a4c4
Format .m files
2022-07-14 21:47:49 +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
Vittorio Romeo
8c8d97c6c9
IpAddress is always valid
2022-06-28 00:31:12 +02:00
Chris Thrasher
0812054e02
Remove trailing whitespace
2022-06-25 21:32:55 +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
dbac180db5
Limit the scope of event object
2022-06-08 13:16:40 +02:00
Chris Thrasher
88515b2fca
Add polar coordinates constructor for sf::Vector2<T>
2022-05-17 20:30:02 +02:00
Chris Thrasher
0785093ebc
Use sf::Vector2<T>
for numeric parameter pairs
2022-05-17 08:33:11 +02:00
Lukas Dürrenberger
9a6142bd22
Merge branch '2.6.x'
2022-04-27 08:12:25 +02:00
Radek Dutkiewicz
b6ca47e128
DRM Implementation
...
Ported sfml-pi DRM/KMS backend written by @mickelson
Port co-authored by @substring
Co-authored-by: Andrew Mickelson <andrew.mickelson@gmail.com>
Co-authored-by: Gil Delescluse <frog2wah@gmail.com>
2022-04-26 07:44:14 +02:00
Chris Thrasher
a302a9829e
Ensure files end with newline character
2022-04-12 08:13:48 +02:00
kimci86
e0d03ec6a8
Fix success condition for sending end-of-stream packet in voip example
2022-04-06 12:01:42 +02:00
Chris Thrasher
c5f3aeca72
Use std::quoted
2022-04-05 22:45:22 +02:00
Chris Thrasher
33a7c4d2a8
Clean up filesystem path usage in examples
2022-03-15 15:21:45 +01:00
Chris Thrasher
5f2c7bb898
Use std::filesystem::path
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
b069f88127
Avoid overuse of 'std::endl'
2022-02-16 16:28:39 +00:00
Jan Haller
eb321b3040
Update year to 2022 (master branch)
2022-02-16 13:52:31 +00:00
binary1248
359fe9088c
Fixed warnings reported by LGTM and Coverity Scan.
2022-02-16 08:26:17 +01:00
Jan Haller
9d28bf7eb2
Update year to 2022 (amended)
2022-02-12 19:29:09 +01: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
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
Chris Thrasher
70e0ad28d4
Only build Cocoa example when using Xcode
2022-01-08 19:46:19 +01:00
Chris Thrasher
79c2aadbcc
Remove redundant 4-param sf::Rect<T> constructor
2022-01-06 20:04:03 +01:00
Chris Thrasher
7d47e740bb
Only build Cocoa example when using Xcode
2022-01-04 23:05:23 +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
3cd45a283b
Merge branch '2.6.x' into feature/backmerge
2021-12-20 13:44:56 +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
Vittorio Romeo
18bb892625
Improve compilation times by removing some includes and avoiding heavy dependencies
2021-12-19 18:13:07 +01:00
Vittorio Romeo
3c7fba0f96
Reduce compile-time impact of 'windows.h'
2021-12-16 22:39:07 +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
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
b33f4bb205
Replace SFML multithreading primitives with standard C++ ones
2021-12-14 01:07:29 +01:00
Vittorio Romeo
363e964acc
Strategic use of '[[nodiscard]]' in 'Graphics' module
2021-12-10 01:27:05 +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
Lukas Dürrenberger
cd517ba267
Merge branch '2.6.x' into feature/backmerge
2021-12-09 14:36:55 +01:00
Vittorio Romeo
756a399909
Remove deprecated 'Keyboard::Key' enumerators and adjust usages
2021-12-09 13:12:03 +00:00
Vittorio Romeo
d12a2cd319
Use 'override' whenever possible instead of 'virtual'
2021-12-09 09:07:03 +01:00
Vittorio Romeo
87e84bc9e5
Minor modernization changes: 'nullptr', range-based 'for' loops, ...
2021-12-08 21:41:20 +00:00
Vittorio Romeo
2839f6b4d2
Use 'auto' where no information is lost
2021-12-08 19:14:31 +00:00
Vittorio Romeo
9a0cc4b7dc
Use alias declarations instead of 'typedef'
2021-12-08 17:58:13 +00:00
Anton Vasiliev
f03a415121
Use std::vector.data() where appropriate
2021-12-08 16:26:03 +00:00
Vittorio Romeo
8be8a76cba
Use 'auto', range-'for', and structured bindings to improve some loops
2021-12-08 13:05:52 +01:00
lieff
e458f4651e
Add MP3 decoding support using 'minimp3'
...
Co-authored-by: Lukas Dürrenberger <eXpl0it3r@my-gate.net>
Co-authored-by: Vittorio Romeo <vittorio.romeo@outlook.com>
2021-12-08 08:19:08 +01:00
Anton Vasiliev
ce5d410c74
Fix exception on Vulkan example shutdown
...
This change fixes exception on Vulkan example shutdown when drawing
to window after it was closed.
2021-12-08 01:06:37 +00:00
Anton Vasiliev
b9da3b879c
Fix possible exception on Vulkan example startup
...
This change fixes possible exception on Vulkan example startup when
validationLayers.size()) is zero.
2021-12-08 01:06:37 +00:00
Vittorio Romeo
51ebeaf383
Change most associative containers to their respective 'unordered' version
2021-12-06 14:01:56 +00:00
Vittorio Romeo
c9f7cb3d52
Use 'nullptr' instead of 'NULL'
2021-12-03 15:48:32 +00:00
Vittorio Romeo
6cf124db66
Fix remaining warnings
...
- Fixes in examples
- Fixes across all the modules
2021-11-30 11:25:58 +01:00
Lukas Dürrenberger
bc628c6b28
Fix warnings in examples
...
- Convert where necessary
- Adjust type where reasonable
- Use SYSTEM headers for gl.h, stb* and vulkan
2021-11-30 11:25:58 +01:00
Vittorio Romeo
dc88cbd81e
Remove include directives for unused headers
2021-11-22 00:47:11 +01:00
jqdg
f4ac9cfb06
Copy logo.png to Resources in Cocoa example
2021-08-16 09:37:58 +02:00
Vittorio Romeo
f162b3a037
Enable support for unity builds
2021-08-12 21:00:16 +02:00
MrZeusTheCoder
20238e758e
Switch example resources to public domain ones.
2021-04-02 22:16:22 +02:00
swordfatih
498d7ee79c
Update the copyright year to 2021
...
Just updating all the 2020 references to 2021. 😄
2021-01-06 20:21:36 +01:00
Lukas Dürrenberger
9b596cc8d9
Update the copyright year to 2020
2020-09-12 19:34:34 +02:00
binary1248
6272f853c1
Add support for creating Vulkan window surfaces.
2019-10-16 21:48:24 +02:00
Lukas Dürrenberger
2eb70c6537
Replaced glLoadGen loader with glad loader and dynamically load EGL and GLES extensions as is done for desktop GL.
2019-09-12 23:02:52 +02:00
Jonny Paton
353c846c87
Update examples for iOS including touch support, proper handling of window resize, launch screens and icons
2019-01-19 01:34:30 +01:00
Ceylo
9f4a0c3c4f
Make Pong example "usable" on iOS
2019-01-19 01:29:12 +01:00
Ceylo
5ab36271c7
Remove iOS example
2019-01-19 01:29:12 +01:00
Ceylo
1272b704d6
window, opengl and pong examples now work on iOS
2019-01-19 01:29:12 +01:00
Ceylo
82c2f4c05e
All mobile-compatible examples now successfully link
2019-01-19 01:29:12 +01:00
EpicCoder
489482a630
Updated the copyright year to 2019
2019-01-08 08:53:33 +01:00
binary1248
ae337952a9
Allow creation of a window without an OpenGL context in order to support use cases where the user wants to render using other graphics APIs.
2019-01-05 23:22:08 +01:00
Lukas Dürrenberger
ae0ec9d552
Disabled the JNI part due to compatibility issues
2018-10-11 21:57:12 +02:00
Jonny Paton
1cd7ad6a24
Remove reference to unused CMAKE_OSX_DEPLOYMENT_TARGET in cocoa example
2018-08-27 13:36:57 +01:00
Ceylo
ff011dc51d
Modernize iOS toolchain: remove BUILD_ARM64, drop support for Xcode <4.3 and don't pretend defining official CMake variables
2018-06-04 23:22:21 +02:00
Bruno Van de Velde
5ebfef4803
Copied resources to iOS example
2018-04-28 13:11:26 +02:00
Bruno Van de Velde
f25589e309
iOS example did not build on case-sensitive filesystem because path contained 'ios' instead of 'iOS' in CMakeLists.txt
2018-04-28 13:11:26 +02:00
Mario Liebisch
f4c25ac3fa
Android work in progress changes
2018-04-14 09:59:01 +02:00
pjmlp
3a96024f6b
Android: Upgraded the example to work with Gradle
2018-04-14 09:59:01 +02:00
binary1248
d032050ccf
Added example demonstrating sf::VertexBuffer, sf::Shader and sf::Thread usage.
2018-04-06 00:16:27 +02:00
binary1248
fe1407b6b5
Added joystick example.
2018-04-05 17:29:38 +02:00
Jonny Paton
7be2111d61
Add iOS demo
2018-03-26 18:42:19 -07:00
Ceylo
ee08e18726
Modernize CMake files
2018-03-27 00:03:34 +02:00
Marco Antognini
b0f3611ab9
Renamed a few key codes
...
Deprecated BackSlash, BackSpace, SemiColon, Dash and
introduced Backslash, Backspace, Semicolon, Hyphen in a
retrocompatible way.
2018-03-26 23:39:39 +02:00
Maximilian Wagenbach
186294607f
Return correct key code for delete/backspace on android.
...
Also increased minimum Android API version to 14.
2018-02-15 21:11:24 +01:00
Maximilian Wagenbach
989367e345
Turned the header image in readme.md into a link.
...
Updated all links to use https (tested).
2018-02-10 17:12:54 +01:00
Maximilian Wagenbach
5d7843c58a
Updated the copyright year to 2018.
2018-02-10 14:51:46 +01:00
Ceylo
ce7ced5488
Replace INSTALL_RESOURCES_DIR option of sfml_add_example() command with RESOURCES_DIR
2018-01-25 00:23:33 +01:00
Ceylo
777ec2c04d
Fix launch of Cocoa example due to missing MainMenu.nib in bundle app
2018-01-25 00:23:33 +01:00
Mario Liebisch
0b2ac85f11
Added CMake variables to select the modules to be built
...
This addresses issue #798 .
2017-04-04 13:43:49 +02:00
Lukas Dürrenberger
113152673a
Updated year in copyright notices to 2017.
2017-02-10 15:18:03 +01:00
binary1248
2df9abf341
Added missing setActive virtual method to sf::RenderTarget, added setActive calls to OpenGL example to demonstrate proper explicit context management.
2016-10-13 17:01:41 +02:00
binary1248
9996b7abb6
Converted Unix Window implementation from XCB back to Xlib.
2016-09-29 09:25:34 +02:00
Marco Antognini
ac50bf8648
Update copyright dates
...
For futur references:
List and inspect © to be updated
$ egrep '2007-[0-9]{4}' -r examples/ tools/ src/ include/ license.txt
Update all ©
$ egrep --null -l '2007-[0-9]{4}' -r examples/ tools/ src/ include/ license.txt | xargs -0 -P4 sed -i '' -E 's/^(.*)2007-[0-9]{4}(.*)$/\12007-2016\2/'
2016-08-05 16:20:39 +02:00
Mario Liebisch
3a2e176e59
Android: Readded support for libc++ and use it as the standard STL
2016-07-23 14:35:10 +02:00
Mario Liebisch
757094a25b
Fixed current Android compilation issues
...
* Updated the Android toolchain file to support NDKs up to the latest release (r12b; based on https://github.com/gongminmin/android-cmake ).
* Fixed missing sRGB extension defines - also SFML once again compiles for older target API levels not having the sRGB extensions (fixes #1079 , supersedes #1085 ).
* Changed SFML's default STL runtime to `stlport_shared`, since `c++_shared` is no longer supported.
2016-07-21 10:42:45 +02:00
binary1248
259811d59c
Implemented support for explicit mipmap generation in sf::Texture and sf::RenderTexture. ( #123 )
2016-05-04 20:01:22 +02:00