Template:MapStructure lcontroller
Jump to navigation
Jump to search
# See: http://wiki.flightgear.org/MapStructure
# Class things:
var name = 'DEMO';
var parents = [SymbolLayer.Controller];
var __self__ = caller(0)[0];
SymbolLayer.Controller.add(name, __self__);
SymbolLayer.add(name, {
parents: [MultiSymbolLayer],
type: name, # Symbol type
df_controller: __self__, # controller to use by default -- this one
df_style:{},
});
var new = func(layer) {
var m = {
parents: [__self__],
layer: layer,
map: layer.map,
listeners: [],
query_type:'dme',
};
# TODO: for non-navaid/FGPositioned layers this needs to be customized to compare objects on the layer
# layer.searcher._equals = func(a,b) 0;
return m;
}; # ctor
var del = func() {
foreach (var l; me.listeners)
removelistener(l);
}; # del
var searchCmd = func {
printlog(_MP_dbg_lvl, "Running query:", me.query_type);
var range = me.map.controller.query_range();
if (range == nil) return;
return positioned.findWithinRange(range, me.query_type);
}; # searchCmd