/[CvsGraph]/cvsgraph/cvsgraph.h
ViewVC logotype

Annotate of /cvsgraph/cvsgraph.h

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.29 - (hide annotations)
Wed May 21 01:41:18 2008 UTC (9 years, 4 months ago) by bertho
Branch: MAIN
CVS Tags: merge_automake_dev1_20080521, REL_1_6_2, REL_1_7_0, source_head_20080521, HEAD
Changes since 1.28: +1 -0 lines
File MIME type: text/plain
- Do a better job at drawing the merge lines by selecting the shortest path
  from the revision boxes. An analysis is now done whether the source and
  destinations should be on the left or right side.
- Fix the left_right case for merge lines to display correctly.
- Fix a +/-1 error on the merge lines to account for both rounding errors and
  the shadow of the revision boxes.
- Add configuration option 'merge_on_tag' to force the left_right case to
  display merge lines on the tags instead of on the top/bottom sides. This
  also solves imagemap overlaps where multiple sources or destinations would
  be displayed at the same position.
- Fix the imagemap function to record the correct position of the merges.
1 bertho 1.1 /*
2     * CvsGraph graphical representation generator of brances and revisions
3     * of a file in cvs/rcs.
4     *
5     * Copyright (C) 2001 B. Stultiens
6     *
7     * This program is free software; you can redistribute it and/or modify
8     * it under the terms of the GNU General Public License as published by
9     * the Free Software Foundation; either version 2 of the License, or
10     * (at your option) any later version.
11     *
12     * This program is distributed in the hope that it will be useful,
13     * but WITHOUT ANY WARRANTY; without even the implied warranty of
14     * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15     * GNU General Public License for more details.
16     *
17     * You should have received a copy of the GNU General Public License
18     * along with this program; if not, write to the Free Software
19     * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20     */
21    
22     #ifndef __CVSGRAPH_H
23     #define __CVSGRAPH_H
24    
25 bertho 1.9 #define CONFFILENAME "cvsgraph.conf"
26    
27     #ifndef ETCDIR
28     # define ETCDIR "/usr/local/etc"
29     #endif
30    
31 bertho 1.4 #define DEBUG_CONF_LEX 0x01
32     #define DEBUG_CONF_YACC 0x02
33     #define DEBUG_RCS_LEX 0x04
34     #define DEBUG_RCS_YACC 0x08
35     #define DEBUG_RCS_FILE 0x10
36    
37 bertho 1.15 #define HTMLLEVEL_3 1 /* HTML 3.x compatibility */
38     #define HTMLLEVEL_4 2 /* HTML 4.x compatibility */
39     #define HTMLLEVEL_X 3 /* XHTML compatibility */
40    
41 bertho 1.4 extern int debuglevel;
42    
43 bertho 1.22 typedef struct __msg_stack_t
44     {
45     int severity;
46     int w;
47     int h;
48     char *msg;
49     } msg_stack_t;
50    
51     #define MSG_WARN 0
52     #define MSG_ERR 1
53    
54     void stack_msg(int severity, const char *fmt, ...);
55    
56    
57 bertho 1.10 typedef struct __font_t
58     {
59     gdFontPtr gdfont;
60     char *ttfont;
61     double ttsize;
62     } font_t;
63 bertho 1.1
64 bertho 1.28 struct __node_t;
65    
66 bertho 1.1 typedef struct __color_t
67     {
68     int r;
69     int g;
70     int b;
71     int id;
72 bertho 1.28 struct __node_t *node;
73 bertho 1.1 } color_t;
74    
75 bertho 1.27 typedef struct __colorlist_t
76     {
77     int n;
78     color_t *clrs;
79     } colorlist_t;
80    
81 bertho 1.28 typedef struct __node_t
82     {
83     int key;
84     int op;
85     char *content;
86     struct __node_t *tcase;
87     struct __node_t *fcase;
88     union {
89     char *str;
90     color_t clr;
91     } value;
92     } node_t;
93    
94 bertho 1.27 typedef struct __stringlist_t
95     {
96     int n;
97     char **strs;
98     } stringlist_t;
99    
100 bertho 1.28 typedef struct __condstring_t
101     {
102     char *str;
103     node_t *node;
104     } condstring_t;
105    
106 bertho 1.1 typedef struct __config_t
107     {
108     char *cvsroot;
109     char *cvsmodule;
110 bertho 1.6 char *date_format;
111 bertho 1.1
112     color_t color_bg;
113 bertho 1.10 int transparent_bg;
114 bertho 1.6 int box_shadow;
115 bertho 1.7 int upside_down;
116 bertho 1.13 int left_right;
117 bertho 1.7 int strip_untagged;
118 bertho 1.9 int strip_first_rev;
119 bertho 1.10 int auto_stretch;
120     int use_ttf;
121     int anti_alias;
122 bertho 1.11 int thick_lines;
123 bertho 1.12 int parse_logs;
124 bertho 1.15 int html_level;
125 bertho 1.1
126 bertho 1.22 font_t msg_font;
127     color_t msg_color;
128    
129 bertho 1.1 font_t tag_font;
130     color_t tag_color;
131 bertho 1.20 char *tag_ignore;
132 bertho 1.23 int tag_ignore_merge;
133 bertho 1.20 int tag_nocase;
134 bertho 1.21 int tag_negate;
135 bertho 1.1
136 bertho 1.23 int rev_hidenumber;
137 bertho 1.1 font_t rev_font;
138     color_t rev_color;
139 bertho 1.6 color_t rev_bgcolor;
140 bertho 1.1 int rev_separator;
141     int rev_minline;
142     int rev_maxline;
143     int rev_lspace;
144     int rev_rspace;
145     int rev_tspace;
146     int rev_bspace;
147 bertho 1.28 condstring_t rev_idtext;
148     condstring_t rev_text;
149 bertho 1.6 color_t rev_text_color;
150     font_t rev_text_font;
151 bertho 1.14 int rev_maxtags;
152 bertho 1.1
153 bertho 1.27 colorlist_t merge_color;
154     stringlist_t merge_from;
155     stringlist_t merge_to;
156 bertho 1.23 int merge_findall;
157 bertho 1.16 int merge_front;
158     int merge_nocase;
159 bertho 1.19 int merge_arrows;
160 bertho 1.25 int merge_cvsnt;
161     color_t merge_cvsnt_color;
162 bertho 1.29 int merge_on_tag;
163 bertho 1.19 int arrow_width;
164     int arrow_length;
165 bertho 1.16
166 bertho 1.1 font_t branch_font;
167     color_t branch_color;
168 bertho 1.10 font_t branch_tag_font;
169     color_t branch_tag_color;
170 bertho 1.1 color_t branch_bgcolor;
171     int branch_lspace;
172     int branch_rspace;
173     int branch_tspace;
174     int branch_bspace;
175 bertho 1.4 int branch_connect;
176     int branch_margin;
177 bertho 1.8 int branch_dupbox;
178 bertho 1.17 int branch_fold;
179 bertho 1.18 int branch_foldall;
180 bertho 1.24 int branch_resort;
181 bertho 1.22 char *branch_subtree;
182 bertho 1.1
183     char *title;
184     int title_x;
185     int title_y;
186     font_t title_font;
187     int title_align;
188     color_t title_color;
189    
190     int margin_top;
191     int margin_bottom;
192     int margin_left;
193     int margin_right;
194 bertho 1.2
195     int image_type;
196     int image_quality;
197 bertho 1.26 int image_compress;
198     int image_interlace;
199 bertho 1.3
200     char *map_name;
201 bertho 1.5 char *map_branch_href;
202     char *map_branch_alt;
203     char *map_rev_href;
204     char *map_rev_alt;
205 bertho 1.6 char *map_diff_href;
206     char *map_diff_alt;
207 bertho 1.22 char *map_merge_href;
208     char *map_merge_alt;
209 bertho 1.5
210     char *expand[10];
211 bertho 1.1 } config_t;
212    
213     extern config_t conf;
214    
215     #endif

  ViewVC Help
Powered by ViewVC 1.1.0 with CvsGraph 1.7.0