]> www.fi.muni.cz Git - evince.git/blob - pdf/xpdf/XPDFTreeP.h
16ab137a8cd33c3a8d9935086614871fbed66177
[evince.git] / pdf / xpdf / XPDFTreeP.h
1 //========================================================================
2 //
3 // XPDFTreeP.h
4 //
5 //========================================================================
6
7 #ifndef XPDFTREEP_H
8 #define XPDFTREEP_H
9
10 #include <Xm/ManagerP.h>
11 #include "XPDFTree.h"
12
13 extern "C" {
14
15 typedef void (*XPDFLayoutProc)(Widget widget, Widget instigator);
16 typedef void (*XPDFCalcSizeProc)(Widget widget, Widget instigator,
17                                  Dimension *totalWidth,
18                                  Dimension *totalHeight);
19 typedef Boolean (*XPDFNeedRelayoutProc)(Widget oldWidget, Widget newWidget);
20
21 #define XPDFInheritCreateGC ((XtWidgetProc)_XtInherit)
22 #define XPDFInheritDestroyGC ((XtWidgetProc)_XtInherit)
23 #define XPDFInheritLayout ((XPDFLayoutProc)_XtInherit)
24 #define XPDFInheritCalcSize ((XPDFCalcSizeProc)_XtInherit)
25 #define XPDFInheritNeedRelayout ((XPDFNeedRelayoutProc)_XtInherit)
26
27 typedef struct {
28   XtWidgetProc createGC;
29   XtWidgetProc destroyGC;
30   XPDFLayoutProc layout;
31   XPDFCalcSizeProc calcSize;
32   XPDFNeedRelayoutProc needRelayout;
33   XtPointer extension;
34 } XPDFTreeClassPart;
35
36 typedef struct _XPDFTreeClassRec {
37   CoreClassPart coreClass;
38   CompositeClassPart compositeClass;
39   ConstraintClassPart constraintClass;
40   XmManagerClassPart managerClass;
41   XPDFTreeClassPart treeClass;
42 } XPDFTreeClassRec;
43
44 externalref XPDFTreeClassRec xpdfTreeClassRec;
45
46 typedef struct _XPDFTreeEntry XPDFTreeEntry;
47
48 typedef struct {
49   Dimension marginWidth;
50   Dimension marginHeight;
51   XtCallbackList selectCallback;
52   GC plainGC;
53   GC dottedGC;
54   XPDFTreeEntry *root;
55   int redrawY;
56 } XPDFTreePart;
57
58 typedef struct _XPDFTreeRec {
59   CorePart core;
60   CompositePart composite;
61   ConstraintPart constraint;
62   XmManagerPart manager;
63   XPDFTreePart tree;
64 } XPDFTreeRec;
65
66 #define XPDFTreeIndex (XmManagerIndex + 1)
67
68 typedef struct _XPDFTreeConstraintPart {
69   Widget entryParent;
70   Boolean entryExpanded;
71   int entryPosition;
72   XPDFTreeEntry *e;
73 } XPDFTreeConstraintPart, *XPDFTreeConstraint;
74
75 typedef struct _XPDFTreeConstraintRec {
76   XmManagerConstraintPart manager;
77   XPDFTreeConstraintPart tree;
78 } XPDFTreeConstraintRec, *XPDFTreeConstraintPtr;
79
80 #define XPDFTreeCPart(w) \
81   (&((XPDFTreeConstraintPtr)(w)->core.constraints)->tree)
82
83 } // extern "C"
84
85 #endif