1
0
Fork 0
Commit graph

304 commits

Author SHA1 Message Date
James Turner
b93ecb962b Canvas: add unload logic
Clean up various global things, especially commands, when
unloading the Canvas. This means reloads of Canvas are
clean.
2023-01-06 10:57:00 +00:00
James Turner
b359fc88cb TabWidget: make setCurrentTab lazy 2023-01-05 14:39:43 +00:00
James Turner
333321556f Add example of coordinate conversion 2023-01-05 14:28:20 +00:00
James Turner
df43cb2554 Canvas: make setVisible chainable
Change Element.setVisible to return self, so it can be chain
called like most other setters. Note this also requires some C++
changes in FlightGear.
2023-01-04 15:32:26 +00:00
TheFGFSEagle
074e2511de Fixed some more typos 2023-01-04 12:35:04 +00:00
TheFGFSEagle
114694cbbe Fix inheritance mistake, add resizing test button 2023-01-04 10:03:27 +00:00
TheFGFSEagle
b2f37b67f8 Added usage example for the TabWidget 2023-01-03 13:49:56 +00:00
TheFGFSEagle
4bc559bcf4 Added canvas widget factory dialog 2023-01-03 13:49:56 +00:00
TheFGFSEagle
09e15ddf16 Added canvas checkbox subclass whose check state is always the bool value of a node and vice versa 2023-01-03 12:39:51 +00:00
TheFGFSEagle
8d5e4aaf1c Added basic tab widget 2023-01-03 12:39:51 +00:00
James Turner
6e8520dbb5 Canvas windows: allow hiding without deletion
Optionally, allow Canvas windows to persist (and be shown again) when
closed.
2022-10-14 09:01:52 +01:00
James Turner
4fd8092e38 Canvas GUI: left position for checkbox text 2022-10-14 09:00:02 +01:00
James Turner
312822e4b0 Canvas: reduce SVG console spam
Ignore certain standard elements added by Sodipodi / Inkscape, to
reduce console spam loading SVGs.
2022-09-26 08:59:18 +01:00
James Turner
459dea77e5 Add more Nasal skeleton for new UI objects 2022-09-26 08:58:24 +01:00
James Turner
82cb79feb3 Add additional widgets for PUI compat
Styling of these is not complete yet.
2022-09-09 12:19:33 +01:00
James Turner
3965f216e5 Gui: add some helpers:
- clear() function on LineEdit
 - setDefault/Destructive flags on Button
 - check if focus is set on a Widget
2022-06-30 12:41:17 +02:00
Josh Davidson
918b5fd72f Canvas: Add an option for Canvas dialogs to not take focus from the simulator 2022-06-30 11:33:40 +02:00
James Turner
2fb18ceed6 ProperyElement: remove dependency on aircraft.nas
Make a local copy of the makeNode helper, so Canvas doesn't depend on
aircraft.nas
2022-03-06 10:59:06 +00:00
Scott Giese
61bf4c2858 Canvas Map: Add outline to aircraft symbol 2022-01-14 01:12:26 -06:00
Jonathan Redpath
18eaba13f4 Apply patch by Tobias Dammers - correct RTE.lcontroller equals function to fix the infamous model not found error 2022-01-03 15:51:22 +00:00
Stuart Buchanan
1093a3fa97 FG1000: TextElement setColor 2021-08-19 12:28:52 +01:00
James Turner
dd9507a6ef Error reporting UI tweaks 2021-04-30 13:44:08 +01:00
James Turner
6a9fddb999 Add Error notification popup 2021-04-27 16:09:27 +01:00
James Turner
02c70ee05f Canvas SVG: fix parsing of elliptical arcs in paths
See discussion in https://sourceforge.net/p/flightgear/codetickets/2569/ 

Colin Geniet found and fixed this, and has audited existing FGaddon
aircraft against this (also the FG1000).
2021-04-01 12:17:41 +01:00
Henning Stahlke
b791ead702 Fix SVG parser crash on unsupported <defs> element. 2021-02-14 13:01:18 +01:00
James Turner
c6b8869fed Tooltips: set a flag when registering the commands
This allows the C++ side to avoid invoking the commands prematurely.
2021-01-08 19:35:09 +00:00
legoboyvdlp R
850b6910b0 Switch live WXR layer to new API after wunderground API was taken down 2020-10-26 09:55:16 +00:00
Stuart Buchanan
45b97601f2 Handle unusual use of - in .svg files
Previously valid SVG strings such as
m 547.56916,962.17731 c 10e-6,25.66886
M831,144.861c-0.236,0.087-0.423,0.255-0.629,

