Canvas widget matrix
Jump to navigation
Jump to search
This article is a stub. You can help the wiki by expanding it. |
The FlightGear forum has a subforum related to: Canvas |
See Howto:Processing legacy PUI dialogs using Canvas for the main article about this subject. |
This is intended to become a table with existing Canvas widgets, as well as a side-by-side comparison with PUI widgets to list missing features, progress/completion status, including links to all relevant resources (docs, source code pointers)
- fgdata/Nasal/canvas/gui/widgets/Button.nas
- fgdata/Nasal/canvas/gui/widgets/CheckBox.nas
- fgdata/Nasal/canvas/gui/widgets/Label.nas
- fgdata/Nasal/canvas/gui/widgets/LineEdit.nas (editable text box)
- fgdata/Nasal/canvas/gui/widgets/ScrollArea.nas (for scrollable content)
PUI widget | Priority | Canvas widget | Remarks |
---|---|---|---|
<hrule> /<vrule> |
not critical | Not implemented | |
<list> |
Not implemented | list, combo and select should probably be tackled together, there's plenty of common/similar functionality | |
<airport-list> |
Not implemented | trivial using navdb APIs and ScrollArea with buttons/labels for each entry and a corresponding event handler Howto:Processing_legacy_PUI_dialogs_using_Canvas#Use_Case:_airports.xml | |
<property-list> |
Not implemented | Property Browser, rough prototype exists already, basically mapping 3 props.nas APIs to a ScrollArea with buttons for each property/node, allowing the tree to be travsersed interactively | |
<input> |
LineEdit | ||
<text> |
Label | ||
<checkbox> |
Checkbox | ||
<radio> |
Not implemented | ||
<button> |
Button | ||
<map> |
Not implemented, see also Canvas MapStructure | Howto:Creating_a_Canvas_GUI_Widget#Implementing_a_Map_widget | |
<canvas> |
Not needed (for obvious reasons) | While we don't necessarily need a canvas widget, we need to map the PUI widget to a corresponding equivalent, i.e. an embedded Canvas with its own scripting block to animate the whole thing Howto:Processing_legacy_PUI_dialogs_using_Canvas#Embedded_Canvas | |
<combo> |
Not implemented | list, combo and select can be unified | |
<slider> |
Not implemented | can be implemented as a button with drag'n drop support, placed between two outer buttons in the form of [<] [button] [>]
| |
<dial> |
Not implemented | ||
<textbox> |
LineEdit and/or Label | ||
<select> |
Not implemented | list, combo and select can be unified | |
<waypointlist> |
Not implemented | trivial using navdb APIs and ScrollArea with buttons | |
<loglist> |
Not implemented | needs SGLOG logstream exposed via Nasal/CppBind | |
No equivalent | ScrollArea | serves as the generic building block for any PUI list-type (waypoints/airports) with labels/buttons added for each entry shown |