<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.frictionalgames.com/page?action=history&amp;feed=atom&amp;title=Hpl3%3ACommunity%3Ascripting%3Acustom_depth%3Astation_apps</id>
	<title>Hpl3:Community:scripting:custom depth:station apps - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.frictionalgames.com/page?action=history&amp;feed=atom&amp;title=Hpl3%3ACommunity%3Ascripting%3Acustom_depth%3Astation_apps"/>
	<link rel="alternate" type="text/html" href="https://wiki.frictionalgames.com/page?title=Hpl3:Community:scripting:custom_depth:station_apps&amp;action=history"/>
	<updated>2026-05-15T10:52:03Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.34.2</generator>
	<entry>
		<id>https://wiki.frictionalgames.com/page?title=Hpl3:Community:scripting:custom_depth:station_apps&amp;diff=96&amp;oldid=prev</id>
		<title>Maintenance script: Upload from wiki</title>
		<link rel="alternate" type="text/html" href="https://wiki.frictionalgames.com/page?title=Hpl3:Community:scripting:custom_depth:station_apps&amp;diff=96&amp;oldid=prev"/>
		<updated>2020-07-09T13:42:02Z</updated>

		<summary type="html">&lt;p&gt;Upload from wiki&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Station Gui - Apps==&lt;br /&gt;
The functions in this page originate from different script files. Look at the header for each section to know which script to include to use the functions in that section.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
===Airlock Pressure===&lt;br /&gt;
To use functions in this section, add ''#include “helper_imgui_station_app_airlockpressure.hps”'' to the top of your script file.&lt;br /&gt;
&lt;br /&gt;
====StationGui_AirlockPressure====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;&amp;quot;&amp;gt;void StationGui_AirlockPressure(&lt;br /&gt;
				const tString &amp;amp;in asStatus, &lt;br /&gt;
				float afPressure, &lt;br /&gt;
				bool abStatusIsWarning)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Parameters&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''tString''': The message to display in the status window.&lt;br /&gt;
* '''afPressure''': The pressure level, on a range from 0.0 - 1.0.&lt;br /&gt;
* '''abStatusIsWarning''': If true, the status message will blink red.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Remarks&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
While the typical range for afPressure is from 0.0 - 1.0, this places the indicator somewhere between the &amp;quot;IN&amp;quot; and &amp;quot;OUT&amp;quot; markers. If desired, you can also put values outside the range to make the indicator appear to the left or right of those markers.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' This function sets the Trans Category internally and doesn't change it back. If you're getting errors related to a missing trans category entry, use ImGui_SetTransCategory after calling this function.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
===Audio Playback===&lt;br /&gt;
To use functions in this section, add ''#include “helper_imgui_station_app_audioplayback.hps”'' to the top of your script file.&lt;br /&gt;
&lt;br /&gt;
====StationGui_AudioPlaybackApp====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;&amp;quot;&amp;gt;int StationGui_AudioPlaybackApp(&lt;br /&gt;
				cStationGui_AudioPlaybackSettings aSettings = cStationGui_AudioPlaybackSettings())&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Parameters&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''''(Optional)'' aSettings''': The message to display in the status window.&lt;br /&gt;
  &lt;br /&gt;
&amp;lt;u&amp;gt;Returns&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''int''': The index of the selected voice file, or -1 if no voice file is selected.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Remarks&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This function creates an audio player widget that uses a list of audio files, each of which automatically generates a playlist entry in the widget.&lt;br /&gt;
&lt;br /&gt;
Add voice files to the audio player using ''Depth_ImGui_AddAudioFile_Sound'' or ''Depth_ImGui_AddAudioFile_Voice''.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
====StationGui_VoicePlaybackWindow====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;&amp;quot;&amp;gt;bool StationGui_VoicePlaybackWindow(&lt;br /&gt;
				const tString &amp;amp;in asFile, &lt;br /&gt;
				const tString &amp;amp;in asSubject, &lt;br /&gt;
				const tString &amp;amp;in asVoiceCallback,&lt;br /&gt;
				const cVector3f &amp;amp;in avPos, &lt;br /&gt;
				const cVector2f &amp;amp;in avSize, &lt;br /&gt;
				float afFontSizeMul = 1.0f)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Parameters&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''asFile''': The text to display above the audio player.&lt;br /&gt;
* '''asSubject''': The voice subject to play.&lt;br /&gt;
* '''asVoiceCallback''': The name of the callback function to execute when voice playback ends.&lt;br /&gt;
* '''avPos''': The position of the window.&lt;br /&gt;
* '''avSize''': The size of the window.&lt;br /&gt;
* '''''(Optional)'' afFontSizeMul''': The font size multiplier.&lt;br /&gt;
  &lt;br /&gt;
