diff --git a/addon-main.nas b/addon-main.nas index b6fd078..9354d12 100644 --- a/addon-main.nas +++ b/addon-main.nas @@ -8,34 +8,15 @@ var main = func( addon ) { var my_addon_id = "com.slawekmikula.flightgear.VfrNavigator"; var my_version = getprop("/addons/by-id/" ~ my_addon_id ~ "/version"); var my_root_path = getprop("/addons/by-id/" ~ my_addon_id ~ "/path"); + var my_settings_root_path = "/addons/by-id/" ~ my_addon_id ~ "/addon-devel/"; - var dialogs = ["vfrmap-settings", "vfrmap", "vfrstarter", "vfrtable"]; - - forindex (var i; dialogs) { - gui.Dialog.new("/sim/gui/dialogs/" ~ dialogs[i] ~ "/dialog", my_root_path ~ "/gui/" ~ dialogs[i] ~ ".xml"); - } - - var data = { - label : "VFR Starter", - name : "vfrstarter", - binding : { command : "dialog-show", "dialog-name" : "vfrstarter" }, - enabled : "true", - }; - - foreach(var item; props.getNode("/sim/menubar/default/menu[2]").getChildren("item")) { - if (item.getValue("name") == "vfrstarter") { - return; - } - } - - props.globals.getNode("/sim/menubar/default/menu[2]").addChild("item").setValues(data); - - fgcommand("gui-redraw"); + # persistent save of enable flag + props.globals.getNode(my_settings_root_path ~ "/showvfrstarter", 1).setAttribute("userarchive", "y"); var fdm_init_listener = _setlistener("/sim/signals/fdm-initialized", func { removelistener(fdm_init_listener); - if (getprop("/addons/by-id/" ~ my_addon_id ~ "/showvfrstarter") == 1) { + if (getprop(my_settings_root_path ~ "/showvfrstarter") == 1) { gui.showDialog("vfrstarter"); } }); @@ -43,7 +24,7 @@ var main = func( addon ) { var reinit_listener = _setlistener("/sim/signals/reinit", func { removelistener(reinit_listener); - if (getprop("/addons/by-id/" ~ my_addon_id ~ "/showvfrstarter") == 1) { + if (getprop(my_settings_root_path ~ "/showvfrstarter") == 1) { gui.showDialog("vfrstarter"); } }); diff --git a/addon-menubar-items.xml b/addon-menubar-items.xml new file mode 100644 index 0000000..e3357fa --- /dev/null +++ b/addon-menubar-items.xml @@ -0,0 +1,22 @@ + + + + FlightGear add-on menu bar items + 1 + + + + + + true + + + + + dialog-show + vfrstarter + + + + + \ No newline at end of file diff --git a/addon-metadata.xml b/addon-metadata.xml index dcd24af..5d1d392 100644 --- a/addon-metadata.xml +++ b/addon-metadata.xml @@ -9,7 +9,7 @@ com.slawekmikula.flightgear.VfrNavigator VFR Navigator - 1.0.0 + 1.1.0 diff --git a/doc/screens/vfr_flightplan.png b/doc/screens/vfr_flightplan.png new file mode 100644 index 0000000..fd09e32 Binary files /dev/null and b/doc/screens/vfr_flightplan.png differ diff --git a/doc/screens/vfr_mainmenu.png b/doc/screens/vfr_mainmenu.png new file mode 100644 index 0000000..f38bc4a Binary files /dev/null and b/doc/screens/vfr_mainmenu.png differ diff --git a/doc/screens/overview1.png b/doc/screens/vfr_overview1.png similarity index 100% rename from doc/screens/overview1.png rename to doc/screens/vfr_overview1.png diff --git a/doc/screens/overview2.png b/doc/screens/vfr_overview2.png similarity index 100% rename from doc/screens/overview2.png rename to doc/screens/vfr_overview2.png diff --git a/doc/screens/vfr_quickmenu.png b/doc/screens/vfr_quickmenu.png new file mode 100644 index 0000000..169f549 Binary files /dev/null and b/doc/screens/vfr_quickmenu.png differ diff --git a/doc/screens/vfr_smallmap.png b/doc/screens/vfr_smallmap.png new file mode 100644 index 0000000..fbdc6a3 Binary files /dev/null and b/doc/screens/vfr_smallmap.png differ diff --git a/doc/screens/vfr_smallmap_settings.png b/doc/screens/vfr_smallmap_settings.png new file mode 100644 index 0000000..a101825 Binary files /dev/null and b/doc/screens/vfr_smallmap_settings.png differ diff --git a/doc/usage.md b/doc/usage.md new file mode 100644 index 0000000..13ff102 --- /dev/null +++ b/doc/usage.md @@ -0,0 +1,50 @@ + +# Add-on usage + +![alt quickmenu](screens/vfr_overview2.png "Overview") + +# General interface + +![alt quickmenu](screens/vfr_mainmenu.png "Main menu ") + +![alt quickmenu](screens/vfr_quickmenu.png "Quick Menu") + +* **MP** - Small Map +* **PL** - Flight Plan +* **SW** - Stopwatch +* **R** - Radio interface +* **A** - ATC in range +* **RM** - Route Manager +* **X** - + +* MP - map - small map in lower left corner with route navigation, access to configuration (config button), zoom settings (buttons +/-) and quick action center on the aircraft (C button). On the bottom you can see information about current waypoint name, bearing (B), distance (D), ETA and wind direction/speed (W). +* PL - flightplan - in upper left corner +* SW - stopwatch +* R - radio panel +* A - ATC in ranges search +* RM - route manager activation + + +# Small map + +![alt quickmenu](screens/vfr_smallmap.png "Small map") + + +**Waypoint | Bearing | Distance | ETA | Wind DIRECTION/STRENGHT** + + +* **CONFIG** - +* **-/+** - +* **C** - +* **X** - + +![alt quickmenu](screens/vfr_smallmap_settings.png "Small map - settings") + +# Flightplan + +![alt quickmenu](screens/vfr_flightplan.png "Flight plan") + +# Stopwatch/Radio Interface/ATC in Range/Route Manager + + +# Support/Development \ No newline at end of file diff --git a/gui/vfrmap-settings.xml b/gui/dialogs/vfrmap-settings.xml similarity index 100% rename from gui/vfrmap-settings.xml rename to gui/dialogs/vfrmap-settings.xml diff --git a/gui/vfrmap.xml b/gui/dialogs/vfrmap.xml similarity index 100% rename from gui/vfrmap.xml rename to gui/dialogs/vfrmap.xml diff --git a/gui/vfrstarter.xml b/gui/dialogs/vfrstarter.xml similarity index 96% rename from gui/vfrstarter.xml rename to gui/dialogs/vfrstarter.xml index 76221ee..1440b77 100644 --- a/gui/vfrstarter.xml +++ b/gui/dialogs/vfrstarter.xml @@ -15,11 +15,11 @@ - setprop("/addons/by-id/com.slawekmikula.flightgear.VfrNavigator/showvfrstarter", 1); + setprop("/addons/by-id/com.slawekmikula.flightgear.VfrNavigator/addon-devel/showvfrstarter", 1); - setprop("/addons/by-id/com.slawekmikula.flightgear.VfrNavigator/showvfrstarter", 0); + setprop("/addons/by-id/com.slawekmikula.flightgear.VfrNavigator/addon-devel/showvfrstarter", 0); diff --git a/gui/vfrtable.xml b/gui/dialogs/vfrtable.xml similarity index 100% rename from gui/vfrtable.xml rename to gui/dialogs/vfrtable.xml diff --git a/readme.md b/readme.md index 13ceeae..ee3a0c8 100644 --- a/readme.md +++ b/readme.md @@ -1,37 +1,37 @@ # About -Flightgear VFR flight helper. Mostly helps with VFR flights offering map, route manager interface and helpers to get quickly to most common settings +Flightgear VFR flight helper. Helps with VFR flights by offering simplified map, +route manager interface and helpers to get quickly to most common settings. # Running -- extract zip (if downloaded as a zip) to a given location. For example let's say we have /myfolder/addons/vfrnavigator with contents of the navigator addon. -- run flightgear with --addon directive. WARNING this is not "additional settings" window in the launcher ! you have to modify windows shortcut or linux startup script for example to looks like this (in linux): +* extract zip (if downloaded as a zip) to a given location. For example + let's say we have /myfolder/addons/vfrnavigator with contents of the navigator + addon. +* run flightgear with --addon directive as in the example below or use Launcher + and go to "Add-Ons" section. There add this addon folder to Add-Ons and enable + it (checkbox at the line of the addon). Code: ``` - ./fgbin/bin/fgfs --fg-root=./fgdata --launcher --prop:/sim/fg-home=/myfolder/flightgear/fghome --addon="/myfolder/addons/vfrnavigator" + fgfs --fg-root=./fgdata --launcher --prop:/sim/fg-home=/myfolder/flightgear/fghome --addon="/myfolder/addons/vfrnavigator" ``` # Running -In main menu Position -> VFR Starter. When activated small window will appear in the upper right corner with links to most common used functions: - -* MP - map - small map in lower left corner with route navigation, access to configuration (config button), zoom settings (buttons +/-) and quick action center on the aircraft (C button). On the bottom you can see information about current waypoint name, bearing (B), distance (D), ETA and wind direction/speed (W). -* PL - flightplan - in upper left corner -* SW - stopwatch -* R - radio panel -* A - ATC in ranges search -* RM - route manager activation - +In main menu Position -> VFR Starter. When activated small window will appear +in the upper right corner with links to most common used functions. More info +in the document `usage` in the doc folder. # History -- 1.0.0 - first public version on github - +* 1.0.0 - first public version on github +* 1.1.0 - structure and initialization changes according to add-ons API manual, + usage documentation # Authors -- Slawek Mikula - source code +* Slawek Mikula - source code # Links