|
Cavestory Mod API
|
An external window to render stuff on. More...
#include <ExternalWindow.h>
Public Member Functions | |
| ExternalWindow () | |
| Constructor. | |
| ~ExternalWindow () | |
| Deconstructor. | |
| bool | Init (const char *pTitle, GUI_POINT *pPoint, GUI_POINT pSize, unsigned int iFlags=0, int iMagnification=-1, bool bStartHidden=false) |
| Initialize this window. More... | |
| void | Free () |
| Reset this window and its memory. | |
| bool | IsInitialized () |
| Check to see if this window has been initialized. More... | |
| void | UpdateFlags () |
| Update a window's flags. | |
| void | RegisterTexture (VideoTexture *pTexture) |
| Register a texture to this window. More... | |
| void | UnregisterTexture (VideoTexture *pTexture) |
| Unregister a texture from this window. More... | |
| void | SetWindowMinimumSize (GUI_POINT pSize) |
| Set the minimum size for this window. More... | |
| void | SetWindowMaximumSize (GUI_POINT pSize) |
| Set the maximum size for this window. More... | |
| void | SetWindowOpacity (unsigned char iOpacity) |
| Set the opacity of this window. More... | |
| unsigned char | GetWindowOpacity () |
| Get the visibility of this window. More... | |
| void | SetWindowVisible (bool bVisible) |
| Set the visibility of this window. More... | |
| bool | IsWindowVisible () |
| Get the visibility of this window. More... | |
| GUI_POINT | GetWindowPosition () |
| Get the position of this window. More... | |
| void | SetWindowPosition (GUI_POINT pNewPosition) |
| Move this window. More... | |
| GUI_POINT | GetWindowSize () |
| Get the size of this window. More... | |
| void | SetWindowSize (GUI_POINT pNewSize) |
| Resize this window. More... | |
| const char * | GetWindowTitle () |
| Get the title of this window. More... | |
| void | SetWindowTitle (const char *pNewTitle) |
| Rename this window. More... | |
| void | FocusWindow () |
| Focus this window. | |
| void | Maximize () |
| Maximize this window. | |
| void | Minimize () |
| Minimize this window. | |
| void | OnInputEvent (SDL_Event *pEvent) |
| Handle an input. More... | |
| void | SetHitTestFunc (ExternalWindow_HitTestFunc pFunc, void *pUserData) |
| Set the hittest function. More... | |
| GUI_POINT | GetMousePosition () |
| Get the mouse position relative to this window. More... | |
| SDL_Texture * | GetSurfaceTexture (Surface_Ids iSurfaceId) |
| Get the texture specific to this window's renderer for a surface. More... | |
| void | FlipWindow () |
| Flip this window. | |
Static Public Member Functions | |
| static bool | TestWindowInputFocus (ExternalWindow *pWindow) |
| Test a window's input focus. More... | |
| static bool | TestWindowMouseFocus (ExternalWindow *pWindow) |
| Test a window's mouse focus. More... | |
Public Attributes | |
| ExternalWindow * | prev |
| Previous entry in list. | |
| ExternalWindow * | next |
| Next entry in list. | |
| void * | CallbackUserData |
| User data for callback. | |
| ExternalWindow_OnResizeFunc | OnResize |
| Called every time the window's size is changed. | |
| ExternalWindow * | m_pParent |
| This window's parent window. More... | |
| ExternalWindow_HitTestFunc | m_pHitTestFunc |
| A pointer to the hit test function. | |
| void * | m_pHitTestUserData |
| The user data for the hitfunc. | |
| SDL_Renderer * | m_pRenderer |
| The SDL renderer pointer for this window. | |
| SDL_Window * | m_pWindow |
| The SDL window pointer for this window. | |
| unsigned int | m_iFlags |
| The flags for this window. More... | |
| EXTERNAL_WINDOW_TEXTURE | m_pTextureList [SURFACE_ID_MAX] |
| Texture array for this window. | |
| VideoTexture * | m_pRendererTexture |
| The renderer texture for this external window. More... | |
| struct { | |
| GUI_RECT WindowRect | |
| The window's rect. | |
| int WindowID | |
| The window's ID. | |
| } | m_pCache |
| Cache variables stored for this window. | |
Static Public Attributes | |
| static SDL_Window * | mouse_focused |
| First entry in list. | |
| static ExternalWindow * | first |
| First entry in list. | |
Protected Attributes | |
| bool | m_bInitialized |
| Whether this window is initialized already or not. | |
| VideoTexture ** | m_pVideoTextureList |
| Texture allocated to this window. | |
| int | m_iVideoTextureCount |
| The number of textures allocated to this window. | |
| int | m_iVideoTextureSize |
| The number of texture slots allocated. | |
An external window to render stuff on.
| GUI_POINT ExternalWindow::GetMousePosition | ( | ) |
Get the mouse position relative to this window.
| SDL_Texture* ExternalWindow::GetSurfaceTexture | ( | Surface_Ids | iSurfaceId | ) |
Get the texture specific to this window's renderer for a surface.
| iSurfaceId | The surface's ID. |
| unsigned char ExternalWindow::GetWindowOpacity | ( | ) |
Get the visibility of this window.
| GUI_POINT ExternalWindow::GetWindowPosition | ( | ) |
Get the position of this window.
| GUI_POINT ExternalWindow::GetWindowSize | ( | ) |
Get the size of this window.
| const char* ExternalWindow::GetWindowTitle | ( | ) |
Get the title of this window.
| bool ExternalWindow::Init | ( | const char * | pTitle, |
| GUI_POINT * | pPoint, | ||
| GUI_POINT | pSize, | ||
| unsigned int | iFlags = 0, |
||
| int | iMagnification = -1, |
||
| bool | bStartHidden = false |
||
| ) |
Initialize this window.
| pTitle | The title of the window. |
| pPoint | The initial position of the window. Pass 'NULL' here to center the window. |
| pSize | The size of the window. |
| iFlags | The initial flags for this window. |
| iMagnification | The renderer magnification for this window. Setting this to '-1' will use the current magnification level. |
| bStartHidden | If 'true', then the window will start out hidden, hiding the ugly initialization. |
|
inline |
Check to see if this window has been initialized.
| bool ExternalWindow::IsWindowVisible | ( | ) |
Get the visibility of this window.
| void ExternalWindow::OnInputEvent | ( | SDL_Event * | pEvent | ) |
Handle an input.
| pEvent | The event to parse. |
| void ExternalWindow::RegisterTexture | ( | VideoTexture * | pTexture | ) |
Register a texture to this window.
| pTexture | The texture object. |
| void ExternalWindow::SetHitTestFunc | ( | ExternalWindow_HitTestFunc | pFunc, |
| void * | pUserData | ||
| ) |
Set the hittest function.
| pFunc | The function. |
| void ExternalWindow::SetWindowMaximumSize | ( | GUI_POINT | pSize | ) |
Set the maximum size for this window.
| pSize | The new maximum size for this window. |
| void ExternalWindow::SetWindowMinimumSize | ( | GUI_POINT | pSize | ) |
Set the minimum size for this window.
| pSize | The new minimum size for this window. |
| void ExternalWindow::SetWindowOpacity | ( | unsigned char | iOpacity | ) |
Set the opacity of this window.
| iOpacity | The opacity of this window, from 0 (Invisible) to 255 (Visible). |
| void ExternalWindow::SetWindowPosition | ( | GUI_POINT | pNewPosition | ) |
Move this window.
| pNewPosition | The new position of the window. |
| void ExternalWindow::SetWindowSize | ( | GUI_POINT | pNewSize | ) |
Resize this window.
| pNewSize | The new size of the window. |
| void ExternalWindow::SetWindowTitle | ( | const char * | pNewTitle | ) |
Rename this window.
| pNewTitle | The new title of the window. |
| void ExternalWindow::SetWindowVisible | ( | bool | bVisible | ) |
Set the visibility of this window.
| bVisible | If 'true', then this window will be shown. Otherwise, this window will be hidden. |
|
static |
Test a window's input focus.
| pWindow | The window to test. Set as 'NULL' test gWindow. |
|
static |
Test a window's mouse focus.
| pWindow | The window to test. Set as 'NULL' test gWindow. |
| void ExternalWindow::UnregisterTexture | ( | VideoTexture * | pTexture | ) |
Unregister a texture from this window.
| pTexture | The texture object. |
| unsigned int ExternalWindow::m_iFlags |
The flags for this window.
Should be updated dynamically.
| ExternalWindow* ExternalWindow::m_pParent |
This window's parent window.
If set to 'NULL', then it will be the child of the main window.
| VideoTexture* ExternalWindow::m_pRendererTexture |
The renderer texture for this external window.
Allows one to draw directly to this window without using a middle-man texture.