IScheme: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
m (doxygen)
m (→‎See also: Unicodifying, replaced: See Also → See also)
 
(2 intermediate revisions by 2 users not shown)
Line 55: Line 55:
   
   
  #endif // ISCHEME_H
  #endif // ISCHEME_H
==See Also==
==See also==
* [[ISurface]]
* [[ISurface]]
* [http://hl2sdk.gigcities.com/_i_scheme_8h-source.html IScheme.h on HL2 SDK Doxygen]
 
[[Category:Interfaces]]
[[Category:Interfaces]]

Latest revision as of 10:09, 8 January 2024

This interface has major implementation with VGUI2.

//========= Copyright © 1996-2005, Valve Corporation, All rights reserved. ============//
//
// Purpose: 
//
// $NoKeywords: $
//=============================================================================//

#ifndef ISCHEME_H
#define ISCHEME_H

#ifdef _WIN32
#pragma once
#endif

#include <vgui/VGUI.h>
#include "interface.h"

class Color;

namespace vgui
{

typedef unsigned long HScheme;
typedef unsigned long HTexture;

class IBorder;
class IImage;

//-----------------------------------------------------------------------------
// Purpose: Holds all panel rendering data
//			This functionality is all wrapped in the Panel::GetScheme*() functions
//-----------------------------------------------------------------------------
class IScheme : public IBaseInterface
{
public:
	// gets a string from the default settings section
	virtual const char *GetResourceString(const char *stringName) = 0;

	// returns a pointer to an existing border
	virtual IBorder *GetBorder(const char *borderName) = 0;

	// returns a pointer to an existing font
	virtual HFont GetFont(const char *fontName, bool proportional = false) = 0;

	// inverse font lookup
	virtual char const *GetFontName( const HFont& font ) = 0;

	// colors
	virtual Color GetColor(const char *colorName, Color defaultColor) = 0;
};

} // namespace vgui


#endif // ISCHEME_H

See also