Files
2025-02-05 06:19:18 +00:00

48 lines
13 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><base href="../../../"><link rel="stylesheet" href="dmdoc.css"><title>/datum/controller/subsystem/tgui - /tg/ Station 13</title></head><body><header><a href="index.html">/tg/ Station 13</a> - <a href="index.html#modules">Modules</a> - <a href="index.html#types">Types</a><a href="datum/controller/subsystem/tgui.html#var">Var Details</a> - <a href="datum/controller/subsystem/tgui.html#proc">Proc Details</a></header><main><h1>tgui <aside>/<a href="datum.html">datum</a>/<a href="datum/controller/subsystem.html">controller/subsystem</a>/<a href="datum/controller/subsystem/tgui.html">tgui</a></aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/tgui.dm#L13"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/tgui.dm 13"></a></h1><table class="summary" cellspacing="0"><tr><td colspan="2"><h2>Vars</h2></td></tr><tr><th><a href="datum/controller/subsystem/tgui.html#var/basehtml">basehtml</a></th><td>The HTML base used for all UIs.</td></tr><tr><th><a href="datum/controller/subsystem/tgui.html#var/current_run">current_run</a></th><td>A list of UIs scheduled to process</td></tr><tr><th><a href="datum/controller/subsystem/tgui.html#var/open_uis">open_uis</a></th><td>A list of open UIs</td></tr><tr><th><a href="datum/controller/subsystem/tgui.html#var/open_uis_by_src">open_uis_by_src</a></th><td>A list of open UIs, grouped by src_object.</td></tr><tr><td colspan="2"><h2>Procs</h2></td></tr><tr><th><a href="datum/controller/subsystem/tgui.html#proc/close_all_uis">close_all_uis</a></th><td>public</td></tr><tr><th><a href="datum/controller/subsystem/tgui.html#proc/close_uis">close_uis</a></th><td>public</td></tr><tr><th><a href="datum/controller/subsystem/tgui.html#proc/close_user_uis">close_user_uis</a></th><td>public</td></tr><tr><th><a href="datum/controller/subsystem/tgui.html#proc/force_close_all_windows">force_close_all_windows</a></th><td>public</td></tr><tr><th><a href="datum/controller/subsystem/tgui.html#proc/force_close_window">force_close_window</a></th><td>public</td></tr><tr><th><a href="datum/controller/subsystem/tgui.html#proc/get_open_ui">get_open_ui</a></th><td>public</td></tr><tr><th><a href="datum/controller/subsystem/tgui.html#proc/on_close">on_close</a></th><td>private</td></tr><tr><th><a href="datum/controller/subsystem/tgui.html#proc/on_logout">on_logout</a></th><td>private</td></tr><tr><th><a href="datum/controller/subsystem/tgui.html#proc/on_open">on_open</a></th><td>private</td></tr><tr><th><a href="datum/controller/subsystem/tgui.html#proc/on_transfer">on_transfer</a></th><td>private</td></tr><tr><th><a href="datum/controller/subsystem/tgui.html#proc/request_pooled_window">request_pooled_window</a></th><td>public</td></tr><tr><th><a href="datum/controller/subsystem/tgui.html#proc/try_update_ui">try_update_ui</a></th><td>public</td></tr><tr><th><a href="datum/controller/subsystem/tgui.html#proc/update_uis">update_uis</a></th><td>public</td></tr><tr><th><a href="datum/controller/subsystem/tgui.html#proc/update_user_uis">update_user_uis</a></th><td>public</td></tr></table><h2 id="var">Var Details</h2><h3 id="var/basehtml"><aside class="declaration">var </aside>basehtml <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/tgui.dm#L29"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/tgui.dm 29"></a></h3><p>The HTML base used for all UIs.</p><h3 id="var/current_run"><aside class="declaration">var </aside>current_run <aside> /list</aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/tgui.dm#L21"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/tgui.dm 21"></a></h3><p>A list of UIs scheduled to process</p><h3 id="var/open_uis"><aside class="declaration">var </aside>open_uis <aside> /list</aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/tgui.dm#L23"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/tgui.dm 23"></a></h3><p>A list of open UIs</p><h3 id="var/open_uis_by_src"><aside class="declaration">var </aside>open_uis_by_src <aside> /list</aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/tgui.dm#L25"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/tgui.dm 25"></a></h3><p>A list of open UIs, grouped by src_object.</p><h2 id="proc">Proc Details</h2><h3 id="proc/close_all_uis"><aside class="declaration">proc </aside>close_all_uis<aside>() <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/tgui.dm#L231"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/tgui.dm 231"></a></aside></h3><p>public</p>
<p>Close all UIs regardless of their attachment to src_object.</p>
<p>return int The number of UIs closed.</p><h3 id="proc/close_uis"><aside class="declaration">proc </aside>close_uis<aside>(/<a href="datum.html">datum</a>/src_object) <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/tgui.dm#L211"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/tgui.dm 211"></a></aside></h3><p>public</p>
<p>Close all UIs attached to src_object.</p>
<p>required src_object datum The object/datum which owns the UIs.</p>
<p>return int The number of UIs closed.</p><h3 id="proc/close_user_uis"><aside class="declaration">proc </aside>close_user_uis<aside>(/<a href="mob.html">mob</a>/user, /<a href="datum.html">datum</a>/src_object) <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/tgui.dm#L271"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/tgui.dm 271"></a></aside></h3><p>public</p>
<p>Close all UIs belonging to a user.</p>
<p>required user mob The mob who opened/is using the UI.
optional src_object datum If provided, only close UIs belonging this src_object.</p>
<p>return int The number of UIs closed.</p><h3 id="proc/force_close_all_windows"><aside class="declaration">proc </aside>force_close_all_windows<aside>(/<a href="mob.html">mob</a>/user) <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/tgui.dm#L100"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/tgui.dm 100"></a></aside></h3><p>public</p>
<p>Force closes all tgui windows.</p>
<p>required user mob</p><h3 id="proc/force_close_window"><aside class="declaration">proc </aside>force_close_window<aside>(/<a href="mob.html">mob</a>/user, window_id) <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/tgui.dm#L116"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/tgui.dm 116"></a></aside></h3><p>public</p>
<p>Force closes the tgui window by window_id.</p>
<p>required user mob
required window_id string</p><h3 id="proc/get_open_ui"><aside class="declaration">proc </aside>get_open_ui<aside>(/<a href="mob.html">mob</a>/user, /<a href="datum.html">datum</a>/src_object) <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/tgui.dm#L169"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/tgui.dm 169"></a></aside></h3><p>public</p>
<p>Get a open UI given a user and src_object.</p>
<p>required user mob The mob who opened/is using the UI.
required src_object datum The object/datum which owns the UI.</p>
<p>return datum/tgui The found UI.</p><h3 id="proc/on_close"><aside class="declaration">proc </aside>on_close<aside>(/<a href="datum.html">datum</a>/<a href="datum/tgui.html">tgui</a>/ui) <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/tgui.dm#L306"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/tgui.dm 306"></a></aside></h3><p>private</p>
<p>Remove a UI from the list of open UIs.</p>
<p>required ui datum/tgui The UI to be removed.</p>
<p>return bool If the UI was removed or not.</p><h3 id="proc/on_logout"><aside class="declaration">proc </aside>on_logout<aside>(/<a href="mob.html">mob</a>/user) <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/tgui.dm#L330"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/tgui.dm 330"></a></aside></h3><p>private</p>
<p>Handle client logout, by closing all their UIs.</p>
<p>required user mob The mob which logged out.</p>
<p>return int The number of UIs closed.</p><h3 id="proc/on_open"><aside class="declaration">proc </aside>on_open<aside>(/<a href="datum.html">datum</a>/<a href="datum/tgui.html">tgui</a>/ui) <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/tgui.dm#L288"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/tgui.dm 288"></a></aside></h3><p>private</p>
<p>Add a UI to the list of open UIs.</p>
<p>required ui datum/tgui The UI to be added.</p><h3 id="proc/on_transfer"><aside class="declaration">proc </aside>on_transfer<aside>(/<a href="mob.html">mob</a>/source, /<a href="mob.html">mob</a>/target) <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/tgui.dm#L343"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/tgui.dm 343"></a></aside></h3><p>private</p>
<p>Handle clients switching mobs, by transferring their UIs.</p>
<p>required user source The client's original mob.
required user target The client's new mob.</p>
<p>return bool If the UIs were transferred.</p><h3 id="proc/request_pooled_window"><aside class="declaration">proc </aside>request_pooled_window<aside>(/<a href="mob.html">mob</a>/user) <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/tgui.dm#L64"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/tgui.dm 64"></a></aside></h3><p>public</p>
<p>Requests a usable tgui window from the pool.
Returns null if pool was exhausted.</p>
<p>required user mob
return datum/tgui</p><h3 id="proc/try_update_ui"><aside class="declaration">proc </aside>try_update_ui<aside>(/<a href="mob.html">mob</a>/user, /<a href="datum.html">datum</a>/src_object, /<a href="datum.html">datum</a>/<a href="datum/tgui.html">tgui</a>/ui) <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/tgui.dm#L139"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/tgui.dm 139"></a></aside></h3><p>public</p>
<p>Try to find an instance of a UI, and push an update to it.</p>
<p>required user mob The mob who opened/is using the UI.
required src_object datum The object/datum which owns the UI.
optional ui datum/tgui The UI to be updated, if it exists.
optional force_open bool If the UI should be re-opened instead of updated.</p>
<p>return datum/tgui The found UI.</p><h3 id="proc/update_uis"><aside class="declaration">proc </aside>update_uis<aside>(/<a href="datum.html">datum</a>/src_object) <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/tgui.dm#L189"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/tgui.dm 189"></a></aside></h3><p>public</p>
<p>Update all UIs attached to src_object.</p>
<p>required src_object datum The object/datum which owns the UIs.</p>
<p>return int The number of UIs updated.</p><h3 id="proc/update_user_uis"><aside class="declaration">proc </aside>update_user_uis<aside>(/<a href="mob.html">mob</a>/user, /<a href="datum.html">datum</a>/src_object) <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/tgui.dm#L251"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/tgui.dm 251"></a></aside></h3><p>public</p>
<p>Update all UIs belonging to a user.</p>
<p>required user mob The mob who opened/is using the UI.
optional src_object datum If provided, only update UIs belonging this src_object.</p>
<p>return int The number of UIs updated.</p></main><footer>tgstation.dme <a href="https://github.com/evilew/GS13-Citadel/tree/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e">e8e0068</a> (master) — <a href="https://github.com/SpaceManiac/SpacemanDMM/blob/master/crates/dmdoc/README.md">dmdoc 1.9.0</a></footer></body></html>