&amp;lt;u&amp;gt;Returns&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''bool''': Whether the play button was pressed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Remarks&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This function adds a widget for playing a single voice file.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
====StationGui_VoicePlaybackButton====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;&amp;quot;&amp;gt;bool StationGui_VoicePlaybackButton(&lt;br /&gt;
				const tString &amp;amp;in asSubject, &lt;br /&gt;
				const tString &amp;amp;in asVoiceCallback, &lt;br /&gt;
				const cVector3f &amp;amp;in avPos, &lt;br /&gt;
				const cVector2f &amp;amp;in avSize)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Parameters&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''asSubject''': The voice subject to play.&lt;br /&gt;
* '''asVoiceCallback''': The name of the callback function to execute when voice playback ends.&lt;br /&gt;
* '''avPos''': The position of the button.&lt;br /&gt;
* '''avSize''': The size of the button.&lt;br /&gt;
  &lt;br /&gt;
&amp;lt;u&amp;gt;Returns&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''bool''': Whether the button was pressed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Remarks&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This function adds a button that plays a voice file when it is pressed.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
====StationGui_VoicePlaybackButtonExt====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;&amp;quot;&amp;gt;bool StationGui_VoicePlaybackButtonExt(&lt;br /&gt;
				const tString &amp;amp;in asSubject, &lt;br /&gt;
				const tString &amp;amp;in asVoiceCallback, &lt;br /&gt;
				const cVector3f &amp;amp;in avPos, &lt;br /&gt;
				const cVector2f &amp;amp;in avSize&lt;br /&gt;
				const cImGuiButtonData &amp;amp;in aButton)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Parameters&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''asSubject''': The voice subject to play.&lt;br /&gt;
* '''asVoiceCallback''': The name of the callback function to execute when voice playback ends.&lt;br /&gt;
* '''avPos''': The position of the button.&lt;br /&gt;
* '''avSize''': The size of the button.&lt;br /&gt;
* '''aButton''': The data to use for the button.&lt;br /&gt;
  &lt;br /&gt;
&amp;lt;u&amp;gt;Returns&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''bool''': Whether the button was pressed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Remarks&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This function adds a button that plays a voice file when it is pressed, using a specified cImGuiButtonData as the button data.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
====StationGui_StartVoicePlayback====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;&amp;quot;&amp;gt;void StationGui_StartVoicePlayback(&lt;br /&gt;
				const tString &amp;amp;in asTerminal, &lt;br /&gt;
				const tString &amp;amp;in asSubject, &lt;br /&gt;
				const tString &amp;amp;in asCallback)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Parameters&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''asTerminal''': The name of the terminal to play the voice from.&lt;br /&gt;
* '''asSubject''': The voice subject to play.&lt;br /&gt;
* '''asCallback''': The name of the callback function to execute when voice playback ends.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Remarks&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This is a utility function to play a voice subject from a terminal.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
====StationGui_StopVoicePlayback====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;&amp;quot;&amp;gt;void StationGui_StopVoicePlayback(&lt;br /&gt;
				const tString &amp;amp;in asTerminal, &lt;br /&gt;
				bool abResetTime)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Parameters&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''asTerminal''': The name of the terminal to stop the voice playback from.&lt;br /&gt;
* '''abResetTime''': Whether the playback counter of the terminal should be reset to zero.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Remarks&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This is a utility function to stop playback of a voice subject from a terminal.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
====StationGui_AudioPlaybackWindow====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;&amp;quot;&amp;gt;void StationGui_AudioPlaybackWindow(&lt;br /&gt;
				const tString &amp;amp;in asDisplayName, &lt;br /&gt;
				const tString &amp;amp;in asAudioFileName, &lt;br /&gt;
				const cVector3f &amp;amp;in avPos, &lt;br /&gt;
				const cVector2f &amp;amp;in avSize, &lt;br /&gt;
				float afFontSizeMul = 1.0f)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Parameters&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''asDisplayName''': The text to display above the audio player.&lt;br /&gt;
