annotate pkg-src/tree-x/intf.h @ 172:a38aed19690b

Added tag r20-3b12 for changeset 929b76928fce
author cvs
date Mon, 13 Aug 2007 09:47:55 +0200
parents 85ec50267440
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
163
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
1 /* ----------------------------------------------------------------------------
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
2 * File : intf.h
167
85ec50267440 Import from CVS: tag r20-3b10
cvs
parents: 163
diff changeset
3 * Purpose : include file for intf.c and draw.c
163
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
4 * ----------------------------------------------------------------------------
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
5 */
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
6
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
7 #include <X11/Intrinsic.h>
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
8 #include <X11/StringDefs.h>
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
9 #define DEFAULT_FONT "-adobe-helvetica-bold-r-normal--12-*"
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
10 #define BIG_FONT "-adobe-helvetica-bold-r-normal--12-*"
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
11
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
12 #define X11_APPLICATION_CLASS "Tree"
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
13 #define X11_DEFAULT_FONT "fixed"
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
14 #define X11_FONT_RESOURCE "tree.font"
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
15 #define X11_FONT_CLASS_RESOURCE "Tree.Font"
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
16
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
17 #define HELP_FILE "tree.help"
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
18
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
19 #define LABEL_MAT_WIDTH 3
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
20 #define LABEL_MAT_HEIGHT 3
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
21 #define BORDER_SIZE 4 /* beginning border size */
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
22 #define MAX_BORDER_SIZE 25
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
23 #define PARENT_DISTANCE 30 /* beginning parent distance */
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
24 #define MAX_PARENT_DISTANCE 50
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
25 #define DENSITY_FACTOR 1.50
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
26 #define MAT_SIZE BORDER_SIZE * 2
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
27 #define ELISION_WIDTH 5
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
28 #define ANIMATION_STEP 3
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
29 #define ANIMATION_STEP_STEP 4
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
30
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
31 #define BACKGROUND_COLOR 0
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
32 #define TREE_COLOR 1
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
33 #define CONTOUR_COLOR 2
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
34 #define HIGHLIGHT_COLOR 3
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
35 #define SPLIT_COLOR 4
167
85ec50267440 Import from CVS: tag r20-3b10
cvs
parents: 163
diff changeset
36 #define ACTION_COLOR 5
163
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
37 #define NUM_COLORS 6
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
38
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
39 #define TREE_MENU_NEW 0
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
40 #define TREE_MENU_LOAD 1
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
41 #define TREE_MENU_SAVE 2
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
42 #define TREE_MENU_SEP1 3
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
43 #define TREE_MENU_QUIT 4
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
44 #define TREE_MENU_STATS 6
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
45 #define TREE_MENU_ITEMS 5
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
46
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
47 #define TREE_MENU_SEP2 5
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
48
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
49 #define LAYOUT_MENU_FIXED 0 /* not used at this time */
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
50 #define LAYOUT_MENU_VARIABLE 1
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
51 #define LAYOUT_MENU_SEP1 2
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
52
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
53 #define LAYOUT_MENU_SPACING 3
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
54 #define LAYOUT_MENU_SEP2 4
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
55 #define LAYOUT_MENU_ALIGN_NODES 5
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
56 #define LAYOUT_MENU_ITEMS 5
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
57
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
58 #define NODE_MENU_LABEL 0
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
59 #define NODE_MENU_SEP1 1
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
60 #define NODE_MENU_ADD_CHILD 2
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
61 #define NODE_MENU_ADD_BEFORE 3
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
62 #define NODE_MENU_ADD_AFTER 4
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
63 #define NODE_MENU_ELISION 5
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
64 #define NODE_MENU_DELETE 6
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
65 #define NODE_MENU_ITEMS 7
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
66
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
67 #define TREE_MENU 0
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
68 #define LAYOUT_MENU 1
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
69 #define NODE_MENU 2
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
70 #define NUM_MENUS 3
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
71
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
72 #define STR_SHOW_STATS 0
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
73 #define STR_HIDE_STATS 1
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
74 #define STR_NODE_COLLAPSE 2
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
75 #define STR_NODE_EXPAND 3
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
76 #define STR_SHOW_CONTOUR 4
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
77 #define STR_HIDE_CONTOUR 5
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
78 #define STR_LOAD_FILE 6
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
79 #define STR_SAVE_FILE 7
167
85ec50267440 Import from CVS: tag r20-3b10
cvs
parents: 163
diff changeset
80 #define NUM_MENU_STRS 8
163
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
81
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
82 #define DLG_NEW 0
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
83 #define DLG_NODE_NAME 1
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
84 #define DLG_FILE 2
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
85 #define DLG_INFO 3
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
86 #define DLG_ERROR 4
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
87 #define DLG_SPACING 5
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
88 #define NUM_DLG 6
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
89
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
90 /* in 1/10ths of a second */
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
91 #define ANIMATION_SPEED_FAST 1
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
92
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
93 typedef enum {
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
94 NoContours,
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
95 OutsideContour,
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
96 AllContours,
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
97 SelectedContours
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
98 } ContourOption;
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
99
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
100 typedef enum {
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
101 Child,
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
102 Before,
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
103 After
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
104 } NodePosition;
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
105
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
106 typedef enum {
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
107 Fixed,
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
108 Variable
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
109 } DensityOption;
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
110
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
111 extern Widget TreeTopLevel;
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
112 extern Widget TreeDrawingArea;
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
113 extern Display *TreeDisplay;
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
114 extern int TreeScreen;
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
115 extern int TreeContourWidth;
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
116 extern int TreeBorderSize;
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
117 extern int TreeParentDistance;
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
118 extern XFontStruct *TreeLabelFont;
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
119 extern DoubleBuffer *TreeDrawingAreaDB;
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
120 extern char TreeShowSteps;
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
121 extern ContourOption TreeShowContourOption;
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
122 extern DensityOption TreeLayoutDensity;
167
85ec50267440 Import from CVS: tag r20-3b10
cvs
parents: 163
diff changeset
123 extern char TreeAlignNodes;
163
0132846995bd Import from CVS: tag r20-3b8
cvs
parents:
diff changeset
124 extern char PauseAfterStep;
167
85ec50267440 Import from CVS: tag r20-3b10
cvs
parents: 163
diff changeset
125
85ec50267440 Import from CVS: tag r20-3b10
cvs
parents: 163
diff changeset
126 void Pause(void);
85ec50267440 Import from CVS: tag r20-3b10
cvs
parents: 163
diff changeset
127 void StatusMsg(char *msg, int urgent);
85ec50267440 Import from CVS: tag r20-3b10
cvs
parents: 163
diff changeset
128 void InsertNode(Tree *base_node, NodePosition node_pos, char *new_node_text);
85ec50267440 Import from CVS: tag r20-3b10
cvs
parents: 163
diff changeset
129 void SetNodeLabel(Tree *node, char *label);
85ec50267440 Import from CVS: tag r20-3b10
cvs
parents: 163
diff changeset
130 void SetDrawColor(int color);
85ec50267440 Import from CVS: tag r20-3b10
cvs
parents: 163
diff changeset
131 void ExpandCollapseNode(Tree *node);
85ec50267440 Import from CVS: tag r20-3b10
cvs
parents: 163
diff changeset
132 void SetDrawingTree(Tree *tree);
85ec50267440 Import from CVS: tag r20-3b10
cvs
parents: 163
diff changeset
133 void ExposeHandler(Widget, XtPointer, XEvent*, Boolean*);