mirror of
https://github.com/dashr9230/SA-MP.git
synced 2025-01-08 02:23:30 +08:00
83 lines
2.3 KiB
C++
83 lines
2.3 KiB
C++
//--------------------------------------------------------------------------------------
|
|
// File: DXUTgui.h
|
|
//
|
|
// Desc:
|
|
//
|
|
// Copyright (c) Microsoft Corporation. All rights reserved.
|
|
//--------------------------------------------------------------------------------------
|
|
#pragma once
|
|
#ifndef DXUT_GUI_H
|
|
#define DXUT_GUI_H
|
|
|
|
|
|
//--------------------------------------------------------------------------------------
|
|
// Enums for pre-defined control types
|
|
//--------------------------------------------------------------------------------------
|
|
enum DXUT_CONTROL_STATE
|
|
{
|
|
DXUT_STATE_NORMAL = 0,
|
|
DXUT_STATE_DISABLED,
|
|
DXUT_STATE_HIDDEN,
|
|
DXUT_STATE_FOCUS,
|
|
DXUT_STATE_MOUSEOVER,
|
|
DXUT_STATE_PRESSED,
|
|
};
|
|
|
|
#define MAX_CONTROL_STATES 6
|
|
|
|
struct DXUTBlendColor
|
|
{
|
|
void Init( D3DCOLOR defaultColor, D3DCOLOR disabledColor = D3DCOLOR_ARGB(200, 128, 128, 128), D3DCOLOR hiddenColor = 0 );
|
|
void Blend( UINT iState, float fElapsedTime, float fRate = 0.7f );
|
|
|
|
D3DCOLOR States[ MAX_CONTROL_STATES ]; // Modulate colors for all possible control states
|
|
D3DXCOLOR Current;
|
|
};
|
|
|
|
|
|
//--------------------------------------------------------------------------------------
|
|
// Structs for shared resources
|
|
//--------------------------------------------------------------------------------------
|
|
struct DXUTTextureNode
|
|
{
|
|
TCHAR strFilename[MAX_PATH];
|
|
IDirect3DTexture9* pTexture;
|
|
DWORD dwWidth;
|
|
DWORD dwHeight;
|
|
};
|
|
|
|
struct DXUTFontNode
|
|
{
|
|
TCHAR strFace[MAX_PATH];
|
|
ID3DXFont* pFont;
|
|
LONG nHeight;
|
|
LONG nWeight;
|
|
};
|
|
|
|
|
|
//-----------------------------------------------------------------------------
|
|
// Manages shared resources of dialogs
|
|
//-----------------------------------------------------------------------------
|
|
class CDXUTDialogResourceManager
|
|
{
|
|
public:
|
|
CDXUTDialogResourceManager();
|
|
|
|
HRESULT OnResetDevice();
|
|
void OnLostDevice();
|
|
void OnDestroyDevice();
|
|
|
|
// Shared between all dialogs
|
|
IDirect3DStateBlock9* m_pStateBlock;
|
|
ID3DXSprite* m_pSprite; // Sprite used for drawing
|
|
|
|
protected:
|
|
CGrowableArray< DXUTTextureNode* > m_TextureCache; // Shared textures
|
|
CGrowableArray< DXUTFontNode* > m_FontCache; // Shared fonts
|
|
|
|
IDirect3DDevice9* m_pd3dDevice;
|
|
|
|
};
|
|
|
|
|
|
#endif // DXUT_GUI_H
|