Class: ArcadiaGemsWizard
- Inherits:
-
Object
- Object
- ArcadiaGemsWizard
- Defined in:
- lib/a-core.rb
Instance Method Summary collapse
-
#initialize(_arcadia) ⇒ ArcadiaGemsWizard
constructor
A new instance of ArcadiaGemsWizard.
- #on_need_ruby_gem_wizard(_event) ⇒ Object
- #try_to_install_gem(name, repository = nil, version = '>0') ⇒ Object
Constructor Details
#initialize(_arcadia) ⇒ ArcadiaGemsWizard
Returns a new instance of ArcadiaGemsWizard.
2362 2363 2364 2365 |
# File 'lib/a-core.rb', line 2362 def initialize(_arcadia) @arcadia = _arcadia Arcadia.attach_listener(self, NeedRubyGemWizardEvent) end |
Instance Method Details
#on_need_ruby_gem_wizard(_event) ⇒ Object
2367 2368 2369 2370 |
# File 'lib/a-core.rb', line 2367 def on_need_ruby_gem_wizard(_event) msg = Arcadia.text("main.e.gem_missing.msg", [_event.gem_name, _event.extension_name]) ArcadiaProblemEvent.new(self, "type"=>ArcadiaProblemEvent::DEPENDENCE_MISSING_TYPE,"title"=>Arcadia.text("main.e.gem_missing.title", [_event.gem_name]), "detail"=>msg).go! end |
#try_to_install_gem(name, repository = nil, version = '>0') ⇒ Object
2372 2373 2374 2375 2376 2377 2378 2379 2380 2381 2382 2383 2384 2385 2386 2387 |
# File 'lib/a-core.rb', line 2372 def try_to_install_gem(name, repository=nil, version = '>0') ret = false sh=ArcadiaSh.new cmd = "gem install --remote --include-dependencies #{name}" cmd="sudo #{cmd}" if !Arcadia.is_windows? cmd+=" --source=#{repository}" if repository sh.prepare_exec(cmd) while sh.wait Tk.update #sleep(1) end ret=sh.result sh.destroy Gem.clear_paths ret end |