wiki.sine.space | sinespace

Scripting/SBrowserSurface

From wiki.sine.space
Revision as of 11:21, 5 October 2021 by Voidtech (Talk | contribs)

Jump to: navigation, search

Members

Back

void Back ();

Equivalent to hitting the 'back' button within the browser.

Space.Host.ExecutingObject.Browser.Back()


--the below scipt makes this object a clickable that navigates Back
--(Example: Browser navigation )
--[Required: Browser surface object needs to be added as a reference to the Scripting Runtime component]

thisGameObject = Space.Host.ExecutingObject
browser = Space.Host.GetReference("Browser Surface Object").Browser

OnClick = function()
browser.Back()
end

thisGameObject.AddClickable()
thisGameObject.Clickable.Tooltip = "Click to Enable/Disable browser Input"
thisGameObject.Clickable.OnClick(OnClick)

CallFunction

void CallFunction (string name, string argument);

Calls a JS function in the browser with a single argument. The function name must begin with the characters "sinespace__".


Forward

void Forward ();

Equivalent to hitting the 'forward' button within the browser.

Space.Host.ExecutingObject.Browser.Forward()


--the below scipt makes this object a clickable that navigates Forward
--(Example: Browser navigation )
--[Required: Browser surface object needs to be added as a reference to the Scripting Runtime component]

thisGameObject = Space.Host.ExecutingObject
browser = Space.Host.GetReference("Browser Surface Object").Browser

OnClick = function()
browser.Forward()
end

thisGameObject.AddClickable()
thisGameObject.Clickable.Tooltip = "Click to Enable/Disable browser Input"
thisGameObject.Clickable.OnClick(OnClick)

RegisterFunction

void RegisterFunction (string name, closure function);

Registers a JS function in the browser. The function name must start with the characters "sinespace__".


Reload

void Reload ();

Refreshes and reloads the current webpage.

Space.Host.ExecutingObject.Browser.Reload()


 --the below scipt makes this object a clickable that reloads the page
--(Example: Browser navigation )
--[Required: Browser surface object needs to be added as a reference to the Scripting Runtime component]

thisGameObject = Space.Host.ExecutingObject
browser = Space.Host.GetReference("Browser Surface Object").Browser

OnClick = function()
browser.Reload()
end

thisGameObject.AddClickable()
thisGameObject.Clickable.Tooltip = "Click to Enable/Disable browser Input"
thisGameObject.Clickable.OnClick(OnClick) 

SetURL

void SetURL (string url);

