Spec-Zone.ru › Ruby 3.2

класс Reline::LineEditor::Dialog

Родитель:
Объект

Атрибуты

column[RW]
contents[R]
lines_backup[RW]
name[R]
pointer[RW]
scroll_top[RW]
scrollbar_pos[RW]
trap_key[RW]
vertical_offset[RW]
width[R]

Публичные Классовые Методы

new(name, config, proc_scope) Показать исходный код
# File lib/reline/line_editor.rb, line 598
def initialize(name, config, proc_scope)
  @name = name
  @config = config
  @proc_scope = proc_scope
  @width = nil
  @scroll_top = 0
  @trap_key = nil
end

Публичные Методы Экземпляров

call(key) Показать исходный код
# File lib/reline/line_editor.rb, line 622
def call(key)
  @proc_scope.set_dialog(self)
  @proc_scope.set_key(key)
  dialog_render_info = @proc_scope.call
  if @trap_key
    if @trap_key.any?{ |i| i.is_a?(Array) } # multiple trap
      @trap_key.each do |t|
        @config.add_oneshot_key_binding(t, @name)
      end
    elsif @trap_key.is_a?(Array)
      @config.add_oneshot_key_binding(@trap_key, @name)
    elsif @trap_key.is_a?(Integer) or @trap_key.is_a?(Reline::Key)
      @config.add_oneshot_key_binding([@trap_key], @name)
    end
  end
  dialog_render_info
end
contents=(contents) Показать исходный код
# File lib/reline/line_editor.rb, line 615
def contents=(contents)
  @contents = contents
  if contents and @width.nil?
    @width = contents.map{ |line| Reline::Unicode.calculate_width(line, true) }.max
  end
end
set_cursor_pos(col, row) Показать исходный код
# File lib/reline/line_editor.rb, line 607
def set_cursor_pos(col, row)
  @proc_scope.set_cursor_pos(col, row)
end
width=(v) Показать исходный код
# File lib/reline/line_editor.rb, line 611
def width=(v)
  @width = v
end

Ruby Core © 1993–2022 Yukihiro Matsumoto
Licensed under the Ruby License.
Ruby Standard Library © contributors
Licensed under their own licenses.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API