Lines Matching refs:dw
78 static void DrawSplineSegments(DviWidget dw);
86 DrawText(DviWidget dw)
88 XftFont *font = dw->dvi.cache.font;
90 for (int i = 0; i <= dw->dvi.cache.index; i++) {
91 if (dw->dvi.cache.cache[i].font)
92 font = dw->dvi.cache.cache[i].font;
93 XftDrawString8(dw->dvi.draw, &dw->dvi.black,
95 dw->dvi.cache.cache[i].x,
96 dw->dvi.cache.start_y,
97 (unsigned char *) dw->dvi.cache.cache[i].chars,
98 dw->dvi.cache.cache[i].nchars);
104 FlushCharCache(DviWidget dw)
106 int xx = ToX(dw, dw->dvi.state->x);
107 int yx = ToX(dw, dw->dvi.state->y);
109 if (dw->dvi.cache.char_index != 0) {
111 DrawText(dw);
113 XDrawText(XtDisplay(dw), XtWindow(dw), dw->dvi.normal_GC,
114 dw->dvi.cache.start_x, dw->dvi.cache.start_y,
115 dw->dvi.cache.cache, dw->dvi.cache.index + 1);
118 dw->dvi.cache.index = 0;
119 dw->dvi.cache.max = DVI_TEXT_CACHE_SIZE;
120 if (dw->dvi.noPolyText)
121 dw->dvi.cache.max = 1;
122 dw->dvi.cache.char_index = 0;
123 dw->dvi.cache.cache[0].nchars = 0;
124 dw->dvi.cache.start_x = dw->dvi.cache.x = xx;
125 dw->dvi.cache.start_y = dw->dvi.cache.y = yx;
129 SetGCForDraw(DviWidget dw)
131 if (dw->dvi.state->line_style != dw->dvi.line_style ||
132 dw->dvi.state->line_width != dw->dvi.line_width) {
133 int lw = ToX(dw, dw->dvi.state->line_width);
137 XSetLineAttributes(XtDisplay(dw), dw->dvi.normal_GC,
139 dw->dvi.line_style = dw->dvi.state->line_style;
140 dw->dvi.line_width = dw->dvi.state->line_width;
145 DrawLine(DviWidget dw, int x, int y)
147 if (dw->dvi.display_enable)
148 XDrawLine(XtDisplay(dw), XtWindow(dw), dw->dvi.normal_GC,
149 ToX(dw, dw->dvi.state->x), ToX(dw, dw->dvi.state->y),
150 ToX(dw, dw->dvi.state->x + x), ToX(dw, dw->dvi.state->y + y));
151 dw->dvi.state->x += x;
152 dw->dvi.state->y += y;
156 DrawCircle(DviWidget dw, int diameter)
158 if (dw->dvi.display_enable)
159 XDrawArc(XtDisplay(dw), XtWindow(dw), dw->dvi.normal_GC,
160 ToX(dw, dw->dvi.state->x),
161 ToX(dw, dw->dvi.state->y - (diameter / 2)),
162 ToX(dw, diameter), ToX(dw, diameter), 0, 360 * 64);
163 dw->dvi.state->x += diameter;
167 DrawEllipse(DviWidget dw, int a, int b)
169 if (dw->dvi.display_enable)
170 XDrawArc(XtDisplay(dw), XtWindow(dw), dw->dvi.normal_GC,
171 ToX(dw, dw->dvi.state->x), ToX(dw, dw->dvi.state->y - (b / 2)),
172 ToX(dw, a), ToX(dw, b), 0, 360 * 64);
173 dw->dvi.state->x += a;
185 DrawArc(DviWidget dw, int x0, int y0, int x1, int y1)
188 int xc = dw->dvi.state->x + x0;
189 int yc = dw->dvi.state->y + y0;
195 dw->dvi.state->x = x2;
196 dw->dvi.state->y = y2;
198 if (dw->dvi.display_enable) {
245 XDrawArc(XtDisplay(dw), XtWindow(dw), dw->dvi.normal_GC,
246 ToX(dw, xc - r), ToX(dw, yc - r),
247 ToX(dw, 2 * r), ToX(dw, 2 * r), angle1, angle2);
277 DrawSpline(DviWidget dw, const char *s, int len)
287 DrawSplineSegments(dw);
409 DrawSplineSegments(DviWidget dw)
414 double xpos = dw->dvi.state->x;
415 double ypos = dw->dvi.state->y;
423 DrawLine(dw, dx, dy);
427 dw->dvi.state->x = xpos + x1;
428 dw->dvi.state->y = ypos + y1;