10 def initialize(name, game, &blk)
16 def self.load(loader, name, group)
17 game = Game.get(group.read_entry('game').to_sym)
18 path = group.read_entry('path')
19 protocol = group.read_entry('protocol')
20 workdir = group.read_entry('workdir')
22 engine_plugin = loader.get_all_matching(:engine).find do |e|
23 e.data(:protocol) == protocol
26 new(name, game) do |color, match|
27 engine_plugin.new(path, name, color, match)
32 plugin :name => 'Default Engine Loader',
33 :interface => :engine_loader
35 def initialize(loader)
42 config = KDE::Global.config.group("Engines")
43 engine_groups = config.group_list
44 engine_groups.each do |engine_group|
45 entry = Entry.load(@loader, engine_group, config.group(engine_group))
46 @entries[entry.name] = entry
54 def find_by_game(game)
55 @entries.select do |name, e|