Commit Graph
100 Commits
Author SHA1 Message Date
James Turner d9b01ca5de Foundations of hover support in pick-callbacks. 2013-02-09 11:11:53 +00:00
James Turner adb7db9229 Ensure individual log-level setting works. 2013-02-08 20:17:27 +00:00
James Turner e4f7aec965 Linux needs explicit <algorithm> include. 2013-02-08 20:07:11 +00:00
James Turner 768a8c1062 Give terrasync a buffered log. 2013-02-08 19:37:47 +00:00
James Turner 318c5000ce Logging tweaks.
More pieces to support logging to buffers in the GUI.
2013-02-08 19:37:29 +00:00
James Turner 70f334e1a3 Fix GCC warnings about signed/unsigned compare. 2013-02-08 12:58:02 +00:00
James Turner 279b53a705 Move BufferedLogCallback to its own class.
Reduces includes in logstream.hxx, which is included by everyone and hence needs to be lightweight.
2013-02-08 12:58:02 +00:00
James Turner a72a3ce5f3 Fix stderr log filtering.
Thanks to Stuart for pointing this out!
2013-02-08 12:58:02 +00:00
James Turner 34d3c63384 Fix bucketBoxTest linkage. 2013-02-07 17:53:34 +00:00
James Turner cf4af2692b Fix property tests static linkage. 2013-02-07 17:51:42 +00:00
James Turner d335ca5a8d A couple more tests fixes. 2013-02-07 17:48:58 +00:00
James Turner 9cac2c1457 Fix math test linkage. 2013-02-07 17:42:00 +00:00
James Turner 523b992b4c Windows logging tweaks.
Restore the freopen calls, though I am unsure exactly what they achieve.
2013-02-07 17:23:31 +00:00
James Turner 45ae3978f6 Fix handling of ZSTREAM_END result from zlib.
Avoid getting stuck when ZSTREAM_END occurs with no more bytes written out.
2013-02-07 13:01:56 +01:00
James Turner f983194d7e Buffered log-callback.
Allow a particular set of log messages to be retained indefinitely, for (presumably) later display somehow, such as in the GUI.
2013-02-07 13:01:56 +01:00
James Turner ab8373b989 Rewrite logging code.
Support multiple backends, and make it thread-safe. Use an internal thread to push log entries to backends, to avoid blocking the submitting thread for any time.
2013-02-07 13:01:56 +01:00
James Turner 235c29913a Make the knob mouse-wheel direction configurable.
Add a global setting to control the mouse-wheel direction of the knob; a future commit will expose this in the FG GUI.
2013-02-03 17:21:50 +00:00
James Turner 0870407f65 Add 'release' bindings to knob animation.
Currently this fires on button release, but also after any mouse-wheel movement (since they are sent as buttons). This feels slightly wrong, but can't decide how a spring-loaded know would work, when interacting via the mouse-wheel. Comments welcome.
2013-02-03 17:11:05 +00:00
James Turner e8156c6bd9 Knob animation: shifted mode binding.
As part of this, pass the osgGA GUIEventAdapter down into the pick callbacks, which seems reasonable to me. If anyone can foresee issues with this, please let me know and I can adjust the API.
2013-02-03 16:33:30 +00:00
James Turner 53b9fd2110 Support preview mode in the model loader.
This makes fgviewer / fgfs --viewer mode useful with models containing Rembrandt light volumes.
2013-01-31 16:46:02 +00:00
James Turner 4d4e474464 Initial prototype of knob animation. 2013-01-31 00:15:09 +00:00
James Turner a58b41e7d2 Pick animation moved to its own file.
Preparatory work for adding more pick animations which will share some
internals with this code.
2013-01-30 21:51:41 +00:00
James Turner d11db8a67a Prepare for optionally embedded SimGear. 2013-01-26 15:31:17 +01:00
James Turner 98b6102e56 State-machine correctness tweaks. 2013-01-25 12:05:16 +01:00
James Turner 0db8613a21 StateMachine tweaks. 2013-01-25 09:29:31 +01:00
James Turner 94a6cb2cff Tolerate lack of C99 in MSVC. 2013-01-23 16:01:46 +01:00
James Turner 5b92575ed3 Fix state-machine test linkage with static libs.
Thanks to Thomas for the catch.
2013-01-22 20:56:57 +01:00
James Turner 691be54ca2 Keep Linux happy. 2013-01-22 18:53:51 +01:00
James Turner 22ea8ebe25 State-machine structure, initial work. 2013-01-22 18:08:44 +01:00
James Turner bd71635c49 Add left/right Nasal library functions. 2013-01-22 18:06:50 +01:00
James Turner 830bc3eac3 More native math functions in Nasal. 2013-01-22 18:06:50 +01:00
James Turner e9c70f8b1c Improve HTTP behaviour when name lookup fails.
Don't endlessly re-send requests when name lookup fails; inform the next layer up so it can decide whether to retry.
2012-12-15 15:09:33 +00:00
James Turner f5150d32af Whoops, fix bad #ifdef to disable sound. Bug #958 2012-12-12 11:16:29 +00:00
James Turner 24d2431522 Work on making OpenAL a compile-time option.
ENABLE_SOUND=0 now works when configuring SimGear, and libSimGearScene can be linked without OpenAL. However, more testing of FlightGear in this mode is needed before it's officially supported!
2012-12-07 15:26:24 -05:00
James Turner 7d8d4a03fb Make SGLockingQueue::pop usable.
Since there's no external lock, it was impossible to check the queue was non-empty before a pop, without a race condition. To avoid this, tolerate an empty queue and return a default constructed value.
2012-11-25 22:36:15 +00:00
James Turner 80dc28bfb5 Modernise the mat lib header, remove 'using std' 2012-11-20 17:10:13 +00:00
James Turner 983e1abf48 Work on ENABLE_SOUND.
Restructure SGSampleGroup, to make #ifdef-ing the OpenAL calls easier. No functionality change.
2012-11-20 12:20:21 +00:00
James Turner 0b26c69222 Remove duplicate members in SGSampleQueue.
Remove duplicate members shared by SGSoundSample and SGSampleQueue (which inherits from it). Change SGSoundSample to expose some members as protected data for access by the sample-queue, and hence share nearly all the methods. Also remove 'inline' keyword from virtual methods.
2012-11-19 15:33:53 +00:00
James Turner 2aed93a576 Fix HTTP test for revised POST semantics. 2012-11-17 19:51:57 +00:00
James Turner d1af42e9ad Tweak HTTP handling for POST requests.
Tolerate slightly malformed request URLs (no slash following the host specified), and use a better check when POST-ing to decide the request-body data source.
2012-11-17 18:08:38 +00:00
James Turner 851a307c23 Test for, and fix, materials handling in BTG code.
It's possible (and happens!) to have less than 2^16 vertices or tex-coords, but more than 2^15 objects (tris) with the same materials. This was breaking our version 7 vs version 10 detection logic. Pete found the issue, I'm simply committing a version of his fix.
2012-11-07 21:10:00 +00:00
James Turner 71be1a9e28 HTTP enhancements.
Support content-encoding and improve pipelining support.
2012-10-27 18:03:51 +01:00
James Turner 1b55076897 Fix a Clang warning in Shiva. 2012-10-25 00:44:48 +02:00
James Turner 3afd6e9f51 Fix OS-X compilation. 2012-10-25 00:44:47 +02:00
James Turner c188f6e3cb Initial work on making OpenAL private to the sound code. 2012-10-04 16:47:13 +01:00
James Turner f7a87789ab Improve decode_bin output slightly. 2012-09-30 16:44:22 +01:00
James Turner dc463d1c2c Macro to disable the copy-constructor.
Another toolkit I use has an explicit macro for this, which is nice for readability, so I've borrowed it here.
2012-09-24 23:18:57 +01:00
James Turner 89d30acbc5 SGTime: use SGGeod, quieter init.
It's common to use SGTime to calculate the the Julian Date, without providing time-zone information. Don't warn in these cases, since the behaviour is fine.
2012-09-24 00:02:11 +01:00
James Turner be405d2311 Add another overload of SGGeodesy::direct 2012-09-23 21:43:42 +01:00
James Turner d6e18c8a35 Support for incremental init of subsystems.
Allow subsystem init to be incremental, i.e requiring repeated init calls until a 'done' code is returned. Use this to support incremental init in groups and the manager. (It would also be possible to support it in an individual subsystem).

