ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/src/defaultfont.C
(Generate patch)

Comparing rxvt-unicode/src/defaultfont.C (file contents):
Revision 1.46 by pcg, Tue Mar 16 05:55:51 2004 UTC vs.
Revision 1.47 by pcg, Tue Mar 16 06:04:28 2004 UTC

233 return true; 233 return true;
234 234
235 if (unicode >= 0x0080 && unicode <= 0x009f) 235 if (unicode >= 0x0080 && unicode <= 0x009f)
236 return true; 236 return true;
237 237
238 if (unicode >= 0x2500 && unicode <= 0x259f 238 if (unicode >= 0x2500 && unicode <= 0x259f)
239 && linedraw_offs[unicode - 0x2500] & 15)
240 return true; 239 return true;
241 240
242 if (IS_COMPOSE (unicode)) 241 if (IS_COMPOSE (unicode))
243 return true; 242 return true;
244 243
270#if ENABLE_COMBINING 269#if ENABLE_COMBINING
271 compose_char *cc; 270 compose_char *cc;
272#endif 271#endif
273 text_t t = *text++; 272 text_t t = *text++;
274 273
275 int W = r->TermWin.fwidth , w = (W - 1) / 2;
276 int H = r->TermWin.fheight, h = (H - 1) / 2;
277 int x0 = x, x1 = x + w, x2 = x + r->TermWin.fwidth ;
278 int y0 = y, y1 = y + h, y2 = y + r->TermWin.fheight;
279
280 if (0x2500 <= t && t <= 0x259f 274 if (0x2500 <= t && t <= 0x259f)
281 && linedraw_offs[t - 0x2500] & 15)
282 { 275 {
283 uint16_t offs = linedraw_offs[t - 0x2500]; 276 uint16_t offs = linedraw_offs[t - 0x2500];
284 uint32_t *a = linedraw_command + (offs >> 4); 277 uint32_t *a = linedraw_command + (offs >> 4);
285 uint32_t *b = a + (offs & 15); 278 uint32_t *b = a + (offs & 15);
279
280 int W = r->TermWin.fwidth;
281 int H = r->TermWin.fheight;
286 282
287 int x_[16]; 283 int x_[16];
288 int y_[16]; 284 int y_[16];
289 285
290 for (int i = 0; i <= 8; i++) 286 for (int i = 0; i <= 8; i++)
333 XChangeGC (d.display->display, TGC, 329 XChangeGC (d.display->display, TGC,
334 GCFillStyle | GCStipple | GCTileStipXOrigin | GCTileStipYOrigin, 330 GCFillStyle | GCStipple | GCTileStipXOrigin | GCTileStipYOrigin,
335 &gcv); 331 &gcv);
336 } 332 }
337 333
338
339 XFillRectangle (d.display->display, d, TGC, x1, y1, x2 - x1 + 1, y2 - y1 + 1); 334 XFillRectangle (d.display->display, d, TGC, x1, y1, x2 - x1 + 1, y2 - y1 + 1);
340 335
341 if (a) 336 if (a)
342 { 337 {
343 XFreePixmap (d.display->display, gcv.stipple); 338 XFreePixmap (d.display->display, gcv.stipple);
344 gcv.stipple = 0; 339 gcv.stipple = 0;
345 gcv.fill_style = FillSolid; 340 gcv.fill_style = FillSolid;
346 XChangeGC (d.display->display, TGC, GCFillStyle, &gcv); 341 XChangeGC (d.display->display, TGC, GCFillStyle, &gcv);
347 } 342 }
348
349 break; 343 break;
350 case 2: // arc 344 case 2: // arc
351 XDrawArc (d.display->display, d, TGC, 345 XDrawArc (d.display->display, d, TGC,
352 x1 - W/2, y1 - H/2, W-1, H-1, 346 x1 - W/2, y1 - H/2, W-1, H-1,
353 (a - 1) * 90*64, (b - 1) * 90*64); 347 (a - 1) * 90*64, (b - 1) * 90*64);

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines