1
0
Fork 0
Commit graph

7442 commits

Author SHA1 Message Date
ehofman
b4ab5242ec Change the low level internals of the xml library to reflect the following;
* rewrite the code to always recursively walk the node tree when searching
    for a particular node. this is required for cases where a node with a
    particular name is located deeper in a node with the same name;
    for example -r /configuration/device/reference/device would fail in the
    previous verion
  * rename xmlGetElement to xmlGetNodeNum and add the possibility to request
    the nth node with this name
  * rename xmlGetNumElements to xmlGetNumNodes

The drawback is that this is approach slows down processing the files a bit,
but at least it can now find any xml node in any xml file.
Also, no more function changes are planned from now on.
2008-07-19 12:18:05 +00:00
fredb
03a180ac83 Restore code after unwanted change in last commit 2008-07-17 21:32:20 +00:00
fredb
4b50a369c8 SIGPIPE is a unix thing 2008-07-17 21:28:43 +00:00
mfranz
ba27bab1b2 make sure that the validation nodes are readable and writable 2008-07-17 08:38:13 +00:00
mfranz
f79dbc23bf ignore SIGPIPE. If we pipe our output to another application, let's say
to kst, and kst is closed, this does *not* mean that we want FlightGear
to "abort".
2008-07-15 16:55:23 +00:00
mfranz
030035a32a include cstring for memset() (necessary for gcc 4.3.*; backported
from JSBSim/cvs)
2008-07-15 13:08:03 +00:00
fredb
dce2d5d7cd MSVC doesn't have a round function 2008-07-14 09:48:09 +00:00
durk
cf2bd4003c Removal of depricated version of Airports/trafficcontrol.[ch]xx
(See src/ATC for it's new location)
2008-07-13 12:57:06 +00:00
durk
17c42deae1 Initial attempt to establish a better integration between AI and ATC code.
Various other patches that have been lingering around for a while:
 * Moved trafficcontrol.[ch]xx from the Airports directory to ATC, where
   it really belongs.
 * AI aircraft will request startup clearance, and ground control will
   approve.
 * Starting AI Aircraft will be pushed back to a predefined holding point
   on the ground network, and wait a while before taxiing out to the runway
2008-07-13 12:51:06 +00:00
durk
a0bb5b3c67 - Added the ATC directory again, in it's new incarnation as the storage
location for general purpose ATC functions, meant to be compatible with
  the AIModels code.
2008-07-13 12:38:01 +00:00
mfranz
178dd5e72a s/offset/offsets/ 2008-07-12 21:13:48 +00:00
mfranz
44b9f5550b the usual copy from $FG_ROOT/Docs/ 2008-07-12 14:13:22 +00:00
mfranz
44fdf77601 "load"/"save" flight: enforce ".sav" extension 2008-07-11 20:55:43 +00:00
mfranz
76a13e689d use same path validation process for fgcommands "load", "save",
"loadxml", ans "savexml" as is used for io.open(). This is still
Nasal based for now. See $FG_ROOT/Nasal/io.nas.
2008-07-11 16:36:54 +00:00
ehofman
ce7f695ea2 add a reference for memset() 2008-07-11 14:11:54 +00:00
ehofman
f7f17a4744 Update to the latest version of JSBSim which supports Lighter Than Air craft
(like Airships) and external forces.
2008-07-10 17:23:02 +00:00
mfranz
c9dccf4841 return attribute mask as unsigned 2008-07-10 11:36:10 +00:00
mfranz
f08d1bf5b4 let n.getAttribute("last") return SGPropertyNode::LAST_USED_ATTRIBUTE
(this is the same constant value for all properties)
2008-07-10 10:58:06 +00:00
mfranz
1ace68e836 don't run the help browser from a property that a user could have
changed to something evil, but rather make sure that the browser
string can be trusted. (TODO: change system() to vfork()/execvp() ?)
2008-07-09 19:35:53 +00:00
mfranz
1b062a1cf0 let the --prop: option overwrite write-protected properties
("The user is always right, but not always bright.")
2008-07-09 15:09:23 +00:00
mfranz
0ae36e3979 remove depreciated and unused src/GUI/trackball.* 2008-07-09 12:44:32 +00:00
mfranz
b8d62d212c remove depreciated and unused src/GUI/trackball.* 2008-07-09 12:37:54 +00:00
mfranz
9f571a0f00 remove depreciated gui_local.[ch]xx:
- drop unused parts (MouseQuat/GuiQuat)
- move "old-reinit-dialog" fgcommand to fg_command.cxx under new name
  "reset" for now. (May later get merged with fgcommand "reinit".)
- move reInit() to fg_init.cxx: This was used by Shift-Esc and
  Menu->File-Reset (via fgcommand "old-reinit-dialog"). We have already
  a similar function fgReInitSubsystems() in fg_init.cxx, so these two
  functions will probably get merged later.)
2008-07-09 12:22:33 +00:00
mfranz
de527e3891 rename attributes write/read to writable/readable (The original names
where chosen to match the SGPropertyNode::WRITE/READ symbol names and
should make it more consistent, but this isn't really something that
should be exposed to the Nasal developer.)
2008-07-07 10:23:24 +00:00
ehofman
6e6e8bbefc * reorganize the code to be able to skip comment sections
* depreciate __xmlFindNextElement and use __xmlGetNode instead
* xmlGetNextElement now returns char* instead of void* for furute use
* add preliminary support for wildcards in the search path ('*' and '?')
2008-07-06 11:34:50 +00:00
ehofman
67ca3c0307 * fix a problem caused by removing the last unnecessary alloc
* strip leading-, and trailing spaces from the string before comparing
 * fix a problem where trailing spaces weren't removed
