Module: Gem::DefaultUserInteraction

Includes:
Text
Included in:
StreamUI::SimpleProgressReporter, StreamUI::VerboseProgressReporter, TestCase, UserInteraction
Defined in:
lib/rubygems/test_case.rb,
lib/rubygems/user_interaction.rb

Overview

Module that defines the default UserInteraction. Any class including this module will have access to the ui method that returns the default UI.

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Text

#clean_text, #format_text, #levenshtein_distance, #min3, #truncate_text

Class Method Details

.uiObject

Return the default UI.



29
30
31
# File 'lib/rubygems/user_interaction.rb', line 29

def self.ui
  @ui ||= Gem::ConsoleUI.new
end

.ui=(new_ui) ⇒ Object

Set the default UI. If the default UI is never explicitly set, a simple console based UserInteraction will be used automatically.



37
38
39
# File 'lib/rubygems/user_interaction.rb', line 37

def self.ui=(new_ui)
  @ui = new_ui
end

.use_ui(new_ui) ⇒ Object

Use new_ui for the duration of block.



44
45
46
47
48
49
50
# File 'lib/rubygems/user_interaction.rb', line 44

def self.use_ui(new_ui)
  old_ui = @ui
  @ui = new_ui
  yield
ensure
  @ui = old_ui
end

Instance Method Details

#uiObject

See DefaultUserInteraction::ui



55
56
57
# File 'lib/rubygems/user_interaction.rb', line 55

def ui
  Gem::DefaultUserInteraction.ui
end

#ui=(new_ui) ⇒ Object

See DefaultUserInteraction::ui=



62
63
64
# File 'lib/rubygems/user_interaction.rb', line 62

def ui=(new_ui)
  Gem::DefaultUserInteraction.ui = new_ui
end

#use_ui(new_ui, &block) ⇒ Object

See DefaultUserInteraction::use_ui



69
70
71
# File 'lib/rubygems/user_interaction.rb', line 69

def use_ui(new_ui, &block)
  Gem::DefaultUserInteraction.use_ui(new_ui, &block)
end