- /* Minimum cell width or height before allowing the cell to be broken
- across two pages. (Joined cells may always be broken at join
- points.) */
- int min_break[TABLE_N_AXES];
- };
-\f
-/* A "page" of content that is ready to be rendered.
-
- A page's size is not limited to the size passed in as part of render_params.
- Use render_break (see below) to break a too-big render_page into smaller
- render_pages that will fit in the available space. */
-struct render_page *render_page_create (const struct render_params *,
- const struct table *);
-
-struct render_page *render_page_ref (const struct render_page *);
-void render_page_unref (struct render_page *);
-
-int render_page_get_size (const struct render_page *, enum table_axis);
-void render_page_draw (const struct render_page *);
-void render_page_draw_region (const struct render_page *,
- int x, int y, int w, int h);
-\f
-/* An iterator for breaking render_pages into smaller chunks. */
-struct render_break
- {
- struct render_page *page; /* Page being broken up. */
- enum table_axis axis; /* Axis along which 'page' is being broken. */
- int z; /* Next cell along 'axis'. */
- int pixel; /* Pixel offset within cell 'z' (usually 0). */
- int hw; /* Width of headers of 'page' along 'axis'. */
- };
+int render_pager_get_size (const struct render_pager *, enum table_axis);
+int render_pager_get_best_breakpoint (const struct render_pager *, int height);