CSFML - C binding of the Simple and Fast Multimedia Library

CSFML
RenderWindow.h
Go to the documentation of this file.
1 //
3 // SFML - Simple and Fast Multimedia Library
4 // Copyright (C) 2007-2015 Laurent Gomila (laurent@sfml-dev.org)
5 //
6 // This software is provided 'as-is', without any express or implied warranty.
7 // In no event will the authors be held liable for any damages arising from the use of this software.
8 //
9 // Permission is granted to anyone to use this software for any purpose,
10 // including commercial applications, and to alter it and redistribute it freely,
11 // subject to the following restrictions:
12 //
13 // 1. The origin of this software must not be misrepresented;
14 // you must not claim that you wrote the original software.
15 // If you use this software in a product, an acknowledgment
16 // in the product documentation would be appreciated but is not required.
17 //
18 // 2. Altered source versions must be plainly marked as such,
19 // and must not be misrepresented as being the original software.
20 //
21 // 3. This notice may not be removed or altered from any source distribution.
22 //
24
25 #ifndef SFML_RENDERWINDOW_H
26 #define SFML_RENDERWINDOW_H
27
29 // Headers
31 #include <SFML/Graphics/Export.h>
32 #include <SFML/Graphics/Color.h>
33 #include <SFML/Graphics/Rect.h>
34 #include <SFML/Graphics/Types.h>
35 #include <SFML/Graphics/PrimitiveType.h>
36 #include <SFML/Graphics/RenderStates.h>
37 #include <SFML/Graphics/Vertex.h>
38 #include <SFML/Window/Event.h>
39 #include <SFML/Window/VideoMode.h>
40 #include <SFML/Window/WindowHandle.h>
41 #include <SFML/Window/Window.h>
42 #include <SFML/System/Vector2.h>
43 #include <stddef.h>
44
45
55 CSFML_GRAPHICS_API sfRenderWindow* sfRenderWindow_create(sfVideoMode mode, const char* title, sfUint32 style, const sfContextSettings* settings);
56
66 CSFML_GRAPHICS_API sfRenderWindow* sfRenderWindow_createUnicode(sfVideoMode mode, const sfUint32* title, sfUint32 style, const sfContextSettings* settings);
67
75 CSFML_GRAPHICS_API sfRenderWindow* sfRenderWindow_createFromHandle(sfWindowHandle handle, const sfContextSettings* settings);
76
83 CSFML_GRAPHICS_API void sfRenderWindow_destroy(sfRenderWindow* renderWindow);
84
91 CSFML_GRAPHICS_API void sfRenderWindow_close(sfRenderWindow* renderWindow);
92
99 CSFML_GRAPHICS_API sfBool sfRenderWindow_isOpen(const sfRenderWindow* renderWindow);
100
109 CSFML_GRAPHICS_API sfContextSettings sfRenderWindow_getSettings(const sfRenderWindow* renderWindow);
110
120 CSFML_GRAPHICS_API sfBool sfRenderWindow_pollEvent(sfRenderWindow* renderWindow, sfEvent* event);
121
131 CSFML_GRAPHICS_API sfBool sfRenderWindow_waitEvent(sfRenderWindow* renderWindow, sfEvent* event);
132
141 CSFML_GRAPHICS_API sfVector2i sfRenderWindow_getPosition(const sfRenderWindow* renderWindow);
142
152 CSFML_GRAPHICS_API void sfRenderWindow_setPosition(sfRenderWindow* renderWindow, sfVector2i position);
153
162 CSFML_GRAPHICS_API sfVector2u sfRenderWindow_getSize(const sfRenderWindow* renderWindow);
163
171 CSFML_GRAPHICS_API void sfRenderWindow_setSize(sfRenderWindow* renderWindow, sfVector2u size);
172
180 CSFML_GRAPHICS_API void sfRenderWindow_setTitle(sfRenderWindow* renderWindow, const char* title);
181
189 CSFML_GRAPHICS_API void sfRenderWindow_setUnicodeTitle(sfRenderWindow* renderWindow, const sfUint32* title);
190
200 CSFML_GRAPHICS_API void sfRenderWindow_setIcon(sfRenderWindow* renderWindow, unsigned int width, unsigned int height, const sfUint8* pixels);
201
209 CSFML_GRAPHICS_API void sfRenderWindow_setVisible(sfRenderWindow* renderWindow, sfBool visible);
210
218 CSFML_GRAPHICS_API void sfRenderWindow_setVerticalSyncEnabled(sfRenderWindow* renderWindow, sfBool enabled);
219
227 CSFML_GRAPHICS_API void sfRenderWindow_setMouseCursorVisible(sfRenderWindow* renderWindow, sfBool show);
228
242 CSFML_GRAPHICS_API void sfRenderWindow_setMouseCursorGrabbed(sfRenderWindow* renderWindow, sfBool grabbed);
243
253 CSFML_GRAPHICS_API void sfRenderWindow_setKeyRepeatEnabled(sfRenderWindow* renderWindow, sfBool enabled);
254
262 CSFML_GRAPHICS_API void sfRenderWindow_setFramerateLimit(sfRenderWindow* renderWindow, unsigned int limit);
263
271 CSFML_GRAPHICS_API void sfRenderWindow_setJoystickThreshold(sfRenderWindow* renderWindow, float threshold);
272
282 CSFML_GRAPHICS_API sfBool sfRenderWindow_setActive(sfRenderWindow* renderWindow, sfBool active);
283
296 CSFML_GRAPHICS_API void sfRenderWindow_requestFocus(sfRenderWindow* renderWindow);
297
308 CSFML_GRAPHICS_API sfBool sfRenderWindow_hasFocus(const sfRenderWindow* renderWindow);
309
316 CSFML_GRAPHICS_API void sfRenderWindow_display(sfRenderWindow* renderWindow);
317
326 CSFML_GRAPHICS_API sfWindowHandle sfRenderWindow_getSystemHandle(const sfRenderWindow* renderWindow);
327
335 CSFML_GRAPHICS_API void sfRenderWindow_clear(sfRenderWindow* renderWindow, sfColor color);
336
344 CSFML_GRAPHICS_API void sfRenderWindow_setView(sfRenderWindow* renderWindow, const sfView* view);
345
354 CSFML_GRAPHICS_API const sfView* sfRenderWindow_getView(const sfRenderWindow* renderWindow);
355
364 CSFML_GRAPHICS_API const sfView* sfRenderWindow_getDefaultView(const sfRenderWindow* renderWindow);
365
375 CSFML_GRAPHICS_API sfIntRect sfRenderWindow_getViewport(const sfRenderWindow* renderWindow, const sfView* view);
376
405 CSFML_GRAPHICS_API sfVector2f sfRenderWindow_mapPixelToCoords(const sfRenderWindow* renderWindow, sfVector2i point, const sfView* view);
406
431 CSFML_GRAPHICS_API sfVector2i sfRenderWindow_mapCoordsToPixel(const sfRenderWindow* renderWindow, sfVector2f point, const sfView* view);
432
441 CSFML_GRAPHICS_API void sfRenderWindow_drawSprite(sfRenderWindow* renderWindow, const sfSprite* object, const sfRenderStates* states);
442 CSFML_GRAPHICS_API void sfRenderWindow_drawText(sfRenderWindow* renderWindow, const sfText* object, const sfRenderStates* states);
443 CSFML_GRAPHICS_API void sfRenderWindow_drawShape(sfRenderWindow* renderWindow, const sfShape* object, const sfRenderStates* states);
444 CSFML_GRAPHICS_API void sfRenderWindow_drawCircleShape(sfRenderWindow* renderWindow, const sfCircleShape* object, const sfRenderStates* states);
445 CSFML_GRAPHICS_API void sfRenderWindow_drawConvexShape(sfRenderWindow* renderWindow, const sfConvexShape* object, const sfRenderStates* states);
446 CSFML_GRAPHICS_API void sfRenderWindow_drawRectangleShape(sfRenderWindow* renderWindow, const sfRectangleShape* object, const sfRenderStates* states);
447 CSFML_GRAPHICS_API void sfRenderWindow_drawVertexArray(sfRenderWindow* renderWindow, const sfVertexArray* object, const sfRenderStates* states);
448
459 CSFML_GRAPHICS_API void sfRenderWindow_drawPrimitives(sfRenderWindow* renderWindow,
460 const sfVertex* vertices, size_t vertexCount,
461 sfPrimitiveType type, const sfRenderStates* states);
462
484 CSFML_GRAPHICS_API void sfRenderWindow_pushGLStates(sfRenderWindow* renderWindow);
485
495 CSFML_GRAPHICS_API void sfRenderWindow_popGLStates(sfRenderWindow* renderWindow);
496
509 CSFML_GRAPHICS_API void sfRenderWindow_resetGLStates(sfRenderWindow* renderWindow);
510
536 CSFML_GRAPHICS_API CSFML_DEPRECATED sfImage* sfRenderWindow_capture(const sfRenderWindow* renderWindow);
537
549 CSFML_GRAPHICS_API sfVector2i sfMouse_getPositionRenderWindow(const sfRenderWindow* relativeTo);
550
561 CSFML_GRAPHICS_API void sfMouse_setPositionRenderWindow(sfVector2i position, const sfRenderWindow* relativeTo);
562
575 CSFML_GRAPHICS_API sfVector2i sfTouch_getPositionRenderWindow(unsigned int finger, const sfRenderWindow* relativeTo);
576
577
578 #endif // SFML_RENDERWINDOW_H
sfRenderWindow_popGLStates
CSFML_GRAPHICS_API void sfRenderWindow_popGLStates(sfRenderWindow *renderWindow)
Restore the previously saved OpenGL render states and matrices.
CSFML_GRAPHICS_API
#define CSFML_GRAPHICS_API
Definition: Graphics/Export.h:43
sfRenderWindow_setActive
CSFML_GRAPHICS_API sfBool sfRenderWindow_setActive(sfRenderWindow *renderWindow, sfBool active)
Activate or deactivate a render window as the current target for rendering.
sfPrimitiveType
sfPrimitiveType
Types of primitives that a sf::VertexArray can render.
Definition: PrimitiveType.h:42
sfMouse_setPositionRenderWindow
CSFML_GRAPHICS_API void sfMouse_setPositionRenderWindow(sfVector2i position, const sfRenderWindow *relativeTo)
Set the current position of the mouse relative to a render window.
sfIntRect
Definition: Rect.h:46
sfRenderWindow_isOpen
CSFML_GRAPHICS_API sfBool sfRenderWindow_isOpen(const sfRenderWindow *renderWindow)
Tell whether or not a render window is opened.
sfRenderWindow_createFromHandle
CSFML_GRAPHICS_API sfRenderWindow * sfRenderWindow_createFromHandle(sfWindowHandle handle, const sfContextSettings *settings)
Construct a render window from an existing control.
sfConvexShape
struct sfConvexShape sfConvexShape
Definition: Graphics/Types.h:30
sfVertexArray
struct sfVertexArray sfVertexArray
Definition: Graphics/Types.h:42
sfRenderWindow_drawCircleShape
CSFML_GRAPHICS_API void sfRenderWindow_drawCircleShape(sfRenderWindow *renderWindow, const sfCircleShape *object, const sfRenderStates *states)
sfRenderWindow_close
CSFML_GRAPHICS_API void sfRenderWindow_close(sfRenderWindow *renderWindow)
Close a render window (but doesn&#39;t destroy the internal data)
sfRenderWindow_drawText
CSFML_GRAPHICS_API void sfRenderWindow_drawText(sfRenderWindow *renderWindow, const sfText *object, const sfRenderStates *states)
Export.h
Vertex.h
Window.h
CSFML_DEPRECATED
Mouse wheel events parameters.
Definition: Event.h:126
sfRenderWindow_create
CSFML_GRAPHICS_API sfRenderWindow * sfRenderWindow_create(sfVideoMode mode, const char *title, sfUint32 style, const sfContextSettings *settings)
Construct a new render window.
sfRenderWindow_drawRectangleShape
CSFML_GRAPHICS_API void sfRenderWindow_drawRectangleShape(sfRenderWindow *renderWindow, const sfRectangleShape *object, const sfRenderStates *states)
sfRenderWindow_drawShape
CSFML_GRAPHICS_API void sfRenderWindow_drawShape(sfRenderWindow *renderWindow, const sfShape *object, const sfRenderStates *states)
sfRenderWindow_setVisible
CSFML_GRAPHICS_API void sfRenderWindow_setVisible(sfRenderWindow *renderWindow, sfBool visible)
Show or hide a render window.
sfRenderWindow_setTitle
CSFML_GRAPHICS_API void sfRenderWindow_setTitle(sfRenderWindow *renderWindow, const char *title)
Change the title of a render window.
sfRenderWindow_getSize
CSFML_GRAPHICS_API sfVector2u sfRenderWindow_getSize(const sfRenderWindow *renderWindow)
Get the size of the rendering region of a render window.
PrimitiveType.h
sfRenderWindow_setPosition
CSFML_GRAPHICS_API void sfRenderWindow_setPosition(sfRenderWindow *renderWindow, sfVector2i position)
Change the position of a render window on screen.
sfRenderWindow_getViewport
CSFML_GRAPHICS_API sfIntRect sfRenderWindow_getViewport(const sfRenderWindow *renderWindow, const sfView *view)
Get the viewport of a view applied to this target.
sfRenderWindow_requestFocus
CSFML_GRAPHICS_API void sfRenderWindow_requestFocus(sfRenderWindow *renderWindow)
Request the current render window to be made the active foreground window.
sfRenderWindow_mapCoordsToPixel
CSFML_GRAPHICS_API sfVector2i sfRenderWindow_mapCoordsToPixel(const sfRenderWindow *renderWindow, sfVector2f point, const sfView *view)
Convert a point from world coordinates to window coordinates.
sfRenderWindow_mapPixelToCoords
CSFML_GRAPHICS_API sfVector2f sfRenderWindow_mapPixelToCoords(const sfRenderWindow *renderWindow, sfVector2i point, const sfView *view)
Convert a point from window coordinates to world coordinates.
sfRenderWindow_setJoystickThreshold
CSFML_GRAPHICS_API void sfRenderWindow_setJoystickThreshold(sfRenderWindow *renderWindow, float threshold)
Change the joystick threshold, ie.
sfRenderWindow_drawPrimitives
CSFML_GRAPHICS_API void sfRenderWindow_drawPrimitives(sfRenderWindow *renderWindow, const sfVertex *vertices, size_t vertexCount, sfPrimitiveType type, const sfRenderStates *states)
Draw primitives defined by an array of vertices to a render window.
sfRenderWindow_setFramerateLimit
CSFML_GRAPHICS_API void sfRenderWindow_setFramerateLimit(sfRenderWindow *renderWindow, unsigned int limit)
Limit the framerate to a maximum fixed frequency for a render window.
sfBool
int sfBool
Definition: Config.h:153
sfRenderWindow_setView
CSFML_GRAPHICS_API void sfRenderWindow_setView(sfRenderWindow *renderWindow, const sfView *view)
Change the current active view of a render window.
sfRenderWindow_destroy
CSFML_GRAPHICS_API void sfRenderWindow_destroy(sfRenderWindow *renderWindow)
Destroy an existing render window.
sfRenderWindow_setMouseCursorGrabbed
CSFML_GRAPHICS_API void sfRenderWindow_setMouseCursorGrabbed(sfRenderWindow *renderWindow, sfBool grabbed)
Grab or release the mouse cursor.
sfVector2i
2-component vector of integers
Definition: Vector2.h:38
sfEvent
sfEvent defines a system event and its parameters
Definition: Event.h:220
sfVector2u
2-component vector of unsigned integers
Definition: Vector2.h:49
sfRenderWindow
struct sfRenderWindow sfRenderWindow
Definition: Graphics/Types.h:36
sfColor
Utility class for manpulating RGBA colors.
Definition: Color.h:38
Vector2.h
sfRenderWindow_setIcon
CSFML_GRAPHICS_API void sfRenderWindow_setIcon(sfRenderWindow *renderWindow, unsigned int width, unsigned int height, const sfUint8 *pixels)
Change a render window&#39;s icon.
sfSprite
struct sfSprite sfSprite
Definition: Graphics/Types.h:38
sfRenderStates
Define the states used for drawing to a RenderTarget.
Definition: RenderStates.h:41
sfRenderWindow_getSystemHandle
CSFML_GRAPHICS_API sfWindowHandle sfRenderWindow_getSystemHandle(const sfRenderWindow *renderWindow)
Retrieve the OS-specific handle of a render window.
sfView
struct sfView sfView
Definition: Graphics/Types.h:43
sfImage
struct sfImage sfImage
Definition: Graphics/Types.h:32
sfRectangleShape
struct sfRectangleShape sfRectangleShape
Definition: Graphics/Types.h:34
sfUint32
unsigned int sfUint32
Definition: Config.h:176
sfRenderWindow_hasFocus
CSFML_GRAPHICS_API sfBool sfRenderWindow_hasFocus(const sfRenderWindow *renderWindow)
Check whether the render window has the input focus.
sfRenderWindow_display
CSFML_GRAPHICS_API void sfRenderWindow_display(sfRenderWindow *renderWindow)
Display a render window on screen.
WindowHandle.h
sfCircleShape
struct sfCircleShape sfCircleShape
Definition: Graphics/Types.h:29
sfText
struct sfText sfText
Definition: Graphics/Types.h:39
sfRenderWindow_pushGLStates
CSFML_GRAPHICS_API void sfRenderWindow_pushGLStates(sfRenderWindow *renderWindow)
Save the current OpenGL render states and matrices.
sfRenderWindow_setMouseCursorVisible
CSFML_GRAPHICS_API void sfRenderWindow_setMouseCursorVisible(sfRenderWindow *renderWindow, sfBool show)
Show or hide the mouse cursor on a render window.
Types.h
Color.h
sfRenderWindow_setUnicodeTitle
CSFML_GRAPHICS_API void sfRenderWindow_setUnicodeTitle(sfRenderWindow *renderWindow, const sfUint32 *title)
Change the title of a render window (with a UTF-32 string)
sfRenderWindow_getDefaultView
CSFML_GRAPHICS_API const sfView * sfRenderWindow_getDefaultView(const sfRenderWindow *renderWindow)
Get the default view of a render window.
sfVideoMode
sfVideoMode defines a video mode (width, height, bpp, frequency) and provides functions for getting m...
Definition: VideoMode.h:41
sfRenderWindow_clear
CSFML_GRAPHICS_API void sfRenderWindow_clear(sfRenderWindow *renderWindow, sfColor color)
Clear a render window with the given color.
sfRenderWindow_getPosition
CSFML_GRAPHICS_API sfVector2i sfRenderWindow_getPosition(const sfRenderWindow *renderWindow)
Get the position of a render window.
VideoMode.h
sfRenderWindow_setVerticalSyncEnabled
CSFML_GRAPHICS_API void sfRenderWindow_setVerticalSyncEnabled(sfRenderWindow *renderWindow, sfBool enabled)
Enable / disable vertical synchronization on a render window.
sfRenderWindow_drawVertexArray
CSFML_GRAPHICS_API void sfRenderWindow_drawVertexArray(sfRenderWindow *renderWindow, const sfVertexArray *object, const sfRenderStates *states)
sfRenderWindow_drawConvexShape
CSFML_GRAPHICS_API void sfRenderWindow_drawConvexShape(sfRenderWindow *renderWindow, const sfConvexShape *object, const sfRenderStates *states)
sfRenderWindow_getSettings
CSFML_GRAPHICS_API sfContextSettings sfRenderWindow_getSettings(const sfRenderWindow *renderWindow)
Get the creation settings of a render window.
sfVector2f
2-component vector of floats
Definition: Vector2.h:60
RenderStates.h
sfShape
struct sfShape sfShape
Definition: Graphics/Types.h:37
sfRenderWindow_resetGLStates
CSFML_GRAPHICS_API void sfRenderWindow_resetGLStates(sfRenderWindow *renderWindow)
Reset the internal OpenGL states so that the target is ready for drawing.
sfRenderWindow_setSize
CSFML_GRAPHICS_API void sfRenderWindow_setSize(sfRenderWindow *renderWindow, sfVector2u size)
Change the size of the rendering region of a render window.
sfUint8
unsigned char sfUint8
Definition: Config.h:168
sfRenderWindow_pollEvent
CSFML_GRAPHICS_API sfBool sfRenderWindow_pollEvent(sfRenderWindow *renderWindow, sfEvent *event)
Get the event on top of event queue of a render window, if any, and pop it.
sfRenderWindow_setKeyRepeatEnabled
CSFML_GRAPHICS_API void sfRenderWindow_setKeyRepeatEnabled(sfRenderWindow *renderWindow, sfBool enabled)
Enable or disable automatic key-repeat for keydown events.
Rect.h
sfTouch_getPositionRenderWindow
CSFML_GRAPHICS_API sfVector2i sfTouch_getPositionRenderWindow(unsigned int finger, const sfRenderWindow *relativeTo)
Get the current position of a touch in window coordinates.
sfMouse_getPositionRenderWindow
CSFML_GRAPHICS_API sfVector2i sfMouse_getPositionRenderWindow(const sfRenderWindow *relativeTo)
Get the current position of the mouse relative to a render-window.
Event.h
sfRenderWindow_waitEvent
CSFML_GRAPHICS_API sfBool sfRenderWindow_waitEvent(sfRenderWindow *renderWindow, sfEvent *event)
Wait for an event and return it.
sfRenderWindow_createUnicode
CSFML_GRAPHICS_API sfRenderWindow * sfRenderWindow_createUnicode(sfVideoMode mode, const sfUint32 *title, sfUint32 style, const sfContextSettings *settings)
Construct a new render window (with a UTF-32 title)
sfRenderWindow_drawSprite
CSFML_GRAPHICS_API void sfRenderWindow_drawSprite(sfRenderWindow *renderWindow, const sfSprite *object, const sfRenderStates *states)
Draw a drawable object to the render-target.
sfVertex
Define a point with color and texture coordinates.
Definition: Vertex.h:39
sfRenderWindow_getView
CSFML_GRAPHICS_API const sfView * sfRenderWindow_getView(const sfRenderWindow *renderWindow)
Get the current active view of a render window.
sfContextSettings
Structure defining the window&#39;s creation settings.
Definition: Window/Window.h:70
sfRenderWindow_capture
CSFML_GRAPHICS_API CSFML_DEPRECATED sfImage * sfRenderWindow_capture(const sfRenderWindow *renderWindow)
Copy the current contents of the window to an image.