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.
2416 2417 2418 2419 |
# File 'lib/a-core.rb', line 2416 def initialize(_arcadia) @arcadia = _arcadia Arcadia.attach_listener(self, NeedRubyGemWizardEvent) end |
Instance Method Details
#on_need_ruby_gem_wizard(_event) ⇒ Object
2421 2422 2423 2424 |
# File 'lib/a-core.rb', line 2421 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
2426 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436 2437 2438 2439 2440 2441 |
# File 'lib/a-core.rb', line 2426 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 |