Panorama Javascript API

From Valve Developer Community
Jump to navigation Jump to search

This is the client-side Javascript API documentation for the Panorama UI system in SteamVR Home. The documentation can be dumped using the 'cl_panorama_script_help_2' console command.

Note.pngNote:Currently, the command only describes panel types that have actually been accessed from JavaScript during that session. (So run a custom game that exercises Panorama to get documentation.
Note.pngNote:Currently, the command doesn't distinguish between methods declared on a class and methods it inherits from a base class. For example, every subclass of Panel2D lists 'SetHasClass' as a method

Static Classes

These classes each have have a global accessor variable.

$

Global functions.

Accessor variable: $

Function Signature Description
Msg Msg( js_raw_args js_raw_args_1 ) Log a message
DispatchEvent DispatchEvent( js_raw_args js_raw_args_1 ) Dispatch an event
DispatchEventAsync DispatchEventAsync( js_raw_args js_raw_args_1 ) Dispatch an event to occur later
RegisterEventHandler RegisterEventHandler( js_raw_args js_raw_args_1 ) Register an event handler
RegisterForUnhandledEvent RegisterForUnhandledEvent( js_raw_args js_raw_args_1 ) Register a handler for an event that is not otherwise handled
UnregisterForUnhandledEvent UnregisterForUnhandledEvent( js_raw_args js_raw_args_1 ) Remove an unhandled event handler
FindChildInContext FindChildInContext( js_raw_args js_raw_args_1 ) Find an element
AsyncWebRequest AsyncWebRequest( js_raw_args js_raw_args_1 ) Make a web request
CreatePanel CreatePanel( js_raw_args js_raw_args_1 ) Create a new panel
Localize Localize( js_raw_args js_raw_args_1 ) Localize a string
Language Language( js_raw_args js_raw_args_1 ) Get the current language
Schedule Schedule( js_raw_args js_raw_args_1 ) Schedule a function to be called later
CancelScheduled CancelScheduled( js_raw_args js_raw_args_1 ) Cancelse a scheduled function
GetContextPanel GetContextPanel( js_raw_args js_raw_args_1 ) Get the current panel context
RegisterKeyBind RegisterKeyBind( js_raw_args js_raw_args_1 ) Register a key binding
Each Each( js_raw_args js_raw_args_1 ) Call a function on each given item


CPanoramaScript_GameEvents

Interface for Game events

Accessor variable: GameEvents

Function Signature Description
Subscribe "GameEvents".Subscribe( cstring pEventName, js_value funcVal ) Subscribe to a game event
Unsubscribe "GameEvents".Unsubscribe( integer nCallbackHandle ) Unsubscribe from a game event
SendCustomGameEventToServer "GameEvents".SendCustomGameEventToServer( cstring pEventName, js_object jsObject ) Send a custom game event to the server
SendCustomGameEventToAllClients "GameEvents".SendCustomGameEventToAllClients( cstring pEventName, js_object jsObject ) Send a custom game event to the server, which will send it to all clients
SendCustomGameEventToClient "GameEvents".SendCustomGameEventToClient( cstring pEventName, integer playerIndex, js_object jsObject ) Send a custom game event to the server, which will then send it to one client
SendEventClientSide "GameEvents".SendEventClientSide( cstring pEventName, js_object jsObject ) Send a client-side event using gameeventmanager (only useful for a few specific events)


CPanoramaScript_CustomNetTables

Interface for Nettables

Accessor variable: CustomNetTables

Function Signature Description
GetTableValue "CustomNetTables".GetTableValue( cstring pTableName, cstring pKeyName ) Get a key from a custom net table
GetAllTableValues "CustomNetTables".GetAllTableValues( cstring pTableName ) Get all values from a custom net table
SubscribeNetTableListener "CustomNetTables".SubscribeNetTableListener( js_raw_args args ) Register a callback when a particular custom net table changes
UnsubscribeNetTableListener "CustomNetTables".UnsubscribeNetTableListener( integer nCallbackHandle ) Unsubscribe from a game event


CPanoramaScript_SteamUGC

Interface for Steam user generated content.

Accessor variable: SteamUGC

Function Signature Description
SubscribeItem "SteamUGC".SubscribeItem( cstring pPublishedFileID, js_value funcVal ) Subscribe to a piece of UGC
UnsubscribeItem "SteamUGC".UnsubscribeItem( cstring pPublishedFileID, js_value funcVal ) Unsubscribe from a piece of UGC
GetSubscriptionInfo "SteamUGC".GetSubscriptionInfo( cstring pPublishedFileID ) Get a key from a custom net table
SetUserItemVote "SteamUGC".SetUserItemVote( cstring pPublishedFileID, boolean bVoteUp, js_value funcVal ) Vote on a piece of UGC
GetUserItemVote "SteamUGC".GetUserItemVote( cstring pPublishedFileID, js_value funcVal ) Get the user's vote on a piece of UGC
AddToFavorites "SteamUGC".AddToFavorites( cstring pPublishedFileID, js_value funcVal ) Add an item to the user's favorites list
RemoveFromFavorites "SteamUGC".RemoveFromFavorites( cstring pPublishedFileID, js_value funcVal ) Remove an item from the user's favorites list
CreateQueryAllUGCRequest "SteamUGC".CreateQueryAllUGCRequest( integer eQueryType, integer eMatchingeMatchingUGCTypeFileType, unsigned unPage ) Create a request to query Steam for all UGC
CreateQueryUGCDetailsRequest "SteamUGC".CreateQueryUGCDetailsRequest( js_array jsArray ) Create a request to query Steam for specific UGC
AddRequiredTagToQuery "SteamUGC".AddRequiredTagToQuery( integer handle, cstring pchTag ) Adds a required tag to the query
AddExcludedTagToQuery "SteamUGC".AddExcludedTagToQuery( integer handle, cstring pchTag ) Adds an excluded tag to the query
ConfigureQuery "SteamUGC".ConfigureQuery( integer handle, js_object jsObject ) Adds a required tag to the query
SendUGCQuery "SteamUGC".SendUGCQuery( integer handle, js_value funcVal ) Sends the prepared query
RegisterDownloadItemResultCallback "SteamUGC".RegisterDownloadItemResultCallback( cstring pPublishedFileID, js_value funcVal ) Register a callback to be called when the item is downloaded


CPanoramaScript_SteamFriends

Accessor variable: SteamFriends

Function Signature Description
RequestPersonaName "SteamFriends".RequestPersonaName( cstring pchSteamID, js_value funcVal ) Requests the user's persona name
SetLargeAvatarImage "SteamFriends".SetLargeAvatarImage( js_raw_args args ) Sets the avatar image on the image panel


CPanoramaScript_SteamUtils

Accessor variable: SteamUtils

Function Signature Description
GetConnectedUniverse "SteamUtils".GetConnectedUniverse() Returns the connected universe
GetAppID "SteamUtils".GetAppID() Returns the appid of the current app


CPanoramaScript_VRUtils

Accessor variable: VRUtils

Function Signature Description
GetVRAppPropertyData "VRUtils".GetVRAppPropertyData( unsigned nAppID ) Get application properties for a VR app with the specified appID
LaunchSteamApp "VRUtils".LaunchSteamApp( unsigned nAppID ) Launches a Steam application using OpenVR.


CPanoramaScript_SteamVRHome

Accessor variable: SteamVRHome

Function Signature Description
SpawnImagePanel "SteamVRHome".SpawnImagePanel( cstring pPublishedFileID, integer nImageWidth, integer nImageHeight ) Creates an in-world image panel entity.


UI Element Classes

Panel

Function Signature Description
visible Panel.visible( boolean boolean_1 )
enabled Panel.enabled( boolean boolean_1 )
checked Panel.checked( boolean boolean_1 )
defaultfocus Panel.defaultfocus( cstring cstring_1 )
inputnamespace Panel.inputnamespace( cstring cstring_1 )
hittest Panel.hittest( boolean boolean_1 )
hittestchildren Panel.hittestchildren( boolean boolean_1 )
tabindex Panel.tabindex( float float_1 )
selectionpos_x Panel.selectionpos_x( float float_1 )
selectionpos_y Panel.selectionpos_y( float float_1 )
id Panel.id()
layoutfile Panel.layoutfile()
contentwidth Panel.contentwidth()
contentheight Panel.contentheight()
desiredlayoutwidth Panel.desiredlayoutwidth()
desiredlayoutheight Panel.desiredlayoutheight()
actuallayoutwidth Panel.actuallayoutwidth()
actuallayoutheight Panel.actuallayoutheight()
actualxoffset Panel.actualxoffset()
actualyoffset Panel.actualyoffset()
scrolloffset_y Panel.scrolloffset_y()
scrolloffset_x Panel.scrolloffset_x()
actualuiscale_y Panel.actualuiscale_y()
actualuiscale_x Panel.actualuiscale_x()
style Panel.style()
AddClass Panel.AddClass( cstring cstring_1 )
RemoveClass Panel.RemoveClass( cstring cstring_1 )
BHasClass Panel.BHasClass( cstring cstring_1 )
BAscendantHasClass Panel.BAscendantHasClass( cstring cstring_1 )
SetHasClass Panel.SetHasClass( cstring cstring_1, boolean boolean_2 )
ToggleClass Panel.ToggleClass( cstring cstring_1 )
SwitchClass Panel.SwitchClass( cstring cstring_1, cstring cstring_2 )
TriggerClass Panel.TriggerClass( cstring cstring_1 )
ClearPanelEvent Panel.ClearPanelEvent( cstring cstring_1 )
SetDraggable Panel.SetDraggable( boolean boolean_1 )
IsDraggable Panel.IsDraggable()
GetChildCount Panel.GetChildCount()
GetChild Panel.GetChild( integer integer_1 )
GetChildIndex Panel.GetChildIndex( unknown_variant_type unknown_variant_type_1 )
Children Panel.Children()
FindChildrenWithClassTraverse Panel.FindChildrenWithClassTraverse( cstring cstring_1 )
GetParent Panel.GetParent()
SetParent Panel.SetParent( unknown_variant_type unknown_variant_type_1 )
FindChild Panel.FindChild( cstring cstring_1 )
FindChildTraverse Panel.FindChildTraverse( cstring cstring_1 )
FindChildInLayoutFile Panel.FindChildInLayoutFile( cstring cstring_1 )
RemoveAndDeleteChildren Panel.RemoveAndDeleteChildren()
MoveChildBefore Panel.MoveChildBefore( unknown_variant_type unknown_variant_type_1, unknown_variant_type unknown_variant_type_2 )
MoveChildAfter Panel.MoveChildAfter( unknown_variant_type unknown_variant_type_1, unknown_variant_type unknown_variant_type_2 )
GetPositionWithinWindow Panel.GetPositionWithinWindow()
ApplyStyles Panel.ApplyStyles( boolean boolean_1 )
ClearPropertyFromCode Panel.ClearPropertyFromCode( unknown_variant_type unknown_variant_type_1 )
DeleteAsync Panel.DeleteAsync( float float_1 )
BIsTransparent Panel.BIsTransparent()
BAcceptsInput Panel.BAcceptsInput()
BAcceptsFocus Panel.BAcceptsFocus()
SetFocus Panel.SetFocus()
UpdateFocusInContext Panel.UpdateFocusInContext()
BHasHoverStyle Panel.BHasHoverStyle()
SetAcceptsFocus Panel.SetAcceptsFocus( boolean boolean_1 )
SetDisableFocusOnMouseDown Panel.SetDisableFocusOnMouseDown( boolean boolean_1 )
BHasKeyFocus Panel.BHasKeyFocus()
SetScrollParentToFitWhenFocused Panel.SetScrollParentToFitWhenFocused( boolean boolean_1 )
BScrollParentToFitWhenFocused Panel.BScrollParentToFitWhenFocused()
IsSelected Panel.IsSelected()
BHasDescendantKeyFocus Panel.BHasDescendantKeyFocus()
BLoadLayout Panel.BLoadLayout( cstring cstring_1, boolean boolean_2, boolean boolean_3 )
BLoadLayoutFromString Panel.BLoadLayoutFromString( js_raw_args js_raw_args_1 )
LoadLayoutFromStringAsync Panel.LoadLayoutFromStringAsync( cstring cstring_1, boolean boolean_2, boolean boolean_3 )
LoadLayoutAsync Panel.LoadLayoutAsync( cstring cstring_1, boolean boolean_2, boolean boolean_3 )
BLoadLayoutSnippet Panel.BLoadLayoutSnippet( cstring cstring_1 )
BCreateChildren Panel.BCreateChildren( cstring cstring_1 )
SetTopOfInputContext Panel.SetTopOfInputContext( boolean boolean_1 )
SetDialogVariable Panel.SetDialogVariable( cstring cstring_1, cstring cstring_2 )
SetDialogVariableInt Panel.SetDialogVariableInt( cstring cstring_1, integer integer_2 )
SetDialogVariableTime Panel.SetDialogVariableTime( cstring cstring_1, int64 int64_2 )
ScrollToTop Panel.ScrollToTop()
ScrollToBottom Panel.ScrollToBottom()
ScrollToLeftEdge Panel.ScrollToLeftEdge()
ScrollToRightEdge Panel.ScrollToRightEdge()
ScrollParentToMakePanelFit Panel.ScrollParentToMakePanelFit( unknown_variant_type unknown_variant_type_1, boolean boolean_2 )
BCanSeeInParentScroll Panel.BCanSeeInParentScroll()
GetAttributeInt Panel.GetAttributeInt( cstring cstring_1, integer integer_2 )
GetAttributeString Panel.GetAttributeString( cstring cstring_1, cstring cstring_2 )
GetAttributeUInt32 Panel.GetAttributeUInt32( cstring cstring_1, unsigned unsigned_2 )
SetAttributeInt Panel.SetAttributeInt( cstring cstring_1, integer integer_2 )
SetAttributeString Panel.SetAttributeString( cstring cstring_1, cstring cstring_2 )
SetAttributeUInt32 Panel.SetAttributeUInt32( cstring cstring_1, unsigned unsigned_2 )
SetInputNamespace Panel.SetInputNamespace( cstring cstring_1 )
RegisterForReadyEvents Panel.RegisterForReadyEvents( boolean boolean_1 )
BReadyForDisplay Panel.BReadyForDisplay()
SetReadyForDisplay Panel.SetReadyForDisplay( boolean boolean_1 )
SetPositionInPixels Panel.SetPositionInPixels( float float_1, float float_2, float float_3 )
SetPanelEvent Panel.SetPanelEvent( js_raw_args js_raw_args_1 )
RunScriptInPanelContext Panel.RunScriptInPanelContext( js_raw_args js_raw_args_1 )
rememberchildfocus Panel.rememberchildfocus( boolean boolean_1 )
paneltype Panel.paneltype()

Image

Extends: Panel

Function Signature Description
SetImage Image.SetImage( cstring cstring_1 )
SetScaling Image.SetScaling( cstring cstring_1 )


ClientUIDialogPanel

Extends: Panel

Function Signature Description
GetOwnerEntityID ClientUIDialogPanel.GetOwnerEntityID()


Button

Extends: Panel

Function Signature Description


FriendsItem

Extends: Panel

Function Signature Description


AvatarCustomizationItem

Extends: Panel

Function Signature Description


ContentBrowserItem

Extends: Panel

Function Signature Description


DestinationsScrollPanel

Extends: Panel

Function Signature Description


DestinationsSettingsPanel

Extends: Panel

Function Signature Description


DestinationsTutorialPanel

Extends: Panel

Function Signature Description


DestinationsWelcomePanel

Extends: Panel

Function Signature Description


GameTrophyAppLogoPanel

Extends: Panel

Function Signature Description
ShowDetailsPanel GameTrophyAppLogoPanel.ShowDetailsPanel()
HideDetailsPanel GameTrophyAppLogoPanel.HideDetailsPanel()
ViewAppDetails GameTrophyAppLogoPanel.ViewAppDetails()
ViewOwnerSteamAchievements GameTrophyAppLogoPanel.ViewOwnerSteamAchievements()
ViewOwnerSteamProfile GameTrophyAppLogoPanel.ViewOwnerSteamProfile()
ViewOwnerSteamScreenshots GameTrophyAppLogoPanel.ViewOwnerSteamScreenshots()
ViewLibraryScreenshots GameTrophyAppLogoPanel.ViewLibraryScreenshots()


GameTrophyDetailsPanel

Extends: Panel

Function Signature Description
ShowDetailsPanel GameTrophyDetailsPanel.ShowDetailsPanel()
HideDetailsPanel GameTrophyDetailsPanel.HideDetailsPanel()
ViewAppDetails GameTrophyDetailsPanel.ViewAppDetails()
ViewOwnerSteamAchievements GameTrophyDetailsPanel.ViewOwnerSteamAchievements()
ViewOwnerSteamProfile GameTrophyDetailsPanel.ViewOwnerSteamProfile()
ViewOwnerSteamScreenshots GameTrophyDetailsPanel.ViewOwnerSteamScreenshots()
ViewLibraryScreenshots GameTrophyDetailsPanel.ViewLibraryScreenshots()


HTML

Extends: Panel

Function Signature Description
SetURL HTML.SetURL( cstring cstring_1 )
RunJavascript HTML.RunJavascript( cstring cstring_1 )
SetIgnoreCursor HTML.SetIgnoreCursor( boolean boolean_1 )


LobbyItem

Extends: Panel

Function Signature Description


RadioButton

Extends: Panel

Function Signature Description
GetSelectedButton RadioButton.GetSelectedButton()


Slider

Function Signature Description
value Slider.value( float float_1 )
min Slider.min( float float_1 )
max Slider.max( float float_1 )
increment Slider.increment( float float_1 )
default Slider.default( float float_1 )
mousedown Slider.mousedown()
SetDirection Slider.SetDirection( unknown_variant_type unknown_variant_type_1 )
SetShowDefaultValue Slider.SetShowDefaultValue( boolean boolean_1 )
SetRequiresSelection Slider.SetRequiresSelection( boolean boolean_1 )
SetValueNoEvents Slider.SetValueNoEvents( float float_1 )
SetPanelEvent Slider.SetPanelEvent( js_raw_args js_raw_args_1 )
RunScriptInPanelContext Slider.RunScriptInPanelContext( js_raw_args js_raw_args_1 )
rememberchildfocus Slider.rememberchildfocus( boolean boolean_1 )
paneltype Slider.paneltype()


SteamToursAvatarCustomization

Extends: Panel

Function Signature Description


SteamToursContentBrowser

Extends: Panel

Function Signature Description


SteamToursFriends

Extends: Panel

Function Signature Description


SteamToursNotifications

Extends: Panel

Function Signature Description


SteamToursPlayerBillboard

Extends: Panel

Function Signature Description


SteamToursRecentApps

Extends: Panel

Function Signature Description


SteamToursUGCImage

Extends: Panel

Function Signature Description
LoadDetails SteamToursUGCImage.LoadDetails()


TrackpadUIPanel

Extends: Panel

Function Signature Description


Label

Extends: Panel

Function Signature Description
text Label.text( cstring cstring_1 )
html Label.html( boolean boolean_1 )


DropDown

Extends: Panel

Function Signature Description
AddOption DropDown.AddOption( unknown_variant_type unknown_variant_type_1 )
HasOption DropDown.HasOption( cstring cstring_1 )
RemoveOption DropDown.RemoveOption( cstring cstring_1 )
RemoveAllOptions DropDown.RemoveAllOptions()
GetSelected DropDown.GetSelected()
SetSelected DropDown.SetSelected( cstring cstring_1 )
FindDropDownMenuChild DropDown.FindDropDownMenuChild( cstring cstring_1 )
AccessDropDownMenu DropDown.AccessDropDownMenu()


ToggleButton

Extends: Panel

Function Signature Description
SetSelected ToggleButton.SetSelected( boolean boolean_1 )
text ToggleButton.text( cstring cstring_1 )

Enumerations

SteamUGCQuery

Enumerator Value Description
SteamUGCQuery.RankedByVote 0
SteamUGCQuery.RankedByPublicationDate 1
SteamUGCQuery.AcceptedForGameRankedByAcceptanceDate 2
SteamUGCQuery.RankedByTrend 3
SteamUGCQuery.FavoritedByFriendsRankedByPublicationDate 4
SteamUGCQuery.CreatedByFriendsRankedByPublicationDate 5
SteamUGCQuery.RankedByNumTimesReported 6
SteamUGCQuery.CreatedByFollowedUsersRankedByPublicationDate 7
SteamUGCQuery.NotYetRated 8
SteamUGCQuery.RankedByTotalVotesAsc 9
SteamUGCQuery.RankedByVotesUp 10
SteamUGCQuery.RankedByTextSearch 11
SteamUGCQuery.RankedByTotalUniqueSubscriptions 12
SteamUGCQuery.RankedByPlaytimeTrend 13
SteamUGCQuery.RankedByTotalPlaytime 14
SteamUGCQuery.RankedByAveragePlaytimeTrend 15
SteamUGCQuery.RankedByLifetimeAveragePlaytime 16
SteamUGCQuery.RankedByPlaytimeSessionsTrend 17
SteamUGCQuery.RankedByLifetimePlaytimeSessions 18

SteamUGCMatchingUGCType

Enumerator Value Description
SteamUGCMatchingUGCType.Items 0
SteamUGCMatchingUGCType.Items_Mtx 1
SteamUGCMatchingUGCType.Items_ReadyToUse 2
SteamUGCMatchingUGCType.Collections 3
SteamUGCMatchingUGCType.Artwork 4
SteamUGCMatchingUGCType.Videos 5
SteamUGCMatchingUGCType.Screenshots 6
SteamUGCMatchingUGCType.AllGuides 7
SteamUGCMatchingUGCType.WebGuides 8
SteamUGCMatchingUGCType.IntegratedGuides 9
SteamUGCMatchingUGCType.UsableInGame 10
SteamUGCMatchingUGCType.ControllerBindings 11
SteamUGCMatchingUGCType.GameManagedItems 12
SteamUGCMatchingUGCType.All -1

SteamUniverse

Enumerator Value Description
SteamUniverse.Invalid 0
SteamUniverse.Internal 3
SteamUniverse.Dev 4
SteamUniverse.Beta 2
SteamUniverse.Public 1