* '''asAudioFileName''': The audio file to play.&lt;br /&gt;
* '''avPos''': The position of the window.&lt;br /&gt;
* '''avSize''': The size of the window.&lt;br /&gt;
* '''''(Optional)'' afFontSizeMul''': The font size multiplier.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Remarks&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This function adds a widget for playing a single audio file.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
====StationGui_StartAudioPlayback====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;&amp;quot;&amp;gt;void StationGui_StartAudioPlayback(&lt;br /&gt;
				const tString &amp;amp;in asTerminal, &lt;br /&gt;
				const tString &amp;amp;in asSoundFile = &amp;quot;&amp;quot;)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Parameters&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''asTerminal''': The name of the terminal to stop the sound playback from.&lt;br /&gt;
* '''''(Optional)'' asSoundFile''': The sound file to play. (If empty, a TODO message is printed automatically.)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Remarks&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This is a utility function to play an audio file from a terminal.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
====StationGui_StopAudioPlayback====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;&amp;quot;&amp;gt;void StationGui_StopAudioPlayback(&lt;br /&gt;
				const tString &amp;amp;in asTerminal,&lt;br /&gt;
				bool abResetTime)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Parameters&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''asTerminal''': The name of the terminal to play the voice from.&lt;br /&gt;
* '''abResetTime''': Whether the playback counter of the terminal should be reset to zero.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Remarks&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This is a utility function to stop playback of an audio file from a terminal.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
===Door Locks===&lt;br /&gt;
To use functions in this section, add ''#include “helper_imgui_station_app_doorlocks.hps”'' to the top of your script file.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
====StationGui_DoorLockApp====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;&amp;quot;&amp;gt;void StationGui_DoorLockApp(&lt;br /&gt;
				const cStationGui_DoorLockAppSettings &amp;amp;in aSettings = cStationGui_DoorLockAppSettings())&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Parameters&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''''(Optional)'' aSettings''': The data to use for the app window.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Remarks&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This function adds a widget that handles automatic door locks based on an interactive map overlay. Add locks to the widget by calling ''StationGui_DoorLockApp_AddLock''.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
====StationGui_DoorLockApp====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;&amp;quot;&amp;gt;void StationGui_DoorLockApp_AddLock(&lt;br /&gt;
				const cDoorLockAppButton &amp;amp;in aButton)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Parameters&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''''(Optional)'' aButton''': The button data to use for the lock.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Remarks&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This function adds a lock object to a DoorLockApp.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
===Error===&lt;br /&gt;
To use functions in this section, add ''#include “helper_imgui_station_app_error.hps”'' to the top of your script file.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
====StationGui_GetError====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;&amp;quot;&amp;gt;tString StationGui_GetError()&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Returns&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''tString''': The current StationGui error message.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Remarks&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This function returns the current StationGui error message.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
====StationGui_SetError====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;&amp;quot;&amp;gt;void StationGui_SetError(&lt;br /&gt;
				const tString&amp;amp;in asErrorMsg, &lt;br /&gt;
				const tString &amp;amp;in asSoundEffect = &amp;quot;&amp;quot;)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Parameters&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''asErrorMsg''': The error message.&lt;br /&gt;
* '''''(Optional)'' asSoundEffect''': The name of the sound effect to play when the error message is displayed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Remarks&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This function sets the current StationGui error message to the given value.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
====StationGui_SetError====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;&amp;quot;&amp;gt;void StationGui_SetError(&lt;br /&gt;
				const tString&amp;amp;in asTerminal,&lt;br /&gt;
				const tString&amp;amp;in asErrorMsg, &lt;br /&gt;
				const tString &amp;amp;in asSoundEffect = &amp;quot;&amp;quot;)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Parameters&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''asTerminal''': The terminal to set the error message for.&lt;br /&gt;
* '''asErrorMsg''': The error message.&lt;br /&gt;
* '''''(Optional)'' asSoundEffect''': The name of the sound effect to play when the error message is displayed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Remarks&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This function sets the current StationGui error message to the given value. This overload is for setting the error message for a specific terminal.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
====StationGui_ErrorBox====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;&amp;quot;&amp;gt;bool StationGui_ErrorBox(&lt;br /&gt;
				bool abDisplayOKButton = true)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Parameters&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''''(Optional)'' abDisplayOKButton''': Whether an OK button is displayed in the dialog box.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Returns&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''bool''': Whether the OK button has been pressed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Remarks&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This function retrieves the current StationGui error message and displays it in a dialog box in the center of the terminal screen. If the error message is not set, this function returns true without displaying anything. Set the current error message by calling ''StationGui_SetError''.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
====StationGui_ErrorBox====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;&amp;quot;&amp;gt;bool StationGui_ErrorBox(&lt;br /&gt;
				const tString &amp;amp;in asError, &lt;br /&gt;
				const cGuiDialogBoxSettings &amp;amp;in aDialogBox))&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Parameters&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''asError''': The error message to display.&lt;br /&gt;
