Template progress

This commit is contained in:
atermonera
2018-08-26 17:07:38 -07:00
committed by Atermonera
parent 5cdeab7208
commit 32bca3d9b6
8 changed files with 170 additions and 75 deletions
@@ -117,17 +117,21 @@
if(cartridge) // If there's a cartridge, we need to grab the information from it
data["cart_devices"] = cartridge.get_device_status()
data["cart_templates"] = cartridge.ui_templates
data["cart_info"] = cartridge.get_data()
// update the ui if it exists, returns null if no ui is passed/found
ui = GLOB.nanomanager.try_update_ui(user, src, ui_key, ui, data, force_open)
if(!ui)
// the ui does not exist, so we'll create a new() one
// for a list of parameters and their descriptions see the code docs in \code\modules\nano\nanoui.dm
ui = new(user, src, ui_key, "communicator.tmpl", "Communicator", 475, 700, state = key_state)
data["currentTab"] = 1 // Reset the current tab, because we're going to home page
ui = new(user, src, ui_key, "communicator_header.tmpl", "Communicator", 475, 700, state = key_state)
// add templates for screens in common with communicator.
ui.add_template("atmosphericScan", "atmospheric_scan.tmpl")
// when the ui is first opened this is the data it will use
ui.set_initial_data(data)
// Append main body
ui.append_template("Body", "communicator.tmpl")
// open the new ui window
ui.open()
// auto update every five Master Controller tick
@@ -254,11 +258,8 @@
if(href_list["switch_template"])
var/datum/nanoui/ui = nanomanager.get_open_ui(usr, src, "main")
if(ui)
switch(href_list["switch_template"])
if("1")
ui.reinitialise("communicator.tmpl")
if("2")
ui.reinitialise("comm2.tmpl")
usr << "Switching to template [href_list["switch_template"]]"
ui.append_template("Body", href_list["switch_template"])
if(href_list["Light"])
fon = !fon
@@ -22,6 +22,9 @@
L[++L.len] = list("name" = I.name, "active" = 0, "index" = i++)
return L
/obj/item/weapon/commcard/proc/get_data()
return list()
/obj/item/weapon/commcard/engineering
name = "\improper Power-ON cartridge"
icon_state = "cart-e"
@@ -45,6 +48,7 @@
/obj/item/weapon/commcard/medical
name = "\improper Med-U cartridge"
icon_state = "cart-m"
ui_templates = list(list("name" = "Medical Records", "template" = "med_records.tmpl"), list("name" = "test", "template" = "comm2.tmpl")) // List of list for when multiple templates
//Med records template
//Med scanner
//Halogen counter
@@ -55,6 +59,27 @@
internal_devices |= new /obj/item/device/halogen_counter(src)
// Add med records template
/obj/item/weapon/commcard/medical/get_data()
var/data[0]
var/records[0]
for(var/datum/data/record/M in sortRecord(data_core.medical))
var/record[0]
record[++record.len] = list("tab" = "Name", "val" = M.fields["name"])
record[++record.len] = list("tab" = "ID", "val" = M.fields["id"])
record[++record.len] = list("tab" = "Blood Type", "val" = M.fields["b_type"])
record[++record.len] = list("tab" = "DNA #", "val" = M.fields["b_dna"])
record[++record.len] = list("tab" = "Gender", "val" = M.fields["id_gender"])
record[++record.len] = list("tab" = "Entity Classification", "val" = M.fields["brain_type"])
record[++record.len] = list("tab" = "Minor Disorders", "val" = M.fields["mi_dis"])
record[++record.len] = list("tab" = "Major Disorders", "val" = M.fields["ma_dis"])
record[++record.len] = list("tab" = "Allergies", "val" = M.fields["alg"])
record[++record.len] = list("tab" = "Condition", "val" = M.fields["cdi"])
record[++record.len] = list("tab" = "Notes", "val" = M.fields["notes"])
records[++records.len] = list("name" = M.fields["name"], "record" = record)
data["records"] = records
return data
/obj/item/weapon/commcard/medical/chemistry
name = "\improper ChemWhiz cartridge"
icon_state = "cart-chem"
+20 -7
View File
@@ -3,7 +3,7 @@ Title: Communicator UI
Used In File(s): code\game\objects\items\devices\communicator\communicator.dm
-->
<div class="statusDisplayComm">
<div class="statusDisplayComm">
<div class="item">
<div class="itemContent" style="width: 100%; text-align: center;">
<span class="average">{{:data.time}} | </span>
@@ -18,11 +18,24 @@ Used In File(s): code\game\objects\items\devices\communicator\communicator.dm
</div>
<div>{{:helper.link('Home', 'home', {'switch_template' : 1})}}</div>
<div class='homeContainer'>
<div class='homeScreen'>
{{for data.homeScreen}}
{{:helper.link(value.module, value.icon, {'switch_tab' : value.number}, null, 'link64')}}
<h3>Medical Records</h3>
{{if data.currentTab == "0"}}
<div>
{{for data.cart_info.records}}
<div class="item">
{{:helper.link(value.name, '', {"switch_tab" : value.name})}}
</div>
{{/for}}
</div>
</div>
{{/if}}
{{for data.cart_info.records}}
{{if value.name == data.currentTab}}
<div class="itemContent" style="width: 100%;">{{:helper.link('Back', 'icon-triangle-1-w', {'switch_tab' : 0})}}</div><BR>
{{for value.record :itemValue:itemIndex}}
<div class="item">
<div class="itemLabel">{{:itemValue.tab}}</div>
<div class="itemContent">{{:itemValue.val}}</div>
</div>
{{/for}}
{{/if}}
{{/for}}
+53 -61
View File
@@ -3,20 +3,6 @@ Title: Communicator UI
Used In File(s): code\game\objects\items\devices\communicator\communicator.dm
-->
<div class="statusDisplayComm">
<div class="item">
<div class="itemContent" style="width: 100%; text-align: center;">
<span class="average">{{:data.time}} | </span>
{{if data.connectionStatus == 1}}
<img class='uiIcon16 icon-signal-green' style='float: none; vertical-align: top'></img>
{{else}}
<img class='uiIcon16 icon-alert-red' style='float: none; vertical-align: top'></img>
{{/if}}
<span class="average"> | {{:data.owner}} | {{:data.occupation}}</span>
</div>
</div>
</div>
{{if data.currentTab == 1}}
<div class='homeContainer'>
@@ -86,43 +72,43 @@ Used In File(s): code\game\objects\items\devices\communicator\communicator.dm
<h3>Connection Management</h3>
<HR>
<h3>External Connections</h3>
{{for data.voice_mobs}}
<div class='item'>
<div class="itemLabel">
{{:value.name}}
</div>
<div class="itemContent">
<div style="float: left; width: 200px;">{{:helper.link('Disconnect', 'close', {'disconnect' : value.true_name}, null, 'redButton')}}</div>
</div>
{{for data.voice_mobs}}
<div class='item'>
<div class="itemLabel">
{{:value.name}}
</div>
{{/for}}
<div class="itemContent">
<div style="float: left; width: 200px;">{{:helper.link('Disconnect', 'close', {'disconnect' : value.true_name}, null, 'redButton')}}</div>
</div>
</div>
{{/for}}
<h3>Internal Connections</h3>
{{for data.communicating}}
<div class='item'>
<div class="itemLabel">
{{:value.name}}
</div>
<div class="itemContent">
{{:helper.link('Disconnect', 'close', {'disconnect' : value.true_name}, null, 'redButton')}}
{{if data.video_comm == null}}
{{:helper.link('Start Video', 'signal-diag', {'startvideo' : value.ref})}}
{{else data.video_comm == value.ref}}
{{:helper.link('End Video', 'signal-diag', {'endvideo' : value.true_name}, null, 'redButton')}}
{{/if}}
</div>
{{for data.communicating}}
<div class='item'>
<div class="itemLabel">
{{:value.name}}
</div>
{{/for}}
<div class="itemContent">
{{:helper.link('Disconnect', 'close', {'disconnect' : value.true_name}, null, 'redButton')}}
{{if data.video_comm == null}}
{{:helper.link('Start Video', 'signal-diag', {'startvideo' : value.ref})}}
{{else data.video_comm == value.ref}}
{{:helper.link('End Video', 'signal-diag', {'endvideo' : value.true_name}, null, 'redButton')}}
{{/if}}
</div>
</div>
{{/for}}
<h3>Requests Received</h3>
{{for data.requestsReceived}}
<div class='item'>
<div class="itemLabel">
{{:value.name}}
</div>
<div class="itemContent">
<div style="float: left; width: 300px;">{{:value.address}}</div> {{:helper.link('Accept', 'signal-diag', {'dial' : value.address})}}{{:helper.link('Decline', 'close', {'decline' : value.ref})}}
</div>
{{for data.requestsReceived}}
<div class='item'>
<div class="itemLabel">
{{:value.name}}
</div>
{{/for}}
<div class="itemContent">
<div style="float: left; width: 300px;">{{:value.address}}</div> {{:helper.link('Accept', 'signal-diag', {'dial' : value.address})}}{{:helper.link('Decline', 'close', {'decline' : value.ref})}}
</div>
</div>
{{/for}}
<h3>Invites Sent</h3>
{{for data.invitesSent}}
@@ -146,19 +132,19 @@ Used In File(s): code\game\objects\items\devices\communicator\communicator.dm
<HR>
<div class="itemContent" style="width: 100%;">{{:helper.link('Home', 'home', {'switch_tab' : 1})}}</div><BR>
{{for data.knownDevices}}
<div class='item'>
<div class="itemLabel">
{{:value.name}}
</div>
<div class="itemContent">
<div style="float: left; width: 100%;">{{:value.address}}</div>
{{:helper.link('Copy', 'pencil', {'copy' : value.address, 'switch_tab' : 2})}}
{{:helper.link('Call', 'phone', {'dial' : value.address, 'copy' : value.address, 'switch_tab' : 2})}}
{{:helper.link('Msg', 'mail-closed', {'copy' : value.address, 'copy_name' : value.name, 'switch_tab' : 40})}}
</div>
{{for data.knownDevices}}
<div class='item'>
<div class="itemLabel">
{{:value.name}}
</div>
{{/for}}
<div class="itemContent">
<div style="float: left; width: 100%;">{{:value.address}}</div>
{{:helper.link('Copy', 'pencil', {'copy' : value.address, 'switch_tab' : 2})}}
{{:helper.link('Call', 'phone', {'dial' : value.address, 'copy' : value.address, 'switch_tab' : 2})}}
{{:helper.link('Msg', 'mail-closed', {'copy' : value.address, 'copy_name' : value.name, 'switch_tab' : 40})}}
</div>
</div>
{{/for}}
<!-- Fourth Tab, Messaging -->
@@ -215,8 +201,8 @@ Used In File(s): code\game\objects\items\devices\communicator\communicator.dm
<HR>
<div class="itemContent" style="width: 100%;">{{:helper.link('Home', 'home', {'switch_tab' : 1})}}</div><BR>
{{if data.feeds.length}}
{{if data.feeds.length}}
<!--Most recent three posts -->
<h4>Recent News</h4>
<div class="statusDisplay" style="height: 250px; overflow: auto;">
@@ -418,8 +404,14 @@ Used In File(s): code\game\objects\items\devices\communicator\communicator.dm
<div class="itemContent" style="width: 100%;">{{:helper.link('Home', 'home', {'switch_tab' : 1})}}</div><BR>
<div class="itemContent">
{{:helper.link('External Device', 'gear', {'switch_template' : 2})}}
{{:helper.link('External Device', 'gear', {'switch_template' : 'comm2.tmpl'})}}
</div>
{{for data.cart_templates}}
<div class="itemContent">
{{:helper.link(value.name, 'gear', {'switch_template' : value.template, 'switch_tab' : 0})}}
</div>
{{empty}}
{{/for}}
{{if data.cart_devices}}
<HR>
<h4>Internal Devices</h3>
+16
View File
@@ -0,0 +1,16 @@
<div class="statusDisplayComm">
<div class="item" style="align: center; width: 100%; display: flex; flex: 1; justify-content: center">
<div>
<span class="average">{{:data.time}} | </span>
{{if data.connectionStatus == 1}}
<img class='uiIcon16 icon-signal-green' style='float: none; vertical-align: top'></img>
{{else}}
<img class='uiIcon16 icon-alert-red' style='float: none; vertical-align: top'></img>
{{/if}}
<span class="average"> | {{:data.owner}} | {{:data.occupation}} |</span>
</div>
<div style="padding-bottom: -4px; padding-left: 10px">
{{:helper.link('Home', 'home', {'switch_tab' : 1, 'switch_template' : 'communicator.tmpl'})}}
</div>
</div>
</div>
+27
View File
@@ -0,0 +1,27 @@
<!-- pAI manifest
code/modules/mob/living/silicon/pai/software_modules.dm
Copy-pasted from pda.tmpl
-->
<h3>Crew Manifest</h3>
<HR>
<div class="itemContent" style="width: 100%;">{{:helper.link('Home', 'home', {'switch_tab' : 1})}}</div><BR>
<div class="item">
<center><table class="pmon"><tbody>
{{for data.manifest}}
{{if value.elems.length}}
<tr><th colspan="3" class={{:value.cat}}>{{:value.cat}}</th></tr>
{{for value.elems :itemValue:itemIndex}}
<tr>
<td><span class="average">{{:itemValue.name}}</span></td>
<td><span class="average">{{:itemValue.rank}}</span></td>
<td><span class="average">{{:itemValue.active}}</span></td>
</tr>
{{/for}}
{{/if}}
{{/for}}
</tbody></table></center>
</div>
+21
View File
@@ -0,0 +1,21 @@
<h3>Medical Records</h3>
{{if data.currentTab == "0"}}
<div>
{{for data.cart_info.records}}
<div class="item">
{{:helper.link(value.name, '', {"switch_tab" : value.name})}}
</div>
{{/for}}
</div>
{{/if}}
{{for data.cart_info.records}}
{{if value.name == data.currentTab}}
<div class="itemContent" style="width: 100%;">{{:helper.link('Back', 'icon-triangle-1-w', {'switch_tab' : 0})}}</div><BR>
{{for value.record :itemValue:itemIndex}}
<div class="item">
<div class="itemLabel">{{:itemValue.tab}}</div>
<div class="itemContent">{{:itemValue.val}}</div>
</div>
{{/for}}
{{/if}}
{{/for}}
+1 -1
View File
@@ -2490,7 +2490,7 @@
#include "code\ZAS\Zone.dm"
#include "interface\interface.dm"
#include "interface\skin.dmf"
#include "maps\southern_cross\southern_cross.dm"
#include "maps\example\example.dm"
#include "maps\submaps\space_submaps\space.dm"
#include "maps\submaps\surface_submaps\mountains\mountains.dm"
#include "maps\submaps\surface_submaps\mountains\mountains_areas.dm"