+2019-07-17  Tom Tromey  <tom@tromey.com>
+
+       * tui/tui-windata.c (tui_display_data_from)
+       (tui_data_window::do_scroll_vertical): Update.
+       * tui/tui-regs.h (tui_line_from_reg_element_no): Don't declare.
+       * tui/tui-regs.c (tui_data_window::line_from_reg_element_no):
+       Rename from tui_line_from_reg_element_no.
+       (tui_display_registers_from_line): Update.
+       * tui/tui-data.h (struct tui_data_window)
+       <line_from_reg_element_no>: New method.
+
 2019-07-17  Tom Tromey  <tom@tromey.com>
 
        * tui/tui-regs.h (tui_last_regs_line_no): Don't declare.
 
      are no registers (-1) is returned.  */
   int last_regs_line_no () const;
 
+  /* Answer the line number that the register element at element_no is
+     on.  If element_no is greater than the number of register
+     elements there are, -1 is returned.  */
+  int line_from_reg_element_no (int element_no) const;
+
 protected:
 
   void do_scroll_vertical (int num_to_scroll) override;
 
   return num_lines;
 }
 
+/* See tui-data.h.  */
 
-/* Answer the line number that the register element at element_no is
-   on.  If element_no is greater than the number of register elements
-   there are, -1 is returned.  */
 int
-tui_line_from_reg_element_no (int element_no)
+tui_data_window::line_from_reg_element_no (int element_no) const
 {
-  if (element_no < TUI_DATA_WIN->regs_content.size ())
+  if (element_no < regs_content.size ())
     {
       int i, line = (-1);
 
       i = 1;
       while (line == (-1))
        {
-         if (element_no < TUI_DATA_WIN->regs_column_count * i)
+         if (element_no < regs_column_count * i)
            line = i - 1;
          else
            i++;
             registers.  */
          if (line_no >= TUI_DATA_WIN->last_regs_line_no ())
            {
-             if ((line = tui_line_from_reg_element_no (
+             if ((line = TUI_DATA_WIN->line_from_reg_element_no (
                 TUI_DATA_WIN->regs_content.size () - 1)) < 0)
                line = 0;
            }
 
 extern void tui_display_registers_from (int);
 extern int tui_display_registers_from_line (int, int);
 extern int tui_first_reg_element_inline (int);
-extern int tui_line_from_reg_element_no (int);
 extern int tui_first_reg_element_no_inline (int lineno);
 
 #endif /* TUI_TUI_REGS_H */
 
   int first_line = (-1);
 
   if (element_no < TUI_DATA_WIN->regs_content.size ())
-    first_line = tui_line_from_reg_element_no (element_no);
+    first_line = TUI_DATA_WIN->line_from_reg_element_no (element_no);
   else
     { /* Calculate the first_line from the element number.  */
     }
 
   first_element_no = first_data_item_displayed ();
   if (first_element_no < regs_content.size ())
-    first_line = tui_line_from_reg_element_no (first_element_no);
+    first_line = line_from_reg_element_no (first_element_no);
   else
     { /* Calculate the first line from the element number which is in
         the general data content.  */