James Turner
99fd9513d9
Metar: finalise-position fast if Metar fails
...
- when METAR lookup fails (as opposed to timing out), report
this immediately so finalise-position doesn't wait.
2014-02-24 19:43:21 +00:00
James Turner
bd8e43c007
Initial work on 'reposition' command
...
- use old-style reset as the basis for a lightweight 'reposition' command. This does not restore state, or reset
time management, but does reset the FDM and re-finalize position.
2014-02-24 19:43:21 +00:00
James Turner
b76d255d82
Remove pre-OSG 'enable/disable-textures' option.
...
These have been non-functional for a long time, remove
to avoid further confusion.
2014-02-21 07:57:35 -08:00
James Turner
39d1b6db38
Re-factor the FPE handling code
...
* make --enable-fpe work on Linux and MSVC
* standardise the code paths for different platforms
* add an argument finding helper to Options
(This is a basic cleanup, contributions from people with
more experience in this area are welcome)
2014-02-19 13:53:52 -08:00
Christian Schmitt
9d995907db
Support helipad names in the --runway startup option
...
also give better user feedback if runway/helipad ID is unknown
2014-02-14 20:05:11 +01:00
James Turner
7bc7197f6a
Use Cmake to generate app-bundle on Mac
...
- build the .plist using CMake features
- update the nightly Mac packaging script for the new layout
2014-02-14 18:58:36 +00:00
James Turner
4df9c61d2a
Check for and warn about old nVidia drivers.
...
(Had a bug report with someone using 189 drivers on Windows!)
2014-01-27 17:27:12 +00:00
James Turner
1a372d9366
Update image-server logic.
...
- no dependency on libJpeg or Simgear
- no duplicate rendering of the scene (uses a draw callback)
- supports other image types, eg PNG
- threaded so doesn't block the main loop ever
2014-01-27 09:08:34 +00:00
James Turner
9f3a2ddbdc
Change default Windows terrasync path
...
Now use (new) SGPath::documents helper to download
to a user-visible location: Document\FlightGear.
(Linux & Mac behaviour is unchanged)
2014-01-26 16:07:53 +00:00
James Turner
c8b1655edc
Report bad command-line args via message box.
...
This makes the behaviour when FGRun (or other GUI launchers)
send bad options much more explicable. Non Windows/Mac systems
get an SG_ALERT on the console as before.
2014-01-25 10:36:00 +00:00
James Turner
45d67406a4
CrashRpt tweaks, checking.
...
- show a message box if setup fails
- log setup status
2014-01-22 22:33:30 +00:00
James Turner
80cc2ff8c3
Adjust fg-aircraft handling back to original style.
...
- startup code will warn and fix the alternate style
- man page now documents the option
2014-01-22 10:56:04 +00:00
James Turner
a46114da9a
Fix typo, add Hudson Build-ID to reports.
2014-01-20 21:54:06 +00:00
James Turner
ce3a7b20fe
Crash-fix: mat-lib is now reference-counted.
...
Adapt to corresponding SG change to make SGMaterialLib be ref-counted,
and have the 'reload-materials' command notify the tile-manager of this,
so it can update the options struct it passes to new tiles.
2014-01-19 16:49:44 +00:00
James Turner
2a460d8e86
Make CrashRpt link optional
...
(The variable contains -NOTFOUND, not the empty string, so we can't
just link against it regardless)
2014-01-18 15:36:20 +00:00
James Turner
590be3f8ff
Initial integration of CrashRpt for Windows.
2014-01-18 14:51:19 +00:00
James Turner
2a354e224c
Make Traffic-via-terrasync conditional
...
GUI dialog already set the property, just need to pick it up.
2014-01-15 22:01:02 +00:00
James Turner
2b55acd3eb
Tweaks to fg-aircraft handling.
...
Warn (but do not require, since people would probably complain) when
added paths do not contain an Aircraft subdir. When people specify
a path which ends in /Aircraft, use the parent directory.
2014-01-15 17:10:12 +00:00
James Turner
061154d7a6
Reset, fix Nasal timers added on shutdown.
2014-01-13 20:13:34 +00:00
James Turner
4d0eeb8184
Reset work, fix time-slew on OSG event handling.
2014-01-13 20:13:34 +00:00
James Turner
448539a6b9
Fix crash: Quit via Cmd-Q on Mac.
...
Tweak static-init order of some OSG objects, so they are valid when
fg_terminate runs, and hence orderly shutdown in possible.
2014-01-04 17:27:55 +00:00
James Turner
9e773e85f8
#1291 , hang on exit with OSG threading.
...
Explicitly stop threading during shutdown, before destroying various
rendering / viewer related structures.
2014-01-04 16:10:42 +00:00
James Turner
47e802e674
Fix for the fix: check for a viewer.
...
- avoid a crash if we bail out before creating the viewer (missing
data or bad aircraft)
2013-12-30 17:16:53 +00:00
James Turner
b0db2a764f
Fix crash on exit (cancel the osgDB pager)
...
- borrow some code from the new reset codepath to cleanly stop the
OSG pager thread during normal shutdown. Avoids a race-condition
destroying various structures the pager thread might be modifying.
2013-12-30 15:24:15 +00:00
James Turner
4c51ad0d87
Cocoa: fix warning about deprecated function.
...
SetFrontProcess is deprecated, use NSApplication instead now we
have the CocoaHelpers file.
2013-12-21 15:31:27 +00:00
Rebecca Palmer
4427ee7406
Always make sure the Terrasync directory is set and exists
...
This was previously done only if Terrasync was on, but this made
it impossible to use the GUI dialog to turn it on for the first
time in a fresh install
2013-12-20 12:39:23 +00:00
James Turner
5cf8157a66
Security: more conservative dir permission masks.
...
Use 0755 instead of 077 everywhere we create a directory.
2013-12-19 14:53:39 +00:00
James Turner
52f2f5ff78
Bugfix: remove the (totally broken) skyblend option
2013-12-19 14:53:39 +00:00
Rebecca Palmer
bf1fe65bc5
Disable screensaver: initial Linux-only implementation
...
Add a function fgOSDisableScreensaver() that attempts to disable the
screensaver (currently only succeeding on Linux), and call it on startup.
CMake option USE_DBUS (on by default), requires libdbus-1
Motivation: most screensavers do not monitor the joystick
https://bugs.launchpad.net/ubuntu/+source/flightgear/+bug/793599
Discussion: http://sourceforge.net/p/flightgear/mailman/message/31717061/
2013-12-15 21:18:22 +00:00
James Turner
b3534ff8c2
Reset: use new copy-properties helper.
2013-12-15 20:46:34 +00:00
James Turner
df3f842f8a
Reset: Clear the pager queues, preserve properties.
2013-12-09 23:27:40 +00:00
James Turner
5d8fa03090
Shutdown: clear effects cleanly.
...
Avoids effects (and referenced properties / objects within) persisting
due to references in the effects cache, after globals are gone.
2013-12-09 23:27:40 +00:00
Thomas Geymayer
93dff17649
Set "/sim/fghome-readonly" to false also for Windows.
...
"/sim/fghome-readonly" is read with a default of false always,
but I think the code should set it explicitly to false for all
platforms.
2013-12-09 23:16:25 +01:00
Thomas Geymayer
13d94f240c
Check return values if write and unlink.
2013-12-09 23:15:35 +01:00
Thomas Geymayer
5fb7b2e12c
Canvas: Now only one global SystemAdapter is used...
2013-12-09 23:13:45 +01:00
James Turner
6763d232cd
Reset: clear the osg object cache
2013-12-06 17:38:23 +00:00
James Turner
7ff9792b96
Reset: listener cleanup
2013-12-04 09:11:26 +00:00
James Turner
8cd71ff1ef
Reset: clear effects cache
2013-12-04 09:09:47 +00:00
James Turner
25bf3793bd
Reset: fix a static in play-audio-sample
...
Had to add this to FGGlobals, since it needs to be cleaned up
alongside the sound manager (which ideally it would be owned by,
but that's a change for another day)
2013-11-25 23:53:58 +00:00
bcoconni
d3f6ab38c2
Fixed a race condition so that FG runs most of the time (instead of crashes most of the time)
2013-11-24 20:06:28 +01:00
James Turner
2015016466
Break config init / aircraft loading apart.
...
Allows aircraft loading to proceed during reset without original
values over-writing the updated ones.
2013-11-24 15:10:00 +00:00
James Turner
af6095c5d1
Reset: do general init on reset path
2013-11-22 22:52:33 +00:00
James Turner
1d8b080782
Reset: delete mat-lib, re-create on reset
2013-11-22 22:52:29 +00:00
James Turner
1f699984e9
One more Mac helper moved into CocoaHelpers.mm
2013-11-19 22:01:11 +00:00
James Turner
875227057c
Structural work (init + shutdown) for new reset system.
...
The new approach is still work in progress (compile time option) and
non-functional, existing reset still works.
2013-11-19 17:38:51 +00:00
James Turner
2331956539
One more Mac helper moved into CocoaHelpers.mm
2013-11-18 15:52:30 +00:00
James Turner
2c4ac08895
Globals: delete/shutdown tweaks.
...
Avoid aircraft-model crash in accessing fx/sound
during shutdown.
2013-11-16 14:25:12 +00:00
James Turner
fe357ba2a9
Refactor aircraft-dir visiting.
...
Cap maximum depth to avoid bug 865
2013-11-16 14:24:37 +00:00
James Turner
d2962ffb2d
Reset: refactor static CameraGroup ownership
2013-11-16 13:02:47 +00:00
James Turner
98078cdd55
Reset: make fgSetDefaults non-static.
2013-11-16 13:02:43 +00:00
James Turner
0191b597e7
Environment manager: use aircraft_pos helper
2013-11-16 12:28:51 +00:00
James Turner
780393e2fe
Release property refs on shutdown.
2013-11-16 11:56:42 +00:00
James Turner
fecb475145
Refactor Cocoa helpers.
...
Change away from using deprecated FSFindFolder.
2013-11-16 10:58:17 +00:00
James Turner
2bff8d2220
Fix Linux build
...
Linux needs explicit includes for open() and flags.
2013-11-16 09:31:18 +00:00
James Turner
0cda3cbfb2
Multiple-instance support.
...
Write PID file to FG_HOME, use this to detect multiple launches.
When this situation is detected, set a marker property and place various
objects into read-only mode, such as the NavCache and TerraSync.
PID file is created using open+unlink semantics on POSIX, and
DELETE_ON_CLOSE on Windows, so it will be removed when fgfs exits,
even if killed or crashes.
2013-11-15 21:04:15 +00:00
James Turner
13d5fd4c25
More tweaks for Linux.
...
(Needs explicit include of stdio, and stdarg in the header)
2013-11-14 23:32:02 +00:00
James Turner
ef55d175dd
Linux needs stdarg.h for va_args
2013-11-14 23:14:51 +00:00
James Turner
1f7fdc3e07
Kill some archaic options.
2013-11-14 23:14:46 +00:00
James Turner
1db9d25f56
Translation helpers, add global functions.
...
These are designed for compact access to translations, including a
positional printf.
2013-11-14 22:03:00 +00:00
James Turner
136cd6ac51
Message box support.
...
This allows us to display a platform-native dialog for problems
which occur early in startup (before we can show a PUI/Canvas dialog).
In particular this improves feedback where FG_HOME, FG_DATA or
aircraft selection is wrong, all of which happen very early in startup.
2013-11-14 22:02:29 +00:00
Clément de l'Hamaide
7e90c8aa2b
Force 32 bits depth on .ico - only for Windows
2013-11-14 21:24:56 +01:00
James Turner
e25aa4f004
Fix some static property references.
...
(These cause problems when replacing the property tree during reset)
2013-11-14 16:37:46 +00:00
Clément de l'Hamaide
1c49890bec
Icons update
2013-11-13 22:49:07 +01:00
James Turner
4a3b8c5765
Reset: changes for SGSubsystem ownership.
...
Keep in sync with updated ownership model in subsystem groups.
2013-11-12 23:36:18 +00:00
James Turner
44246d7708
Reset: adjust for tweaked TerraSync API
2013-11-12 23:10:19 +00:00
James Turner
af40bcb60e
Reset: explicit close-window function.
...
Allow orderly shutdown of OSG before cxa_finalize
2013-11-12 22:57:13 +00:00
Thomas Geymayer
cf270bde22
Expose HTTP module to Nasal.
2013-10-27 19:39:22 +01:00
Thomas Geymayer
8a582e6376
Update/refactor for simgear HTTP changes.
2013-10-27 19:39:22 +01:00
James Turner
4e7a22f589
Default to 32-bit color buffers.
...
Requesting 16-bit is probably doing more harm than good on modern
hardware. Command line switch to change works as before.
Also update the default window size, although this is actually
set by preferences.xml
2013-10-27 13:03:01 +00:00
James Turner
d127f7709f
Remove confusing reference to SDL/GLUT
2013-10-26 21:12:57 +01:00
James Turner
3cdf948c8b
SGI and Borland compilers are gone.
2013-10-26 21:11:02 +01:00
James Turner
6bd2acab78
Window console changes
...
- default to SUBSYSTEM:WINDOWS (we can still AllocConsole if needed)
- add --console option to get a console on Windows
- ensure --show-aircraft and --help modes show the console automatically.
2013-10-26 21:07:23 +01:00
James Turner
e93dc27153
Tweaks to startup configuration handling
...
- restore-defaults kills the nav cache, terra-sync cache
- new ignore-autosave option bypasses autosave.xml and leaves it
untouched (does not over-write on exit)
2013-10-26 18:29:31 +01:00
James Turner
81e86f5b20
Pause popup respects the preference.
2013-10-24 23:23:01 +01:00
James Turner
e3841fc9ef
Fix typos.
2013-10-20 20:46:40 +01:00
Thomas Geymayer
771586854b
Make build information readonly and clean up debug output.
2013-10-20 12:59:44 +02:00
Thomas Geymayer
6b88302037
Provide debug information on thread safety of osg::Referenced.
2013-10-19 01:20:28 +02:00
James Turner
f6fafffeb5
Initial hacking on terra-sync of traffic files.
2013-10-17 17:33:30 +01:00
James Turner
386d87e098
Cleanup exit handling.
...
Replace many lingering calls to exit() from the code,
replacing most with exception throws, which can be
caught by the existing mechanisms.
Update the option-parsing code to return an explicit
value indicating what to do (e.g., exit status to return
to the shell).
2013-10-15 22:16:50 +01:00
James Turner
78f2f2f142
Work-around for issue 1231.
...
Force sglog() to be initialised before at exit
handler is registered, so logging can be used from
inside our exit handler.
2013-10-15 22:02:36 +01:00
ThorstenB
7ce2107336
Add support for IGC logging protocol.
...
Many light aircraft include GPS loggers capable of recording the flight
path using IGC records. Lots of third party utilities are available to
analyze, process and convert igc files.
Usage: "fgfs --igc=file,out,1,OutputFile.igc"
2013-10-14 22:13:31 +02:00
James Turner
52e5a9abe8
Reduce amount of log output at level=debug.
2013-09-28 14:47:20 +01:00
James Turner
1a9e479e2a
Terrasync tweaks.
...
- Enable the terrasync persistent cache
- Ensure terraysync scenery dirs exist before NavCache init, so the paths are stable
- Notify TerraSync on reposition, so we sync the full 3x3 set of tiles.
2013-09-28 14:07:45 +01:00
Torsten Dreyer
8d415eafa3
make the metar command line tool case insensitive
2013-09-26 16:49:27 +02:00
James Turner
0206de2d2c
Relocate Sqlite3 sources, upgrade to 3.8.0.2
...
Move sqlite source to a separate location, and build with
an intermediate library target. This permits us to set compile options
easier, including an important one, NDEBUG, which improves performance.
Sqlite 3.8.0.2 also includes an updated query planner which may improve
some queries, to be tested.
2013-09-26 09:52:41 +01:00
James Turner
33425c671d
Support for multiple data dirs.
2013-09-17 07:47:58 +01:00
James Turner
4052c45ea3
Fix Mac data dir finding.
...
Mostly affects release builds, ensure data dir located within
the bundle is found correctly.
2013-08-26 22:21:55 +01:00
Tom Paoletti
81cd33e2fa
Performance optimization: empty() instead of size()>0
...
empty() is guaranteed to be constant complexity for both vectors and lists, while size() has linear complexity for lists.
2013-08-19 09:01:59 +01:00
f-jjth
d03b44b662
FGCom integrated into FlightGear.
...
Disabled by default at build time.
2013-08-16 17:02:47 +01:00
James Turner
cff6b2034d
Remove unnecessary includes/using
...
flight.hxx (FGInterface) was pulling in list, string and vector, and
'using' them, despite no actual need.
2013-07-29 22:59:45 +01:00
Gijs de Rooy
78507bf22e
Suggest NVIDIA Optimus to use the high-end GPU.
2013-07-18 08:51:43 +01:00
James Turner
b1b6d2f6e2
Namespace fixes for std::string
2013-06-27 09:53:12 +01:00
Thomas Geymayer
07e9b48344
Preserve current view on reset/reinit/reposition
2013-06-22 17:07:11 +02:00
hooray
c61583de5d
expose HLA/RTI availability to property tree - for use in about dialog
2013-06-21 12:14:40 +01:00
James Turner
145148944f
Kill off platformDesktopPath entirely
2013-06-20 00:20:12 +01:00
James Turner
b7bf3ee620
Simplify logic now SGPath::desktop works on Windows.
2013-06-20 00:03:36 +01:00
James Turner
fb30e3609e
Create FG_HOME if not found
2013-06-16 19:50:30 +01:00
Thomas Geymayer
dfa583c014
Use SGPath helpers and unescape from simgear
2013-06-10 21:42:53 +02:00
James Turner
6d158e886c
Abstraction for the user's desktop location.
2013-06-09 23:00:09 +01:00
James Turner
931f4266fb
TerraSync: fix dir creation.
...
Separate the default path logic, from the 'create if
not found' logic.
2013-06-09 22:57:45 +01:00