]> git.mxchange.org Git - flightgear.git/blobdiff - src/Main/fg_props.hxx
- Added ultra-light traffic is now a separate traffic class that can have its
[flightgear.git] / src / Main / fg_props.hxx
index 703636a96a5b67453207a73dd5085023f12d7b52..4025b185dfc424a2298ddeacdd879ed031d6f619 100644 (file)
@@ -9,6 +9,7 @@
 #include <simgear/debug/logstream.hxx>
 #include <simgear/props/props.hxx>
 #include <simgear/props/props_io.hxx>
+#include <simgear/structure/subsystem_mgr.hxx>
 
 #include "globals.hxx"
 
 // Property management.
 ////////////////////////////////////////////////////////////////////////
 
+class FGProperties : public SGSubsystem
+{
+public:
+    FGProperties ();
+    virtual ~FGProperties ();
 
-/**
- * Initialize the default FlightGear properties.
- *
- * These are mostly properties that haven't been claimed by a
- * specific module yet.  This function should be invoked once,
- * while the program is starting (and after the global property
- * tree has been created).
- */
-extern void fgInitProps ();    // fixme: how are they untied?
-
-
-/**
- * Update the default FlightGear properties.
- *
- * This function should be invoked once in each loop to update all
- * of the default properties.
- */
-extern void fgUpdateProps ();
+    void init ();
+    void bind ();
+    void unbind ();
+    void update (double dt);
+};
 
 
 /**
@@ -76,7 +69,7 @@ extern bool fgLoadFlight (istream &input);
  *         otherwise.
  */
 extern bool fgLoadProps (const char * path, SGPropertyNode * props,
-                         bool in_fg_root = true);
+                         bool in_fg_root = true, int default_mode = 0);
 
 
 \f
@@ -539,5 +532,18 @@ fgTie (const char * name, T * obj, int index,
 }
 
 
+class FGMakeUpperCase : public SGPropertyChangeListener {
+public:
+    void valueChanged(SGPropertyNode *node) {
+        if (node->getType() != SGPropertyNode::STRING)
+            return;
+
+        char *s = const_cast<char *>(node->getStringValue());
+        for (; *s; s++)
+            *s = toupper(*s);
+    }
+};
+
+
 #endif // __FG_PROPS_HXX