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

Diff of /cvsgraph/cvsgraph.c

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

revision 1.55, Tue Jun 14 20:40:14 2005 UTC revision 1.56, Tue Jun 21 00:02:48 2005 UTC
# Line 1330  Line 1330 
1330   * Drawing routines   * Drawing routines
1331   **************************************************************************   **************************************************************************
1332   */   */
1333    static color_t *clr_id = NULL;
1334    static int nclr_id = 0;
1335    
1336    static color_t *clr(gdImagePtr im, const char *s, revision_t *r, branch_t *b)
1337    {
1338            int i;
1339            color_t *c = get_colorref(s);
1340            if(!c)
1341                    c = &black_color;
1342            for(i = 0; i < nclr_id; i++)
1343            {
1344                    if(c->r == clr_id[i].r && c->g == clr_id[i].g && c->b == clr_id[i].b)
1345                            return &clr_id[i];
1346            }
1347            /* FIXME: Do color evaluation */
1348            clr_id = xrealloc(clr_id, (nclr_id+1) * sizeof(*clr_id));
1349            clr_id[nclr_id] = *c;
1350            clr_id[nclr_id].id = gdImageColorAllocate(im, c->r, c->g, c->b);
1351            return &clr_id[nclr_id++];
1352    }
1353    
1354  static int get_swidth(const char *s, font_t *f)  static int get_swidth(const char *s, font_t *f)
1355  {  {
1356          int n;          int n;
# Line 1516  Line 1537 
1537                  ty = r->y;                  ty = r->y;
1538                  x2 = r->cx;                  x2 = r->cx;
1539          }          }
1540          draw_rbox(im, lx, ty, rx, ty+r->h, 0, &conf.rev_color, &conf.rev_bgcolor);          draw_rbox(im, lx, ty, rx, ty+r->h, 0, clr(im, "rev_color", r, NULL), clr(im, "rev_bgcolor", r, NULL));
1541          ty += conf.rev_tspace;          ty += conf.rev_tspace;
1542          if(!conf.rev_hidenumber)          if(!conf.rev_hidenumber)
1543          {          {
1544                  draw_string(im, r->rev->rev, &conf.rev_font, x2, ty, ALIGN_HC, &conf.rev_color);                  draw_string(im, r->rev->rev, &conf.rev_font, x2, ty, ALIGN_HC, clr(im, "rev_color", r, NULL));
1545                  ty += get_sheight(r->rev->rev, &conf.rev_font);                  ty += get_sheight(r->rev->rev, &conf.rev_font);
1546          }          }
1547          draw_stringnl(im, r->revtext, &conf.rev_text_font, x2, ty, ALIGN_HC, &conf.rev_text_color);          draw_stringnl(im, r->revtext, &conf.rev_text_font, x2, ty, ALIGN_HC, clr(im, "rev_text_color", r, NULL));
1548          ty += get_sheight(r->revtext, &conf.rev_text_font);          ty += get_sheight(r->revtext, &conf.rev_text_font);
1549          for(i = 0; i < r->ntags; i++)          for(i = 0; i < r->ntags; i++)
1550          {          {
1551                  draw_string(im, r->tags[i]->tag, &conf.tag_font, x2, ty, ALIGN_HC, &conf.tag_color);                  draw_string(im, r->tags[i]->tag, &conf.tag_font, x2, ty, ALIGN_HC, clr(im, "tag_color", r, NULL));
1552                  ty += get_sheight(r->tags[i]->tag, &conf.tag_font) + conf.rev_separator;                  ty += get_sheight(r->tags[i]->tag, &conf.tag_font) + conf.rev_separator;
1553          }          }
1554  }  }
# Line 1552  Line 1573 
1573                  rx = lx + b->w;                  rx = lx + b->w;
1574                  x2 = b->cx;                  x2 = b->cx;
1575          }          }
1576          draw_rbox(im, lx+xp, yp, rx+xp, yp+b->h, 5, &conf.branch_color, &conf.branch_bgcolor);          draw_rbox(im, lx+xp, yp, rx+xp, yp+b->h, 5, clr(im, "branch_color", NULL, b), clr(im, "branch_bgcolor", NULL, b));
1577          yy = conf.branch_tspace;          yy = conf.branch_tspace;
1578          if(!b->nfolds)          if(!b->nfolds)
1579          {          {
1580                  if(!conf.rev_hidenumber)                  if(!conf.rev_hidenumber)
1581                  {                  {
1582                          draw_string(im, b->branch->branch, &conf.branch_font, x2+xp, yp+yy, ALIGN_HC, &conf.branch_color);                          draw_string(im, b->branch->branch, &conf.branch_font, x2+xp, yp+yy, ALIGN_HC, clr(im, "branch_color", NULL, b));
1583                          yy += get_sheight(b->branch->branch, &conf.branch_font);                          yy += get_sheight(b->branch->branch, &conf.branch_font);
1584                  }                  }
1585                  for(i = 0; i < b->ntags; i++)                  for(i = 0; i < b->ntags; i++)
1586                  {                  {
1587                          draw_string(im, b->tags[i]->tag, &conf.branch_tag_font, x2+xp, yp+yy, ALIGN_HC, &conf.branch_tag_color);                          draw_string(im, b->tags[i]->tag, &conf.branch_tag_font, x2+xp, yp+yy, ALIGN_HC, clr(im, "branch_tag_color", NULL, b));
1588                          yy += get_sheight(b->tags[i]->tag, &conf.branch_tag_font);                          yy += get_sheight(b->tags[i]->tag, &conf.branch_tag_font);
1589                  }                  }
1590          }          }
# Line 1572  Line 1593 
1593                  int y1, y2;                  int y1, y2;
1594                  int tx = lx + b->fw + conf.branch_lspace;                  int tx = lx + b->fw + conf.branch_lspace;
1595                  int nx = tx - get_swidth(" ", &conf.branch_font);                  int nx = tx - get_swidth(" ", &conf.branch_font);
1596                  draw_string(im, b->branch->branch, &conf.branch_font, nx+xp, yp+yy, ALIGN_HR, &conf.branch_color);                  draw_string(im, b->branch->branch, &conf.branch_font, nx+xp, yp+yy, ALIGN_HR, clr(im, "branch_color", NULL, b));
1597                  y1 = get_sheight(b->branch->branch, &conf.branch_font);                  y1 = get_sheight(b->branch->branch, &conf.branch_font);
1598                  draw_string(im, b->tags[0]->tag, &conf.branch_tag_font, tx+xp, yp+yy, ALIGN_HL, &conf.branch_tag_color);                  draw_string(im, b->tags[0]->tag, &conf.branch_tag_font, tx+xp, yp+yy, ALIGN_HL, clr(im, "branch_tag_color", NULL, b));
1599                  y2 = get_sheight(b->tags[0]->tag, &conf.branch_font);                  y2 = get_sheight(b->tags[0]->tag, &conf.branch_font);
1600                  yy += MAX(y1, y2);                  yy += MAX(y1, y2);
1601                  for(i = 0; i < b->nfolds; i++)                  for(i = 0; i < b->nfolds; i++)
1602                  {                  {
1603                          draw_string(im, b->folds[i]->branch->branch, &conf.branch_font, nx+xp, yp+yy, ALIGN_HR, &conf.branch_color);                          draw_string(im, b->folds[i]->branch->branch, &conf.branch_font, nx+xp, yp+yy, ALIGN_HR, clr(im, "branch_color", NULL, b));
1604                          y1 = get_sheight(b->folds[i]->branch->branch, &conf.branch_font);                          y1 = get_sheight(b->folds[i]->branch->branch, &conf.branch_font);
1605                          draw_string(im, b->folds[i]->tags[0]->tag, &conf.branch_tag_font, tx+xp, yp+yy, ALIGN_HL, &conf.branch_tag_color);                          draw_string(im, b->folds[i]->tags[0]->tag, &conf.branch_tag_font, tx+xp, yp+yy, ALIGN_HL, clr(im, "branch_tag_color", NULL, b));
1606                          y2 = get_sheight(b->folds[i]->tags[0]->tag, &conf.branch_tag_font);                          y2 = get_sheight(b->folds[i]->tags[0]->tag, &conf.branch_tag_font);
1607                          yy += MAX(y1, y2);                          yy += MAX(y1, y2);
1608                  }                  }
# Line 1596  Line 1617 
1617          int l;          int l;
1618          int sign;          int sign;
1619    
1620          line[0] = conf.rev_color.id;          line[1] = line[2] = gdTransparent;
         line[1] = gdTransparent;  
         line[1] = gdTransparent;  
         line[3] = conf.rev_color.id;  
