class_docstr: Typical usage:
  
  ::
  
      output = Vt100_Output.from_pty(sys.stdout)
      r = Renderer(style, output)
      r.render(cli, layout=...)
class_docstr_tok: ["Typical","usage",":",":",":","output","=","Vt100_Output.from_pty","(","sys.stdout",")","r","=","Renderer","(","style",",","output",")","r.render","(","cli",",","layout=","...",")"]
docstr: Get current cursor position.
  For vt100: Do CPR request. (answer will arrive later.)
  For win32: Do API call. (Answer comes immediately.)
docstr_tok: ["Get","current","cursor","position",".","For","vt100",":","Do","CPR","request",".","(","answer","will","arrive","later",".",")","For","win32",":","Do","API","call",".","(","Answer","comes","immediately",".",")"]
code: def request_absolute_cursor_position(self):
      """
      Get current cursor position.
      For vt100: Do CPR request. (answer will arrive later.)
      For win32: Do API call. (Answer comes immediately.)
      """
      # Only do this request when the cursor is at the top row. (after a
      # clear or reset). We will rely on that in `report_absolute_cursor_row`.
      assert self._cursor_pos.y == 0
  
      # For Win32, we have an API call to get the number of rows below the
      # cursor.
      if is_windows():
          self._min_available_height = (
              self.output.get_rows_below_cursor_position()
          )
      else:
          if self.use_alternate_screen:
              self._min_available_height = self.output.get_size().rows
          else:
              # Asks for a cursor position report (CPR).
              self.waiting_for_cpr = True
              self.output.ask_for_cpr()
  
imports: from __future__ import unicode_literals
  from prompt_toolkit.filters import to_cli_filter
  from prompt_toolkit.layout.mouse_handlers import MouseHandlers
  from prompt_toolkit.layout.screen import Point, Screen, WritePosition
  from prompt_toolkit.output import Output
  from prompt_toolkit.styles import Style
  from prompt_toolkit.token import Token
  from prompt_toolkit.utils import is_windows
  from six.moves import range
label_desc: Use image node_id 5 for calling the Renderer obj's underlying member method code with example usage: obj.request_absolute_cursor_position() without return types