* '''aDialogBox''': The data to use for the dialog box.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Returns&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''bool''': Whether the OK button has been pressed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Remarks&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This function displays a given error message in a dialog box in the center of the terminal screen.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
====StationGui_DrawAndCheckErrors====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;&amp;quot;&amp;gt;bool StationGui_DrawAndCheckErrors(&lt;br /&gt;
				const cStationGui_ErrorSettings &amp;amp;in aSettings = cStationGui_ErrorSettings())&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Parameters&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''''(Optional)'' aSettings''': The data to use for the error box.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Returns&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''bool''': Whether an error message is currently displayed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Remarks&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This function retrieves the current StationGui error message and displays it in a dialog box in the center of the terminal screen. If the error message is not set, this function returns true without displaying anything. Set the current error message by calling ''StationGui_SetError''.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
===Mail===&lt;br /&gt;
To use functions in this section, add ''#include “helper_imgui_station_app_mail.hps”'' to the top of your script file.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
====StationGui_MailApp====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;&amp;quot;&amp;gt;void StationGui_MailApp(&lt;br /&gt;
				const tString &amp;amp;in asSendMailCallback = &amp;quot;&amp;quot;)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Parameters&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''''(Optional)'' asSendMailCallback''': The callback function for when a Send button is pressed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Remarks&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This function creates an email widget. Add emails by using calls to ''Depth_ImGui_AddMail''.&lt;br /&gt;
&lt;br /&gt;
The callback signature is ''bool functionName(const tString &amp;amp;in asTitle)''.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
===Numpad===&lt;br /&gt;
To use functions in this section, add ''#include “helper_imgui_station_app_numpad.hps”'' to the top of your script file.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
====StationGui_MailApp====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;&amp;quot;&amp;gt;bool StationGui_Numpad(&lt;br /&gt;
				const tString &amp;amp;in asHeader, &lt;br /&gt;
				uint alMaxChars, &lt;br /&gt;
				float afNumpadDisplayRatio = 0.2, &lt;br /&gt;
				const cVector3f &amp;amp;in avPos = ImGui_NrmPos(cVector3f(0.125, 0.1, 1.5)), &lt;br /&gt;
				const cVector2f &amp;amp;in avSize = ImGui_NrmSizeGroup(cVector2f(0.75, 0.675)))&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Parameters&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''asHeader''': The text to display at the top of the app.&lt;br /&gt;
* '''alMaxChars''': The number of characcters in the passcode.&lt;br /&gt;
* '''afNumpadDisplayRatio''': The ratio that determines the height of the numpad portion of the app.&lt;br /&gt;
* '''''(Optional)'' avPos''': The position of the app.&lt;br /&gt;
* '''''(Optional)'' avSize''': The size of the app.&lt;br /&gt;
  &lt;br /&gt;
&amp;lt;u&amp;gt;Returns&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''bool''': Returns true if the OK button was pressed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Remarks&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This function creates a number pad app for numerical code entry. It does not handle checking the code against a passcode automatically - manually check the input code by calling ''StationGui_GetNumpadInput''.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
====StationGui_MailApp====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;&amp;quot;&amp;gt;tString StationGui_GetNumpadInput()&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
&amp;lt;u&amp;gt;Returns&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''tString''': Returns the current input in the numpad app.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Remarks&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Use this function to check the current input against a particular passcode.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
====StationGui_MailApp====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;&amp;quot;&amp;gt;void StationGui_SetNumpadInput(&lt;br /&gt;
				const tString &amp;amp;in asInput)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Parameters&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''asInput''': The input of the numpad.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Remarks&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Use this function if you need to manually set the number pad's value.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
===Photo Viewer===&lt;br /&gt;
To use functions in this section, add ''#include “helper_imgui_station_app_photoviewer.hps”'' to the top of your script file.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
====StationGui_PhotoViewer====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;&amp;quot;&amp;gt;int StationGui_PhotoViewer(&lt;br /&gt;
				const tString &amp;amp;in asCaption = &amp;quot;&amp;quot;, &lt;br /&gt;
				const tString &amp;amp;in asName = &amp;quot;&amp;quot;, &lt;br /&gt;
				const cStationGui_PhotoViewerSettings &amp;amp;in aSettings = cStationGui_PhotoViewerSettings())&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Parameters&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''''(Optional)'' asCaption''': The caption to display at the top of the app.&lt;br /&gt;
* '''''(Optional)'' asName''': The name of this instance of the app.&lt;br /&gt;
* '''''(Optional)'' aSettings''': The settings to use for the app.&lt;br /&gt;
  &lt;br /&gt;
&amp;lt;u&amp;gt;Returns&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''int''': The index of the selected photo.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Remarks&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This function creates a photo viewer widget that displays a slideshow of photos. Add photos to the app using ''Depth_ImGui_AddPhotoFile''.&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
		
	</entry>
</feed>