def Factory.inject_defaults mapper.inject('app' => SSHMenu::App) end # ... mapper.inject( 'app.history' => SSHMenu::History, 'app.dialog.prefs' => SSHMenu::PrefsDialog, 'app.dialog.host' => SSHMenu::HostDialog, 'app.dialog.menu' => SSHMenu::MenuDialog, 'app.geograbber' => SSHMenu::GeoGrabber ) # ... def edit_host(item) dialog_class = mapper.get_class('app.dialog.host') return dialog_class.new(@app, item, @config).invoke end