RenderWindow.h

Go to the documentation of this file.
00001 
00002 //
00003 // SFML - Simple and Fast Multimedia Library
00004 // Copyright (C) 2007-2008 Laurent Gomila (laurent.gom@gmail.com)
00005 //
00006 // This software is provided 'as-is', without any express or implied warranty.
00007 // In no event will the authors be held liable for any damages arising from the use of this software.
00008 //
00009 // Permission is granted to anyone to use this software for any purpose,
00010 // including commercial applications, and to alter it and redistribute it freely,
00011 // subject to the following restrictions:
00012 //
00013 // 1. The origin of this software must not be misrepresented;
00014 //    you must not claim that you wrote the original software.
00015 //    If you use this software in a product, an acknowledgment
00016 //    in the product documentation would be appreciated but is not required.
00017 //
00018 // 2. Altered source versions must be plainly marked as such,
00019 //    and must not be misrepresented as being the original software.
00020 //
00021 // 3. This notice may not be removed or altered from any source distribution.
00022 //
00024 
00025 #ifndef SFML_RENDERWINDOW_H
00026 #define SFML_RENDERWINDOW_H
00027 
00029 // Headers
00031 #include <SFML/Config.h>
00032 #include <SFML/Graphics/Color.h>
00033 #include <SFML/Graphics/Image.h>
00034 #include <SFML/Graphics/PostFX.h>
00035 #include <SFML/Graphics/Rect.h>
00036 #include <SFML/Graphics/Shape.h>
00037 #include <SFML/Graphics/Sprite.h>
00038 #include <SFML/Graphics/String.h>
00039 #include <SFML/Graphics/View.h>
00040 #include <SFML/Window/Event.h>
00041 #include <SFML/Window/Input.h>
00042 #include <SFML/Window/VideoMode.h>
00043 #include <SFML/Window/Window.h>
00044 #include <SFML/Window/WindowHandle.h>
00045 
00046 
00051 typedef struct sfRenderWindow sfRenderWindow;
00052 
00053 
00063 CSFML_API sfRenderWindow* sfRenderWindow_Create(sfVideoMode Mode, const char* Title, unsigned long Style, sfWindowSettings Params);
00064 
00072 CSFML_API sfRenderWindow* sfRenderWindow_CreateFromHandle(sfWindowHandle Handle, sfWindowSettings Params);
00073 
00080 CSFML_API void sfRenderWindow_Destroy(sfRenderWindow* RenderWindow);
00081 
00088 CSFML_API void sfRenderWindow_Close(sfRenderWindow* RenderWindow);
00089 
00096 CSFML_API sfBool sfRenderWindow_IsOpened(sfRenderWindow* RenderWindow);
00097 
00106 CSFML_API unsigned int sfRenderWindow_GetWidth(sfRenderWindow* RenderWindow);
00107 
00116 CSFML_API unsigned int sfRenderWindow_GetHeight(sfRenderWindow* RenderWindow);
00117 
00126 CSFML_API sfWindowSettings sfRenderWindow_GetSettings(sfRenderWindow* RenderWindow);
00127 
00137 CSFML_API sfBool sfRenderWindow_GetEvent(sfRenderWindow* RenderWindow, sfEvent* Event);
00138 
00146 CSFML_API void sfRenderWindow_UseVerticalSync(sfRenderWindow* RenderWindow, sfBool Enabled);
00147 
00155 CSFML_API void sfRenderWindow_ShowMouseCursor(sfRenderWindow* RenderWindow, sfBool Show);
00156 
00165 CSFML_API void sfRenderWindow_SetCursorPosition(sfRenderWindow* RenderWindow, unsigned int Left, unsigned int Top);
00166 
00176 CSFML_API void sfRenderWindow_SetPosition(sfRenderWindow* RenderWindow, int Left, int Top);
00177 
00186 CSFML_API void sfRenderWindow_SetSize(sfRenderWindow* RenderWindow, unsigned int Width, unsigned int Height);
00187 
00195 CSFML_API void sfRenderWindow_Show(sfRenderWindow* RenderWindow, sfBool State);
00196 
00205 CSFML_API void sfRenderWindow_EnableKeyRepeat(sfRenderWindow* RenderWindow, sfBool Enabled);
00206 
00216 CSFML_API void sfRenderWindow_SetIcon(sfRenderWindow* RenderWindow, unsigned int Width, unsigned int Height, sfUint8* Pixels);
00217 
00227 CSFML_API sfBool sfRenderWindow_SetActive(sfRenderWindow* RenderWindow, sfBool Active);
00228 
00235 CSFML_API void sfRenderWindow_Display(sfRenderWindow* RenderWindow);
00236 
00245 CSFML_API sfInput* sfRenderWindow_GetInput(sfRenderWindow* RenderWindow);
00246 
00255 CSFML_API void sfRenderWindow_SetFramerateLimit(sfRenderWindow* RenderWindow, unsigned int Limit);
00256 
00265 CSFML_API float sfRenderWindow_GetFrameTime(sfRenderWindow* RenderWindow);
00266 
00275 CSFML_API void sfRenderWindow_SetJoystickThreshold(sfRenderWindow* RenderWindow, float Threshold);
00276 
00284 CSFML_API void sfRenderWindow_DrawPostFX(sfRenderWindow* RenderWindow, sfPostFX* PostFX);
00285 CSFML_API void sfRenderWindow_DrawSprite(sfRenderWindow* RenderWindow, sfSprite* Sprite);
00286 CSFML_API void sfRenderWindow_DrawShape (sfRenderWindow* RenderWindow, sfShape*  Shape);
00287 CSFML_API void sfRenderWindow_DrawString(sfRenderWindow* RenderWindow, sfString* String);
00288 
00297 CSFML_API sfImage* sfRenderWindow_Capture(sfRenderWindow* RenderWindow);
00298 
00306 CSFML_API void sfRenderWindow_Clear(sfRenderWindow* RenderWindow, sfColor Color);
00307 
00315 CSFML_API void sfRenderWindow_SetView(sfRenderWindow* RenderWindow, sfView* View);
00316 
00325 CSFML_API const sfView* sfRenderWindow_GetView(sfRenderWindow* RenderWindow);
00326 
00335 CSFML_API sfView* sfRenderWindow_GetDefaultView(sfRenderWindow* RenderWindow);
00336 
00348 CSFML_API void sfRenderWindow_ConvertCoords(sfRenderWindow* RenderWindow, unsigned int WindowX, unsigned int WindowY, float* ViewX, float* ViewY, sfView* TargetView);
00349 
00362 CSFML_API void sfRenderWindow_PreserveOpenGLStates(sfRenderWindow* RenderWindow, sfBool Preserve);
00363 
00364 
00365 #endif // SFML_RENDERWINDOW_H