Note that if you use the existing init() calls, behaviour is unchanged.
2012-09-18 20:26:28 +01:00
James Turner ddbb2bea8a Option to use system, instead of built-in, expat
At least one Linux distribution packager of FG has complained that we're bundling expat in our binaries. To keep them happy, add the option (-DSYSTEM_EXPAT=1 at cmake time) to use the system expat instead.

For the moment (and simplicity), this requires building SIMGEAR_SHARED (which is fired to on by selecting the option).
2012-09-16 17:07:35 +01:00
James Turner e8c2483432 De-virtualise SGSky to avoid a clang warning.
Clang was complaining that SGSky has virtual methods, but no virtual destructor. It turns out we're never subclassing SGSky - it's used directly. Hence, remove all the 'virtual' attributes from its methods.
2012-09-16 16:34:10 +01:00
James Turner fd495574a4 Kill off MIPS compatibility header.
CMake has never supported the MIPS compatibility headers, or indeed building using MIPSpro. If someone wishes to re-add MIPS/IRIX support, I'm hoping they will be using a compiler with functional standard library headers!
2012-09-16 16:27:22 +01:00
James Turner 12f85b3d1f Add an SG_UNUSED macro to SimGear.
Imitate Q_UNSUED from Qt, and provide a Simgear 'unused var' warning suppression macro. Fix up one place where the previous warning suppression attempt (assigning to self) was still producing a warning under clang.
2012-09-16 16:25:11 +01:00
James Turner 47d88bcfa7 Standardise SimGear libraries, for static vs shared.
Always create only two SimGear libraries: SimGearCore and SimGearStatic, regardless of whether we're building static or shared. This requires an updated to FindSimGear.cmake module, for the static configuration.
2012-09-16 16:04:08 +01:00
James Turner e99064ca18 Refactor mat.hxx header.
Avoid many includes in mat.hxx, so ground testing code (e.g., Yasim) doesn't end up pulling in many OSG and scene classes.
2012-08-22 19:02:46 +01:00
James Turner b93661508e Fix more Linux warnings/errors.
(I'm away from the VM I would normally use to test such things before pushing, apologies for the churn)
2012-08-21 23:49:30 +01:00
James Turner 27ade6c420 Fix tests linkage when building static libs. 2012-08-21 22:55:04 +01:00
James Turner 473249d605 Unbreak Linux: malloc() needs <cstdlib> 2012-08-21 22:49:36 +01:00
James Turner 62cf65ce0f Remove a couple of lingering alut references. 2012-08-21 19:25:33 +01:00
James Turner c4f6aa2f90 Remove ALUT usage from SimGear .
Adapt the freealut code into a WAV-file reader. As a side-effect, it would now be possible to deploy WAV files compressed with gzip, since we use ZLib's gzread functions to read from disk.
2012-08-21 13:24:35 +01:00
James Turner 3270edcf87 Mac changes for Subversion bundling. 2012-08-11 15:21:52 +01:00
James Turner e288549c9e Make dependent template lookups explicit.
Clang (in Xcode 4.4) is being strict about dependent lookup rules, so apply the recommended fix-it.
2012-07-31 00:57:09 +01:00
James Turner ad4a9eeaa5 Remove (un-maintained) MSVC projects from the tree prior to the next release. 2012-06-23 10:26:28 +02:00
James Turner 8a33223483 Use standard version of FindPackageStandardArgs, no need to copy it. 2012-06-21 10:21:26 +02:00
James Turner 0e4eab1569 Improve ALUT framework detection (for Mac)
Latest Xcode no longer searches /Library/Frameworks by default which exposed an issue here. Search for the header by the correct name to trigger special -F handling in cmake.
2012-06-20 19:44:16 +02:00
James Turner edbea633f3 Merge a tweak from Tat to keep Mac 10.5 from crashing on realpath 2012-05-30 11:08:11 +01:00
James Turner 950af5375c KIll of SimGear route code, it's no longer used by anything. 2012-05-30 11:07:36 +01:00
James Turner 6cf2224146 Updated sign case UV calculation from Christian. 2012-05-11 10:00:35 +01:00
James Turner a1f74729ab build signs for an STG into single geometry. 2012-05-11 09:50:26 +01:00
James Turner 71443d1c9a Phase 1 - single geometry per material 2012-05-11 09:50:26 +01:00
James Turner 56661afc05 Change how HAVE_EXPAT_CONFIG_H is defined, to hopefully fix MSVC properly. 2012-05-04 10:10:46 +01:00
James Turner d3ab2d3fbc Missed files from previous commit, needed for Windows. 2012-05-03 18:55:13 +01:00
James Turner 65aca6607e Update to latest expat for improved BOM / encoding handling.
(Related to http://code.google.com/p/flightgear-bugs/issues/detail?id=635)
2012-05-03 17:29:16 +01:00
James Turner 35681e3adf Strange, somehow missed this file in last commit. 2012-04-28 23:08:05 +01:00
James Turner a5ca531aac Nasal Ghosts can optionally specify member get/set functions. 2012-04-28 22:25:57 +01:00
James Turner 2d174d0b14 Convert random buildings to avoid use of BIND_PER_PRIMITVE.
(which pushes me to a slow OSG path)
2012-04-26 00:18:47 +01:00
James Turner 0c13fb7ae4 Fix latent bug in Nasal hash cget / cset functions, where the embedded string length
was set to an incorrect marker value.
2012-04-23 22:29:54 +01:00
James Turner 69ef461e6d Merge commit 'refs/merge-requests/22' of git://gitorious.org/fg/simgear into merge-requests/22 2012-04-23 12:21:50 +01:00
James Turner 8d0330675a Set the filename as the OSG object name on shaders - should have done this years ago :) 2012-04-04 16:44:23 +01:00
James Turner 6c31a721b8 #ifdefs for option GL texture compression constants - should fix Windows as well as Mac 2012-01-11 23:41:02 +00:00
James Turner fee652d54a Fix header installation for shared build 2011-11-30 09:45:32 +00:00
James Turner 42b7c48671 Move some OSG-dependant code into scene/util. 2011-11-29 10:23:09 +00:00
James Turner 75afee59c3 Get all the tests linking with shared-simgear, and duplicate the awkward core functions into a new file, pending a proper cleanup. 2011-11-28 23:22:43 +00:00
James Turner ae3f718fe3 Fix naming of core library, get IO tests linking shared, and exclude OSG symbols from the core lib by setting headless mode. 2011-11-28 23:05:05 +00:00
James Turner 4b02335637 Build system tweaks to support SIMGEAR_SHARED building two libraries. Work in progress, does not link yet. 2011-11-28 22:43:57 +00:00
James Turner 3e07423778 Fix a std:: namespace issue on Windows. 2011-11-13 21:27:15 +00:00
James Turner 63ccb3df4c std:: namespace fixes, and sink some code from the subsystem header into the implementation. (Hopefully more to follow) 2011-11-13 20:34:39 +00:00
James Turner 906ef85d90 using std:: fix 2011-11-13 20:33:25 +00:00
James Turner 24c047c94e Remove the remaining Makefiles from the code. 2011-11-01 09:28:26 +00:00
James Turner 22b4aa4d8b Remove the automake / autoconf build files. 2011-11-01 09:26:22 +00:00
James Turner d36e13e8ed Make tiedpropertylist quieter. 2011-10-30 07:55:44 +00:00
James Turner 2e9896a9ab Enhancements to property-object support, add a default ctor and some typedefs. 2011-10-30 07:55:29 +00:00
James Turner 519a843340 Move ALUT 1.0 variables inside the #ifdef, to avoid some compiler warnings. 2011-10-29 11:06:24 +01:00
James Turner f14ffd5b1d Fix a bug affecting TerraGear, and extend unit-tests to cover this. (SGPath::file returned an empty string for paths with no directory separator) 2011-10-28 12:57:07 +01:00
James Turner e34f597fe2 Add sound test programs to the CMake build. 2011-10-28 12:29:26 +01:00
James Turner 95ddc04a73 Fix assorted compiler warnings found by Clang 2011-10-28 12:07:35 +01:00
James Turner 75b695664a Change (revert!) behaviour of SGPath::base, which broke TerraGear, when used with multiple file suffixes (hgt.zip, for example). Test cases updated to match TG-required behaviour. 2011-10-26 19:57:57 +01:00
James Turner 59ecf48b72 Support stream output by SGPath directly. 2011-10-25 21:44:57 +01:00
James Turner 2fb13c76f5 Address warnings found via Clang - especially related to destructor visibility with ref_ptrs of various kinds. 2011-10-24 18:09:42 +01:00