This reduces the number of assets needing to be sent on join by 150ish.
- Nanoui scripts modified to load templates in parallel instead of one at a time.
- Nanoui scripts modified to be willing to load from the resource bundle if available, falling back to ajax-loading the individual templates if absent.
As a demonstration of the partials inclusion feature, the HTML for the atmospheric scan screen (which was nearly identical between PDAs and Communicators) was moved into a separate file and then transcluded into both pda.tmpl and communicator.tmpl
Also added a README.dm with the very basics of nanoui and template transclusion, and fixed comments in nano_state.js
All mob-interaction logic now resides in nanointeraction.dm and is called by the base CanUseTopic().
Specifics for when objects allows mob-interaction can be specified by overriding CanUseTopic(), see machinery.dm.
* Simplified how items are positioned on the map (e.g. ((value.x - 1) * 8) is now just value.x, scaling is applied later).
* Added four zoom levels (x1.0 to x2.5, triggered by links in the template).
* Moved the "Generate NanoUI Map" into the Server tab, to prevent it being used by admins accidentally.
The layout HTML (which was mainly used for the title bar) is no longer hard coded in nanoui.dm.
Layouts are now dynamic and each consists of a template and stylesheet (CSS) file.
Multiple layouts can exist, they can be switched to using the set_layout_key proc. See the proc comments for more info.
Added "default" and "basic" layouts, "basic" has no title bar.
Moved image source assets (GIMP and Flash files) into a separate source folder so that they are not sent to the client.
* Simplified the code used in ui_interact procs and updated all current uses.
* Removed ununused jsviews JavaScript code (replaced it with vanilla jsrender).
* Added a message to the UI which shows if JavaScript is disabled (people with JavaScript disabled previously got blank UIs).
as you don't need to provide the full data structure up-front, part of an effort to make NanoUI more accessible.
I have removed the carets (^) from all templates as they are not used any more.
For safety I moved the src_object and user checks from the master controller to the nanoui process proc.
Creates NanoUI for the PDA and Syndicate Uplink.
New features:
Crew manifest now sorted with department heads at the top.
Can select individual conversations and delete individual conversations among PDA's
Powernet Monitor much more simple now and easier to read.
Janitorial supplies locator now includes Janicart.
Items will actually refresh if you click "Refresh"
Some other changes:
Captain's PDA cartridge now has all access (added janitor access and quartermaster access)
With the conversation change I had to change how tnote (the variable that holds PDA messages works.
Setup the message server to use the new methods.
Removed procs that will no longer be used (UI generation procs from old UI methods)
Commented everything the best I can.
Created HORRIBLE, TERRIBLE lists. But it's pretty much required because that's how nanoUI rolls.
Created a variable on the uplink called NanoUI items, this list is created upon creation of the
uplink.
I included the functionality for Mimes and Clowns for our downstream servers that have those.
Updated the Chem Dispenser UI with an Energy bar.
UIs attached to the Chem Dispenser will now update on recharge(), recharge now recharges 1 every 15 ticks instead of 2 every 30 (to make it feel more fluid).
* Visibility updates (now uses line of sight).
* Added displayBar() template helper for displaying progress/health bars.
* Added new health bars to Nano UI Cryo.
* Added Eject Occupant to Nano UI Cryo.
* Nano now handles Topic for the src_object, allowing it to only allow interactions with UIs that have a "STATUS_INTERACTIVE" status/visibility.
------------------------------------------------------------
nanoui - For creating and updating browser UIs
manomanager - For managing nanouis
Includes the "D:\Development\SS13-TG\code\game\machinery\cryo.dm" rebuilt using Nano.
Templates are stored in /nano/templates
This code is in development, it's also not commented yet.