File: fo-block-block-area.c

package info (click to toggle)
xmlroff 0.6.2-1
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 36,456 kB
  • ctags: 25,964
  • sloc: ansic: 178,200; xml: 109,155; sh: 8,973; makefile: 1,331; perl: 30
file content (36 lines) | stat: -rw-r--r-- 999 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
/* Fo
 * fo-block-block-area.c: Generate area for block-block formatting object
 *
 * Copyright (C) 2001 Sun Microsystems
 * Copyright (C) 2007 Menteith Consulting Ltd
 *
 * See COPYING for the status of this software.
 */

#include "area/fo-area-area.h"
#include "fo-block-block-private.h"

void
fo_block_block_area_new2 (FoFo         *fo,
			  FoFoAreaNew2Context *context,
			  GError **error)
{
  FoArea *use_parent_area;
  FoArea *new_area;

  g_return_if_fail (fo != NULL);
  g_return_if_fail (FO_IS_BLOCK_BLOCK (fo));
  g_return_if_fail (context != NULL);
  g_return_if_fail (error == NULL || *error == NULL);

  new_area = fo_area_area_new ();
  use_parent_area = context->parent_area;

  fo_area_set_generated_by (new_area, fo);
  fo->areas = g_list_append (fo->areas, new_area);
  fo_area_add_child (use_parent_area, new_area);
  new_area = fo_area_size_request (new_area);
  fo_area_area_set_width (new_area, fo_area_get_available_width (new_area));

  *(context->new_area) = new_area;
}