hl2_src-leak-2017/src/vguimatsurface/Cursor.h

76 lines
2.5 KiB
C

//========= Copyright Valve Corporation, All rights reserved. ============//
//
// Purpose: Methods associated with the cursor
//
// $Revision: $
// $NoKeywords: $
//=============================================================================//
#ifndef MATSURFACE_CURSOR_H
#define MATSURFACE_CURSOR_H
#ifdef _WIN32
#pragma once
#endif
#include "VGuiMatSurface/IMatSystemSurface.h"
#include <vgui/Cursor.h>
//-----------------------------------------------------------------------------
// Initializes cursors
//-----------------------------------------------------------------------------
void InitCursors();
//-----------------------------------------------------------------------------
// Selects a cursor
//-----------------------------------------------------------------------------
void CursorSelect(vgui::HCursor hCursor);
//-----------------------------------------------------------------------------
// Activates the current cursor
//-----------------------------------------------------------------------------
void ActivateCurrentCursor();
//-----------------------------------------------------------------------------
// Handles software cursors
//-----------------------------------------------------------------------------
void EnableSoftwareCursor( bool bEnable );
bool ShouldDrawSoftwareCursor();
int GetSoftwareCursorTexture( float *px, float *py );
//-----------------------------------------------------------------------------
// handles mouse movement
//-----------------------------------------------------------------------------
void CursorSetPos(void *hwnd, int x, int y);
void CursorGetPos(void *hwnd, int &x, int &y);
//-----------------------------------------------------------------------------
// Purpose: prevents vgui from changing the cursor
//-----------------------------------------------------------------------------
void LockCursor( bool bEnable );
//-----------------------------------------------------------------------------
// Purpose: unlocks the cursor state
//-----------------------------------------------------------------------------
bool IsCursorLocked();
//-----------------------------------------------------------------------------
// Purpose: loads a custom cursor file from the file system
//-----------------------------------------------------------------------------
vgui::HCursor Cursor_CreateCursorFromFile( char const *curOrAniFile, char const *pPathID );
// Helper for shutting down cursors
void Cursor_ClearUserCursors();
#endif // MATSURFACE_CURSOR_H