readDir(p);
const std::string aircraft_dir(fgGetString("/sim/aircraft-dir"));
readDir( SGPath(aircraft_dir, "gui/dialogs") );
+
+ // Fix for http://code.google.com/p/flightgear-bugs/issues/detail?id=947
+ fgGetNode("sim/menubar")->setAttribute(SGPropertyNode::PRESERVE, true);
_menubar->init();
}
void
NewGUI::update (double delta_time_sec)
{
+ SG_UNUSED(delta_time_sec);
map<string,FGDialog *>::iterator iter = _active_dialogs.begin();
for(/**/; iter != _active_dialogs.end(); iter++)
iter->second->update();
void
NewGUI::readDir (const SGPath& path)
{
+ simgear::Dir dir(path);
+ if( !dir.exists() )
+ {
+ SG_LOG(SG_INPUT, SG_INFO, "directory does not exist: " << path.str());
+ return;
+ }
+
flightgear::NavDataCache* cache = flightgear::NavDataCache::instance();
flightgear::NavDataCache::Transaction txn(cache);
- simgear::Dir dir(path);
simgear::PathList xmls = dir.children(simgear::Dir::TYPE_FILE, ".xml");
BOOST_FOREACH(SGPath xmlPath, xmls) {
cache->stampCacheFile(xmlPath);
cache->writeStringProperty(xmlPath.str(), name);
} // of directory children iteration
+
+ txn.commit();
}\f
////////////////////////////////////////////////////////////////////////
// Style handling.