Updated platform-specific handle documentation

This commit is contained in:
Marco Antognini 2015-09-06 13:02:34 +02:00
parent 127bc77497
commit 0df97b4813
3 changed files with 36 additions and 13 deletions

View File

@ -301,7 +301,7 @@ EXTENSION_MAPPING =
# case of backward compatibilities issues. # case of backward compatibilities issues.
# The default value is: YES. # The default value is: YES.
MARKDOWN_SUPPORT = NO MARKDOWN_SUPPORT = YES
# When enabled doxygen tries to link words that correspond to documented # When enabled doxygen tries to link words that correspond to documented
# classes, or namespaces to their corresponding documentation. Such a link can # classes, or namespaces to their corresponding documentation. Such a link can

View File

@ -98,8 +98,7 @@ public:
/// advanced OpenGL context settings such as antialiasing, /// advanced OpenGL context settings such as antialiasing,
/// depth-buffer bits, etc. /// depth-buffer bits, etc.
/// ///
/// \param handle Platform-specific handle of the control (\a HWND on /// \param handle Platform-specific handle of the control
/// Windows, \a %Window on Linux/FreeBSD, \a NSWindow on OS X)
/// \param settings Additional settings for the underlying OpenGL context /// \param settings Additional settings for the underlying OpenGL context
/// ///
//////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////
@ -143,8 +142,7 @@ public:
/// advanced OpenGL context settings such as antialiasing, /// advanced OpenGL context settings such as antialiasing,
/// depth-buffer bits, etc. /// depth-buffer bits, etc.
/// ///
/// \param handle Platform-specific handle of the control (\a HWND on /// \param handle Platform-specific handle of the control
/// Windows, \a %Window on Linux/FreeBSD, \a NSWindow on OS X)
/// \param settings Additional settings for the underlying OpenGL context /// \param settings Additional settings for the underlying OpenGL context
/// ///
//////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////
@ -459,8 +457,6 @@ public:
/// You shouldn't need to use this function, unless you have /// You shouldn't need to use this function, unless you have
/// very specific stuff to implement that SFML doesn't support, /// very specific stuff to implement that SFML doesn't support,
/// or implement a temporary workaround until a bug is fixed. /// or implement a temporary workaround until a bug is fixed.
/// The type is \a HWND on Windows, \a %Window on Linux/FreeBSD
/// and \a NSWindow on OS X.
/// ///
/// \return System handle of the window /// \return System handle of the window
/// ///

View File

@ -37,10 +37,6 @@
namespace sf namespace sf
{ {
////////////////////////////////////////////////////////////
/// Define a low-level window handle type, specific to
/// each platform
////////////////////////////////////////////////////////////
#if defined(SFML_SYSTEM_WINDOWS) #if defined(SFML_SYSTEM_WINDOWS)
// Window handle is HWND (HWND__*) on Windows // Window handle is HWND (HWND__*) on Windows
@ -53,7 +49,7 @@ namespace sf
#elif defined(SFML_SYSTEM_MACOS) #elif defined(SFML_SYSTEM_MACOS)
// Window handle is NSWindow (void*) on Mac OS X - Cocoa // Window handle is NSWindow or NSView (void*) on Mac OS X - Cocoa
typedef void* WindowHandle; typedef void* WindowHandle;
#elif defined(SFML_SYSTEM_IOS) #elif defined(SFML_SYSTEM_IOS)
@ -63,12 +59,43 @@ namespace sf
#elif defined(SFML_SYSTEM_ANDROID) #elif defined(SFML_SYSTEM_ANDROID)
// Window handle is ANativeWindow (void*) on Android // Window handle is ANativeWindow* (void*) on Android
typedef void* WindowHandle; typedef void* WindowHandle;
#elif defined(SFML_DOXYGEN)
// Define typedef symbol so that Doxygen can attach some documentation to it
typedef "platformspecific" WindowHandle;
#endif #endif
} // namespace sf } // namespace sf
#endif // SFML_WINDOWHANDLE_HPP #endif // SFML_WINDOWHANDLE_HPP
////////////////////////////////////////////////////////////
/// \typedef sf::WindowHandle
/// \ingroup window
///
/// Define a low-level window handle type, specific to
/// each platform.
///
/// Platform | Type
/// ----------------|------------------------------------------------------------
/// Windows | \p HWND
/// Linux/FreeBSD | \p %Window
/// Mac OS X | either \p NSWindow* or \p NSView*, disguised as \p void*
/// iOS | \p UIWindow*
/// Android | \p ANativeWindow*
///
/// \par Mac OS X Specification
///
/// On Mac OS X, a sf::Window can be created either from an
/// existing \p NSWindow* or an \p NSView*. When the window
/// is created from a window, SFML will use its content view
/// as the OpenGL area. sf::Window::getSystemHandle() will
/// return the handle that was used to create the window,
/// which is a \p NSWindow* by default.
///
////////////////////////////////////////////////////////////