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.
2385 2386 2387 2388 |
# File 'lib/a-core.rb', line 2385 def initialize(_arcadia) @arcadia = _arcadia Arcadia.attach_listener(self, NeedRubyGemWizardEvent) end |
Instance Method Details
#on_need_ruby_gem_wizard(_event) ⇒ Object
2390 2391 2392 2393 |
# File 'lib/a-core.rb', line 2390 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
2395 2396 2397 2398 2399 2400 2401 2402 2403 2404 2405 2406 2407 2408 2409 2410 |
# File 'lib/a-core.rb', line 2395 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 |