Sets the URL for the browser frame, and navigates to it. (A standard URL recognized by Chromium; e.g. (https://www.youtube.com)

Space.Host.ExecutingObject.Browser.SetURL('https://www.youtube.com')


--the below scipt makes this object set Browser URL according to what's written in text field
--(Example: Set URL button)
--[Required: This object needs a Browser and InputField objects to be added as reference to references section in Scripting Runtime component]

thisGameObject = Space.Host.ExecutingObject
webBrowser = Space.Host.GetReference("Browser")
urlField = Space.Host.GetReference("URL Field")

OnClick = function()

webBrowser.Browser.SetURL = urlField.UIInputField.Text

end

urlField.UIInputField.Text = "https://www.youtube.com"
thisGameObject.AddClickable()
thisGameObject.Clickable.Tooltip = "Click to set URL"
thisGameObject.Clickable.OnClick(OnClick)  


OnURLChanged

void OnURLChanged ()

Binds a function to be called whenever the URL of the Browser Surface changes

--the below scipt makes this object clear the an InputField whenever URL changes
--(Example: URL Bar)
--[Required: This object needs a Browser and InputField objects to be added as reference to references section in Scripting Runtime component]

thisGameObject = Space.Host.ExecutingObject
webBrowser = Space.Host.GetReference("Browser")
urlField = Space.Host.GetReference("URL Field")

OnURLChanged = function()

urlField.UIInputField.Text = " "

end

webBrowser.Browser.OnURLChanged(OnURLChanged)


Properties

Networked

bool Networked { get;set; }

Should changes to this browser be streamed to other clients within the area?.

Space.Host.ExecutingObject.Browser.Networked=true


 --the below scipt makes this object toggle Networking on it's parent browser
--(Example: browser controls)
--[Required: This object needs its parent to have the browser component]

thisGameObject = Space.Host.ExecutingObject

OnClick = function()

  if thisGameObject.Parent.Browser.Networked then
   thisGameObject.Parent.Browser.Networked = false
    Space.Log("Browser will not be networked")
  else
    thisGameObject.Parent.Browser.Networked = true
    Space.Log("Browser will be networked")
  end

end

thisGameObject.AddClickable()
thisGameObject.Clickable.Tooltip = "Click to toggle Networking on Browser"
thisGameObject.Clickable.OnClick(OnClick)   


EnableInput

bool EnableInput { get;set; }

Whether this Browser Surface has Input enabled or not (interactable)

Space.Host.ExecutingObject.Browser.EnableInput=false


--the below scipt makes this object a clickable that toggle Enable Input a browser surface
--(Example: Brower Enable Input toggle button )
--[Required: Browser surface object needs to be added as a reference to the Scripting Runtime component]

thisGameObject = Space.Host.ExecutingObject
browser = Space.Host.GetReference("Browser Surface Object").Browser

OnClick = function()

  if browser.EnableInput then
   browser.EnableInput = false
    Space.Log("Browser input disabled")
  else
    browser.EnableInput = true
    Space.Log("Browser input enabled")
  end

end

thisGameObject.AddClickable()
thisGameObject.Clickable.Tooltip = "Click to Enable/Disable browser Input"
thisGameObject.Clickable.OnClick(OnClick)

Muted

bool Muted { get;set; }

Whether this Browser Surface is muted or not.

Space.Host.ExecutingObject.Browser.Muted=true


--the below scipt makes this object a clickable that mutes/unmutes a browser surface
--(Example: Browser Mute button )
--[Required: This object's parent needs to be an object with BrowserSurface component in it]

thisGameObject = Space.Host.ExecutingObject


OnClick = function()

  if thisGameObject.Parent.Browser.Muted then
   thisGameObject.Parent.Browser.Muted = false
    Space.Log("Browser unmuted")
  else
    thisGameObject.Parent.Browser.Muted = true
    Space.Log("Browser muted")
  end

end

thisGameObject.AddClickable()
thisGameObject.Clickable.Tooltip = "Click to Mute/Unmute Browser"
thisGameObject.Clickable.OnClick(OnClick)  

CanGoBack

bool CanGoBack { get; }

Returns whether this Browser Surface can navigate back

CanGoBack = Space.Host.ExecutingObject.Browser.CanGoBack


 --the below scipt makes this Browser object show/hide it's Forward and Back
--buttons according to wether the actions are possible or not
--(Example: browser navigation )
--[Required: This object needs the forward and back objects added to the references section in scripting runtime]

thisGameObject = Space.Host.ExecutingObject
forwardButton = Space.Host.GetReference("Forward Button")
backButton = Space.Host.GetReference("Back Button")

OnUpdate = function()
 
 if thisGameObject.Browser.CanGoBack then
   backButton.Active = true
  else backButton.Active = false
end

if thisGameObject.Browser.CanGoForward then
  forwardButton.Active = true
else forwardButton.Active = false
end

  
end



thisGameObject.SubscribeToEvents()
thisGameObject.OnUpdate(OnUpdate)

 

CanGoForward

bool CanGoForward { get; }

Returns whether this Browser Surface can navigate forward

CanGoForward = Space.Host.ExecutingObject.Browser.CanGoForward


 --the below scipt makes this Browser object show/hide it's Forward and Back
--buttons according to wether the actions are possible or not
--(Example: browser navigation )
--[Required: This object needs the forward and back objects added to the references section in scripting runtime]

thisGameObject = Space.Host.ExecutingObject
forwardButton = Space.Host.GetReference("Forward Button")
backButton = Space.Host.GetReference("Back Button")

OnUpdate = function()
 
 if thisGameObject.Browser.CanGoBack then
   backButton.Active = true
  else backButton.Active = false
end

if thisGameObject.Browser.CanGoForward then
  forwardButton.Active = true
else forwardButton.Active = false
end

  
end



thisGameObject.SubscribeToEvents()
thisGameObject.OnUpdate(OnUpdate)

 

Zoom

float Zoom { get;set; }

Set the Zoom of the browser surface (Pixel Scaling). Positive values zoom in, negative values zoom out.

Space.Host.ExecutingObject.Browser.Zoom = 2


--the below scipt make a slider control the zoom in of a browser surface
--(Example: browser zoom controls)
--[Required: This object needs a Browser and slider objects to be added as reference to references section in Scripting Runtime component]
slider = Space.Host.GetReference("Slider").UISlider
browser = Space.Host.GetReference("Browser")

browser.Browser.SetURL("https://www.yahoo.com")


OnValueChanged = function()
browser.Browser.Zoom = slider.NormalizedValue * 5
end

slider.OnValueChanged(OnValueChanged)