diff options
Diffstat (limited to 'public/panorama/panorama.h')
| -rw-r--r-- | public/panorama/panorama.h | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/public/panorama/panorama.h b/public/panorama/panorama.h new file mode 100644 index 0000000..3d6d8cb --- /dev/null +++ b/public/panorama/panorama.h @@ -0,0 +1,76 @@ +//=========== Copyright Valve Corporation, All rights reserved. ===============// +// +// Purpose: Public header for panorama UI framework +// +// +//=============================================================================// +#ifndef PANORAMA_H +#define PANORAMA_H +#pragma once + +namespace panorama +{ + +#ifndef PANORAMA_EXPORTS +#define PANORAMA_INTERFACE +#else +#define PANORAMA_INTERFACE DLL_EXPORT +#endif + +#ifdef PANORAMA_CLIENT_EXPORTS + +#if defined(PLATFORM_WINDOWS_PC32) || ( defined( _WIN32 ) && !defined( _WIN64 ) ) +#define REFERENCE_PANEL_CORE( className, layoutName ) \ + __pragma( comment( linker, "/INCLUDE:?g_"#layoutName"LinkerHack@panorama@@3PAV"#className"@1@A" ) ); +#elif defined(PLATFORM_WINDOWS_PC64) || defined( _WIN64 ) +#define REFERENCE_PANEL_CORE( className, layoutName ) \ + __pragma( comment( linker, "/INCLUDE:?g_"#layoutName"LinkerHack@panorama@@3PEAV"#className"@1@EA" ) ); +#else +#define REFERENCE_PANEL_CORE( className, layoutName ) \ + class className; \ + extern className *g_##layoutName##LinkerHack; \ + className *g_##layoutName##PullInModule SELECTANY = g_##layoutName##LinkerHack; +#endif + +#define REFERENCE_PANEL( name ) \ + REFERENCE_PANEL_CORE( C##name, name ) + +// Referenced internal to the framework, so this becomes unneeded +//REFERENCE_PANEL( Image ) +//REFERENCE_PANEL( Panel ) +REFERENCE_PANEL( Label ) +REFERENCE_PANEL( Button ) +REFERENCE_PANEL( ToggleButton ) +REFERENCE_PANEL( Carousel ) +REFERENCE_PANEL( HTML ) +REFERENCE_PANEL( TextEntry ) +REFERENCE_PANEL( Tooltip ) +REFERENCE_PANEL( VerticalScrollList ) +REFERENCE_PANEL( DebugLayout ) +REFERENCE_PANEL( DebugPanelParents ) +REFERENCE_PANEL( DebugAutoComplete ) +REFERENCE_PANEL( DebugPanel ) +REFERENCE_PANEL( DebugPanelComputed ) +REFERENCE_PANEL( DebugPanelStyle ) +REFERENCE_PANEL( DebugIndividualStyle ) +REFERENCE_PANEL( DebugStyleAnimation ) +REFERENCE_PANEL( DebugInheritedStylesHeader ) +REFERENCE_PANEL( DebugStyleBlock ) +REFERENCE_PANEL( DropDown ) +REFERENCE_PANEL( Grid ) +REFERENCE_PANEL( ProgressBar ) +REFERENCE_PANEL( ContextMenu ) +REFERENCE_PANEL( SimpleContextMenu ) +REFERENCE_PANEL( Slider ) +REFERENCE_PANEL( ListSegmentView ) +REFERENCE_PANEL( AnimatedImageStrip ) +REFERENCE_PANEL_CORE( CMoviePlayer, Movie ) +REFERENCE_PANEL( MoviePanel ) +REFERENCE_PANEL( VolumeSliderPopup ) +REFERENCE_PANEL_CORE( CMovieVideoQualityPopup, VideoQualityPopup ) +REFERENCE_PANEL( EdgeScroller ) +#endif + +} // namespace panorama + +#endif // PANORAMA_H |