From: oetiker Date: Sun, 7 May 2006 10:46:24 +0000 (+0000) Subject: make legend spacing more reliable. handle the fact that some graph comands do not... X-Git-Url: https://git.octo.it/?p=rrdtool.git;a=commitdiff_plain;h=51f4f28267599da6cbe56eb26237bdf808657abf make legend spacing more reliable. handle the fact that some graph comands do not contribute to the legend -- tobi git-svn-id: svn://svn.oetiker.ch/rrdtool/branches/1.2/program@822 a5681a0c-68f1-0310-ab6d-d61299d08faa --- diff --git a/src/rrd_graph.c b/src/rrd_graph.c index 37a313b..201ee4c 100644 --- a/src/rrd_graph.c +++ b/src/rrd_graph.c @@ -1399,6 +1399,7 @@ leg_place(image_desc_t *im) int fill=0, fill_last; int leg_c = 0; int leg_x = border, leg_y = im->yimg; + int leg_y_prev = im->yimg; int leg_cc; int glue = 0; int i,ii, mark = 0; @@ -1507,14 +1508,22 @@ leg_place(image_desc_t *im) + legspace[ii] + glue; } - leg_y += im->text_prop[TEXT_PROP_LEGEND].size*1.8; - if (prt_fctn == 's') leg_y -= im->text_prop[TEXT_PROP_LEGEND].size; + leg_y_prev = leg_y; + /* only add y space if there was text on the line */ + if (leg_x > border || prt_fctn == 's') + leg_y += im->text_prop[TEXT_PROP_LEGEND].size*1.8; + if (prt_fctn == 's') + leg_y -= im->text_prop[TEXT_PROP_LEGEND].size; fill = 0; leg_c = 0; mark = ii; } } - im->yimg = leg_y; + im->yimg = leg_y_prev; + /* if we did place some legends we have to add vertical space */ + if (leg_y != im->yimg){ + im->yimg += im->text_prop[TEXT_PROP_LEGEND].size*1.8; + } free(legspace); } return 0;