1621    
1622          /* Trivial clip the branch */          /* Trivial clip the branch */
1623          if(conf.left_right)          if(conf.left_right)
# Line 1623  Line 1641 
1641                          for(i = 0; i < b->nrevs; i++)                          for(i = 0; i < b->nrevs; i++)
1642                          {                          {
1643                                  revision_t *r = b->revs[i];                                  revision_t *r = b->revs[i];
1644                                    line[0] = line[3] = clr(im, "rev_color", r, b)->id;
1645                                  gdImageSetStyle(im, line, r->stripped > 0 ? 4 : 1);                                  gdImageSetStyle(im, line, r->stripped > 0 ? 4 : 1);
1646                                  gdImageLine(im, xx, r->y, r->cx+r->w, r->y, gdStyled);                                  gdImageLine(im, xx, r->y, r->cx+r->w, r->y, gdStyled);
1647                                  for(sign = l = 1; l < conf.thick_lines; l++)                                  for(sign = l = 1; l < conf.thick_lines; l++)
# Line 1637  Line 1656 
1656                          if(conf.branch_dupbox && b->nrevs)                          if(conf.branch_dupbox && b->nrevs)
1657                          {                          {
1658                                  i = b->cx - b->tw + b->w;                                  i = b->cx - b->tw + b->w;
1659                                  gdImageLine(im, xx, b->y, i+b->w, b->y, conf.rev_color.id);                                  gdImageLine(im, xx, b->y, i+b->w, b->y, clr(im, "rev_color", NULL, b)->id);
1660                                  for(sign = l = 1; l < conf.thick_lines; l++)                                  for(sign = l = 1; l < conf.thick_lines; l++)
1661                                  {                                  {
1662                                          int pp = (l+1)/2*sign;                                          int pp = (l+1)/2*sign;
1663                                          gdImageLine(im, xx, b->y+pp, i+b->w, b->y+pp, conf.rev_color.id);                                          gdImageLine(im, xx, b->y+pp, i+b->w, b->y+pp, clr(im, "rev_color", NULL, b)->id);
1664                                          sign *= -1;                                          sign *= -1;
1665                                  }                                  }
1666                                  draw_branch_box(im, b, i - b->cx, b->y - b->h/2);                                  draw_branch_box(im, b, i - b->cx, b->y - b->h/2);
# Line 1653  Line 1672 
1672                          for(i = 0; i < b->nrevs; i++)                          for(i = 0; i < b->nrevs; i++)
1673                          {                          {
1674                                  revision_t *r = b->revs[i];                                  revision_t *r = b->revs[i];
1675                                    line[0] = line[3] = clr(im, "rev_color", r, b)->id;
1676                                  gdImageSetStyle(im, line, r->stripped > 0 ? 4 : 1);                                  gdImageSetStyle(im, line, r->stripped > 0 ? 4 : 1);
1677                                  gdImageLine(im, xx, r->y, r->cx, r->y, gdStyled);                                  gdImageLine(im, xx, r->y, r->cx, r->y, gdStyled);
1678                                  for(sign = l = 1; l < conf.thick_lines; l++)                                  for(sign = l = 1; l < conf.thick_lines; l++)
# Line 1667  Line 1687 
1687                          if(conf.branch_dupbox && b->nrevs)                          if(conf.branch_dupbox && b->nrevs)
1688                          {                          {
1689                                  i = b->cx + b->tw - b->w;                                  i = b->cx + b->tw - b->w;
1690                                  gdImageLine(im, xx, b->y, i, b->y, conf.rev_color.id);                                  gdImageLine(im, xx, b->y, i, b->y, clr(im, "rev_color", NULL, b)->id);
1691                                  for(sign = l = 1; l < conf.thick_lines; l++)                                  for(sign = l = 1; l < conf.thick_lines; l++)
1692                                  {                                  {
1693                                          int pp = (l+1)/2*sign;                                          int pp = (l+1)/2*sign;
1694                                          gdImageLine(im, xx, b->y+pp, i, b->y+pp, conf.rev_color.id);                                          gdImageLine(im, xx, b->y+pp, i, b->y+pp, clr(im, "rev_color", NULL, b)->id);
1695                                          sign *= -1;                                          sign *= -1;
1696                                  }                                  }
1697                                  draw_branch_box(im, b, i - b->cx, b->y - b->h/2);                                  draw_branch_box(im, b, i - b->cx, b->y - b->h/2);
# Line 1686  Line 1706 
1706                          for(i = 0; i < b->nrevs; i++)                          for(i = 0; i < b->nrevs; i++)
1707                          {                          {
1708                                  revision_t *r = b->revs[i];                                  revision_t *r = b->revs[i];
1709                                    line[0] = line[3] = clr(im, "rev_color", r, b)->id;
1710                                  gdImageSetStyle(im, line, r->stripped > 0 ? 4 : 1);                                  gdImageSetStyle(im, line, r->stripped > 0 ? 4 : 1);
1711                                  gdImageLine(im, r->cx, yy, r->cx, r->y+r->h, gdStyled);                                  gdImageLine(im, r->cx, yy, r->cx, r->y+r->h, gdStyled);
1712                                  for(sign = l = 1; l < conf.thick_lines; l++)                                  for(sign = l = 1; l < conf.thick_lines; l++)
# Line 1700  Line 1721 
1721                          if(conf.branch_dupbox && b->nrevs)                          if(conf.branch_dupbox && b->nrevs)
1722                          {                          {
1723                                  i = b->y - b->th + b->h;                                  i = b->y - b->th + b->h;
1724                                  gdImageLine(im, b->cx, yy, b->cx, i, conf.rev_color.id);                                  gdImageLine(im, b->cx, yy, b->cx, i, clr(im, "rev_color", NULL, b)->id);
1725                                  for(sign = l = 1; l < conf.thick_lines; l++)                                  for(sign = l = 1; l < conf.thick_lines; l++)
1726                                  {                                  {
1727                                          int pp = (l+1)/2*sign;                                          int pp = (l+1)/2*sign;
1728                                          gdImageLine(im, b->cx+pp, yy, b->cx+pp, i, conf.rev_color.id);                                          gdImageLine(im, b->cx+pp, yy, b->cx+pp, i, clr(im, "rev_color", NULL, b)->id);
1729                                          sign *= -1;                                          sign *= -1;
1730                                  }                                  }
1731                                  draw_branch_box(im, b, 0, i);                                  draw_branch_box(im, b, 0, i);
# Line 1716  Line 1737 
1737                          for(i = 0; i < b->nrevs; i++)                          for(i = 0; i < b->nrevs; i++)
1738                          {                          {
1739                                  revision_t *r = b->revs[i];                                  revision_t *r = b->revs[i];
1740                                    line[0] = line[3] = clr(im, "rev_color", r, b)->id;
1741                                  gdImageSetStyle(im, line, r->stripped > 0 ? 4 : 1);                                  gdImageSetStyle(im, line, r->stripped > 0 ? 4 : 1);
1742                                  gdImageLine(im, r->cx, yy, r->cx, r->y, gdStyled);                                  gdImageLine(im, r->cx, yy, r->cx, r->y, gdStyled);
1743                                  for(sign = l = 1; l < conf.thick_lines; l++)                                  for(sign = l = 1; l < conf.thick_lines; l++)
# Line 1730  Line 1752 
1752                          if(conf.branch_dupbox && b->nrevs)                          if(conf.branch_dupbox && b->nrevs)
1753                          {                          {
1754                                  i = b->y + b->th - b->h;                                  i = b->y + b->th - b->h;
1755                                  gdImageLine(im, b->cx, yy, b->cx, i, conf.rev_color.id);                                  gdImageLine(im, b->cx, yy, b->cx, i, clr(im, "rev_color", NULL, b)->id);
1756                                  for(sign = l = 1; l < conf.thick_lines; l++)                                  for(sign = l = 1; l < conf.thick_lines; l++)
1757                                  {                                  {
1758                                          int pp = (l+1)/2*sign;                                          int pp = (l+1)/2*sign;
1759                                          gdImageLine(im, b->cx+pp, yy, b->cx+pp, i, conf.rev_color.id);                                          gdImageLine(im, b->cx+pp, yy, b->cx+pp, i, clr(im, "rev_color", NULL, b)->id);
1760                                          sign *= -1;                                          sign *= -1;
1761                                  }                                  }
1762                                  draw_branch_box(im, b, 0, i);                                  draw_branch_box(im, b, 0, i);
# Line 1771  Line 1793 
1793                  if(conf.upside_down)                  if(conf.upside_down)
1794                          y2 += b->h;                          y2 += b->h;
1795          }          }
1796          gdImageLine(im, x1, y1, x2, y1, conf.branch_color.id);          gdImageLine(im, x1, y1, x2, y1, clr(im, "branch_color", NULL, b)->id);
1797          gdImageLine(im, x2, y1, x2, y2, conf.branch_color.id);          gdImageLine(im, x2, y1, x2, y2, clr(im, "branch_color", NULL, b)->id);
1798          for(sign = l = 1; l < conf.thick_lines; l++)          for(sign = l = 1; l < conf.thick_lines; l++)
1799          {          {
1800                  int pp = (l+1)/2*sign;                  int pp = (l+1)/2*sign;
1801                  gdImageLine(im, x1, y1+pp, x2, y1+pp, conf.branch_color.id);                  gdImageLine(im, x1, y1+pp, x2, y1+pp, clr(im, "branch_color", NULL, b)->id);
1802                  gdImageLine(im, x2+pp, y1, x2+pp, y2, conf.branch_color.id);                  gdImageLine(im, x2+pp, y1, x2+pp, y2, clr(im, "branch_color", NULL, b)->id);
1803                  sign *= -1;                  sign *= -1;
1804          }          }
1805  }  }
# Line 1796  Line 1818 
1818                  case TR_TAG:                  case TR_TAG:
1819                          fr = rcs->merges[i].from.tag->logrev;                          fr = rcs->merges[i].from.tag->logrev;
1820                          tr = rcs->merges[i].to.tag->logrev;                          tr = rcs->merges[i].to.tag->logrev;
1821                          colorid = conf.merge_color.id;                          colorid = clr(im, "merge_color.id", NULL, NULL)->id;
1822                          break;                          break;
1823                  case TR_REVISION:                  case TR_REVISION:
1824                          fr = rcs->merges[i].from.rev;                          fr = rcs->merges[i].from.rev;
1825                          tr = rcs->merges[i].to.rev;                          tr = rcs->merges[i].to.rev;
1826                          colorid = conf.merge_cvsnt_color.id;                          colorid = clr(im, "merge_cvsnt_color", NULL, NULL)->id;
1827                          break;                          break;
1828                  default:                  default:
1829                          continue;                          continue;
# Line 2014  Line 2036 
2036    
2037          for(i = 0; i < nmsg_stack; i++)          for(i = 0; i < nmsg_stack; i++)
2038          {          {
2039                  draw_stringnl(im, msg_stack[i].msg, &conf.msg_font, conf.margin_left, offset, ALIGN_HL|ALIGN_VT, &conf.msg_color);                  draw_stringnl(im, msg_stack[i].msg, &conf.msg_font, conf.margin_left, offset, ALIGN_HL|ALIGN_VT, clr(im, "msg_color", NULL, NULL));
2040                  offset += msg_stack[i].h;                  offset += msg_stack[i].h;
2041          }          }
2042  }  }
# Line 2076  Line 2098 
2098          }          }
2099    
2100          im = gdImageCreate(w, h);          im = gdImageCreate(w, h);
2101          alloc_color(im, &conf.color_bg);          alloc_color(im, &conf.color_bg);        /* The background is always a unique color */
2102          alloc_color(im, &conf.tag_color);          clr(im, "__black_color__", NULL, NULL);
         alloc_color(im, &conf.rev_color);  
         alloc_color(im, &conf.rev_bgcolor);  
         alloc_color(im, &conf.rev_text_color);  
         alloc_color(im, &conf.branch_color);  
         alloc_color(im, &conf.branch_tag_color);  
         alloc_color(im, &conf.branch_bgcolor);  
         alloc_color(im, &conf.title_color);  
         alloc_color(im, &conf.merge_color);  
         alloc_color(im, &conf.merge_cvsnt_color);  
         alloc_color(im, &conf.msg_color);  
         alloc_color(im, &black_color);  
         alloc_color(im, &white_color);  
2103    
2104          if(conf.transparent_bg)          if(conf.transparent_bg)
2105                  gdImageColorTransparent(im, conf.color_bg.id);                  gdImageColorTransparent(im, conf.color_bg.id);
# Line 2120  Line 2130 
2130                  gdImageFilledRectangle(im, w-conf.margin_right, 0, w-1, h-1, conf.color_bg.id);                  gdImageFilledRectangle(im, w-conf.margin_right, 0, w-1, h-1, conf.color_bg.id);
2131          }          }
2132    
2133          draw_stringnl(im, cptr, &conf.title_font, conf.title_x, conf.title_y, conf.title_align, &conf.title_color);          draw_stringnl(im, cptr, &conf.title_font, conf.title_x, conf.title_y, conf.title_align, clr(im, "title_color", NULL, NULL));
2134          xfree(cptr);          xfree(cptr);
2135    
2136          if(conf.merge_front)          if(conf.merge_front)
# Line 3199  Line 3209 
3209    
3210          if(im)          if(im)
3211          {          {
3212                  gdImageFilledRectangle(im, x1-2, y1-2, x1+2, y1+2, conf.title_color.id);                  gdImageFilledRectangle(im, x1-2, y1-2, x1+2, y1+2, clr(im, "title_color", NULL, NULL)->id);
3213                  gdImageFilledRectangle(im, x2-2, y2-2, x2+2, y2+2, conf.tag_color.id);                  gdImageFilledRectangle(im, x2-2, y2-2, x2+2, y2+2, clr(im, "tag_color.id", NULL, NULL)->id);
3214                  gdImageLine(im, x1, y1, x2, y2, conf.title_color.id);                  gdImageLine(im, x1, y1, x2, y2, clr(im, "title_color", NULL, NULL)->id);
3215          }          }
3216  }  }
3217    
# Line 3385  Line 3395 
3395                                          bhref, x1, y1, x2, y2, balt, htp);                                          bhref, x1, y1, x2, y2, balt, htp);
3396                          if(im)                          if(im)
3397                          {                          {
3398                                  gdImageFilledRectangle(im, x1-2, y1-2, x1+2, y1+2, conf.title_color.id);                                  gdImageFilledRectangle(im, x1-2, y1-2, x1+2, y1+2, clr(im, "title_color", NULL, NULL)->id);
3399                                  gdImageFilledRectangle(im, x2-2, y2-2, x2+2, y2+2, conf.tag_color.id);                                  gdImageFilledRectangle(im, x2-2, y2-2, x2+2, y2+2, clr(im, "tag_color", NULL, NULL)->id);
3400                                  gdImageLine(im, x1, y1, x2, y2, conf.title_color.id);                                  gdImageLine(im, x1, y1, x2, y2, clr(im, "title_color", NULL, NULL)->id);
3401                          }                          }
3402                  }                  }
3403                  else                  else
# Line 3462  Line 3472 
3472                                  href, x1, y1, x2, y2, alt, htp);                                  href, x1, y1, x2, y2, alt, htp);
3473                          if(im)                          if(im)
3474                          {                          {
3475                                  gdImageFilledRectangle(im, x1-2, y1-2, x1+2, y1+2, conf.title_color.id);                                  gdImageFilledRectangle(im, x1-2, y1-2, x1+2, y1+2, clr(im, "title_color", NULL, NULL)->id);
3476                                  gdImageFilledRectangle(im, x2-2, y2-2, x2+2, y2+2, conf.tag_color.id);                                  gdImageFilledRectangle(im, x2-2, y2-2, x2+2, y2+2, clr(im, "tag_color", NULL, NULL)->id);
3477                                  gdImageLine(im, x1, y1, x2, y2, conf.title_color.id);                                  gdImageLine(im, x1, y1, x2, y2, clr(im, "title_color", NULL, NULL)->id);
3478                          }                          }
3479                          xfree(href);                          xfree(href);
3480                          xfree(alt);                          xfree(alt);
# Line 3532  Line 3542 
3542                                          alt, htp);                                          alt, htp);
3543                                  if(im)                                  if(im)
3544                                  {                                  {
3545                                          gdImageFilledRectangle(im, x1-2, y1-2, x1+2, y1+2, conf.title_color.id);                                          gdImageFilledRectangle(im, x1-2, y1-2, x1+2, y1+2, clr(im, "title_color", NULL, NULL)->id);
3546                                          gdImageFilledRectangle(im, x2-2, y2-2, x2+2, y2+2, conf.tag_color.id);                                          gdImageFilledRectangle(im, x2-2, y2-2, x2+2, y2+2, clr(im, "tag_color", NULL, NULL)->id);
3547                                          gdImageLine(im, x1, y1, x2, y2, conf.title_color.id);                                          gdImageLine(im, x1, y1, x2, y2, clr(im, "title_color", NULL, NULL)->id);
3548                                  }                                  }
3549                                  xfree(href);                                  xfree(href);
3550                                  xfree(alt);                                  xfree(alt);
# Line 3560  Line 3570 
3570                                          bhref, x1, y1, x2, y2, balt, htp);                                          bhref, x1, y1, x2, y2, balt, htp);
3571                          if(im)                          if(im)
3572                          {                          {
3573                                  gdImageFilledRectangle(im, x1-2, y1-2, x1+2, y1+2, conf.title_color.id);                                  gdImageFilledRectangle(im, x1-2, y1-2, x1+2, y1+2, clr(im, "title_color", NULL, NULL)->id);
3574                                  gdImageFilledRectangle(im, x2-2, y2-2, x2+2, y2+2, conf.tag_color.id);                                  gdImageFilledRectangle(im, x2-2, y2-2, x2+2, y2+2, clr(im, "tag_color", NULL, NULL)->id);
3575                                  gdImageLine(im, x1, y1, x2, y2, conf.title_color.id);                                  gdImageLine(im, x1, y1, x2, y2, clr(im, "title_color", NULL, NULL)->id);
3576                          }                          }
3577                  }                  }
3578                  xfree(bhref);                  xfree(bhref);

Legend:
Removed from v.1.55  
changed lines
  Added in v.1.56

  ViewVC Help
Powered by ViewVC 1.1.0 with CvsGraph 1.7.0