2008-07-01 12:15:46 +00:00
mfranz
177d06e9ec move[1] icons to source dir, from where the respective installers can copy
them to the final place depending on OS and Desktop Environment (just
like man pages and binaries). Otherwise the installer would need access to
$FG_ROOT only for the icons, which is an undesirable dependency.

[1] there's a lock on the $FG_ROOT/icons/ dir, so I'll remove
them later from the old place.
2008-06-30 14:02:26 +00:00
ehofman
d9b79d6e3e whoops, my bad 2008-06-30 12:05:26 +00:00
ehofman
f35ab314bf Remove the last unnecessary alloc from the library 2008-06-30 12:00:40 +00:00
ehofman
dd77cd25f6 Some small updates; fix typo's and fix a small memory leak
Improve the documentation in README
2008-06-30 07:30:02 +00:00
mfranz
64a07de080 Erik HOFMAN: add documentation/changelog 2008-06-29 13:33:26 +00:00
mfranz
24071a3133 Erik HOFMAN: faster and better xmlgrep implementation 2008-06-29 13:08:24 +00:00
mfranz
ecd5521bf8 - remove unused puObject args in gui fgcommands
- remove no longer used PU macros
2008-06-23 18:28:02 +00:00
mfranz
889f3926f2 - make sure /sim/fg-current can't get preset and write protected, so
it's reliable at Nasal init time.
- make sure the cwd buffer is terminated
2008-06-22 11:29:32 +00:00
mfranz
b21cf2a22d add abort() 2008-06-19 17:25:14 +00:00
mfranz
dec96cfa45 while abort() is really only useful for listeners (in all other cases
we know the stack trace), it's better to use a separate function for
it, as this can be used conditionally, as in:

  setlistener("/the/property", func(n) {
      if (n.getValue() < 0) # who's writing negative numbers to /the/property?!
          abort();          # let's check the backtrace ...
  });
2008-06-19 17:18:42 +00:00
mfranz
37559fee21 make fgfs abort() after a listener with runtime arg == -1 was triggered
and its function called. This is useful for debugging purposes, to get
a core dump which unveils which C++ code was writing to the property.
This isn't any more of a security problem as other Nasal code that
makes fgfs crash, such as:  var x = func call(x); x();  The difference
is that the listener doesn't use up all memory before and is much quicker.
2008-06-19 10:39:12 +00:00
mfranz
88839f0b7a set_fg_root: prevent circumvention of the Nasal security code through
pre-setting and write-protecting /sim/fg-root in *-set.xml files
2008-06-16 07:46:55 +00:00
mfranz
afc5225272 - allow users to set fg-home dir via FG_HOME environment variable, but
- don't allow to do that from any XML file. This is to prevent malign
  code from writing a new fg-home in ~/.fgfs/autosave.xml or other files
  in ~/.fgfs/.
2008-06-13 10:52:47 +00:00
timoore
a9319336ba From Benoit Laniel: replace SG threading constructs with OpenThreads 2008-06-12 08:24:39 +00:00
mfranz
0317d992b9 cosmetic changes *only*:
- fix mixed tab/space indentation (replace all tabs by 8 spaces)
- remove trailing spaces
- rename one local variable (ttt -> pwd)
2008-06-11 18:02:19 +00:00
mfranz
5cb6e43767 Anders GIDENSTAM: catch all exceptions to avoid aborting fgfs after
commands like "ls .."
2008-06-11 17:16:50 +00:00
timoore
876bd2055c Don't add guiCamera, which is now a slave, to the scene graph. 2008-06-08 20:50:30 +00:00
mfranz
f35ba3510f vim syntax files for *.ac and *.nas files. See nasal.vim for how to use them.
Note that for XML embedded Nasal you can type  :set ft=nasal  and back to
XML with  :set ft=xml   (ft ... filetype)
2008-06-07 17:21:47 +00:00
fredb
7c8c8ff381 FGFontCache::initializeFonts() now portable across platform through the use of plib 2008-06-07 08:10:46 +00:00
timoore
bfc1967529 Revert most iostream-related changes to JSBSim
So many files in JSBSim use cout that it is not productive to remove
iostream from header files.
2008-06-06 21:21:57 +00:00
timoore
18bece731a Fix GUI and HUD text rendering problems.
After the changes that moved the GUI and HUD to a slave camera, the
texture-based fonts wouldn't display. The main fixes here are making
sure that the TXF textures are all loaded into the font cache early,
and explicitly setting the active texture unit in the GUI / HUD
drawImplementation.
2008-06-06 19:02:17 +00:00
mfranz
b27f73f4f4 make route manager input case insensitive 2008-06-06 07:49:41 +00:00
mfranz
d4d14ba5ba fix path 2008-06-04 20:21:35 +00:00
mfranz
c9d2243960 Anders GIDENSTAM: "only override the receive port when it isn't set already" 2008-06-03 15:57:33 +00:00