Class: Reline::LineEditor::DialogProcScope

Inherits:
Object
  • Object
show all
Defined in:
lib/reline/line_editor.rb

Defined Under Namespace

Classes: CompletionJourneyData

Instance Method Summary collapse

Constructor Details

#initialize(line_editor, config, proc_to_exec, context) ⇒ DialogProcScope



568
569
570
571
572
573
574
# File 'lib/reline/line_editor.rb', line 568

def initialize(line_editor, config, proc_to_exec, context)
  @line_editor = line_editor
  @config = config
  @proc_to_exec = proc_to_exec
  @context = context
  @cursor_pos = Reline::CursorPos.new
end

Instance Method Details

#callObject



639
640
641
# File 'lib/reline/line_editor.rb', line 639

def call
  instance_exec(&@proc_to_exec)
end

#call_completion_proc_with_checking_args(pre, target, post) ⇒ Object



585
586
587
# File 'lib/reline/line_editor.rb', line 585

def call_completion_proc_with_checking_args(pre, target, post)
  @line_editor.call_completion_proc_with_checking_args(pre, target, post)
end

#completion_journey_dataObject



631
632
633
# File 'lib/reline/line_editor.rb', line 631

def completion_journey_data
  @line_editor.dialog_proc_scope_completion_journey_data
end

#configObject



635
636
637
# File 'lib/reline/line_editor.rb', line 635

def config
  @config
end

#contextObject



576
577
578
# File 'lib/reline/line_editor.rb', line 576

def context
  @context
end

#cursor_posObject



610
611
612
# File 'lib/reline/line_editor.rb', line 610

def cursor_pos
  @cursor_pos
end

#dialogObject



593
594
595
# File 'lib/reline/line_editor.rb', line 593

def dialog
  @dialog
end

#just_cursor_movingObject



614
615
616
# File 'lib/reline/line_editor.rb', line 614

def just_cursor_moving
  @line_editor.instance_variable_get(:@just_cursor_moving)
end

#keyObject



606
607
608
# File 'lib/reline/line_editor.rb', line 606

def key
  @key
end

#preferred_dialog_heightObject



626
627
628
629
# File 'lib/reline/line_editor.rb', line 626

def preferred_dialog_height
  _wrapped_cursor_x, wrapped_cursor_y = @line_editor.wrapped_cursor_position
  [@line_editor.upper_space_height(wrapped_cursor_y), @line_editor.rest_height(wrapped_cursor_y), (screen_height + 6) / 5].max
end

#retrieve_completion_block(_unused = false) ⇒ Object



580
581
582
583
# File 'lib/reline/line_editor.rb', line 580

def retrieve_completion_block(_unused = false)
  preposing, target, postposing, _quote = @line_editor.retrieve_completion_block
  [preposing, target, postposing]
end

#screen_heightObject



622
623
624
# File 'lib/reline/line_editor.rb', line 622

def screen_height
  @line_editor.screen_height
end

#screen_widthObject



618
619
620
# File 'lib/reline/line_editor.rb', line 618

def screen_width
  @line_editor.screen_width
end

#set_cursor_pos(col, row) ⇒ Object



597
598
599
600
# File 'lib/reline/line_editor.rb', line 597

def set_cursor_pos(col, row)
  @cursor_pos.x = col
  @cursor_pos.y = row
end

#set_dialog(dialog) ⇒ Object



589
590
591
# File 'lib/reline/line_editor.rb', line 589

def set_dialog(dialog)
  @dialog = dialog
end

#set_key(key) ⇒ Object



602
603
604
# File 'lib/reline/line_editor.rb', line 602

def set_key(key)
  @key = key
end