// button-less actions are fired initially
if (!node->hasValue("w") || !node->hasValue("h")) {
for (i = 0; i < bindings.size(); i++) {
- FGBinding b(bindings[i]);
+ SGBinding b(bindings[i], globals->get_props());
b.fire();
}
return 0;
binding = dest->getChild("binding", j, true);
copyProperties(bindings[i], binding);
- action->addBinding(new FGBinding(binding), 0);
+ action->addBinding(new SGBinding(binding, globals->get_props()), 0);
}
if (node->hasChild("mod-up")) {
binding = dest->getChild("binding", j, true);
copyProperties(bindings[i], binding);
- action->addBinding(new FGBinding(binding), 1);
+ action->addBinding(new SGBinding(binding, globals->get_props()), 1);
}
}
const SGPropertyNode * trans_table = node->getNode("interpolation");
if (trans_table != 0) {
SG_LOG( SG_COCKPIT, SG_INFO, "Found interpolation table with "
- << trans_table->nChildren() << "children" );
- t->table = new SGInterpTable();
- for (int i = 0; i < trans_table->nChildren(); i++) {
- const SGPropertyNode * node = trans_table->getChild(i);
- if (!strcmp(node->getName(), "entry")) {
- double ind = node->getDoubleValue("ind", 0.0);
- double dep = node->getDoubleValue("dep", 0.0);
- SG_LOG( SG_COCKPIT, SG_INFO, "Adding interpolation entry "
- << ind << "==>" << dep );
- t->table->addEntry(ind, dep);
- } else {
- SG_LOG( SG_COCKPIT, SG_INFO, "Skipping " << node->getName()
- << " in interpolation" );
- }
- }
+ << trans_table->nChildren() << " children" );
+ t->table = new SGInterpTable(trans_table);
} else {
t->table = 0;
}