2
/******************************************************************************
3
* MODULE : modifier.hpp
4
* DESCRIPTION: a modifier box modifies the behaviour of another box
5
* as to cursor movements etc. , but displays in the same way
6
* COPYRIGHT : (C) 1999 Joris van der Hoeven
7
*******************************************************************************
8
* This software falls under the GNU general public license and comes WITHOUT
9
* ANY WARRANTY WHATSOEVER. See the file $TEXMACS_PATH/LICENSE for more details.
10
* If you don't have this file, write to the Free Software Foundation, Inc.,
11
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
12
******************************************************************************/
18
class modifier_box_rep: public box_rep {
22
modifier_box_rep (path ip, box b);
27
void display (ps_device dev);
29
tree action (tree t, SI x, SI y, SI delta);
30
void collect_page_numbers (hashmap<string,tree>& h, tree page);
31
path find_tag (string name);
33
virtual path find_box_path (SI x, SI y, SI delta, bool force);
34
virtual path find_lip ();
35
virtual path find_rip ();
36
virtual path find_left_box_path ();
37
virtual path find_right_box_path ();
38
virtual path find_box_path (path p, bool& found);
39
virtual path find_tree_path (path bp);
40
virtual cursor find_cursor (path bp);
41
virtual selection find_selection (path lbp, path rbp);
44
double right_slope ();
45
SI left_correction ();
46
SI right_correction ();
47
SI lsub_correction ();
48
SI lsup_correction ();
49
SI rsub_correction ();
50
SI rsup_correction ();
51
SI sub_lo_base (int level);
52
SI sub_hi_lim (int level);
53
SI sup_lo_lim (int level);
54
SI sup_lo_base (int level);
55
SI sup_hi_lim (int level);
58
#endif // defined MODIFIER_H