SFML/examples/cocoa
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
..
resources Update to year 2023 2023-01-12 11:38:41 +01:00
CMakeLists.txt Fix CMake formatting inconsistencies 2022-10-06 20:33:40 +02:00
CocoaAppDelegate.h Update to year 2023 2023-01-12 11:38:41 +01:00
CocoaAppDelegate.mm Remove default sf::Sprite constructor 2023-05-03 13:33:42 -06:00
main.m Update to year 2023 2023-01-12 11:38:41 +01:00
MainMenu.xib SFML-Cocoa is now part of the cmake-based examples 2012-01-30 12:23:18 +01:00
NSString+stdstring.h Update to year 2023 2023-01-12 11:38:41 +01:00
NSString+stdstring.mm Use modern name for macOS 2023-07-24 21:25:26 -06:00
readme.txt Fix whitespace: Convert tabs to spaces and remove trailing whitespace. 2015-04-15 01:53:43 +02:00

SFML IN COCOA APPLICATION
=========================

This is a small example of the integration of SFML in a Cocoa application.

Features
--------

 * This example shows how basic UI elements can interact with SFML
   render areas such as sf::RenderWindow (you can use sf::Window and
   OpenGL code too, of course).
 * It also provides tools for converting NSString to and from
   std::[w]string in an Objective-C Category of NSString.
 * Moreover, it shows how you can prevent annoying the system alerts
   produced when the SFML view has focus and the user press a key
   (see SilentWindow interface in CocoaAppDelegate.[h|mm]).

Special Considerations
----------------------

While mixing SFML into a Cocoa application you have to deal with mixing
C++ and Objective-C. In order to proceed you should use .mm extension for
Objective-C++ files.

Be aware of the limitations of Objective-C++. Please refer to the official
documentation provided by Apple for more information.

You can also work around these limitations by using CSFML.