Pui2Canvas Maintenance Guide: Difference between revisions

From FlightGear wiki
Jump to navigation Jump to search
(Created page with "{{WIP}} == Entrypoint == == Structure of the Parser == == Factory Functions == == Related == {{Appendix}}")
 
m (pm2wiki: https://forum.flightgear.org/viewtopic.php?f=18&t=36685)
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{WIP}}
{{WIP}}


== Entrypoint ==
This article is a summary of the steps/pointers needed to successfully parse and re-interpret a subset of [[PropertyList XML File]] using Nasal scripting and the Canvas system:
== Structure of the Parser ==
 
== Factory Functions ==
== Background and Motivation ==
See:
 
* [[PUI]]
* [[Unifying the 2D rendering backend via canvas]]
 
== XML processing ==
XML processing can be done via [[Nasal library/io|io.nas]] - however, strictly speaking, it's not needed because the [[Nasal library/props]] module can transparently load an XML file from the base package and return it as a hash, so that you don't have to do any XML handling at all.
 
== Creating a Canvas ==
It's best to look at [[Canvas Snippets]] and see how easy it is to create a new Canvas from scratch.
 
== Creating Popups ==
See [[Tooltips]]
 
== Using Canvas Layouts ==
For now, please look at [[Canvas Layout System]]
 
== Event Handling ==
For event handling purposes, there's [[Canvas Event Handling]]
 
== Existing Widgets ==
See [[Canvas Widget Matrix]]
 
== Creating new Widgets ==
See [[Howto:Creating a Canvas GUI Widget]]


== Related ==
== Related ==
{{Appendix}}
{{Appendix}}

Latest revision as of 17:48, 21 December 2019

WIP.png Work in progress
This article or section will be worked on in the upcoming hours or days.
See history for the latest developments.

This article is a summary of the steps/pointers needed to successfully parse and re-interpret a subset of PropertyList XML File using Nasal scripting and the Canvas system:

Background and Motivation

See:

XML processing

XML processing can be done via io.nas - however, strictly speaking, it's not needed because the Nasal library/props module can transparently load an XML file from the base package and return it as a hash, so that you don't have to do any XML handling at all.

Creating a Canvas

It's best to look at Canvas Snippets and see how easy it is to create a new Canvas from scratch.

Creating Popups

See Tooltips

Using Canvas Layouts

For now, please look at Canvas Layout System

Event Handling

For event handling purposes, there's Canvas Event Handling

Existing Widgets

See Canvas Widget Matrix

Creating new Widgets

See Howto:Creating a Canvas GUI Widget

Related

References