0,0 → 1,114 |
/* |
Copyright (C) 1996-1997 Id Software, Inc. |
|
This program is free software; you can redistribute it and/or |
modify it under the terms of the GNU General Public License |
as published by the Free Software Foundation; either version 2 |
of the License, or (at your option) any later version. |
|
This program is distributed in the hope that it will be useful, |
but WITHOUT ANY WARRANTY; without even the implied warranty of |
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. |
|
See the GNU General Public License for more details. |
|
You should have received a copy of the GNU General Public License |
along with this program; if not, write to the Free Software |
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
|
*/ |
// winquake.h: Win32-specific Quake header file |
|
#pragma warning( disable : 4229 ) // mgraph gets this |
|
#include <windows.h> |
#define WM_MOUSEWHEEL 0x020A |
|
#ifndef SERVERONLY |
#include <ddraw.h> |
#include <dsound.h> |
#ifndef GLQUAKE |
#include <mgraph.h> |
#endif |
#endif |
|
extern HINSTANCE global_hInstance; |
extern int global_nCmdShow; |
|
#ifndef SERVERONLY |
|
extern LPDIRECTDRAW lpDD; |
extern qboolean DDActive; |
extern LPDIRECTDRAWSURFACE lpPrimary; |
extern LPDIRECTDRAWSURFACE lpFrontBuffer; |
extern LPDIRECTDRAWSURFACE lpBackBuffer; |
extern LPDIRECTDRAWPALETTE lpDDPal; |
extern LPDIRECTSOUND pDS; |
extern LPDIRECTSOUNDBUFFER pDSBuf; |
|
extern DWORD gSndBufSize; |
//#define SNDBUFSIZE 65536 |
|
void VID_LockBuffer (void); |
void VID_UnlockBuffer (void); |
|
#endif |
|
typedef enum {MS_WINDOWED, MS_FULLSCREEN, MS_FULLDIB, MS_UNINIT} modestate_t; |
|
extern modestate_t modestate; |
|
extern HWND mainwindow; |
extern qboolean ActiveApp, Minimized; |
|
extern qboolean WinNT; |
|
int VID_ForceUnlockedAndReturnState (void); |
void VID_ForceLockState (int lk); |
|
void IN_ShowMouse (void); |
void IN_DeactivateMouse (void); |
void IN_HideMouse (void); |
void IN_ActivateMouse (void); |
void IN_RestoreOriginalMouseState (void); |
void IN_SetQuakeMouseState (void); |
void IN_MouseEvent (int mstate); |
|
extern qboolean winsock_lib_initialized; |
|
extern cvar_t _windowed_mouse; |
|
extern int window_center_x, window_center_y; |
extern RECT window_rect; |
|
extern qboolean mouseinitialized; |
extern HWND hwnd_dialog; |
|
extern HANDLE hinput, houtput; |
|
void IN_UpdateClipCursor (void); |
void CenterWindow(HWND hWndCenter, int width, int height, BOOL lefttopjustify); |
|
void S_BlockSound (void); |
void S_UnblockSound (void); |
|
void VID_SetDefaultMode (void); |
|
int (PASCAL FAR *pWSAStartup)(WORD wVersionRequired, LPWSADATA lpWSAData); |
int (PASCAL FAR *pWSACleanup)(void); |
int (PASCAL FAR *pWSAGetLastError)(void); |
SOCKET (PASCAL FAR *psocket)(int af, int type, int protocol); |
int (PASCAL FAR *pioctlsocket)(SOCKET s, long cmd, u_long FAR *argp); |
int (PASCAL FAR *psetsockopt)(SOCKET s, int level, int optname, |
const char FAR * optval, int optlen); |
int (PASCAL FAR *precvfrom)(SOCKET s, char FAR * buf, int len, int flags, |
struct sockaddr FAR *from, int FAR * fromlen); |
int (PASCAL FAR *psendto)(SOCKET s, const char FAR * buf, int len, int flags, |
const struct sockaddr FAR *to, int tolen); |
int (PASCAL FAR *pclosesocket)(SOCKET s); |
int (PASCAL FAR *pgethostname)(char FAR * name, int namelen); |
struct hostent FAR * (PASCAL FAR *pgethostbyname)(const char FAR * name); |
struct hostent FAR * (PASCAL FAR *pgethostbyaddr)(const char FAR * addr, |
int len, int type); |
int (PASCAL FAR *pgetsockname)(SOCKET s, struct sockaddr FAR *name, |
int FAR * namelen); |