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
|
/*
See license.txt in the root of this project.
*/
# ifndef LMT_LOCALBOXES_H
# define LMT_LOCALBOXES_H
/*tex Todo: determine when to update (grouping, copying) or when to replace. */
extern halfword tex_get_local_boxes (halfword location);
extern void tex_set_local_boxes (halfword b, halfword location);
extern halfword tex_use_local_boxes (halfword p, halfword location);
extern void tex_update_local_boxes (halfword b, halfword index, halfword location);
extern void tex_replace_local_boxes (halfword par, halfword b, halfword index, halfword location);
extern void tex_reset_local_boxes (halfword index, halfword location);
extern void tex_add_local_boxes (halfword p);
extern void tex_scan_local_boxes_keys (quarterword *options, halfword *index);
extern halfword tex_valid_box_index (halfword n);
/*tex Helpers, just in case we decide to be more sparse. */
extern scaled tex_get_local_left_width (halfword p);
extern scaled tex_get_local_right_width (halfword p);
extern void tex_set_local_left_width (halfword p, scaled width);
extern void tex_set_local_right_width (halfword p, scaled width);
extern halfword tex_get_local_interline_penalty (halfword p);
extern halfword tex_get_local_broken_penalty (halfword p);
extern void tex_set_local_interline_penalty (halfword p, halfword penalty);
extern void tex_set_local_broken_penalty (halfword p, halfword penalty);
# endif
|