1 /*
2  * Copyright (c) 2001-2004 the xdvik development team
3  *
4  * Page selector for xdvi
5  *
6  * Copyright (c) 1993, 1995
7  *      MATSUURA Syun           syun@fuka.info.waseda.ac.jp
8  *      HIRAHARA Atsushi        hirahara@fuka.info.waseda.ac.jp
9  *      ONO Kouichi             onono@fuka.info.waseda.ac.jp
10  *
11  * All rights reserved.
12  */
13 
14 /* SU: I was unsure how to interpret the `All rights reserved' in the
15  * previous line, so emailed Ono Kouichi about this.  Here's (the
16  * relevant part of) his answer (which was CC'ed to Hirahara Atsushi -
17  * all three of them had left Waseda university around '95):
18  *
19  *    You can modify, embed, copy and distribute a part of or the
20  *    entire of our source code when you specify our copyright in your
21  *    xdvik version.
22  *
23  * IANAL, but I think this is compatible with the X consortium
24  * license as specified in the other files.
25  */
26 
27 #ifndef PAGESEL_H_
28 #define PAGESEL_H_
29 
30 #include "xdvi.h"
31 
32 extern void refresh_pagelist(int newsize, int newpage);
33 extern void maybe_scroll_pagelist(int newpage, Boolean force_recenter);
34 extern void create_pagelist(void);
35 extern void list_toggle_current(int arg);
36 extern void list_toggle_marks(int arg);
37 
38 # ifdef MOTIF
39 extern Widget page_list;
40 extern void toggle_pagelist(void);
41 # else
42 extern int xaw_get_pagelist_size(void);
43 extern void xaw_create_pagelist_widgets(Dimension height, Dimension width, Position y, Widget parent);
44 extern void handle_destroy_pagelist(Widget w, XtPointer client_data, XtPointer call_data);
45 extern void handle_pagelist_resize(void);
46 # endif
47 
48 /* pageinfo access methods */
49 extern long pageinfo_get_offset(int page);
50 extern int pageinfo_get_number(int page);
51 extern int pageinfo_get_index_of_number(int number);
52 
53 extern unsigned int pageinfo_get_page_width(int page);
54 extern unsigned int pageinfo_get_page_height(int page);
55 extern unsigned int pageinfo_get_window_width(int page);
56 extern unsigned int pageinfo_get_window_height(int page);
57 
58 extern void pageinfo_set_page_width(int page, unsigned int width);
59 extern void pageinfo_set_page_height(int page, unsigned int height);
60 extern void pageinfo_set_window_width(int page, unsigned int width);
61 extern void pageinfo_set_window_height(int page, unsigned int height);
62 
63 extern void pageinfo_set_offset(int index, long offset);
64 extern void pageinfo_set_number(int index, int number);
65 
66 extern void pageinfo_allocate(int total_pages);
67 extern void pageinfo_deallocate(void);
68 extern Boolean pageinfo_is_marked(int i);
69 extern Boolean pageinfo_have_marked_pages(void);
70 
71 #endif /* PAGESEL_H_ */
72