would fail to parse.

Fix by Henning STALHKE
2020-08-19 20:09:06 +01:00
James Turner
398d9cb486 Add ‘del’ method to SVGCanvas
From Henning Stahlke
2020-08-02 11:06:19 +01:00
Stuart Buchanan
78e9eff433 FG1000: Keyboard input for GCU 47X
From Julio Santa Cruz
2020-07-07 13:28:32 +01:00
Henning Stahlke
486797d6c6 extract base class SVGCanvas from EFIS framework to canvas/api/svgcanvas.nas 2020-07-06 10:09:33 +01:00
Henning Stahlke
63fc1cf06d move colors from draw.nas to api/colors.nas 2020-07-06 10:09:26 +01:00
Henning Stahlke
c93cf18842 bugfix canvas/gui.nas: rte on undefined member, remove unnecessary settimer call 2020-07-06 10:09:17 +01:00
Henning Stahlke
01811ec69a canvas/gui.nas add missing return values 2020-07-06 10:09:08 +01:00
James Turner
1cee9485c6 Fix Canvas-Map runway display.
Transformation was being applied twice.

Patch by Gaétan Allaert.
2020-07-01 11:44:22 +01:00
Henning Stahlke
5a5d958dd9 replace typeof() == foo with isFoo 2020-05-17 20:03:43 +01:00
Henning Stahlke
d1d3b6559e compass.nas: add font to style hash; efis-canvas.nas: improve font mapping 2020-05-05 13:52:06 +01:00
Henning Stahlke
67c83d020f make font_mapper more configurable 2020-05-05 13:52:00 +01:00
Henning Stahlke
551f4dab62 canvas/api/element.nas add getType 2020-04-30 08:59:25 +01:00
Henning Stahlke
e16bf79e91 move "hidden" constructor from api.nas to api/canvas.nas; add destructor support 2020-04-30 08:59:25 +01:00
Henning Stahlke
3892d2eddd move fontmapper function from svg.nas to api/text.nas so it is generally avail 2020-04-30 08:59:25 +01:00
Henning Stahlke
e996f4c8c6 add getTranslation and setGeoPosition to transform.nas, adapt element.nas accordingly;
improve readability and comments
2020-04-30 08:59:25 +01:00
Henning Stahlke
2eb4c78794 improve code readability 2020-04-30 08:59:25 +01:00
Henning Stahlke
1094e5214e split classes into separate files 2020-04-30 08:59:25 +01:00
Henning Stahlke
fba17e4d34 Replace printlog by logprint 2020-04-21 09:07:20 +02:00
Stuart Buchanan
3caa899068 FG1000 - NRST PFD Function
Implement the Nearest Airports PFD softkey, displaying a scrollable
list of the closest 25 airports within 200nm.

Also fix a couple of minor bugs and add self-checking to the
GroupElement
2020-03-12 21:39:23 +00:00
Stuart Buchanan
76cfa2c077 FG1000 and MFD handle non-MFD Emesary notifications
Previously the FG1000 and MFD assumed that all notifications received
via Emesary had a Device_Id field.  This is true for
notifications.PFDEventNotification.DefaultType but not for other
messages - e.g. those generated by the AN SPN 46  system on the
carrier.

The effect of this was that when Nimitz was loaded, the FG1000 stopped
working with various errors.

This fix checks the notification type before the Device_Id.
2020-03-12 17:25:34 +00:00
Henning Stahlke
f547786fe4 add canvas/draw.nas library 2020-03-08 21:02:44 +01:00
Henning Stahlke
43efd64dd2 add aspect ratio lock feature to canvas window; user window.lockAspectRatio() to activate 2019-11-06 22:59:08 +01:00
Julian Smith
e41c0f099b Nasal/canvas/tooltip.nas: handle multiple properties.
Allows sprintf string to contain multiple %'s, which are mapped to multiple
<property>...</property> tags.
2019-08-31 14:14:18 +01:00